[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    May 2004
    Beiträge
    473

    Eingangsparameter im Free Code

    Hallo zusammen,

    Ich mache total free und gebe die Eingangsparameter im Programm wie folgt an

    dcl-pi *n extpgm;
    parm PiJobName char(10);
    parm PiJobUser char(10);
    parm PiJobNo char(6);
    parm PiSbs char(10);
    parm PoJobName char(10);
    parm PoJobUser char(10);
    parm PoJobNo char(6);
    end-pi;

    Bei der Kompilierung sagt er mir aber dass genau die Variablen nicht definiert sind.

    Ich habe dcl-pi am Anfang stehen nach ctl-opt

    Ich habe keinen dcl-pr. Ich weiß nicht ob ich den brauche denn es ist eigentlich ein ganz einfaches "RPG" und ich denke ich muss den *entry plist einfach mit dem dcl-pi ersetzen.

    Was könnte falsch sein?

    Viele Grüße Harald

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.748
    dcl-pi, Procedure Interface, stehen am Anfang des prozeduralen Teils im Hauptprogramm und ersetzen die *entry-Definition. Die Variablen sind da dann auch definiert.
    Wenn auf dcl-pi weitere Definitionen folgen, ist das ein Reihenfolgefehler.
    *entry ist ja auch eine C-Anweisung und kann daher nicht im Bereich der D-Definitionen stehen.

    Anders sieht es aus, wenn du eine Main-Procedure im ctl-opt angibst, und dann per dcl-proc die Main definierst.
    Nach dcl-proc erfolgt dann immer zuerst die dcl-pi für die Prozedur, gefolgt von nachfolgenden Definitionen.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Jan 2007
    Beiträge
    1.015
    wenn es eine einfache Parameterliste ist, warum nicht so?

    dcl-pi *n;
    PiJobName char(10);
    PiJobUser char(10);
    PiJobNo char(6);
    PiSbs char(10);
    PoJobName char(10);
    PoJobUser char(10);
    PoJobNo char(6);
    end-pi;

    Bevor Du mit den "C" Ops beginnst nach den übrigen Definitionen (Files, Fields, Arrays etc.)
    kf

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.748
    Wie war das noch mal mit dem Wald und den Bäumen?
    Klar "Parm" ist ein Parameter-Entry und ist in Free nicht erlaubt:-).
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Nov 2003
    Beiträge
    2.421
    Oder vielleicht als dcl-parm ?

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.748
    Ja, da hast du auch recht:

    ILERPG-Reference:

    Code:
    DCL-PR myProc;
       DCL-PARM select CHAR(10);
       name  CHAR(10); 
       DCL-PARM address CHAR(25); 
    END-PR;
    prototype using DCL-PARM to define some of its subfields.
    a. Parameter select has the same name as an operation code allowed in free-form calculations.
    DCL-PARM is required for this parameter. See Table 103 on page 534.
    b. Parameter name does not have the same name as an operation code, so DCL-PARM is not required.
    c. Parameter address does not have the same name as an operation code, so DCL-PARM is not
    required, but it is valid.

    DCL-PR ist mit DCL-PI zu vergleichen.

    Aber wer verwendet schon Namen, die OP-Codes sind. Wie soll man die dann ansprechen?
    Schafft der Compiler da ggf. den Kontext?
    Code:
       select;
         when    select = 'ABCD';
         :
       endsl;
    Hast du jemals DCL-SUBF in einer DS verwendet? Bzgl. OP-Codes gilt hier dasselbe. Bei Qualified-DS macht das dann wieder Sinn.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  7. #7
    Registriert seit
    Jan 2007
    Beiträge
    1.015
    Dann bin ich doch mal gerne den Förster. Wie bitte war schon mal die Eingangsfrage wieder. Ich fühl mich gerade wieder in die Karikatur von Anforderung Kunde und Lösung durch IT-Experten zurück versetzt.
    kf

  8. #8
    Registriert seit
    Feb 2001
    Beiträge
    20.748
    Das ist halt unsere Diskussionsfreudigkeit. Bis zum bitteren Ende;-).
    Was meinst du wohl, wie man sonst an über 20.000 Beiträge kommt?
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  9. #9
    Registriert seit
    Mar 2002
    Beiträge
    5.379
    Zitat Zitat von Fuerchau Beitrag anzeigen
    Aber wer verwendet schon Namen, die OP-Codes sind.
    ... da habe ich spontan ein paar Gesichter vor Augen und ich meine mich zu erinnern, dass die auch schon hier im Forum geschrieben haben.

    D*B
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  10. #10
    Registriert seit
    May 2004
    Beiträge
    473
    ajajaj. Danke, das mit dcl-parm das wars

Similar Threads

  1. RPG-Code in Free
    By Wavum in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 12-07-16, 11:27
  2. movea in free code
    By ThomasJoachimFuchs in forum NEWSboard Programmierung
    Antworten: 0
    Letzter Beitrag: 07-08-10, 10:15
  3. Code ehem. Code/400
    By Brownie in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 08-10-02, 13:59
  4. LIC-Code 9406-300
    By Matthias.Hayn in forum IBM i Hauptforum
    Antworten: 0
    Letzter Beitrag: 12-03-01, 09:38
  5. CODE/400 configuration ICF-FILE
    By Lopez in forum IBM i Hauptforum
    Antworten: 0
    Letzter Beitrag: 29-01-01, 11:18

Berechtigungen

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