Moin...
Eine meiner for-Schleifen läuft rückwärts, obwohl die Schleifenvariable verwendet wird.
Seit wann optimiert der Compiler sowas?
Der Switch steht übrigens auf Verwendung von SetRange...
TblMSys ist eine TTable (
Paradox)
MSysInfo ist eine TKbmMemoryTable (Speichertabelle)
Es handelt sich um Delphi 7 Enterprise.
Delphi-Quellcode:
const
LoadFields : Array[0..6] of String = ('SO', 'KO', 'ST', 'KT', 'AT', 'LA', 'FG');
for Loop := 1 to Length(LoadFields) do
begin
{$IFDEF DB_MSSQL}
TblMSys.SQL.Text := 'SELECT * FROM Z4MSYS WHERE ART=''' + LoadFields[Loop - 1] + '''';
TblMSys.Open;
{$ELSE}
TblMSys.SetRange([LoadFields[Loop - 1]], [LoadFields[Loop - 1]]);
{$ENDIF}
while not TblMSys.Eof do
begin
MSysInfo.Append;
MSysInfo.FieldByName('ART').asString := TblMSys.FieldByName('ART').asString;
// Noch ein paar Felder...
MSysInfo.FieldByName('F1').asString := TblMSys.FieldByName('F1').asString;
MSysInfo.Post;
TblMSys.Next;
end;
end;