我想做一个批量发卡的程序,为什么只有一条记录,
var
i:integer;
begin
for i:=strtoint(dbedit3.text) to strtoint(dbedit3.Text)+strtoint(edit1.Text) do
begin
dbedit4.Text:='未审批';
table1.Append;
table1.Refresh;
dbedit3.Text:=inttostr(strtoint(dbedit3.Text)+1);
end;
Next;
end;
var
i:integer;
begin
for i:=strtoint(dbedit3.text) to strtoint(dbedit3.Text)+strtoint(edit1.Text) do
begin
dbedit4.Text:='未审批';
table1.Append;
table1.Refresh;
dbedit3.Text:=inttostr(strtoint(dbedit3.Text)+1);
end;
Next;
end;
然后后面是修改记录。应该是append插入一个空记录吧
所以只是显示一条记录
dbedit3.Text:=inttostr(strtoint(dbedit3.Text)+1);
table1.Refresh;
......
table1.Post;
append后dbedit3.Text=???为空!!!
应该记录初始值为j,然后dbedit3.Text:=inttostr(j+i);
先APPEND,再FIELDBYNAME('XXXX').ASSTRING:='XXXXX',再POST
var
i:integer;
begin
for i:=strtoint(dbedit3.text) to strtoint(dbedit3.Text)+strtoint(edit1.Text) do
begin
dbedit4.Text:='未审批';
table1.Append;
//table1.Refresh;
dbedit3.Text:=inttostr(i+1);
table1.post;
end;
//Next;
end;
begin
dbedit4.Text:='未审批';
table1.Append;
dbedit3.Field.AsInteger:=strtoint(dbedit3.Text)+1;
end;
table1.post;