[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Sep 2009
    Beiträge
    10
    Hallo!

    Tut mir leid, aber ich muss wieder um hilfe erbitten

    Der Programmaufruf via stored procedures funktioniert mit Java super. Jetzt versuche ich auch Parameter zu übergeben, aber das ist wieder eine Hürde die ich nicht alleine bewältigen kann.

    Code:
    CREATE PROCEDURE JT1
    (IN nachricht CHAR(120),
    IN empfaenger CHAR(15))
    EXTERNAL NAME 'SRC25/JTST1' LANGUAGE CL
    Code:
    0001.00              PGM        PARM(&NACHRICHT &EMPFAENGER)                                 090921
    0002.00              DCL        VAR(&NACHRICHT) TYPE(*CHAR) LEN(120)                         090921
    0003.00              DCL        VAR(&EMPFAENGER) TYPE(*CHAR) LEN(15)                         090921
    0004.00              SNDMSG     MSG(&NACHRICHT) TOUSR(&EMPFAENGER)                           090921
    0005.00 ENDPGM                                                                               090921
    Code:
                cstmt1 = con.prepareCall("{call qgpl.JT1(?, ?)}");
                cstmt1.setString(1, "Hallo du hilfreiche AS400 Community!");
                cstmt1.setString(1, "SCHULE25");
                cstmt1.execute();
    Vielleicht sehe ich auch einfach den Wald vor lauter Bäumen nicht, ich weiß es nicht, aber bedanke mich schonmal im vorraus bei allen!

    liebe grüße

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.753
    Hier ist das Problem der SQL-Signatur.

    Wichtig ist also, dass die Parameter GENAU so übergeben werden, wie sie die Prozedur erwartet.
    In deinem Fall übergibst du 2 Strings, also VARCHAR an Stelle von 2 fixen CHAR-feldern.

    Hier hilft dann das Casting:
    cstmt1 = con.prepareCall("{call qgpl.JT1(cast(? as char(120)), cast(? as char(15)))}");

    Dann stimmt auch die Signatur und SQL findet die Prozedur.

    Hintergrund:
    SQL erlaubt genauso wie Java identische Prozedurnamen mit unterschiedlichen Parameterlisten.
    An Hand dieser Signatur wird die passende Prozedur ermittelt.
    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. Rückgabewert vom RPG Programm
    By mk in forum NEWSboard Java
    Antworten: 8
    Letzter Beitrag: 21-04-11, 22:51
  2. Programm auf "ferner" AS400 ausführen.
    By Souljumper in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 13-05-09, 20:50
  3. SQL im Programm
    By steven_r in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 19-10-06, 10:12
  4. SQL .. for update of (RPG embedded SQL)
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 01-06-06, 10:43

Berechtigungen

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