Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

OPEN-VIRTUAL-DEVICE-DIALOG

&pagelevel(3)&pagelevel

Dialog mit virtuellem Drucker eröffnen

Komponente:

SPOOL                                                                                                         

Funktionsbereich:

SPOOLOUT-Aufträge steuern

Anwendungsbereich:

SPOOL-PRINT-SERVICES

Privilegierung:

STD-PROCESSING
PRINT-SERVICE-ADMINISTRATION

Funktionsbeschreibung

Das Kommando OPEN-VIRTUAL-DEVICE-DIALOG initalisiert den Dialog zwischen einem virtuellen Gerät und der Anwendungsprozedur, in der der Aufruf erfolgt. Das Kommando wird nur im Batchmodus ausgeführt.

Das Kommando gehört zu einer Reihe von vier Kommandos, mit deren Hilfe eine Anwendung in Form einer S-Prozedur erstellt werden kann (siehe „Beispiel einer Anwendungsprozedur"). Diese Kommandos verwalten den Dialog zwischen einem virtuellen Gerät und der Anwendung, die als S-Prozedur im Batchmodus gestartet wurde:

  • OPEN-VIRTUAL-DEVICE-DIALOG

  • GET-JOB-FROM-VIRTUAL-DEVICE

  • RETURN-JOB-TO-VIRTUAL-DEVICE

  • CLOSE-VIRTUAL-DEVICE-DIALOG

Format

OPEN-VIRTUAL-DEVICE-DIALOG                                                                                                              

          

Kommando-Returncodes

(SC2)

SC1

Maincode

Bedeutung


0

CMD0001

Kein Fehler. Das Kommando wurde erfolgreich ausgeführt.


32

SCP0974

Unerwartetes Kommando

5

32

SCP0974

Fehler bei Speicheranforderung

Hinweise

  1. Der Dialog mit dem virtuellen Gerät muss nur einmal zu Beginn der Prozedur initialisiert werden.
  2. Wenn der Dialog nicht initialisiert werden kann, wird das Kommando zurückgewiesen und ein Kommando-Returncode gesetzt.
  3. Wenn die Initialisierung bereits durchgeführt wurde, wird das Kommando zurückgewiesen und ein Kommando-Returncode gesetzt.
  4. Dieses Kommando kann nur im Batchmodus aufgerufen werden.
  5. Bei Auftreten eines Fehlers wird die Spin-Off-Verarbeitung aktiviert.

Beispiel einer Anwendungsprozedur

/SET-PROC-OPTIONS DATA-ESCAPE-CHAR=*STD,LOGGING-ALLOWED=*YES
/ " *************************************************************** "
/ " * PARAMETERS DECLARATION                                      * "
/ " *************************************************************** "
/BEGIN-PARAMETER-DECLARATION
/END-PARAMETER-DECLARATION
/ " *************************************************************** "
/ " * END PARAMETERS DECLARATION                                  * "
/ " *************************************************************** "
/MODIFY-PROC-TEST-OPTIONS LOGGING=*PARAMETERS(CMD=*YES,DATA=*YES)
/MODIFY-JOB-OPTIONS LOGGING=*PARAMETERS(LISTING=*YES,/
                            HARDCOPY=*YES)
/MOD-TERMINAL-OPTION OVERFLOW-CONTROL=NO-CONTROL
/STEP
/DECL-VAR VAR-NA=JOB-ID,TYP=*STRING,SCOPE=*TASK
/DECL-VAR TSN,TYP=*STRING
/DECL-VAR ACTION(TYP=*STRING,INIT-VAL='*INIT')
/DECL-VAR CONDITION,TYP=*BOOLEAN
/DECL-VAR ERROR-LIST(INIT='(0,0,CMD0001)',TYP=*STRING)
/STEP
/OPEN-VIRTUAL-DEVICE-DIALOG
/ IF-CMD-ERROR
/ END-IF
/STEP
/WHILE CONDITION=(ACTION<>'*LAST')
/STEP
/GET-JOB-FROM-VIRTUAL-DEVICE FILE-PREFIX=*NONE, -
/                            METADAT-PREFIX=*NONE, -
/                            OUTPUT-DOC-ID=JOB-ID
/ IF-CMD-ERROR
/    ERROR-LIST='(&SUBCODE1,&SUBCODE2,&MAINCODE)'
/    SH-VAR ERROR-LIST
/ END-IF
/STEP
/IF ('&(SUBSTRING(JOB-ID,1,5))' == '*NONE')
/CLOSE-VIRTUAL-DEVICE-DIALOG
/ IF-CMD-ERROR
/    ERROR-LIST='(&SUBCODE1,&SUBCODE2,&MAINCODE)'
/    SH-VAR ERROR-LIST
/ END-IF
/EXIT-PROC
/END-IF
/STEP
/TSN=SUBSTRING(JOB-ID,1,4)
/STEP
  .
  .
     *** Benutzerspezifischer Prozedurteil ***
  .
  .
/RETURN-JOB-TO-VIRTUAL-DEVICE POST-ACTION=*WAIT
/END-WHILE