TPEXP (テンプレートを XML にエクスポート)

目的
1 つ以上のテンプレートを XML フォーマットでエクスポートします。
使用上の注意
フィルター・メンバー名またはフィルター・メンバー・マスクを指定して、処理対象として選択するテンプレートをフィルターに掛けることができます。これにより、コピーブックを使用して作成されたFile Manager Baseテンプレートまたは IMS テンプレートについて、一致するコピーブックを参照しているテンプレートのみが処理対象として選択されるようにすることができます。IMS ビューおよび基準セットの場合は、フィルターを使用して、元のテンプレート名との突き合わせが行われます。フィルターを指定した場合、他のタイプのテンプレートはすべてスキップされます。
関連機能
TPIMP
テンプレートのインポート
1. Syntax

1  TPEXP
1! INPUT=DDIN
1 INPUT=ddname
1 DSNIN=dsname
1 ? MEMSTART=startstring? MEMEND=endstring
1 MEMBER=member_in
3? XMEMBERS=(+ ,xmem_filter)
3?  MEMLIST=( + , member_n? (membero_n) )
3?  FILTER=( + , member_n )
1! OUTPUT=DDOUT
1 OUTPUT=ddname
1  DSNOUT=dsname? (member_out)
4?  MEMOUT=memmask
1! REPLACE=NO
1 REPLACE=YES
1! COPYCRIT=NO
1 COPYCRIT=YES
1! STATS=NO
1 STATS=YES
INPUT=ddname
これは、有効なテンプレート・データ・セットとなる関連データ・セットを 1 つ以上保持した入力 DD 名を示します。INPUT または DSN パラメーターを指定しない場合は、DD DDIN が入力データ・セットのデフォルト DD 名として使用されます。連結データ・セットの指定が可能です。
DSNIN=dsname
テンプレートがあるデータ・セット名。
MEMBER=member_in
PDS 内の単一メンバーの名前、または PDS 内で処理される 1 つ以上のメンバーを示すメンバー名のパターン。メンバー名パターンは、メンバー名に有効な任意の文字と 2 つの特殊パターン文字 (アスタリスク (*) およびパーセント記号 (%)) から構成することができます。
*
任意の数の文字を表します。必要な数のアスタリスクを、メンバー名パターンの任意の場所に使用することができます。例えば、メンバー名パターンとして *d* を入力すれば、名前に「d」が含まれる、PDS 内のすべてのメンバーが処理されます。
%
単一文字を表すプレースホルダー文字。パーセント記号は、メンバー名パターンの任意の場所に必要な数だけ指定できます。例えば、メンバー名パターンとして %%%% を入力すれば、名前の長さが 4 文字である、PDS 内のすべてのメンバーが処理されます。
MEMSTART=startstring
組み込まれるメンバー名の範囲の開始を指定するために使用されます。MEMSTART が指定されたが MEMEND は省略された場合、PDS(E) 内の startstring 値以降の全メンバーが組み込まれます。startstring では、MEMBER キーワードの member-in パラメーターに関して、ワイルドカードを含め、同じ値を持つことができます。
MEMEND=endstring
組み込まれるメンバー名の範囲の終了を指定するために使用されます。MEMEND が指定されたが MEMSTART は省略された場合、PDS(E) 内の endstring 値までの全メンバーが組み込まれます。endstring では、MEMBER キーワードの member_in パラメーターに関して、ワイルドカードを含め、同じ値を持つことができます。
XMEMBERS
MEMSTART、MEMEND、および MEMBER オプションを使用して、処理するライブラリー・メンバーから除外し、それ以外が選択される方法を提供します。
xmem_filter
処理から除外する 1 つ以上のメンバーを識別するメンバー名フィルター。フィルターには、複数のメンバーを表すメンバー名パターンを指定できます。

小文字を含むメンバー名フィルターを指定するには、c'string' 形式で文字ストリングを使用します。フィルター値は、x'hex-digits' 形式で 16 進ストリングとして指定することもできます。

FILTER
フィルタリングに使用するメンバー名またはパターンのリストを指定することができます。これにより、それらのコピーブックを参照するテンプレートのみが、あるいは、コピーブックを使用して作成された基本テンプレートまたは IMS テンプレートについてはパターンに一致するコピーブックを参照するテンプレートのみが、処理用に選択されるようになります。IMS ビューおよび基準セットの場合は、このフィルターを使用して元のテンプレート名が表されます。フィルターが指定されている場合、他のタイプのテンプレートはすべてスキップされます。
MEMLIST
メンバー名のリストを指定できます (関連付けられた XML 出力テンプレート名も任意に指定できます)。出力メンバー名を指定しない場合、File Manager は入力名を使用するか、または MEMOUT マスク (memmask) で識別された名前を使用します。
member_n
処理されるメンバーの名前。総称名マスクは使用できます。
membero_n
エクスポートされたメンバー名。未指定の場合、エクスポートしたメンバーの名前は変更されません。
OUTPUT=ddname
エクスポートされたテンプレートが保管または置換されるインポート・テンプレート・データ・セットを指す DD カードを指定します。このカードには、PDS、PDSE、または順次データ・セットを指定する必要があります。
DSNOUT=dsname
エクスポートされたテンプレートが作成または置換されるデータ・セット名を定義します。このデータ・セットは、PDS、PDSE、または順次データ・セットでなければなりません。このデータ・セットは、以下のようにさらに詳細に記述できます。(member-out) DSNOUT=dsname に PDS を指定したときに、このデータ・セット内の特定のメンバーへ出力を送りたい場合は、出力メンバー名を定義します。
MEMOUT=memmask
入力メンバーの数を指定している場合、エクスポートしたテンプレートにメンバー名パターンを指定することができます。これによって、テンプレートの作成時にテンプレートの名前を変更できます。メンバー名パターンは、メンバー名に有効な任意の文字と、アスタリスク (*) およびパーセント記号 (%) の 2 つの特殊パターン文字で構成することができます。
アスタリスク (*)
アスタリスクは、変更がない複数の文字を表すプレースホルダー文字です。マスクに指定するアスタリスクは、1 つのみにしてください。2 つ目以降のアスタリスク文字は、パーセント記号として扱われます。例えば、ABC* と入力すると、名前変更後のメンバーはすべて ABC で始まり、その後に、古いメンバー名の残りが続きます。
パーセント記号 (%)
パーセント記号は、変更がない単一文字を表すプレースホルダー文字です。パーセント記号は、メンバー名の任意の場所に必要な数だけ指定できます。例えば、%%%A* と入力すると、名前が変更されたメンバーの最初の 3 文字は未変更のままで、4 文字目が文字 A に置き換えられ、旧メンバー名の残りの部分は未変更になります。
REPLACE
出力区分データ・セット内の同名テンプレートを File Manager が置き換えるかどうかを指定します。
NO
同名の XML テンプレートを置き換えません。
YES
出力区分データ・セット内の同名の XML テンプレートを置き換えます。
COPYCRIT
出力 XML をコピーブック定義および基準のみに制限するかどうかを指定します。動的テンプレートをエクスポートするために動的テンプレートを <symbol> エレメントとして処理する必要がある場合、このオプションは無視されます。
NO
テンプレートを記述するすべての XML エレメントが作成されます。
YES
XML はテンプレートおよび基準の作成に必要なエレメントのみに制限されます。
STATS
エクスポート・プロセスによって ISPF メンバー統計を作成または更新することを指定します。
NO
エクスポートしたメンバーの ISPF 統計の更新も作成も行いません。
YES
エクスポートしたメンバーの ISPF 統計を更新または作成します。

例: 先頭に D を使用するメンバー名から、先頭に C を使用するメンバー名までのメンバー名を持つ、すべてのテンプレートの基本エクスポートを実行します。エクスポートしたメンバーの名前を、先頭に X を使用するように変更します。

//FMBAT EXEC PGM=FILEMGR
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
$$FILEM TPEXP DSNIN=FMN.TEMPLATE.EXAMPLE,
$$FILEM MEMSTART=D*,
$$FILEM MEMEND=C*,
$$FILEM MEMOUT=X*,
$$FILEM DSNOUT=FMN.XML.TEMPLATE,
$$FILEM COPYCRIT=YES,
$$FILEM STATS=YES,
$$FILEM REPLACE=YES

以下の報告書が作成されます。

          Template Export Report
Template      New name   Type       Status
--------------------------------------------------------------
DJ1E          XJ1E       IMS        Exported
DJ1ECR2       XJ1ECR2    IMS CRIT   Exported
DJ1EVW        XJ1EVW     IMS VIEW   Exported
CTEMP1        XTEMP1     BASE       Exported
CTEMPDYN      XTEMPDYN   DYNAMIC    Exported
CTEMP3        XTEMP3     BASE       Exported
FMNBA631 6 members read 6 Exported 0 Export replaced  0 Errors
1. エクスポートの状況およびアクション
状況 説明 アクション
Exported テンプレートが XML フォーマットで正しくエクスポートされました。 None
Exported replaced テンプレートが XML フォーマットで正しくエクスポートされ、既存のメンバーが置き換えられました。 None
Not replaced 出力メンバーが存在し、REPLACE=NO が指定されています。 メンバーを置き換えるには、REPLACE=YES を指定します。
Corrupt template 入力テンプレートが破損しているためにロードできませんでした。 入力テンプレートを作成し直して、ジョブを再実行してください。
Template allocate error 入力テンプレート・データ・セットを割り振ることができませんでした。見つからなかった可能性があります。 入力データ・セット名を訂正して、ジョブを再実行してください。
見つかりません 入力テンプレート・データ・セット内で入力メンバー名が見つかりませんでした。 メンバー名またはデータ・セット名を訂正して、ジョブを再実行してください。
予期しないエラー 前のエラー・メッセージに、発生したエラーの説明があるはずです。 前のエラー・メッセージを読んで処置を行います。