表单生成

flyingdance2008 2009-06-11 04:35:43
正在做一个门诊划价系统,在Form3上选择药品和数量,系统记录到数据库的相应表中,点击生成表单按钮,系统弹出表单Form12.选择药品和数量这块已经做好了,表中也能记录。可一点击生成表单按钮,系统就死掉了,能强制结束运行,可就是弹不出表单。
代码如下:
procedure TForm3.Btn_okClick(Sender: TObject); 注:Btn_ok是Form3上的生成表单按钮
begin
DataM.ADOQuery6.Connection:=DataM.ADOConnection1;
DataM.ADOQuery6.Close;
DataM.ADOQuery6.SQL.Clear;
DataM.ADOQuery6.SQL.Text:='select * from 用户药品表'; 注:用户药品表中记录了该用户的购药记录。
DataM.ADOQuery6.Open;
if DataM.ADOQuery6.RecordCount=0 then
begin
showmessage('无药品信息!');
Form3.ComboBox1.Text:=''; 注:下拉菜单选择药品。
Form3.E_singleprice.Text:=''; 单价
Form3.E_dn.Text:=''; 数量
Form3.ComboBox1.SetFocus;
end
else
begin
sum:=0; 总价,已定义。
Form12.E_pid.Text:=Form3.E_pid.Text;
Form12.E_pname.Text:=Form3.E_pname.Text;
Form12.E_pid.Enabled:=false;
Form12.E_pname.Enabled:=false;
Form12.E_total.Enabled:=false;
Form12.E_yingfu.Enabled:=false;
Form12.E_shifu.Enabled:=false;
Form12.E_zhaoling.Enabled:=false;
Form12.Button1.Enabled:=false;
Form12.Button4.Enabled:=false;
Form12.DBGrid2.DataSource:=DataM.DataSource4;
while not DataM.ADOQuery6.Eof do
{begin
sp:=DataM.ADOQuery6.fieldbyname('单价').AsFloat;
num:=DataM.ADOQuery6.fieldbyname('数量').AsInteger;
sum:=sum+sp*num;
DataM.ADOQuery6.Next;
end}
if sum<>0 then
{begin
Form12.E_total.Text:=FloatToStr(sum);
Form12.E_yingfu.Text:=Form12.E_total.Text;
end }
DataM.ADOQuery6.Close;
DataM.ADOQuery6.SQL.Clear;
DataM.ADOQuery6.SQL.Text:='delete * from 用户药品表';
DataM.ADOQuery6.ExecSQL;
Form12.Show;
end
end;
...全文
88 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
dinoalex 2009-06-11
  • 打赏
  • 举报
回复
Form3.ComboBox1.SetFocus;
end
else
begin
Form12:= TForm12.create(self); // 加这行进去看看
sum:=0; 总价,已定义。
Form12.E_pid.Text:=Form3.E_pid.Text;
Form12.E_pname.Text:=Form3.E_pname.Text;
Form12.E_pid.Enabled:=false;
dinoalex 2009-06-11
  • 打赏
  • 举报
回复
好几个误点吖
flyingdance2008 2009-06-11
  • 打赏
  • 举报
回复
希望大家指点指点,我 是第一次接触delphi,菜鸟级的。谢谢!
flyingdance2008 2009-06-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 de410 的回复:]
提示什么错误?给大家讲一下,不要让大家在这里费时的分析代码~
[/Quote]
没有提示,一点击生成表单按钮,系统就没有反应了,必须强制结束才能退出。
de410 2009-06-11
  • 打赏
  • 举报
回复
提示什么错误?给大家讲一下,不要让大家在这里费时的分析代码~
flyingdance2008 2009-06-11
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 n29882942 的回复:]
FORM12有CREATE吗?
[/Quote]有,不过没有写东西。空的。
flyingdance2008 2009-06-11
  • 打赏
  • 举报
回复
还是不行。
骑牛上铂金 2009-06-11
  • 打赏
  • 举报
回复
FORM12有CREATE吗?
lgx0914 2009-06-11
  • 打赏
  • 举报
回复

Form12.DBGrid2.DataSource:=DataM.DataSource4;
DataM.ADOQuery6.first

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