[prev in list] [next in list] [prev in thread] [next in thread] 

List:       suse-adabas
Subject:    Timestampfelder und Date Time Field Overflow
From:       "Christoph Steffes" <cs () deutschemailbox ! de>
Date:       2002-02-01 17:05:39
[Download RAW message or body]

Hallo,

Ich hab ein kleines Problem mit meinem ADABAS DB Zugriff unter Visual Basic
Versionen 5 und 6 der sich leider seit heute auf meinem System breit macht.
Auch wenn die Frage nicht unbedingt in die ADABAS Liste gehört könnte es ja
doch sein das schon einmal jemand mit der VB Entwicklungsumgebung etwas
ähnliches erfahren hat. All jene die mit VB nichts am Hut haben bitte ich um
etwas Nachsicht aber ich nähere mich langsam aber sicher der Marke Overload
und such Hilfe an jedem erdenklichen Ort wo etwas ähnliches schon einmal
aufgetaucht sein könnte.

Durch den Ausfall einer Festplatte war ich leider gezwungen an meinen
Entwicklungsrechner eine neue Systemplatte ein zu bauen. Wie bereue ich
diesen Schritt!! Ungläubig und staunend höre ich die mit einem Lächeln
vorgetragenen Berichte eines MAC liebenden Kollegen über den Wechsel seiner
Systemplatte. Aber was soll ich machen ich brauch nun mal Windows. Und da
arbeite ich mit VB5 und VB6. Und seit ich meinen Rechner umgebaut habe kann
ich mit meinen Entwicklungswerkzeugen nicht mehr auf Datensätze zugreifen,
die in ihrer Select Felderliste einen Timestamp enthalten. Solange ich im
Select die Finger von Timestampwerten lasse habe ich keine Probleme. Aber
leider ist eines der Hauptfelder ein Timestampfeld. Einer der auf meinem
System marodierenden Datentransporteure baut ungeheuren Mist! Die größte
Verwunderung ruft jedoch hervor das auf meinen kleinen Ausweichrechner mit
nicht ganz so kraftvollem Prozessor aber sonst identischen Vorraussetzungen
alles funktioniert! Unter identischen Vorrausstezungen meine ich das die
für den Datenzugriff verantwortlichen Programme und Bibliotheken also ODBC
Adabas, ODBC Manager, MS Jet identisch sind. Ein auf dem Ausweichrechner
übersetztes und auf meinen neu eingerichteten Rechner installiertes Programm
verhönt mich und greift ebenfalls problemlos auf Timestampfelder zu. Auch
Access 97 und Domain sind sich in der Behandlung von Timestampfeldern mal
ausgesprochen einig und versehen klaglos ihren Dienst. Der Adabas Trace und
der ODBC Trace sind bis zu dem Moment des Programmabbruchs identisch. Vom
Adabas ODBC Treiber wird "DIAG [22008] [SOFTWARE AG][SQLOD32 DLL]Datetime
field overflow." als Fehlermeldung geliefert meine derzeitige ODBC Version
bringt aber nur noch "[      50] "[SOFTWARE AG][SQLOD32 DLL" hervor
(zumindest laut ODBC SQL Trace). Ein ähnliches Testprojekt unter C++
erstellt funktioniert leider auch. VB5 und VB6 weigern sich ein ADABAS
Timestampfeld nur anzuzeigen oder ermitteln zu lassen. Also auch "SELECT
MAX(Timestampfeld) AS MAX FROM TABELLCHEN" führt zu obigem Fehler. Der
Fehler tritt auf in der ODBC Funktion SQLGetData wenn ein SQL_C_TIMESTAMP
vom ODBC Treiber angefordert wird. Diese Funktion aus der
Entwickelunbgsumgebung von VB5 oder VB6 aufgerufen führt zu dem Datetime
field overflow, das nähmliche Programm aus der Entwickelunbgsumgebung die es
nicht ausführen möchte übersetzt funktioniert wie gewünscht!!! Sorry aber
ich weiß nicht mehr weiter falls jemand einen Tip hat wäre ich sehr dankbar.
Ach ja Service Pack 3 bei VB5  und Service Pack 5 bei VB6 sind installiert.

mfg
Christoph Steffes





[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic