Registriert seit: 21. Mai 2004
Ort: Lage
232 Beiträge
Delphi 2005 Professional
|
Probleme mit ADOTable
13. Sep 2004, 09:10
Hallo,
ich hab ein Problem mit dieser Funktion. Ich möchte in der Tabelle test1 alle Werte aus der Spalte sSubject auslesen und in eine Datei schreiben. Dies tut er aber irgendwie nicht richtig. An meinem Rechner macht er es allerdings und am anderen nicht. Er schreibt noch in die LogDatei, dass er die Spalte einliest (s. (1)) und der nächste Eintrag in die LogDatei ist bei (2), dass ein Fehler beim Bearbeiten der TAbelle aufgetreten ist. Eintrag (3) kommt auch nicht in der LogDatei an, also müsste er die Tabelle geöffnet haben, oder?
Woran kann das nun liegen?
Delphi-Quellcode:
function DBEintraegeInStringListeSortieren():Boolean;
var
posx : Integer;
s : String;
zahl, code: Integer;
begin
try
//alle TabellenEinträge aus sSubject in Stringliste schreiben
frmLueckenSucher.ADOTable.TableName:= 'test1';
(1) uLogFile.LogAdd(LogDatei, 'Einlesen der sSubject-Spalte', true);
frmLueckenSucher.ADOTable.Open;
if not frmLueckenSucher.ADOTable.Active then
(3) uLogFile.LogAdd(LogDatei, 'Tabelle konnte nicht geöffnet werden', true)
with frmLueckenSucher.ADOTable do
begin
try
First;
uLogFile.LogAdd(LogDatei, 'erster Datensatz', true);
//solange nicht am Ende
while not Eof do
begin
posx:= pos(':',frmLueckenSucher.ADOTable.FieldValues
['sSubject']);
if posx > 0 then
begin
s:= '';
s:= copy(frmLueckenSucher.ADOTable.FieldValues
['sSubject'],posx+1,Length(
frmLueckenSucher.ADOTable.FieldValues['sSubject']));
s:= Trim(s);
if length(s) < 6 then
next;
if not (s='') then
begin
val(s,zahl, code);
if code > 4 then
uLogFile.LogAdd(GesamteLuecken, Trim(copy
(s,1,code-1)), true);
if code = 0 then
uLogFile.LogAdd(GesamteLuecken, Trim(inttoStr
(zahl)), true);
end;
end;
Next;
end;
except
ShowMessage('Fehler');
end;
end;
uLogFile.LogAdd(LogDatei, 'mit ganzer Tabelle fertig', true);
LueckenListe.LoadFromFile(GesamteLuecken);
//dann Stringliste aufsteigend sortieren
LueckenListe.Sort;
uLogFile.LogAdd(LogDatei, 'Liste sortiert', true);
Result:= True;
except
Result:= False;
(2) uLogFile.LogAdd(LogDatei, 'Fehler beim Bearbeiten der Tabelle', true);
end;
end;
Susanne
|
|
Zitat
|