我在数据集进行某种操作时,我批量修改数据库中的某个字段的值,但是出现了一个问题,问题如下:
var i:integer;
begin
with DM do
if ADODataSet.State <>dsInActive then
begin
ADODataSet.DisableControls ;
For I:=0 to ADODataSet.RecordCount -1 do
begin
ADODataSet.Edit ;
ADODataSet['FLJHMX_LYRQ']:=Date;//打印日期 可以实现批修改
ADODataSet['FLJHMX_DQRQ']:=Date_DQR.Text;//到货日期,Date_DQR:为日期显示控件
ADODataSet.Next ;
end;
ADODataSet.EnableControls ;
ADODataSet.UpdateBatch;
end;
end;
问题:ADODataSet['FLJHMX_DQRQ']:=Date_DQR.Text,可以执行第一次操作的赋值
如:当我点击'打印'按钮,时,ADODataSet['FLJHMX_DQRQ']字段值为Date_DQR.Text选怿的
值,但是当我改弯Date_DQR.Text的值后,再点击'打印'按钮,ADODataSet['FLJHMX_DQRQ']的
字段值没有发生变化,而是上一次的值,请问这是怎么回事?可否实现,每次打印时
ADODataSet['FLJHMX_DQRQ']字段时都为Date_DQR.Text中的数据?
var i:integer;
begin
with DM do
if ADODataSet.State <>dsInActive then
begin
ADODataSet.DisableControls ;
For I:=0 to ADODataSet.RecordCount -1 do
begin
ADODataSet.Edit ;
ADODataSet['FLJHMX_LYRQ']:=Date;//打印日期 可以实现批修改
ADODataSet['FLJHMX_DQRQ']:=Date_DQR.Text;//到货日期,Date_DQR:为日期显示控件
ADODataSet.Next ;
end;
ADODataSet.EnableControls ;
ADODataSet.UpdateBatch;
end;
end;
问题:ADODataSet['FLJHMX_DQRQ']:=Date_DQR.Text,可以执行第一次操作的赋值
如:当我点击'打印'按钮,时,ADODataSet['FLJHMX_DQRQ']字段值为Date_DQR.Text选怿的
值,但是当我改弯Date_DQR.Text的值后,再点击'打印'按钮,ADODataSet['FLJHMX_DQRQ']的
字段值没有发生变化,而是上一次的值,请问这是怎么回事?可否实现,每次打印时
ADODataSet['FLJHMX_DQRQ']字段时都为Date_DQR.Text中的数据?
解决方案 »
- 像QQ一样可以复制粘贴文件(等于发送)的功能怎么实现?
- 我想每10秒截个全屏,这样监控电脑在操作什么
- 谁做过工资系统的自定义公式啊,进来说说自己的想法吧。谢谢!
- 想问问大家,自己的软件设置是如何做的?
- 怎么才能提高我的信誉分??
- 如何判断当前的控件的名字???
- 如何在程序运行中使一个控件的OnShow事件失效?
- 那一位有邮件系统的源代码(1000分送)
- 学习Delphi的目标
- 奇怪的问题,数据集为空就关不掉?Access数据库建立主从关系后多表查询就查不到记录!online waiting!
- 我的delphi程序为什么在任务管理器中总也退不出去呀?
- dbgrideh如何显示多个字段的下拉列表?
该字段的值为Date_DQR控件的Text值!,Date_DQR的值是可以任意变化的!
begin
with DM do
if ADODataSet.State <>dsInActive then
begin
ADODataSet.DisableControls ;
//For I:=0 to ADODataSet.RecordCount -1 do
For I:=1 to ADODataSet.RecordCount do
begin
ADODataSet.RecNo := I;
ADODataSet.Edit ;
ADODataSet['FLJHMX_LYRQ']:=Date;//打印日期 可以实现批修改
ADODataSet['FLJHMX_DQRQ']:=Date_DQR.Text;//到货日期,Date_DQR:为日期显示控件
ADODataSet.Next ;
end;
ADODataSet.EnableControls ;
ADODataSet.UpdateBatch;
end;
end;更典型的写法var i:integer;
begin
with DM do
if ADODataSet.State <>dsInActive then
begin
ADODataSet.DisableControls ;
//For I:=0 to ADODataSet.RecordCount -1 do
ADODataSet.First();
while(not ADODataSet.Eof) do
begin
ADODataSet.Edit ;
ADODataSet['FLJHMX_LYRQ']:=Date;//打印日期 可以实现批修改
ADODataSet['FLJHMX_DQRQ']:=Date_DQR.Text;//到货日期,Date_DQR:为日期显示控件
ADODataSet.Next ;
end;
ADODataSet.EnableControls ;
ADODataSet.UpdateBatch;
end;
end;
var i:integer;
begin
with DM do
if ADODataSet.State <>dsInActive then
begin
ADODataSet.DisableControls ;
//For I:=0 to ADODataSet.RecordCount -1 do
For I:=1 to ADODataSet.RecordCount do
begin
ADODataSet.RecNo := I;
ADODataSet.Edit ;
ADODataSet['FLJHMX_LYRQ']:=Date;//打印日期 可以实现批修改
ADODataSet['FLJHMX_DQRQ']:=Date_DQR.Text;//到货日期,Date_DQR:为日期显示控件
//ADODataSet.Next ;
end;
ADODataSet.EnableControls ;
ADODataSet.UpdateBatch;
end;
end;
var i:integer;
begin
with DM do
if ADODataSet.State <>dsInActive then
begin
ADODataSet.First;
ADODataSet.DisableControls ;
For I:=0 to ADODataSet.RecordCount -1 do
begin
ADODataSet.Edit ;
ADODataSet['FLJHMX_LYRQ']:=Date;//打印日期 可以实现批修改
ADODataSet['FLJHMX_DQRQ']:=Date_DQR.Text;
ADODataSet.Next ;
end;
ADODataSet.EnableControls ;
ADODataSet.UpdateBatch;
end;
end;