[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Mar 2003
    Beiträge
    23

    Call Externes Programm zerstört Feldinhalt in RPG

    Hallo zusammen,

    folgendes Phänomän:

    Das Datenbankfeld R_LINAME ist vor dieser Routine komplett gefüllt. Wenn das Programm aus dem CALL zurückkommt sind die ersten 14 Stellen des Feldes leer, der Rest ist gleich geblieben.

    Das Feld wird im Programm selbst nicht verwendet.

    0141.95 C R_X2ERRC IFNE *BLANKS
    0141.96 C MOVEL R_X2ERRC MSGID
    0141.97 C EXSR FEHLER
    0141.98 C MOVEL MSGFLD R_X2ERRM
    0141.99 C ENDIF
    0142.00 C*
    0142.01 C UPDATE X2BEKN1

    0157.00 C FEHLER BEGSR
    0158.00 C*
    0159.00 C call 'CLFEHLERX'
    0160.00 C parm MSGID 7
    0161.00 C parm MSGFLD 50
    0162.00 C parm MSGDTA 78
    0163.00 C*
    0164.00 C ENDSR


    Programm CLFHLERX:

    PGM PARM(&MSGID &MSGFLD &MSGDTA)
    DCL VAR(&MSGID) TYPE(*CHAR) LEN(7)
    DCL VAR(&MSGFLD) TYPE(*CHAR) LEN(78)
    DCL VAR(&MSGDTA) TYPE(*CHAR) LEN(78)
    RTVMSG MSGID(&MSGID) MSGF(X2USER) MSGDTA(&MSGDTA) +
    MSG(&MSGFLD)
    MONMSG MSGID(CPF0000) EXEC(DO)
    CHGVAR VAR(&MSGFLD) VALUE('FEHLER-NACHRICHT:' +
    *BCAT &MSGID *BCAT 'NICHT VORHANDEN. EDV +
    INFORMIEREN.')
    ENDDO
    ENDPGM

  2. #2
    Registriert seit
    Dec 2000
    Beiträge
    281

    Feldinhalt

    Hallo,
    Hast du evtl. einen Move (eval) mit dem Datensatznahmen im Programm, oder überlagern sich Feldgruppen?

    Ist die X2BEKN eine PF oder eine Joein über BEKN und noch eine Datei?

    Habt ihr das selbst gebastelt oder unsere Freunde in Filderstadt :-)

    Klaus

  3. #3
    Registriert seit
    Mar 2003
    Beiträge
    23
    Hallo Klaus,

    es gibt keine MOVEAs und auch keine Feldgruppen in diesem Bereich.

    Die X2BEKN ist eine PF Kopie der BEKN, allerdings mit anderem Formatnamen und Prefix (R_) .

    Und ja, das Programm ist selbst gebastelt, Filderstadt wollte zuviel Euros dafür ;-)

    Gruß Michael

  4. #4
    Registriert seit
    May 2002
    Beiträge
    1.121
    Nur mal so ins Blaue
    MSGFLD ist im RPG mit 50 definiert und im CL mit 78

  5. #5
    Registriert seit
    Mar 2003
    Beiträge
    23
    Zitat Zitat von malzusrex Beitrag anzeigen
    Nur mal so ins Blaue
    MSGFLD ist im RPG mit 50 definiert und im CL mit 78
    Tatsache...und das wahr auch schon der Fehler bzw. die Lösung.

    DANKE!

Similar Threads

  1. Rückgabewert vom RPG Programm
    By mk in forum NEWSboard Java
    Antworten: 8
    Letzter Beitrag: 21-04-11, 21:51
  2. MI Source aus einem RPG Programm erstellen
    By ExAzubi in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 13-07-06, 10:51
  3. Java Programm aus ILE RPG aufrufen
    By PGMR in forum NEWSboard Java
    Antworten: 10
    Letzter Beitrag: 10-02-05, 10:33
  4. Java Programm aus ILE RPG aufrufen
    By PGMR in forum NEWSboard Programmierung
    Antworten: 0
    Letzter Beitrag: 02-02-05, 13:10

Berechtigungen

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