PDA

View Full Version : SQL-SELECT von AS-Daten über MS-Access97



LGALF
23-10-02, 09:03
Hallo Entwickler,
ich habe folgendes Problem beim SQL
(evtl. SELECT OPTION)
- - -
Ein Feld einer Datei auf der AS/400 ist
// 14-stellig numerisch //Datum(8)+Uhrzeit(6)
- - -
Die Datei ist Teil einer Standard-Software, ich kann somit am Feld nichts ändern.
Im AS/400-SQL kann ich dieses Feld per SELECT
anzeigen lassen, es wird mir dann editiert
JJJJ.MM.TT/HH:MM:SS
Per ODBC ist diese Datei mit MS-Access 97
verbunden. Datei/Externe Daten/Tabellen verknüpfen /ODBC.....
- - -
In der Access97-SQL-Abfrage SELECT wir das Feld
wie folgt dargestellt: 2002102E+13
Inhalt = 20021023080000
(Edit AS = 2002.10.23/08:00:00)
Mit einem Ergebnis: Alle Sätze mit Feld (NUM 14)
ist grösser Null wäre ich schon zufrieden, jedoch
bekomme ich momentan kein richtiges Ergebnis.
- - -
Viele Grüsse Alf

Fuerchau
23-10-02, 09:14
Versuch den SQL mal als SQL-Passthru, d.h., dass Access keinerlei eigenen Konvertierung durchführt.
Wenn das Feld als ZONED definiert ist, kann es bei der Konvertierung zu DOUBLE ggf. zu Problemen führen.

Setze ggf. CA/400 V4R5, besser V5R1 ein, da hier Verbesserungen bei Feldern des Typs DEC/NUM im ODBC-Treiber vorgenommen wurden.

Ggf. kann das Feld auch mit "dec(Feld, 14, 0) as Feld" konvertiert werden, da gepackte Daten von Access besser umgesetzt werden als gezonte Daten.
Wenn das auch nichts hilft, dann Zwangskonvertierung in "CHAR(FELD) as FELD".

Wie gesagt, dies Funktioniert nur als SQL-Passthru.
Wenn diese Abfrage als Parameter-Abfrage verwendet werden soll, dann an der Stelle der Parameter ein "?" einsetzen.
Über die Parameterdefinition kann dann später ein Name vergeben werden.
Wird der SQL aber wieder verändert, werden leider auch die Parameternamen wieder entfernt.

LGALF
23-10-02, 16:16
Vielen Dank für die Info, ich habe nun den Fehler gefunden. In der Datei waren - duplicate keys möglich - ich hatte jedoch beim linken / in einem Auswahlfenster -
unique-key angeklickt / nach neuem linken
geht nun die Auswahl / Anzeige nur aller Sätze mit Null korrekt (über FORMAT konnte ich eine Komplett-Anzeige des Feldes erreichen - mir genügt jedoch die Info ob Feldinhalt Null = Sätze ausschliessen)

Es hat etwas Zeit gebraucht bis ich den Fehler gefunden hatte, dafür bin ich aber jetzt an Erfahrung reicher.

Viele Grüsse Alf