[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    May 2005
    Beiträge
    103

    Question SQLRPGLE im Free-Format wird nicht kompiliert

    Hallo,

    habe im Free-Format einige SQL-Statements nach folgendem Schema eingebunden:

    H ....
    D ....

    /Free

    Exec SQL
    Create KdCsr Cursor for
    Select KdNr, KdVrn1, KdPLV
    From KUNDST00
    Where KdMan = 1 and KdLand = 'FR'
    For Read Only;

    Exec SQL
    Open KdCsr;
    .
    .
    .
    .

    *inLR = *on;

    /End-Free

    Beim Versuch dieses Programm per Auswahl 14 (CRTSQLRPGI) zu kompilieren (mit Commit *NONE, da nicht journalisiert), bekomme ich 183 Fehler des Typs *RNF0257 (Eintrag für Formularart für Hauptprozedur ungültig oder in falscher Reihenfolge)
    und 1 Fehler des Typs *RNF7023 (Das Umwandlungsprogramm kann nicht bestimmen, wie das Programm enden kann.)

    Die 183 Fehler entsprechen ziemlich genau der Anzahl der Statements in meinem PGM.

    Weiß jemand auf Anhieb, was hier der Fehler sein könnte

    Noch etwas... ich beziehe mich in meinen eingebundenen SQL-Statements auf mehrere Dateien, von denen ich eine auch fortschreibe. Muss ich diese in den F-Bestimmungen definieren, obwohl ich die Felder aussschließlich in den SQL-Statements anspreche ????

  2. #2
    Registriert seit
    Jun 2004
    Beiträge
    17
    Hallo Tobse77,

    es müsste EXEC SQL declare KdCstr for ... heissen.

    Wenn Dein Code spaltengrecht gezeigt wird, dann beginnt Dein Code zu früh.
    "/FREE" muss ab Spalte 7 beginnen. Der eigentliche Programmcode darf in Free-RPG erst ab Spalte 8 beginnen.
    Im SEU (ab V5R4) oder im Websphere wird ein Fehler dafür angezeigt.
    Im SEU vor V5R4 gibt es für Free-RPG leider keine Syntaxprüfung.

    Bogomil

  3. #3
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    Mit welchem Release arbeitest Du?

    Embedded SQL im Free Format wird standardmäßig erst ab Release V5R4 unterstützt.

    Unter Release V5R3 kann man Free Format SQL mit diversen PTFs nachrüsten.

    Übrigens: Wenn man die Free-Format-Unterstützung für SQL hat, kann man auch auf V5R2 runtercompilieren und diesen Code auf Maschinen mit V5R2 ohne Probleme laufen lassen.

    Dateien, die mit SQL angesprochen bzw. verarbeitet werden müssen nicht in den F-Bestimmungen angegeben werden. Ob nur gelesen wird oder auch Updates erfolgen ist unerheblich.

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 5. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  4. #4
    Registriert seit
    May 2005
    Beiträge
    103
    Hallo :-)

    Die Vermutung von Bogomil war (leider) richtig !! Ich habe nochmals die Spalten abgezählt und dabei festgestellt, dass die Anweisungen /Free und /End-Free um eine Stelle zu weit rechts auf St. 8 waren :-((

    Schade, dass SEU hierauf nicht hinweist !!! Übrigens: Wir haben hier Release V5R4 und ich habe trotzdem keinen Fehler angezeigt bekommen.

    Declare habe ich im Sourcecode stehen ... hab mich hier im Forum "vertippt"


    Nun funktioniert alles !!

    Danke für eure Hilfe !!

    Tobias

Similar Threads

  1. Frei Porn Site!
    By Fucasdreh in forum NEWSboard Server Job
    Antworten: 0
    Letzter Beitrag: 10-01-07, 13:12
  2. Parameter empfangen in Free
    By kr1s in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 08-09-06, 11:59
  3. CPYTOIMPF Format
    By Muchi in forum IBM i Hauptforum
    Antworten: 11
    Letzter Beitrag: 03-08-06, 09:41
  4. timestamp im free format
    By redsky in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 04-05-05, 12:26

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •