Hitachi

uCosminexus Batch Job Execution Server 使用の手引


3.2.6 プロシジャ内のEXEC要素の修正方法

プロシジャ内のEXEC要素の属性を修正したい場合,プロシジャを呼び出すためのCALL要素内にREPLACE要素,REPLACESTEP要素と修正するEXEC要素の属性および値を記述する。REPLACESTEP要素のNAME属性には,修正したいプロシジャ内のジョブステップ名を記述する。属性の追加の場合も同じように記述する。ただし,PGM属性は修正・追加できない。

この修正は,プロシジャ内の複数のEXEC要素および各EXEC要素に対して複数の属性の修正を指定できる。

EXEC要素の属性の置き換えまたは削除の指定方法を次に示す。

EXEC要素内のパラメータをREPLACE要素で修正する場合,プロシジャ内のジョブステップ名を指定するREPLACESTEP要素を省略すると,プロシジャ内の先頭のジョブステップを修正する。

プロシジャをREPLACE要素で修正する方法を次に示す。

〈この項の構成〉

(1) 先頭ステップだけを修正する方法

カタログドプロシジャの例(TEST2.xml)
<?xml version="1.0" encoding="Shift_JIS" ?>
<HitachiBatchJobExec version="1.3" os="unix">
  <PROC NAME="TEST2">
    <STEP>
      <EXEC PGM="PGMNAME" PARM="123" COND="0,NE" />
    </STEP>
  </PROC>
</HitachiBatchJobExec>
カタログドプロシジャTEST2を呼び出すジョブ定義XML
<?xml version="1.0" encoding="Shift_JIS" ?>
<HitachiBatchJobExec version="1.3" os="unix">
  <JOB NAME="CALLTEST2" >
    <STEP>
      <CALL NAME="TEST2" >
        <REPLACE>
           <EXEC PARM="456"/>
        </REPLACE>
      </CALL>
    </STEP>
  </JOB>
</HitachiBatchJobExec>

この例では,カタログドプロシジャ内の指定は次に示すとおりである。

しかし,プロシジャを呼び出すときにREPLACE要素でPARM属性だけを置き換える。プロシジャ中の先頭ステップに対する修正であるため,REPLACESTEP要素を記述する必要はない。COND属性は指定をしていないため,最初に指定した"0,NE"が有効となり,次に示す値で実行する。

(2) 先頭ステップ以外のステップを修正する方法

カタログドプロシジャの例(TEST3.xml)
<?xml version="1.0" encoding="Shift_JIS" ?>
<HitachiBatchJobExec version="1.3" os="unix">
  <PROC NAME="TEST3">
    <STEP NAME="STEP1">
      <EXEC PGM="PGMNAME" PARM="123" COND="0,NE" />
    </STEP>
    <STEP NAME="STEP2">
      <EXEC PGM="PGMNAME" PARM="456" COND="8,LE" />
    </STEP>
  </PROC>
</HitachiBatchJobExec>
カタログドプロシジャTEST3を呼び出すジョブ定義XML
<?xml version="1.0" encoding="Shift_JIS" ?>
<HitachiBatchJobExec version="1.3" os="unix">
  <JOB NAME="CALLTEST3" >
    <STEP>
      <CALL NAME="TEST3" >
        <REPLACE>
          <REPLACESTEP NAME="STEP2">
            <EXEC PARM="789"/>
          </REPLACESTEP>
        </REPLACE>
      </CALL>
    </STEP>
  </JOB>
</HitachiBatchJobExec>

この例では,カタログドプロシジャ内の指定は次に示すとおりである。

しかし,プロシジャを呼び出すときにREPLACE要素とREPLACESTEP要素でSTEP2のPARM属性だけを置き換える。COND属性は指定をしていないため,最初に指定した"8,LE"が有効となり,次に示す値で実行する。