Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Datei (https://www.delphipraxis.net/194281-unerwarteter-fehler-vom-externen-datenbanktreiber-1-beim-oeffnen-einer-xls-datei.html)

mjustin 6. Nov 2017 08:17

Datenbank: Excel • Version: 2010 • Zugriff über: ADO

"Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Datei
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

in einem Delphi 2009 Projekt wird eine Excel-Datei über ADO geöffnet, gelesen und geschrieben. In der Vergangenheit lief dies in den VMWare Produktivumgebungen (Windows 7) und allen Entwicklungsumgebungen (Windows 7) problemlos.

Vermutlich durch ein Windows Update hat sich in den Office-Treibern auf den Entwicklungsrechnern etwas geändert, die Anwendung wirft die EOleException mit dem Text "Unerwarteter Fehler vom externen Datenbanktreiber (1)" sofort beim Öffnen der XLS-Datei. Wir können das in Frage kommende Windows Update vielleicht durch Deinstallationen der letzten Updates einkreisen, und müssen solange in den Produktivumgebungen auf Office-Updates verzichten.

Gibt es Möglichkeiten die Ursache des Fehlers weiter einzukreisen (ADO-Logging / Debugging)?

Ist es möglich, dazu ein Supportticket bei Embarcadero zu öffnen?

TiGü 6. Nov 2017 08:22

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat
 
Habt ihr mit dem Process Monitor das Problem untersucht?

HolgerX 6. Nov 2017 08:23

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat
 
Hmm..

Zeig mal deinen ConnectionString..

Embarcadero hat damit nichts zu tun, da es sich um eine Fehlermeldung des Treibers handelt!

Edit:
Und gib die Excel-Version vom Altsystem (Win7) und Neusystem an.

mjustin 6. Nov 2017 08:33

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat
 
Zitat:

Zitat von HolgerX (Beitrag 1385293)
Hmm..

Zeig mal deinen ConnectionString..

Embarcadero hat damit nichts zu tun, da es sich um eine Fehlermeldung des Treibers handelt!

Edit:
Und gib die Excel-Version vom Altsystem (Win7) und Neusystem an.


Der Connection String ist:

Delphi-Quellcode:
Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\Sandbox\***.xls; Extended Properties="Excel 8.0; HDR=YES; IMEX=0"


Excel Version in den Entwicklungsumgebungen:
14.0.7188.5002 (32 Bit)

In der Produktionsumgebung:
14.0.7184.5000 (32 Bit)

HolgerX 6. Nov 2017 08:40

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat
 
Hmm..

Alternativ den Provider Microsoft.ACE.OLEDB.X.0 (Bei X die installierte Version, müsste bei dir 12 sein) verwenden anstelle von Microsoft.Jet.OLEDB.4.0.

mjustin 6. Nov 2017 08:55

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat
 
Zitat:

Zitat von HolgerX (Beitrag 1385297)
Hmm..

Alternativ den Provider Microsoft.ACE.OLEDB.X.0 (Bei X die installierte Version, müsste bei dir 12 sein) verwenden anstelle von Microsoft.Jet.OLEDB.4.0.

Ok, der Connection String beginnt nun mit

Code:
Provider=Microsoft.ACE.OLEDB.12.0;
Dann erscheint eine andere Fehlermeldung:

"Der Provider kann nicht gefunden werden. Möglicherweise ist der Provider nicht richtig installiert worden."

jobo 6. Nov 2017 09:06

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat
 
Den "unerwarteten Fehler" bei ADO kenne ich ganz gut, er taucht gerne bei Datumswerten mit Range Verletzung (erlaubten Range kenne ich nicht) auf. (Unabhängig von der Datenquelle, hier Excel)
Was scheinbar nach einem Fehler nach Windows Update aussieht, ist also vielleicht einfach Zufall (so wie mit der schwarzen Katze).

Mein Tipp: Exceldaten im Originalprogramm auf mögliche, außergewöhnliche Datumswerte prüfen. Das gilt besonders, wenn es sich um Handeingabedaten handelt oder zumindest manuell bearbeitet bzw. "korrigiert" (ein anderer Grund würde mir auch kaum einfallen, Excel als Importformat zu nutzen)

mjustin 6. Nov 2017 09:09

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat
 
Zitat:

Zitat von jobo (Beitrag 1385301)
Den "unerwarteten Fehler" bei ADO kenne ich ganz gut, er taucht gerne bei Datumswerten mit Range Verletzung (erlaubten Range kenne ich nicht) auf. (Unabhängig von der Datenquelle, hier Excel)
Was scheinbar nach einem Fehler nach Windows Update aussieht, ist also vielleicht einfach Zufall (so wie mit der schwarzen Katze).

Wir können einiges ausschliessen, da der Fehler auch dann auftritt, wenn wir alte Dateien und alte Programmversionen in der Entwicklungsumgebung testen, und in der Produktivumgebung diese Dateien fehlerfrei geöffnet werden können.

HolgerX 6. Nov 2017 09:11

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat
 
Zitat:

Zitat von mjustin (Beitrag 1385300)
Zitat:

Zitat von HolgerX (Beitrag 1385297)
Hmm..

Alternativ den Provider Microsoft.ACE.OLEDB.X.0 (Bei X die installierte Version, müsste bei dir 12 sein) verwenden anstelle von Microsoft.Jet.OLEDB.4.0.

Ok, der Connection String beginnt nun mit

Code:
Provider=Microsoft.ACE.OLEDB.12.0;
Dann erscheint eine andere Fehlermeldung:

"Der Provider kann nicht gefunden werden. Möglicherweise ist der Provider nicht richtig installiert worden."

Wie geschrieben, könnte es 12 sein, jedoch auch 14 oder 15 je nach installierter Office-Version.

mjustin 6. Nov 2017 09:32

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat
 
Zitat:

Zitat von HolgerX (Beitrag 1385303)
Zitat:

Zitat von mjustin (Beitrag 1385300)
Zitat:

Zitat von HolgerX (Beitrag 1385297)
Hmm..

Alternativ den Provider Microsoft.ACE.OLEDB.X.0 (Bei X die installierte Version, müsste bei dir 12 sein) verwenden anstelle von Microsoft.Jet.OLEDB.4.0.

Ok, der Connection String beginnt nun mit

Code:
Provider=Microsoft.ACE.OLEDB.12.0;
Dann erscheint eine andere Fehlermeldung:

"Der Provider kann nicht gefunden werden. Möglicherweise ist der Provider nicht richtig installiert worden."

Wie geschrieben, könnte es 12 sein, jedoch auch 14 oder 15 je nach installierter Office-Version.

Erst mal vielen Dank, wir schauen ob wir mit ACE ans Ziel kommen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:28 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz