[NEWSboard IBMi Forum]

Thema: *entry Plist

Hybrid View

  1. #1
    Registriert seit
    Jun 2008
    Beiträge
    17

    *entry Plist

    Hallo Rpg'ler/innen

    Ich versuche verzweifelt *entry plist in einem Free-Rpg-Pgm umzusetzen.
    PR + PI sind soweit klar. jedoch komme ich mit dem ExtPgm nicht zurecht.
    Mein unten abgebildetes PGm wird aus einem anderen PGM (hier DIW210R ILE) aufgerufen. Das Pgm liest eine Datei lt. übergebenem PArm und ergänzt das P1PANZ-Feld mit dem ermittelten Wert.
    Das aufgerufene Pgm ISt DIW211R.
    DPARM1 PRExtPgm('DIW211R')
    d P1FA 30
    d P1KDNR 10
    dd P1PANZ 290
    d*
    dPARM1 PI
    d P1FA 30
    d P1KDNR 10
    d P1PANZ 290
    Die Meldung nach der Umwandlung lautet:
    RNF3776 Externes Programm im Prototyp für Hauptprozedur ist nicht identisch mit dem Programm, das erstellt wird.

    Für eine Info schon einmal herzlichen Dank !

  2. #2
    Registriert seit
    Feb 2008
    Beiträge
    104
    Diese Meldung gibt es ganau dann, wenn das Programm beim Umwandeln einen anderen Namen erhält, siehe unten, im Programm selber beispielsweise steht als extpgm VT415

    bei Umwandeln aber:

    RPG-Binderprogramm erstellen (CRTBNDRPG)

    Auswahl eingeben und Eingabetaste drücken.


    Programm . . . . . . . . . . . . > VT417 Name, *CTLSPEC


    dann kommt diese Fehlermeldung

    Karl-heinz

  3. #3
    Registriert seit
    Jun 2008
    Beiträge
    17
    Hallo Karl-Heinz,

    das war genau der richtige Tip.
    Ich habe das Original in DIW211RT kopiert und auch so immer umgewandelt.
    Übrigens verstehe ich jetzt auch was B. Hauser in ihren Dokumenten mit MYPGM meint.

    Danke für die schnelle Antwort

    Jetzt habe ich nachdem die Umwandlung OK (00) ist ein neues Problem.
    Bei der Ausführung bekomme ich die Meldung > Zeiger nicht auf die Position gesetzt auf die Bezug genommen wird.
    Ich mache einen interaktiven Aufruf wie folgt:
    CALL PGM(DIW211R) PARM('01017400025777917000185100000')

    Frage: wo klemmt es jetzt !? Im Debug zeigt er im ersten Feld
    Invers weiss, Ziffer, Invers weiss. Das sieht mir nach einem Hex-Wert aus.
    P1FA = 0 .

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Du erwartest im PI 3 Parameter von bestimmter Ausprägung.
    Du übergibst aber nur 1 Parameter.
    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
    Jun 2008
    Beiträge
    17
    Wenn ich das richtig verstehe, läßt PR PI in der dargestellten Ausprägung keinen Komplettsting zu

    Ich habe unter *entry Plist immer den dargestellten Parm
    in seiner gesamten Länge wie abgebildet übergeben und in den D-Bestimmungen entsprechend aufgelöst.
    Wie wird diese Übergabe dann abgebildet !?

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Definere eine DS und gib diese als einzigen Parameter an.
    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
    Jun 2008
    Beiträge
    17
    Hallo Herr Fuerchau,

    habe heute Morgen genau diesen Vorschlag nach einiem herumprobieren abgebildet.
    Anbei das Programm

    DDIW211E PRExtPgm('DIW211R')
    d EPArm0 29
    d*
    dDIW211E PI
    d EParm0 29
    d*
    d/Copy$DIW211E
    ***************** Datenanfang ************************************************** *****************
    D* Parm-Übergabe zw. DIW210R + DIW211R Aufruf von DIW210R
    D* erstellt am 19.03.2009 von: L. Anderer
    D*
    DEParm1 DS Inz
    D P1FA 1 3 0 Firma
    D P1KDNR 4 10 KundenNr.
    D P1ANR 11 17 0 AuftragsNr
    D P1ARTN 18 24 ArtikelNr.
    D P1PANZ 25 29 0 Anz.Paletten
    D*
    // R e c h e n b e s t i m m u n g e n
    //*************************************
    Eval Eparm1 = Eparm0;
    // Lesen NVEBPP
    Exsr Sub100;

    // ZYKLUS-ENDE
    Eval Eparm0 = Eparm1;
    Eval *InLr = *On;
    //*************************************

    Danke noch einmal für die Hilfe !!

    L. Anderer

Similar Threads

  1. API für die Ermittlung aktiver Jobs
    By lyrics in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 29-08-06, 09:03
  2. *entry plist ersetzen in RPG/IV Free-Format
    By coolie in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 22-04-04, 11:53
  3. Alternative zu *ENTRY PLIST
    By Rincewind in forum NEWSboard Programmierung
    Antworten: 17
    Letzter Beitrag: 30-01-04, 11:44
  4. Frage zu RPG: Aufruf RPG-Programm mit Parametern
    By hs in forum IBM i Hauptforum
    Antworten: 14
    Letzter Beitrag: 09-10-01, 12:06

Berechtigungen

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