ネットワーク

49. LPR を使ってスプールを直接、印刷するには?

TCP/IPネット・ワーク内でスプールをプリンターに送信するリクエスターが「LPR」である。

(Line Printer Requester)

プリンター・サーバー側のPCやPCサーバーには LPD (LinePrinterDaemon) と呼ばれる

サーバー・デーモンが待機していて、これが ASCIIプリンターに印刷出力する。

LPD を使用する場合、プリンタ・ドライバーは使用されずに印刷ストリームはLPD を経由して

直接、ブリンターに渡される。

従って、使用するプリンターに対応する印刷ストリームを LPR によって送信する必要がある。

  • iSeries400 にも UNIX や Linux で使用されているLPRコマンドが用意されている。
  • LPR を使用すればプリンター・サーバー側にはPCOMM や CA/400などのエミュレータも必要ないしプリンタも安価な市販のASCIIブリンターを使用することができる。
  • LPRはホスト変換API(HPT)を使用するためエミュレータによる変換に比べて信頼性が高い。IBMもHPTの使用を推薦している。
  • ホスト変換(HPT)

    iSeries400 のスプール・ファイルはEBCDICコードであり、印刷ストリームの形式もSCS や

    AFPという形式であるので ASCIIプリンターへ印刷ストリームを変換してやる必要がある。

    これを行うのが「ホスト変換(HPT)」 (HostPrintTransform) と呼ばれるAPIであり、

    LPRコマンドの場合、「SCSからASCIIへの変換」パラメータを *YES に指定すると

    「ホスト変換」をLPRが実行する。

    またホスト変換(以下 HPT と略す) はワークステーション・カスタマイズ・オブジェクト(WSCST) という変換テーブルに従って変換を行う。

    以下はその様子を示している。

  • LPR の使用例
         
                                TCP/IP スプール・ファイル の送信  (LPR)                   
                                                                                  
           選択項目を入力して,実行キーを押してください。                         
                                                                                  
           遠隔システム  . . . . . . . . . > *INTNETADR                           
                                                                                  
                                                                                  
                                                                                  
           印刷装置待ち行列  . . . . . . . > PRT01                                
                                                                                  
                                                                                  
           スプール・ファイル  . . . . . . > QPRINT         名前                  
           ジョブ名  . . . . . . . . . . . > DSP01          名前 , *              
             ユーザー  . . . . . . . . . . >   QUSER        名前                  
             番号  . . . . . . . . . . . . >   045533      000000-999999          
           スプール・ファイル番号  . . . . > 1             1-9999, *ONLY, *LAST   
           宛先タイプ  . . . . . . . . . .   *OTHER        *AS400, *PSF2, *OTHER  
          SCS から ASCII への変換  . . . .   *YES          *YES, *NO              
           メーカーの機種型式  . . . . . . > *IBMPAGES                            
           インターネット・アドレス  . . . > '192.168.1.20'                       
                                                                        続く ...
     
【 解説 】

遠隔システム名には「*INTNETADR」を指定することによって「インターネット・アドレス」として

プリンタ・サーバーのIPアドレスを直接指定することができる。

印刷待ち行列には PC上での OUTQ の名前を指定する。

「メーカーの機種型式」で使用可能なものは「*IBMPAGES」または「*ESCPDBCS
だけである。

続きのパラメータとしてワークステーション・カスタマイズ・オブジェクト(WSCST)を指定する

ことができる。

WSCST の指定は通常は *NONE であるが *NONE では縦横や折り返しなどが期待通りの

ものでない場合がある。

そのようなときに RTVWSCST コマンドによって WSCST のソースを取得してこれをカスタマイズした後、CRTWSCST によって再作成した WSCST を使用する必要がある。


                             WSCST 原始の検索  (RTVWSCST)                       
                                                                                
      選択項目を入力して,実行キーを押してください。                            
                                                                                
      装置タイプ  . . . . . . . . . . > *TRANSFORM    *TRANSFORM, 3101, 3151... 
      メーカーの機種型式  . . . . . .   *IBMPAGES                               
      原始メンバー  . . . . . . . . .   IBMPAGES       名前                     
      原始ファイル  . . . . . . . . .   QTXTSRC        名前                     
        ライブラリー  . . . . . . . .     QGPL         名前 , *CURLIB, *LIBL    
      テキスト ' 記述 ' . . . . . . .   *BLANK
 

                               WSCST の作成  (CRTWSCST)                         
                                                                                
      選択項目を入力して,実行キーを押してください。                            
                                                                                
      WSCST 名  . . . . . . . . . . . > IBMPAGES       名前                     
        ライブラリー  . . . . . . . . >   QGPL         名前 , *CURLIB           
      原始メンバー  . . . . . . . . .   *WSCST         名前 , *WSCST            
      テキスト ' 記述 ' . . . . . . .   *SRCMBRTXT                              
                                                                                
                                                                                
                       追加のパラメーター                                       
                                                                                
      原始ファイル  . . . . . . . . .   QTXTSRC        名前                     
        ライブラリー  . . . . . . . .     QGPL         名前 , *CURLIB           
      権限  . . . . . . . . . . . . .   *ALL           名前 , *LIBCRTAUT...     
      オブジェクトの置換え  . . . . .   *YES          *YES, *NO
 

WSCST のソースのカスタマイズの方法については IBMマニュアルを参照のこと。

