FMN1POPD、FMN1POPI および FMN1AGNT マクロの例
以下のサンプル・コードは、FMN1POPD に対して IMS™ サブシステムを定義するためにコーディングする FMN1POPI、FMN1AGNT、および FM/IMS マクロを示しています。5 つのサブシステムが定義され、そのうちの 2 つは AGN を使用します。ステートメントの説明については、例の終わりにある注を参照してください。FMN1POPD、FMN1POPI、および FMN1AGNT について詳しくは、FM/IMS Optionsを参照してください。
既に FMN1POPD 内でコーディングされているパラメーター値がサブシステムで使用される場合、そのパラメーターは、そのサブシステムの FMN1POPI マクロ内にコーディングされません。
- FMN1POPD
- すべての BMP 値は保護され、すべての DLI 値は保護されません。これらは、サブシステムの FMN1POPI マクロでオーバーライドされる場合を除き、デフォルトになります。
- FMN1POPI
- SSID=IF52 の場合、すべてが無保護となるようにすべての BMP 値を無保護とし、動的 PSB 専用。
- SSID=IF42 の場合、すべてが保護されるようにすべての DLI 値を保護し、静的 PSB 専用。
- SSID=IF32 の場合、動的に割り振られるデータベース・データ・セット専用で、AGN を使用。
- SSID=IFA2 の場合、BMP 専用で、データ・セット名を除いて、使用するすべての値は FMN1POPD の値。
- SSID=IFB2 の場合、READONLY で、他のすべての値は FMN1POPD の値。
FMN1POPD ACBLIB=IMSV11.IFB2.ACBLIB, +
AUTOSAVE=(Y,Y), +
CHGAFREQ=(100,100), +
DBRC=Y, +
DBDLIB1=FMN1.PROD.DBDLIB, +
DBDLIB2=FMNA.PROD.DBDLIB2, +
DBDLIB3=FMN2.PROD.DBDLIB, +
DBDLIB4=FMN5.PROD.DBDLIB, +
DBDLIB5=FMNX.TEST.DBDLIB, +
DBDLIB6=FMNY.TEST.DBDLIB, +
DFSVSAMP=IMSV11.IFB2.PROCLIB, +
DYNACB=IMSV11.IFB2.DOPTLIB, +
DYNALLOC=N, + ◄1
DYNPRFN=50, +
DYNPRFX=FMN0, +
EDITFREQ=(1,1), +
IEBFREQ=(100,100), +
IMSAUDLG=N, +
IMSBKO=Y, +
IMSNBA=10, +
IMSOBA=6, +
IRLM=N, +
IRLMNAME=, +
LOADFREQ=(100,100), +
MACLIB=IMS.V10.SDFSMAC, +
MAXGN=(100,100), +
PARDLI=0, +
PSBLIB1=FMN1.PROD.PSBLIB, +
PSBLIB2=FMNA.PROD.PSBLIB2, +
PSBLIB3=FMN2.PROD.PSBLIB, +
PSBLIB4=FMN5.PROD.PSBLIB, +
PSBLIB5=FMNX.TEST.PSBLIB, +
PSBLIB6=FMNY.TEST.PSBLIB, +
PROCOPTB=(G,G), +
PROCOPTP=(G,G), +
PROCOPTX=(G,G), +
PROCOPTY=(G,G), +
PSBTYPE=DYNAMIC, +
PSBTYPES=BOTH, + ◄2
READONLY=N, +
REGTYPES=BOTH, + ◄3
RESLIB1=IMSV11.IFB2.SDFSRESL, +
RESLIB2=IMSV11.IFB2.USERLIB, +
TPLLIB1=FMN1.PROD.TEMPLATE, +
TPLLIB2=FMNA.PROD.TEMPLATE, +
TPLLIB3=FMN2.PROD.TEMPLATE, +
TPLLIB4=FMN5.PROD.TEMPLATE, +
TPLLIB5=FMNX.TEST.TEMPLATE, +
TPLLIB6=FMNY.TEST.TEMPLATE, +
UACBLIB=Y, +
UAUTOSAV=(N,Y), +
UBUF=Y, +
UDBRC=Y, +
UDFSVSMP=Y, +
UIEBFREQ=(N,Y), +
UIMSBKO=Y, +
UIMSNBA=N, +
UIRLM=Y, +
ULOADFRQ=(N,Y), +
ULOCKMAX=(N,Y), +
UMACLIB=Y, +
UPARDLI=N, +
UPROCOPB=(N,Y), +
UPROCOPP=(N,Y), +
UPROCOPX=(N,Y), +
UPROCOPY=(N,Y), +
UPSBTYPE=Y, +
URECON=Y, +
URESLIB=Y, +
URSR=Y, +
VCURULE=T, +
VSMPMEM=DFSVSMDB, +
DOPTLB=N
*
FMN1POPI SSID=IF52, + ◄ IF52
DESC="Dynamic PSB only, unprotected", +
ACBLIB=IMSV910.IF52.ACBLIB, + ◄ 7
DBDLIB1=FMN.IF52.DBDLIB, + ◄ 29
DYNACB=IMSV910.IF52.DOPTLIB, + ◄ 8
IRLM=Y, + ◄ 6
IRLMNAME=IRLM, +
MACLIB=IMS.V910.SDFSMAC, + ◄ 9
MAXGN=(0,0), +
PSBTYPES=DYNAMIC, + ◄ 4
RESLIB1=IMSV910.IF52.SDFSRESL, + ◄ 10
UAUTOSAV=Y, +
UIEBFREQ=Y, +
UIMSNBA=Y, +
ULOADFRQ=Y, +
ULOCKMAX=Y, + ◄ 5
UPARDLI=Y, +
UPROCOPB=Y, +
UPROCOPP=Y, +
UPROCOPX=Y, +
UPROCOPY=Y, +
XDOPTLB= +
*
FMN1POPI SSID=IF42, + ◄ IF42
DESC="Static PSB only, all protected", +
ACBLIB=IMSV910.IF42.ACBLIB, + ◄ 15
DBRC=N, + ◄ 14
DYNACB=IMSV910.IF42.DOPTLIB, + ◄ 16
PSBLIB1=FMN.IF42A.PSBLIB, + ◄ 333
PSBLIB2=FMN.IF42B.PSBLIB, +
PSBTYPES=STATIC, + ◄ 11
RESLIB1=IMSV910.IF42.SDFSRESL, + ◄ 17
RESLIB2=IMSV910.IF42.USERLIB, + ◄ 18
UACBLIB=N, + ◄ 12
UAUTOSAV=(,N), + ◄ 13
UBUF=N, +
UDBRC=N, +
UDFSVSMP=N, +
UIEBFREQ=(,N), +
UIMSBKO=N, +
UIRLM=N, +
ULOADFRQ=(,N), +
ULOCKMAX=(,N), +
UMACLIB=N, +
UPROCOPB=(,N), +
UPROCOPP=(,N), +
UPROCOPX=(,N), +
UPROCOPY=(,N), +
URECON=N, +
URESLIB=N, +
URSR=N +
*
FMN1POPI SSID=IF32, + ◄ IF32
DESC="Dynamic allocation ds only", +
ACBLIB=IMSV810.IF32.ACBLIB, +
AUTOSAVE=N, + ◄ 222
CHGAFREQ=(44,44), +
DBRC=Y, + ◄ 21
DFSVSAMP=IMSV810.IF32.PROCLIB, +
DYNACB=IMSV810.IF32.DOPTLIB, +
DYNALLOC=Y, + ◄ 19
RESLIB1=IMSV810.IF32.SDFSRESL, +
RESLIB2=, +
TPLLIB1=IFA2.XXX1.TEMPLATE, + ◄ 31
TPLLIB2=IFA2.XXX2.TEMPLATE, +
TPLLIB3=IFA2.XXX3.TEMPLATE, +
UACBLIB=N, +
UAGNS=Y, + ◄ 22
XDOPTLB=Y + ◄ 23
*
FMN1POPI SSID=IFA2, + ◄ IFA2
DESC="BMP only system", +
ACBLIB=IMSV11.IFA2.ACBLIB, +
DYNACB=IMSV11.IFA2.DOPTLIB, +
IMSAUDLG=Y, + ◄ 26
MACLIB=IMS.V10.BETA.SDFSMAC, +
REGTYPES=BMP, + ◄ 24
RESLIB1=IMSV11.IFA2.SDFSRESL, +
RESLIB2=IMSV11.IFA2.USERLIB, +
UAGNS=Y + ◄ 25
*
FMN1POPI SSID=IFB2, + ◄ IFB2
DESC="READONLY system", +
READONLY=Y + ◄ 27
*
FMN1AGNT SSID=IF52,AGN=FMN52 + ◄ 28
FMN1AGNT SSID=IFA2,AGN=FMNA0001,DESC="HR" +
FMN1AGNT SSID=IFA2,AGN=FMNA0002,DESC="Finance" +
*
FMN1END END
注:
- この例では、+ 文字は 72 桁目にあります。
- この例は、FM/IMS で使用する 5 つの IMS™ サブシステムを定義するためにコーディングするステートメントを示しています。FMN1POPD マクロのためのコードも示されています。アプリケーション・グループ名セキュリティーは、これらの IMS™ サブシステムのうちの 2 つで使用されています。
- すべての FMN1POPI マクロがまとめて指定されており、その後に FMN1AGNT マクロが続いていることに注意してください。
- FMN1END マクロ・ステートメントは、END の位置にコーディングされています。
FMN1POPD:
- これらのパラメーターは、FMN1POPI マクロ内でパラメーターが指定されていない場合に、それらのパラメーターのデフォルトとして機能します。2 つの値があるパラメーターの場合、最初の値は BMP モード用で、2 番目の値は DLI モード用です。
- デフォルトとして、すべてのサブシステムは BMP および DLI モードで実行でき [3]、すべてのサブシステムは静的または動的 PSB を使用して実行でき [2]、動的割り振り [1] は強制されません。
FMN1POPI:
IF52:
- これらのステートメントは、DESC キーワードで指定されているように、Dynamic PSB only, unprotected として IMS™ サブシステムを定義しています。SSID は IF52 です。これは、FM/IMS 入力パネルに表示される値です。
- 動的 PSB を強制的に使用させるために、パラメーター PSBTYPES が「DYNAMIC」に設定されています [4]。
- デフォルト値が「protect」であるすべてのパラメーターを無保護にするために、すべての使用法パラメーターを「Y」に設定する必要があります [5]。
- さらに、このサブシステムは IRLM を使用します [6]。
- このサブシステムのすべてのデータ・セット名はデフォルトとして設定されたものと異なるため、指定する必要があります [7, 8, 9, 10]。
- この 1 つのパラメーターが含まれている場合 [29]、FMN1POPD でセットアップされている 6 個のすべての DBDLIB パラメーターが指定変更されます。
- UAGNS キーワードは指定されておらず、UAGNS=NO が FMN1POPD マクロ内で指定されています。したがって、IF52 ではアプリケーション・グループ名セキュリティーは使用されません。最初の FMN1AGNT マクロ内の AGN は無視されます。
IF42:
- これらのステートメントは、DESC キーワードで指定されているように、Static PSB only, all protected として IMS™ サブシステムを定義しています。SSID は IF42 です。これは、FM/IMS 入力パネルに表示される値です。
- 静的 PSB を強制的に使用させるために、パラメーター PSBTYPES が「STATIC」に設定されています [11]。
- デフォルト値が「unprotect」であるすべてのパラメーターを保護するために、すべての使用法パラメーターを、特定のパラメーターの値が 1 つであるか 2 つであるかに応じて、「N」[12] または「(,N)」[13] に設定する必要があります。
- さらに、このサブシステムは DBRC [14] を使用しません。これは、IMS™ システム定義で許可されている場合のみ可能です。
- このサブシステムのいくつかのデータ・セット名はデフォルトとして設定されたものと異なるため、指定する必要があります [15, 16, 17, 18]。
- これらのパラメーター [15, 16,] が含まれる場合、FMN1POPD でセットアップされている 6 個すべての PSBLIB パラメーターが指定変更されます。
IF32:
- これらのステートメントは、DESC キーワードで指定されているように、Dynamic allocation ds only として IMS™ サブシステムを定義しています。SSID は IF32 です。これは、FM/IMS 入力パネルに表示される値です。
- DLI モードですべてのデータベース・データ・セットの動的割り振りの使用を強制するために、パラメーター DYNALLOC が「Y」に設定されています [19]。
- これらのパラメーター [31] が含まれる場合、FMN1POPD でセットアップされている 6 個すべての TPLLIB パラメーターが指定変更されます。
- AUTOSAVE オプションはオフにされています [222]。
- DBRC は「Y」に設定されていますが [21]、デフォルト値も「Y」に設定されているので、必ずしも必要ありません。
- このサブシステムは AGN を使用します [22]。
- 動的 PSB が使用されている場合は、DOPT ACBLIB からすべてのメンバーが消去されます。これは、XDOPTLB が「Y」に設定されているために行われます [23]。
IFA2:
- これらのステートメントは、DESC キーワードで指定されているように、BMP only system として IMS™ サブシステムを定義しています。SSID は IFA2 です。これは、FM/IMS 入力パネルに表示される値です。
- BMP モードを強制的に使用させるために、パラメーター REGTYPES が「BMP」に設定されています [24]。
- このサブシステムは AGN を使用します [25]。
- 監査ロギングを強制的に使用させるために、パラメーター IMSAUDLG が「Y」に設定されています [26]。
IFB2:
- これらのステートメントは、DESC キーワードで指定されているように、READONLY system として IMS™ サブシステムを定義しています。SSID は IFB2 です。これは、FM/IMS 入力パネルに表示される値です。
- このシステムを強制的に読み取り専用システムにするために、パラメーター READONLY が「Y」に設定されています [27]。
FMN1AGNT:
- 最初のステートメントはサブシステム IF52 を参照していますが、このサブシステムは AGN を使用しないので、このステートメントは無視されます [28]。
- 次の 2 つのステートメントはサブシステム IFA2 を参照しており、このサブシステムでは UAGNS が「Y」に設定されているので、これら 2 つの AGN だけが使用されます。
- IF32 用の FMN1AGNT マクロが存在しないことに注意してください。このマクロは、AGN を使用するために指定されます。IF32 用の FMN1AGNT マクロが存在しないために、名前の妥当性は IMS™ によってのみ制御され、FM/IMS は AGN フィールド内でどのような名前でも許容します。
- FMN1AGNT マクロを指定する利点は、どの名前を使用するかユーザーが分からない場合に、選択リストを表示できることです。これらのマクロが組み込まれていない場合は、この表示はできません。