Nun will mein Kunde doch so langsam auf V6R1 umsteigen und prompt laufen schon bestimmte SQL's nicht mehr.

Ich habe eine TABLE mit einem Feld
CSKSENDUNG CHAR(10).

Über eine View wird das Feld umformatiert und in der Where-Klausel eingeschränkt:

SELECT
DEC(CSKSENDUNG, 7, 0) CSKSENDUNG
,DSENDEDAT
FROM RHTIA_16/SEKOPOOL
WHERE LENGTH(TRIM(CSKSENDUNG))=7
AND
TRIM(TRANSLATE(TRIM(CSKSENDUNG), 'X ', ' 1234567890'))=''

Bis V5R4 konnte ich dann das Feld CSKSENDUNG mit einem numerischen Wert suchen:

select * from RHTIA_16/TIAHDR
where CSKSENDUNG = 3

Bei V6R1 muss ich das nun mit einem korrekten Zeichenwert 7-stellig suchen:

select * from RHTIA_16/TIAHDR
where CSKSENDUNG = '0000003'

Der Fehler im Joblog ist:

Nachrichten-ID . . . . : CPD4019 Bewertung . . . . . . : 10 >>
Nachrichtenart . . . . : Diagnose >>
Sendedatum . . . . . . : 09.06.11 Sendezeit . . . . . . : 14:11:29 >>
>>
Nachricht . . . : SELECT/OMIT-Fehler in Feld Cast(SEKOPOOL_1.CSKSENDUNG AS >>
Decimal(7,0)), Teildatei TIAHDR. >>
Ursache . . . . : Ein SELECT/OMIT-Fehler ist in Satz 8539, Satzformat >>
*FIRST, Teildateinummer 1 der Datei TIAHDR in der Bibliothek RHTIA_16 wegen >>
Bedingung 6 der folgenden Bedingungen aufgetreten: >>
1 - Ein Dezimalfeld enthielt ungültige Daten. >>
2 - Ein SELECT/OMIT-Programmfehler ist aufgetreten (Daten in einem >>
SELECT/OMIT-Feld nicht mit SELECT/OMIT-Bestimmungen kompatibel). >>
3 - Ein SELECT/OMIT-Programmaufruffehler ist aufgetreten. >>
4 - Es wurde versucht, ein Gleitkommafeld, das keine Zahl war, zu >>
vergleichen. >>
5 - Ein DBCS-Feld enthielt ungültige Daten. >>
6 - Vor der SELECT/OMIT-Anforderung trat ein Datenzuordnungsfehler auf. >>
7 - Ein von einer Unterabfrage ausgewählter Satz enthält einen >>
Datenzuordnungsfehler. >>
8 - Das angegebene Escape-Zeichen war ungültig. >>
9 - Die Verwendung des Escape-Zeichens im angegebenen Muster war ungültig.>>
10 - Die Daten waren in einem Dezimalgleitkommafeld ungültig. >>
Trat der Fehler beim Versuch auf, einen bestehenden Satz abzurufen, >>
bezeichnet Teildatei TIAHDR, Datei TIAHDR, in der Bibliothek RHTIA_16 die >>
physische Datei, die das Feld enthält, das den Zuordnungsfehler verursacht >>
hat. Andernfalls trat der Fehler beim Versuch auf, eine Ausgabe- oder >>
Fortschreibungsoperation durchzuführen. Der Dateiname bezeichnet die offene >>
Datei, die das Feld enthält, das den Zuordnungsfehler verursacht hat. Ist >>
der Feldname *N, ist der Feldname entweder unbekannt oder ein Standardwert. >>


Mal sehen, wann IBM da mal ein PTF schickt da ich keine Lust habe alle Clientprogramme (ODBC-Zugriff) zu ändern.