try
F_dm.ADOConnection1.BeginTrans; //启动事务
with Adoquery1 do //将信息保存到进货主表
begin
Close;
SQl.Clear;
SQl.Add('select * from tb_warehouse_main');
open;
insert;
FieldByName('billdate').AsDateTime:=strtodate(formatdatetime('yyyy-mm-dd',datetimepicker1.Date));
FieldByName('billcode').AsString:=Trim(Edit2.Text);
FieldByName('units').AsString:=Trim(Edit3.Text);
FieldByName('handle').AsString:=Trim(Edit4.Text);
FieldByName('op').AsString:=Trim(Edit1.Text);
FieldByName('summary').AsString:=Trim(Edit5.Text);
FieldByName('fullpayment').AsFloat:=strtofloat(panel1.Caption);
FieldByName('payment').AsFloat:=strtofloat(format('%10.4f',[strtofloat(Edit6.Text)])); post;
end; F_dm.ADOConnection1.CommitTrans; //提交事务
Application.MessageBox('保存成功','提示',mb_ok); except
F_dm.ADOConnection1.RollbackTrans; //回滚事务
Application.MessageBox('保存不成功','提示',mb_ok);
end;
这是stringrid提交保存时的代码,我现在将控件改为dbgrid,提交代码怎么改呀
F_dm.ADOConnection1.BeginTrans; //启动事务
with Adoquery1 do //将信息保存到进货主表
begin
Close;
SQl.Clear;
SQl.Add('select * from tb_warehouse_main');
open;
insert;
FieldByName('billdate').AsDateTime:=strtodate(formatdatetime('yyyy-mm-dd',datetimepicker1.Date));
FieldByName('billcode').AsString:=Trim(Edit2.Text);
FieldByName('units').AsString:=Trim(Edit3.Text);
FieldByName('handle').AsString:=Trim(Edit4.Text);
FieldByName('op').AsString:=Trim(Edit1.Text);
FieldByName('summary').AsString:=Trim(Edit5.Text);
FieldByName('fullpayment').AsFloat:=strtofloat(panel1.Caption);
FieldByName('payment').AsFloat:=strtofloat(format('%10.4f',[strtofloat(Edit6.Text)])); post;
end; F_dm.ADOConnection1.CommitTrans; //提交事务
Application.MessageBox('保存成功','提示',mb_ok); except
F_dm.ADOConnection1.RollbackTrans; //回滚事务
Application.MessageBox('保存不成功','提示',mb_ok);
end;
这是stringrid提交保存时的代码,我现在将控件改为dbgrid,提交代码怎么改呀
解决方案 »
- TChart显示的区域,在用鼠标拉框后,会放大缩小,如何用代码实现这一功能?
- 一段java代码 转成delphi代码 ,谢谢.50分.~大家帮个忙~~
- 用SaveDBGridEhToExportFile方法导出数据记录到excel时,长文本字段的内容在excel单元格中不能显示,为空,咋办?
- 各位大哥,我想学C++底层的东西,,哪本书比较好,能够透着讲解
- 我是新手,有问题请教
- 如何定义函数的可变参数?谢谢
- Delphi6.0与c++Builder6.0冲突
- 谁能告诉我括号中的意思(关于midi内码)
- 100分请教菜鸟问题!关于三层结构的,在线等待!,急!
- 异常消息的处理??????
- 打印问题~!
- 通过大家的帮助,大概 写出来了,但是 运行报错 ,请帮忙 看看
begin
with adoquery1 do
begin
with stringgrid1 do
begin
Close;
SQL.Clear;
SQL.Add('select * from tb_stock where tradecode='+''''+Trim(Cells[1,grow])+'''');
Open;
edit;
if (fieldbyname('averageprice').AsFloat=0) then
ave:=format('%10.4f',[(strtofloat(Cells[7,grow]) * strtofloat(Cells[8,grow]))/(strtofloat(Cells[7,grow]))])
else
ave:=format('%10.4f',[(strtofloat(Cells[7,grow]) * strtofloat(Cells[8,grow])+fieldbyname('averageprice').AsFloat*fieldbyname('qty').AsFloat)/(strtofloat(Cells[7,grow])+fieldbyname('qty').AsFloat)]);
Edit;
fieldbyname('qty').AsFloat:=fieldbyname('qty').AsFloat+strtofloat(Cells[7,grow]);
fieldbyname('price').AsFloat:=strtofloat(format('%10.4f',[strtofloat(Cells[8,grow])]));
fieldbyname('averageprice').AsFloat:=strtofloat(ave);
UpdateRecord;
post;
end;
end;
end;
这里才是
把DBGrig.DataSoure.DataSet:=Adoquery1;
在编辑的时候,请Adoquery1.Open....
Adoquery1.Post提交