TCP/IPネット・ワーク内でスプールをプリンターに送信するリクエスターが「LPR」である。

(Line Printer Requester)

プリンター・サーバー側のPCやPCサーバーには LPD (LinePrinterDaemon) と呼ばれる

サーバー・デーモンが待機していて、これが ASCIIプリンターに印刷出力する。

LPD を使用する場合、プリンタ・ドライバーは使用されずに印刷ストリームはLPD を経由して

直接、ブリンターに渡される。

従って、使用するプリンターに対応する印刷ストリームを LPR によって送信する必要がある。

00 にも UNIX や Linux で使用されているLPRコマンドが用意されている。

  • LPR を使用すればプリンター・サーバー側にはPCOMM や CA/400などのエミュレータも必要ないしプリンタも安価な市販のASCIIブリンターを使用することができる。
  • LPRはホスト変換API(HPT)を使用するためエミュレータによる変換に比べて信頼性が高い。IBMもHPTの使用を推薦している。
  • ホスト変換(HPT)

    iSeries400 のスプール・ファイルはEBCDICコードであり、印刷ストリームの形式もSCS や

    AFPという形式であるので ASCIIプリンターへ印刷ストリームを変換してやる必要がある。

    これを行うのが「ホスト変換(HPT)」 (HostPrintTransform) と呼ばれるAPIであり、

    LPRコマンドの場合、「SCSからASCIIへの変換」パラメータを *YES に指定すると

    「ホスト変換」をLPRが実行する。

    またホスト変換(以下 HPT と略す) はワークステーション・カスタマイズ・オブジェクト(WSCST) という変換テーブルに従って変換を行う。

    以下はその様子を示している。

  • LPR の使用例
         
                                TCP/IP スプール・ファイル の送信  (LPR)                   
                                                                                  
           選択項目を入力して,実行キーを押してください。                         
                                                                                  
           遠隔システム  . . . . . . . . . > *INTNETADR                           
                                                                                  
                                                                                  
                                                                                  
           印刷装置待ち行列  . . . . . . . > PRT01                                
                                                                                  
                                                                                  
           スプール・ファイル  . . . . . . > QPRINT         名前                  
           ジョブ名  . . . . . . . . . . . > DSP01          名前 , *              
             ユーザー  . . . . . . . . . . >   QUSER        名前                  
             番号  . . . . . . . . . . . . >   045533      000000-999999          
           スプール・ファイル番号  . . . . > 1             1-9999, *ONLY, *LAST   
           宛先タイプ  . . . . . . . . . .   *OTHER        *AS400, *PSF2, *OTHER  
          SCS から ASCII への変換  . . . .   *YES          *YES, *NO              
           メーカーの機種型式  . . . . . . > *IBMPAGES                            
           インターネット・アドレス  . . . > '192.168.1.20'                       
                                                                        続く ...
     
    【 解説 】

    遠隔システム名には「*INTNETADR」を指定することによって「インターネット・アドレス」として

    プリンタ・サーバーのIPアドレスを直接指定することができる。

    印刷待ち行列には PC上での OUTQ の名前を指定する。

    「メーカーの機種型式」で使用可能なものは「*IBMPAGES」または「*ESCPDBCS
    だけである。

    続きのパラメータとしてワークステーション・カスタマイズ・オブジェクト(WSCST)を指定する

    ことができる。

    WSCST の指定は通常は *NONE であるが *NONE では縦横や折り返しなどが期待通りの

    ものでない場合がある。

    そのようなときに RTVWSCST コマンドによって WSCST のソースを取得してこれをカスタマイズした後、CRTWSCST によって再作成した WSCST を使用する必要がある。

    
                                 WSCST 原始の検索  (RTVWSCST)                       
                                                                                    
          選択項目を入力して,実行キーを押してください。                            
                                                                                    
          装置タイプ  . . . . . . . . . . > *TRANSFORM    *TRANSFORM, 3101, 3151... 
          メーカーの機種型式  . . . . . .   *IBMPAGES                               
          原始メンバー  . . . . . . . . .   IBMPAGES       名前                     
          原始ファイル  . . . . . . . . .   QTXTSRC        名前                     
            ライブラリー  . . . . . . . .     QGPL         名前 , *CURLIB, *LIBL    
          テキスト ' 記述 ' . . . . . . .   *BLANK
     
    
                                   WSCST の作成  (CRTWSCST)                         
                                                                                    
          選択項目を入力して,実行キーを押してください。                            
                                                                                    
          WSCST 名  . . . . . . . . . . . > IBMPAGES       名前                     
            ライブラリー  . . . . . . . . >   QGPL         名前 , *CURLIB           
          原始メンバー  . . . . . . . . .   *WSCST         名前 , *WSCST            
          テキスト ' 記述 ' . . . . . . .   *SRCMBRTXT                              
                                                                                    
                                                                                    
                           追加のパラメーター                                       
                                                                                    
          原始ファイル  . . . . . . . . .   QTXTSRC        名前                     
            ライブラリー  . . . . . . . .     QGPL         名前 , *CURLIB           
          権限  . . . . . . . . . . . . .   *ALL           名前 , *LIBCRTAUT...     
          オブジェクトの置換え  . . . . .   *YES          *YES, *NO
     

    WSCST のソースのカスタマイズの方法については IBMマニュアルを参照のこと。