コマンド

68. プロキシー・コマンドとは?

DSPCMD STRSDA を実行してみると

                             コマンド情報の表示                         
                                                                        
コマンド . . . . . . . :   STRSDA        ライブラリー . . . . . :   QSYS
                                                                        
ターゲット・コマンド . . . . . . . . . :   STRSDA                       
  ライブラリー . . . . . . . . . . . . :     QPDA                       
テキスト . . . . . . . . . . . . . . . :    SDA の開始                  
                                                                        
現行プロキシー・チェーン . . . . . . . :   QSYS/STRSDA                  
                                           QPDA/STRSDA  

と表示されて STRSDA というコマンドの実体は見当たらない。

これは
STRCGU や STRRLU コマンドその他多くのユーティリティ・コマンドの実体が
システム・ライブラーQSYSには見当たらない。
これはプロキシー・コマンドと呼ばれる代理コマンドのことであり
コマンド: STRSDA はライブラリー QSYSには存在しているのだが
実体は別のライブラリー: QPDA に存在していることを意味している。

最初のユーザーは QSYS/STRSDA コマンドをアクセスするのだが
実体のほうの QPDA/STRSDA コマンドが呼び出されて実行されると
いう具合である。

■ プロキシー・コマンドの必要性

STRSDA のプロキシー・コマンドをQSYSに入れておけば
ライブラリー・リストに実体のあるQPDAを入れる必要がない。
多くのライブラリー・リストのセットを割愛することができる。

■ プロキシー・コマンドの作成方法

CRTPRXCMD でプロキシー・コマンドを作成することができる。

                       PROXY コマンドの作成  (CRTPRXCMD)                   
                                                                           
 選択項目を入力して,実行キーを押してください。                            
                                                                           
 コマンド  . . . . . . . . . . .   STRSDA         名前                     
  ライブラリー  . . . . . . . . . . .     QSYS         名前 , *CURLIB           
 ターゲット・コマンド  . . . . .   STRSDA         名前                     
  ライブラリー  . . . . . . . . . . .     QPDA         名前 , *LIBL, *CURLIB... 
 テキスト ' 記述 ' . . . . . . .   *TGTCMD