-
Fully Free und SQLRPGLE
Hallo,
nur mal eine kurze Frage? Nutzt jemand bereits das Fully Free RPG? (Stichwort **FREE). Und falls ja, klappt das bei euch auch mit der Dateiart SQLRPGLE? Bei uns können wir keine Copy-Strecken einbinden, wenn die Dateiart SQLRPGLE ist. Ich habe bereits einen Call bei IBM aufgemacht. Aber ich habe noch keine Lösung erhalten. Bisher sagt man nur, es müsste eigentlich gehen.
Deshalb meine Frage, ob jemand von euch etwas dazu sagen kann.
Dieter
-
Sorry, habe gerade gesehen, dass ich das falsche Forum gewählt habe. Sollte eigentlich in Programmierung gestellt werden. Aber ich lasse es jetzt einfach mal hier.
-
Hallo Dieter,
kann es sein dass du nach der Compile Option:
RPGPPOPT > *LVL2
suchst?
lg Andreas
-
Hallo Andreas,
danke für die Antwort. Aber nein, diese Option ist bei uns bereits gesetzt.
Wir wandeln prinzipiell mit folgenden CMD:
Code:
// Basis-Command festlegen:
cmd = 'CRTSQLRPGI COMMIT(*NONE) OBJTYPE(*MODULE) TGTRLS(*CURRENT) +
DATFMT(*EUR) DBGVIEW(*SOURCE) USRPRF(*OWNER) +
DYNUSRPRF(*OWNER) RPGPPOPT(*LVL2) ';
(Ein paar Parameter sind hier jetzt nicht angegeben).
Ich muss dazusagen, dass ich versuche, ein Serviceprogramm zu erstellen. Mit einem "normalen" PGM habe ich es noch gar nicht versucht.
Dieter
-
Mein Problem ist, dass gar nichts funktioniert, sobald ich die Teildateiart SQLRPGLE habe UND eine Copy-Strecke eingebettet ist. Es spielt dabei keine Rolle, was in der Copy-Strecke drinsteht. Es kann auch eine Copy-Strecke mit reinem free-Format Kommentar sein. Der Parser erkennt nur Blödsinn. Er erkennt auch keine SQL-Anweisungen mehr. Erst wenn ich die von ganz links nach Spalte 8 schiebe, erkennt er die SQL-Anweisungen zumindest. Sieht für mich so aus, als würde die Dateiart SQLRPGLE gar nicht mit Copy-Strecken klarkommen und den Parser dann auf das "normale" Free umschalten.
Dieter
-
Aktuell ist es so, dass der SQL-Precompiler, Copy-Strecken, die mit /COPY oder /INCLUDE definiert sind, nur dann im FULL-Free auflösen kann, wenn der Slash (/) genau auf Position 7 steht.
Wenn in der Copy-Strecke nur für den SQL-Precompiler uninteressante Informationen hinterlegt sind, würde ich die Copy-Strecke mit /INCLUDE einfügen und mit RPGPPOPT *NONE umwandeln.
Prüfe sicherheitshalber, ob Ihr auch alle PTFs installiert habt, ich hatte meine Freude damit, dass SQLCA vor die H-Bestimmungen kopiert wurde!!!
Birgitta
Birgitta
-
Danke Birgitta.
Das mit dem Slash auf Position 7 hatte ich schon probiert. Bringt bei mir nichts. Selbst wenn in der Copy-Strecke nur Kommentar steht, geht es nicht. Für den Echtfall benötigen wir jedoch Copy-Strecken, in denen teilweise fixed Format drinsteht. In den Copy-Strecken sind wiederum andere Copy-Strecken mit include eingebunden. Wir haben also 2-schichtige Copy Strecken: In das Programm wird eine Copy-Strecke mit /copy eingebunden. In der Copy Strecke selber steht dann noch ein /include.
Die PTFs sind alle da. Habe ich schon an IBM gemeldet.
Deine Sache mit SQLCA vor den H-Bestimmungen: Wurde das durch ein PTF beseitigt?
Wir haben die PTFs SF99701 mit Level 38 und das SI58136. Hast du noch neuere?
Dieter
-
Ich möchte nur mal kurz den Stand der Dinge verkünden:
Es sieht so aus, als würde der (Pre-)Compiler nicht korrekt arbeitet, wenn man das Schlüsselwort RPGPPOPT(*LVL2) verwendet. Es geht, wenn man es auf *NONE stellt. Das funktioniert aber inhaltlich bei uns nicht, da es einige Programme gibt, die per embedded SQL eine per Copy-Strecke eingebundene Datenstruktur füllen.
Mal sehen, was IBM für einen Lösungsvorschlag hat.
Dieter
-
Vielleicht noch eine Anmerkung:
Sobald Du auf **FREE bist können danach keine Fix-Format-Definitionen mehr eingebunden werden.
Es gibt keine Möglichkeit den FULL-Free wieder abzustellen.
Wenn Deine Datenstruktur im Fix-Format ist, darfst Du erst nach der Definition der Datenstruktur auf FULL-Free gehen.
Birgitta
-
Steht das echt so im Handbuch? Ich dachte, ich hätte gelesen, dass man in der ersten Zeile des Sourcecodes **FREE eintragen muss. Dann darf nur noch free Code in der Quelle folgen. Wenn man doch fixed format code benötigt, muss man den über eine Copy-Strecke einbinden. Ich habe bisher nichts gelesen, was eine Unterscheidung zwischen Definitionen und sonstigen Anweisungen notwendig macht.
Aber ich gestehe, ich habe auch nicht viel Literatur dazu gefunden.
Dieter
-
Nochmal zur Klarstellung: Unsere Copy-Strecken enthalten niemals Programmcode, sondern nur Prototypes und Datenstrukturen (als Templates). Unsere Copy-Strecken werden deshalb immer ganz oben bei den Deklarationen eingebunden. Da alle Datenstrukturen in den Copy-Strecken Templates sind, verwenden wir die auch nie direkt, sondern nutzen sie nur, um eine likeds Definition für eine echte Datenstruktur machen zu können.
Dieter
Similar Threads
-
By woodstock99 in forum NEWSboard Programmierung
Antworten: 23
Letzter Beitrag: 29-07-15, 11:31
-
By Toschie in forum IBM i Hauptforum
Antworten: 12
Letzter Beitrag: 02-02-15, 14:28
-
By ExAzubi in forum NEWSboard Programmierung
Antworten: 10
Letzter Beitrag: 10-11-14, 10:12
-
By Tonazzo in forum NEWSboard Programmierung
Antworten: 5
Letzter Beitrag: 16-06-14, 09:30
-
By B.Hauser in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 01-10-01, 17:31
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