Hallo,
ich habe folgendes problem, ich habe 88 werte in einem stringgrid, welche in eine interbase datentabelle geschrieben werden sollen. nun gelingt mir das an sich schon, es werden aber nur die ersten 87 werte eingetragen, kann mir evtl. einer sagen woran das liegen koennte? hier der code:
Delphi-Quellcode:
for j:=1 to length(activestrat.timekrits) do // anzahl der krits
for i:=1 to length(activestrat.timekrits[j]) do // anzahl der zeitp
begin
FDB.DS_Timedepvals.Active:=true;
FDB.DS_Timedepvals.Append;
FDB.DS_TimedepvalsID_OPTIONEN.AsInteger:=Opt_ID;
FDB.DS_TimedepvalsID_KRITERIEN.AsInteger:=kritid[j-1];
FDB.DS_TimedepvalsTIMEPOINT.AsInteger:=zeitpunkte[i-1];
FDB.DS_TimedepvalsWERT.AsString:=activestrat.timekrits[j,i-1];
end;
// bis hierher passt es, auch der letzte wert, wert 88, wird angezeigt
//Suchen des eben angelegten Datensatzes
FDB.SQL_S_Timedepvals.Params[0].Value:=opt_id;
FDB.SQL_S_Timedepvals.ExecQuery;
if FDB.SQL_S_Timedepvals.RecordCount>0 then
begin
while not FDB.SQL_S_Timedepvals.Eof do
begin
Exist:=FDB.SQL_S_Timedepvals.RecordCount;
FDB.SQL_S_Timedepvals.Next;
end;
end else
begin
//Datensatz nicht vorhanden
MessageDlg('Der Optionsdatensatz konnte nicht verknüpft werden.', mtError,[mbOk], 0);
FDB.TR_FARce.Rollback;
exit;
end;
FDB.TR_FARce.Commit;
nach dem commit stehen aber nur die ersten 87 werte drin ?
Grumble