Hallo Zusammen,
ich rufe eine DataSet vom Server ab und importiere die Daten in die
DB über CopyDataSet.
Das funktioniert auch einwandfrei. Da ich mehrere Tabellen habe und ich den User den Verlauf
zeigen möchte, wollte ich nach dem Download LDataSet.RecordCount abfragen. Doch da bekomme ich eine Fehlermeldung
Code:
"Im Projekt ist eine
Exception der Klasse EDatabaseError mit der Meldung 'Fehlende Abfrage, Tabelle- oder Procedurename' aufgetreten."
Naja dachte ich, ist mir egal, dann durchlaufe ich eben das DataSet da es eh nicht viele Datensätze sind
und zähle sie einfach in einer while Schleife. Doch danach wird nichts mehr importiert, auch nicht wenn ich
ausführe. Close-Open des LDataSets brings auch nichts.
Hat jemand eine Idee?
Delphi-Quellcode:
function TdmDALClient.StammdatenDownloadTable(
StammdatenTable: TStammdatenTablesEnum; AbTransferID: integer): Boolean;
var LDataSet: TDataSet;
TableName:string;
DataSetRecordCount:integer;
begin
result := False;
TableName := GetEnumName(TypeInfo(TStammdatenTablesEnum), Ord(StammdatenTable));
LDataSet := dmClientContainer.FProxyInst.StammdatenDownloadTable(Ord(StammdatenTable), StammdatenAllTransferID);
if Assigned(LDataSet) then
begin
if qrStammDatenImport.Active then qrStammDatenImport.Close;
qrStammDatenImport.MacroByName('TableNamen').AsRaw := TableName;
qrStammDatenImport.open;
qrStammDatenImport.FetchAll;
// -------- Kein Import möglich --------
// DataSetRecordCount := 0;
// LDataSet.First;
// while not LDataSet.eof do
// begin
// inc(DataSetRecordCount);
// LDataSet.next;
// end;
LDataSet.First;
if Assigned(OnDALClientProgressEvent)
then OnDALClientProgressEvent(Self, TableName, LDataSet.RecordCount, 'Stammdaten-Import'); //<<< Fehlermeldung bei LDataSet.RecordCount
// then OnDALClientProgressEvent(Self, TableName, DataSetRecordCount, 'Stammdaten-Import');
qrStammDatenImport.CopyDataSet(LDataSet, [coRestart, coAppend, coEdit]);
result := True;
end;
end;
Gruß Kostas