[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jun 2009
    Beiträge
    316

    Aufruf SQL Prozedur von SQLRPGLE

    Hallo,
    ich habe hier ein System V7.3 mit PTF Stand TL18242.
    Ich versuche verzweifelt eine SQL Prozedur von einem SQLRPGLE Programm aufzurufen.
    Ich bekomme immer nachfolgende Meldungen im Joblog:

    Zeiger für angegebene Position nicht gesetzt.
    Anwendungsfehler. MCH3601 nicht überwacht durch TEST0002 bei Anweisung
    0000000007, Instruktion X'0000'.
    Fehler von Auslöserprogramm oder externer Routine erkannt.

    Mein Programm:
    D ParmIn S 13A
    D ParmOut S 1A
    c z-add *zeros error_nr 3 0
    /free
    ParmIn = 'Testtest';
    EXEC SQL Call TEST0002 (:ParmIn, :ParmOut);
    if sqlcod <> 0 and sqlcod <> 100;
    Error_Nr = 04;
    endif;
    /end-free
    c dsply parmout
    c dsply error_nr
    c dsply sqlcod
    c dsply sqlstate
    C move *on *inlr

    Die Parameter stimmen definitiv mit der SQL Prozedur überein.

    Ich hab schon hier im Forum gesucht, da war auch ein Beitrag, allerdings war da am Schluss keine Lösung/Ergebnis gestanden.

    Was mache ich falsch, bzw. geht das überhaupt.

    Danke

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.236
    Schau mal ins Joblog auf die genauen Meldungen.
    Per F9 auf der Meldung kann man sehen, von wo die Nachricht ausgelöst wurde. Ggf. wird sie ja nur durchgereicht.
    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
    Jun 2009
    Beiträge
    316
    Problem gelöst!

    Mein Fehler war, dass ich mit TEST0002 aufgerufen habe, statt mit dem Namen der Prozedur.
    Der Name der Prozedur ist "ReWe_FiBu_test".

    Hier die Prozedur:

    -- erst löschen
    call dsg_drop_procedure('xxx', 'ReWe_FiBu_test');
    --neu anlegen
    create procedure xxx/ReWe_FiBu_test
    (
    -- Input-Parameter
    In $In_MandKenn char(13),
    -- OUTPUT
    Out $Status char(1)
    )
    LANGUAGE SQL
    SPECIFIC xxx/TEST0002
    NOT DETERMINISTIC
    MODIFIES SQL DATA
    MAIN : BEGIN

    declare i_Mandkenn char(13);
    --declare O_Error_Nr numeric(4, 0);

    Set i_Mandkenn = $In_Mandkenn;

    --Delete from D_FYWAB
    --where MANDKENN = I_MANDKENN;

    set $status = i_mandkenn;

    End MAIN;

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.236
    Daran kann man mal wieder sehen, dass man ja jedes Programm ebenso auch als Prozedur aufrufen kann, wenn man denn die Parameter alle kennt;-).
    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

Similar Threads

  1. Aufruf einer SQL Stored Procedure in SQLRPGLE
    By Witaseck in forum NEWSboard Programmierung
    Antworten: 20
    Letzter Beitrag: 14-12-16, 17:23
  2. RPG-Prozedur aus C# aufrufen
    By svit in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 03-03-16, 11:11
  3. CLLE als Prozedur ins Serviceprogramm
    By Etherion in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 30-09-14, 13:36
  4. Antworten: 2
    Letzter Beitrag: 12-08-14, 12:09
  5. hinzufügen Prozedur in bestehendes Serviceprogramm
    By Tonazzo in forum NEWSboard Programmierung
    Antworten: 5
    Letzter Beitrag: 11-03-14, 09:26

Berechtigungen

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