[firebase-br] repetição
cartorio
cart5sjm em uol.com.br
Qui Fev 8 11:35:14 -03 2007
bom dia a todos, estou com o seguinte problema. tenho um banco de dados com delphi 5 e firebird usando ibdataset. o que ocorre é que tenho um while que faz a procedure abaixo rodar algumas vezes de acordo com o valor informado. só que o primeiro registro sempre aparece duplicado, o que está acontecendo de errado?
procedure gravaselos;
begin
DM1.QRYselos1.Close;
DM1.QRYselos1.active:=true;
DM1.QRYselos1.selectSQL.Clear;
DM1.QRYselos1.selectSQL.Add('Insert Into selos1 (id,DATA,NUMSELO,CONTROLE,TIPO)');
DM1.QRYselos1.selectSQL.Add('Values(:ID,:DATA,:NUMSELO,:CONTROLE,:TIPO)');
DM1.QRYselos1.ParamByName('ID').Asinteger:=strtoint(edit109.Text);
DM1.qryselos1.ParamByName('DATA').Asdatetime:=strtodate((maskedit1.text));
DM1.QRYselos1.ParamByName('NUMSELO').AsSTRING:=edit6.Text;
DM1.QRYselos1.ParamByName('CONTROLE').AsSTRING:=edit109.Text;
DM1.QRYselos1.ParamByName('TIPO').AsSTRING:=COMBOBOX5.Text;
DM1.QRYselos1.OPEN;
DM1.trSELOS1.active:=true;
DM1.TRSELOS1.CommitRetaining;
end;
estou chamando essa procedure através da rotina abaixo
var conta:integer;
begin
conta:=1;
EDIT2.TEXT:='';
testadados;
IF EDIT2.TEXT='' THEN
BEGIN
gravamov;
while conta <= strtoint(edit17.text) do
BEGIN //begin3
showmessage(inttostr(conta));
edit6.text:= edit14.text+edit3.text;
edit3.text:= inttostr(strtoint(edit3.text)+1);
gravaselos; //procedu que grava o movimento
conta:=conta+1;
end;
grata,
Fernanda Ramos-Setor informática - 5º Ofício S.J.Meriti
Mais detalhes sobre a lista de discussão lista