[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    Du musst das API schon mit ALLEN REQUIRED! Parametern aufrufen und kannst nicht einfach irgendwo was weglassen!

    Das war/ist meine Prozedur, die bereits seit ein paar Jahrhunderten problemlos läuft:
    1. Parameter und Referenz-Datenstrukturen:
    Code:
         D DspWdwTxt       PR                  ExtPgm('QUILNGTX')
         D  ParmText                  65535    const options(*VarSize)
         D  ParmLenText                  10I 0 const
         D  ParmMsgId                     7A   const
         D  ParmQualMsgFile...
         D                               20A   const
         D  ParmError1                         likeDS(DS_Error1)
    
          * Error Datenstruktur
         D DS_Error1       DS                  Qualified
         D   ByteProv                    10I 0 inz(%Size(DS_Error1))
         D   ByteAvail                   10I 0 inz(*Zeros)
         D   MsgId                        7    inz(*Blanks)
         D   Reserved                     1    inz(x'00')
         D   ExceptData                 256    inz(*Blanks)
    2. Aufruf aus RPG
    Code:
         H DEBUG
          *-----------------------------------------------------------------*
         D/COPY QPROLESRC,DSPWDWTXT
         D BspText         S          65535    varying
          *-----------------------------------------------------------------*
          /Free
            BspText = 'Dies soll nur ein kurzer Text sein, um das +
                       API QUILNGTX auszuprobieren! +
                       Das UIM API QUILNGTX (Display Long Text) stellt eine +
                       einfache Möglichkeit dar, einen beliebigen Text +
                       in einem Fenster anzuzeigen. +
                       Das Erstellen einer Display-File +
                       ist dazu nicht erforderlich.';
    
             DspWdwTxt(BspText: %Len(BspText): *Blanks: *Blanks: DS_Error1);
    
            *InLR = *On;
    
          /End-Free
    3. Wrapper Procedure:
    3.1. Prototyp
    Code:
       D DspWDW          PR                  ExtProc('DSPWDW')
         D  ParmText                  65535    const varying
    3.2. Wrapper Prozedur
    Code:
         H DEBUG NoMain
          *-----------------------------------------------------------------*
         D/COPY QPROLESRC,DSPWDWTXT
         *------------------------------------------------------------------*
         P DspWDW          B                   Export
    
         D DspWdW          PI
         D  ParmText                  65535    const varying
    
          /Free
           DspWdWTxt(ParmText: %Len(ParmText): *Blanks: *Blanks: DS_Error1);
           Return;
          /End-Free
    3.3. Aufruf Wrapper Prozedur
    Code:
        H DEBUG
          *------------------------------------------------------------------*
         D/COPY QPROLESRC,DSPWDWTXT
    
         D  BspText        S         65535    const varying
         *-------------------------------------------------------------------*
          /Free
            BspText = 'Dies soll nur ein kurzer Text sein, um das +
                       API QUILNGTX auszuprobieren!';
    
            DspWDW(BspText);
    
            DspWDW('Der Text kann auch direkt übergeben werden.');
    
            *INLR = *ON;
          /End-Free
    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 5. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  2. #2
    Registriert seit
    Apr 2012
    Beiträge
    360
    Danke für die ausführliche Infos.
    Eine allerletzte Frage:
    Kann ich auch einen Zeilenumbruch einarbeiten?
    Mit
    D CrLf C const(x'0D25')
    hat es leider nicht funktioniert.

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Versuche es mal mit "/N".
    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. SDA: Std Drucker im Menü anzeigen lassen?
    By Koelch400 in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 15-08-02, 09:53
  2. Fußzeile in Windowsubfile anzeigen
    By hpw in forum NEWSboard Windows
    Antworten: 6
    Letzter Beitrag: 12-02-02, 15:27
  3. Ftp-Verbindungen anzeigen
    By sirdidi in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 11-01-02, 12:12
  4. Mit C++ AS400 Prozesse anzeigen??
    By Arbi in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 16-10-01, 19:06
  5. Zeichensatz anzeigen
    By Burgy Zapp in forum NEWSboard Server Software
    Antworten: 0
    Letzter Beitrag: 03-04-01, 19:07

Berechtigungen

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