-
Fehler bei SQLRPGLE Compiler
Hallo Forum.
Ich habe folgende Konstellation auf einem System mit
V5R4:
Programm in einer Testbibliothek mit folgender Anweisung:
Update YPFSISA set SISA03 = :ArchivBez !! Substring(Sisa03, 61, 2940) Where...
Das Programm wird problemlos kompiliert.
Anschliessend kopiere ich das Programm in die Produktivbibliothek auf dem gleichen System (d.h. nur die Quellbibliothek wird geändert) und kompiliere erneut.
Ergebnis:
SQL-Vorkompilierung ist fehlgeschlagen.
Position 9 UPDATE gilt für die gesamte Tabelle. Position 48 Token ! ungültig. Gültige Token:
Hat jemand eine Idee?
Gruß Joe
-
!! ist nicht international und kann nicht in allen Umgebungen verwendet werden. In manchen Umgebungen muss stattdessen || verwendet werden.
Um dem Ganzen Hickhack zu entgehen ersetzte einfach die doppelten Ausfrufezeichen durch Concat und schon hast Du nirgends Probleme.
Birgitta
-
Zitat von B.Hauser
!! ist nicht international und kann nicht in allen Umgebungen verwendet werden. In manchen Umgebungen muss stattdessen || verwendet werden.
Um dem Ganzen Hickhack zu entgehen ersetzte einfach die doppelten Ausfrufezeichen durch Concat und schon hast Du nirgends Probleme.
Birgitta
Hallo Birgitta.
Danke für den Hinweis mit Concat. Das hat geklappt.
|| hatte ich bereits probiert, was aber nicht funktionierte.
Aber trotzdem: warum wird das Programm mit der !!-Anweisung auf der gleichen Maschine aus Bibl. A
kompiliert und nicht aus Bibl. B ??
Auf dem System läuft eine Software "*NOMAX" die
ein Backup-System synchronisiert. Kann da evtl. der Grund liegen.
Ich bin jedenfalls ratlos.
Gruß Joe
-
Das liegt ggf. an der CCSID der SRC-PF. Vielleicht ist diese ja unterschiedlich?
-
Vermutlich ist es auch eine andere Quellendatei, in die der Quelltext des Programms kopiert wird, und da ist wahrscheinlich die CCSID eine andere.
-
Danke an alle.
Natürlich die CCSID.
1 x 65535 und 1 x 273
-
Selbst wenn die CCSID's identisch wären und der Compile erfolgreich ist, kannst du zur Laufzeit dann Fehler bekommen.
Das PGM-Objekt unterliegt zur Laufzeit keiner Codewandlung.
Ist deine Job-CCSID zur Laufzeit abweichend zur Compilezeit, fliegt dir der SQL auch wieder um die Ohren, da CCSID-spezifische Zeichen, wie !! oder ||, (varianter Zeichensatz) in der CCSID des Jobs an SQL übergeben werden müssen.
Similar Threads
-
By Liebhoff in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 08-11-06, 14:28
-
By Robi in forum IBM i Hauptforum
Antworten: 10
Letzter Beitrag: 04-11-06, 16:02
-
By Asti in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 29-08-06, 13:24
-
By GraueEminenz in forum NEWSboard Programmierung
Antworten: 1
Letzter Beitrag: 10-07-06, 11:58
-
By Hubert in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 10-05-06, 09:41
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks