Fórum EOF com Rsultado Errado #301262
31/10/2005
0
with self.ServicoSite.DataSet DO
BEGIN
First;
WHILE NOT EOF DO
BEGIN
strsql:=´Update SBDB.SERVIÇO_CREDENCIADO SET ´;
for i:=0 to FieldCount-1 do
begin
STRSQL:=STRSQL+Fields[i].DisplayName+´=´;
IF (Fields[I].DataType=ftString) or (Fields[I].DataType=ftWideString) THEN
STRSQL:=STRSQL+´´´´+ Fields[i].AsString+´´´,´
ELSE IF (Fields[I].DataType=ftFloat) OR (Fields.Fields[I].DataType=ftCurrency) or (Fields.Fields[I].DataType=ftInteger)THEN
STRSQL:=STRSQL+ inttostr(Fields[I].AsInteger)+´,´
ELSE IF (Fields[I].DataType=ftDate) OR (Fields[I].DataType=ftDateTime) OR (Fields[I].DataType=ftTimeStamp) THEN
STRSQL:=STRSQL+ ´TO_DATE(´´´+ FORMATDATETIME(´DD/MM/YYYY´,Fields[I].AsDateTime)+´,´´DD/MM/YYYY´´),´;
END;
END;
Next;
END;
Rogeriorock
Curtir tópico
+ 0Posts
31/10/2005
Silviogs
este next não deveria está dentro do while?
with self.ServicoSite.DataSet DO BEGIN
First;
WHILE NOT EOF DO BEGIN
strsql:=´Update SBDB.SERVIÇO_CREDENCIADO SET ´;
for i:=0 to FieldCount-1 do begin
STRSQL:=STRSQL+Fields[i].DisplayName+´=´;
IF (Fields[I].DataType=ftString) or (Fields[I].DataType=ftWideString) THEN
STRSQL:=STRSQL+´´´´+ Fields[i].AsString+´´´,´
ELSE IF (Fields[I].DataType=ftFloat) OR (Fields.Fields[I].DataType=ftCurrency) or (Fields.Fields[I].DataType=ftInteger) THEN
STRSQL:=STRSQL+ inttostr(Fields[I].AsInteger)+´,´
ELSE IF (Fields[I].DataType=ftDate) OR (Fields[I].DataType=ftDateTime) OR (Fields[I].DataType=ftTimeStamp) THEN
STRSQL:=STRSQL+ ´TO_DATE(´´´+ FORMATDATETIME(´DD/MM/YYYY´,Fields[I].AsDateTime)+´,´´DD/MM/YYYY´´),´;
END;
( Next;) forma atual
END;
( Next;) forma anterior
END;
Gostei + 0
31/10/2005
Rogeriorock
Gostei + 0
31/10/2005
Rogeriorock
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)