GetPrinterClassList2関数
指定した出力先(スプールサーバ)に登録されているプリンタクラスの一覧を取得します。出力先を指定していない場合は,デフォルトの出力先として登録されたスプールサーバに定義されているプリンタクラスの一覧を取得します。エラー発生時にエラーメッセージを取得できます。
なお,UNIX/Linux環境の場合,プリンタクラス一覧の取得はサポートしていません。UNIX/Linux環境のEUR Server - Spool Serviceに対して,プリンタクラス一覧の取得を実行した場合はエラーとなります。
形式
------------------宣言部------------------
01 EURPMPARAMDESTNAME.
02 DESTNAME PIC X(80) VALUE SPACE.
02 FILLER PIC X(1) VALUE LOW-VALUE.
01 EURPMPARAMCLASS2.
02 FILLER PIC X(4) VALUE '0770'.
02 FILLER PIC X(1) VALUE LOW-VALUE.
02 ERRORMESSAGE PIC X(256) VALUE SPACE.
02 FILLER PIC X(1) VALUE LOW-VALUE.
02 FILLER PIC X(2) VALUE LOW-VALUE.
02 CLASSNUM PIC 9(9) COMP-X VALUE n.
02 CLASSES OCCURS n TIMES.
03 CLASSNAME PIC X(80) VALUE SPACE.
03 FILLER PIC X(1) VALUE LOW-VALUE.
03 PRINTERNAME PIC X(80) VALUE SPACE.
03 FILLER PIC X(1) VALUE LOW-VALUE.
03 TRAYNAME PIC X(80) VALUE SPACE.
03 FILLER PIC X(1) VALUE LOW-VALUE.
03 COMMENT PIC X(256) VALUE SPACE.
03 FILLER PIC X(1) VALUE LOW-VALUE.
02 PMSERVERADDR PIC X(15) VALUE SPACE.
02 FILLER PIC X(1) VALUE LOW-VALUE.
02 PMSERVERPORT PIC S9(9) COMP-5 VALUE -1.
01 RTNCODE PIC S9(9) BINARY.
------------------実行部------------------
call 'GetPrinterClassList2' USING BY REFERENCE EURPMPARAMDESTNAME
EURPMPARAMCLASS2
RETURNING RTNCODE.
パラメタ
戻り値
RTNCODE
終了コードが設定されます。終了コードについては,「10.4.1 エラー情報一覧」を参照してください。
ERRORMESSAGE
エラーが発生した場合,エラーメッセージとメッセージIDが設定されます。エラーメッセージについては,マニュアル「EUR メッセージ」を参照してください。
エラーが発生しなかった場合は,空白が設定されます。
CLASSNUM
取得されたプリンタクラス数が格納されます。
CLASSES
パラメタCLASSNUMに設定されたn個分のプリンタクラス情報を,戻り値CLASSNAME,PRINTERNAME,TRAYNAME,COMMENTに格納します。拠点プリンタクラスの数がn個に満たない場合は,戻り値CLASSNUMに取得された個数の拠点プリンタクラス情報が返され,戻り値CLASSNUM+1番目以降の領域は不定になります。拠点プリンタクラスの数がn個より多い場合は,パラメタCLASSNUMに指定したn個のプリンタクラス情報が返されます。
CLASSNAME
拠点プリンタクラス情報の拠点プリンタクラス名が設定されます。
PRINTERNAME
拠点プリンタクラス情報のスプールサーバのプリンタ名が設定されます。
TRAYNAME
拠点プリンタクラス情報のスプールサーバのトレイ名が設定されます。
COMMENT
拠点プリンタクラス情報の説明が設定されます。
呼び出し例
指定した出力先の拠点プリンタクラスの一覧を取得する,呼び出し例を次に示します。
------------------宣言部------------------
01 EURPMPARAMDESTNAME.
02 DESTNAME PIC X(80) VALUE SPACE.
02 FILLER PIC X(1) VALUE LOW-VALUE.
01 EURPMPARAMCLASS.
02 FILLER PIC X(4) VALUE '0770'.
02 FILLER PIC X(1) VALUE LOW-VALUE.
02 ERRORMESSAGE PIC X(256) VALUE SPACE.
02 FILLER PIC X(1) VALUE LOW-VALUE.
02 FILLER PIC X(2) VALUE LOW-VALUE.
02 CLASSNUM PIC 9(9) COMP-X VALUE 120.
02 CLASSES OCCURS 120 TIMES.
03 CLASSNAME PIC X(80) VALUE SPACE.
03 FILLER PIC X(1) VALUE LOW-VALUE.
03 PRINTERNAME PIC X(80) VALUE SPACE.
03 FILLER PIC X(1) VALUE LOW-VALUE.
03 TRAYNAME PIC X(80) VALUE SPACE.
03 FILLER PIC X(1) VALUE LOW-VALUE.
03 COMMENT PIC X(256) VALUE SPACE.
03 FILLER PIC X(1) VALUE LOW-VALUE.
02 PMSERVERADDR PIC X(15) VALUE SPACE.
02 FILLER PIC X(1) VALUE LOW-VALUE.
02 PMSERVERPORT PIC S9(9) COMP-5 VALUE -1.
01 RTNCODE PIC S9(9) BINARY.
------------------実行部------------------
DISPLAY '<プリンタクラス一覧(GetPrinterClassList2)>'
MOVE 'SERVER1' TO DESTNAME
DISPLAY DESTNAME
CALL 'GetPrinterClassList2' USING BY REFERENCE EURPMPARAMDESTNAME
EURPMPARAMCLASS
RETURNING RTNCODE
DISPLAY RTNCODE
IF RTNCODE = ZERO
THEN
DISPLAY '正常終了'
DISPLAY CLASSNUM
PERFORM VARYING IX1 FROM 1 BY 1 UNTIL IX1 > CLASSNUM
DISPLAY CLASSNAME(IX1)
DISPLAY PRINTERNAME(IX1)
DISPLAY TRAYNAME(IX1)
DISPLAY COMMENT(IX1)
END-PERFORM
ELSE
DISPLAY 'エラー発生'
DISPLAY ERRORMESSAGE
END-IF