Hallo,
Ueber den Excel-ODCB-Treiber habe ich eine Excel Tabelle in meine Anwendung eingebunden. Werte werden auch angezeigt. Das erste Problem liegt bei der Navigation zwischen den Datensätzen. Drücke ich auf Last (table.last) und dann gleich wieder auf First (table.first) wird folgender Fehler angezeigt: "Ungültiges BLOB-Handle im Datensatzpuffer.". Im Weiteren wollte ich die Werte der Excel-Tabelle mittels einer Schleife in eine Interbase6-Datenbank übernehmen. Insgesamt befinden sich 486 Datensätze in der Excel-Tabelle. Die ersten 3 Datensätze werden ohne Probleme übernommen. Beim Vierten kommt dieses: "arithmetic exc eption, numeric overflow, or string truncation. Cannot transliterate character between character sets."
Der Quelltext in Delphi5:
procedure Tfrm_Haupt.btn_TransportClick(Sender: TObject);
begin
exc_Table.First;
int_Table.EmptyTable;
while not exc_Table.Eof do begin
int_Table.Insert;
int_Table.FieldByName ('Vid').asinteger := exc_Table.FieldByName
('Vid').asinteger;
int_Table.FieldByName ('Strasse').asstring := exc_Table.fieldByName
('Strasse').asstring;
exc_Table.Next;
int_Table.Post;
end;
end;
Ich arbeite mit einem WindowsXP-Rechner.
Ich würde mich freuen, wenn einer von euch mir helfen könnte.
Danke
Roc
Ueber den Excel-ODCB-Treiber habe ich eine Excel Tabelle in meine Anwendung eingebunden. Werte werden auch angezeigt. Das erste Problem liegt bei der Navigation zwischen den Datensätzen. Drücke ich auf Last (table.last) und dann gleich wieder auf First (table.first) wird folgender Fehler angezeigt: "Ungültiges BLOB-Handle im Datensatzpuffer.". Im Weiteren wollte ich die Werte der Excel-Tabelle mittels einer Schleife in eine Interbase6-Datenbank übernehmen. Insgesamt befinden sich 486 Datensätze in der Excel-Tabelle. Die ersten 3 Datensätze werden ohne Probleme übernommen. Beim Vierten kommt dieses: "arithmetic exc eption, numeric overflow, or string truncation. Cannot transliterate character between character sets."
Der Quelltext in Delphi5:
procedure Tfrm_Haupt.btn_TransportClick(Sender: TObject);
begin
exc_Table.First;
int_Table.EmptyTable;
while not exc_Table.Eof do begin
int_Table.Insert;
int_Table.FieldByName ('Vid').asinteger := exc_Table.FieldByName
('Vid').asinteger;
int_Table.FieldByName ('Strasse').asstring := exc_Table.fieldByName
('Strasse').asstring;
exc_Table.Next;
int_Table.Post;
end;
end;
Ich arbeite mit einem WindowsXP-Rechner.
Ich würde mich freuen, wenn einer von euch mir helfen könnte.
Danke
Roc
Comment