[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Aug 2001
    Beiträge
    309

    sbmjob und ' im Parameter

    Hab da mal wieder ein Problemchen! ;-)

    Ich starte in einem RPGLE durch QCMDEXC ein CL-Pgm, welches an die QBATCH übergeben wird!

    PHP-Code:
    c                   Eval      CMD =  'SBMJOB CMD(CALL PGM(EXPEREMCL)' +
    c                                   ' PARM(''' + (Von    ) + ''' +     
    c                                          ''' 
    + (An     ) + ''' +     
    c                                          ''' 
    + (AntwAn ) + ''' +     
    c                                          ''' 
    + (Betref ) + ''' +     
    c                                          ''' 
    + (Attach ) + ''' +     
    c                                          ''' 
    + (eText  ) + ''' +     
    c                                          ''' 
    + (SQLStmt) + ''' +     
    c                                          ''' 
    + (JDebug ) + '''' +
    c                                   ')) +                          
    c                                   JOB(EXCELMAIL) JOBQ(QBATCH2) + 
    c                                   JOBD(*USRPRF) JOBPTY(1)'
    c                   CallP     System(CMD
    In diesem CL-Pgm wird ein SQL-Statment als Paramter übergeben:
    (SELECT * FROM XXXX/YYYY)

    Funktioniert auch wunderbar, solange in dem SQL-Paramter keine " ' " übergeben werden:
    (SELECT * FROM XXXX/YYYY WHERE ORT = 'HAMBURG')

    Beinhaltet der Paramter "SQLStmt" ein " ' " dann wird mir der Job nicht in die QBATCH gestellt!

    Versuche ich es mit: (SELECT * FROM XXXX/YYYY WHERE ORT = ''HAMBURG'') wird der Job in die QBATCH übergeben aber anschließend abgebrochen!

    freu mich über jeden Tipp! thx

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.250
    Für solche Übergaben enpfielt sich da die LDA ans stelle eines Parameters.
    Vorteil:
    - Bis 1024 Bytes
    - Keine Probleme mit der CMD-Syntax und CALL-Problematik

    Stelle dein SQL in die LDA und mach dann deinen SBMJOB. Die LDA wird für den neuen Job kopiert, so dass dieser dann nur per "CHGVAR &MYSLQ %SST(*LDA 1 1024)" die LDA auslesen muss.
    Im Übrigen könnten auch die anderen Parameter komplett als Struktur in die LDA (auch per CHGVAR %SST(*LDA n m) 'value')) übergeben werden, falls auch diese Hochkomma enthalten können.
    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. SNDPGMMSG und SBMJOB
    By Dominik Meyer in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 13-01-07, 15:16
  2. JOBQ(*JOBD) oder JOBQ(LIB/JOBQ) an SBMJOB übergeben
    By hww in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 12-12-06, 15:27
  3. SNDDST Parameter für Dateianhänge
    By Luebbert in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 23-11-06, 13:22
  4. SBMJOB und SCDDATE/SCDTIME
    By Luebbert in forum NEWSboard Programmierung
    Antworten: 1
    Letzter Beitrag: 13-09-06, 11:39
  5. BNDDIR Parameter direkt in CBLLE-Quelle?
    By rebe in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 24-05-06, 19:37

Berechtigungen

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