9.149 OBJECT_PROPAGATE
注意: 9.1 組み込み関数の規則 利用オプション
指定のリポジトリ・グループにオブジェクトを伝播します。
引数
番号 | タイプ | 必須/任意 | 記述 | 最小長 | 最大長 | 最小小数桁数 | 最大小数桁数 |
|---|---|---|---|---|---|---|---|
1 | A | 必須 | オブジェクト名 タイプ:オブジェクト名 | 1 | 10 | 0 | 0 |
2 | A | 必須 | オブジェクト拡張子 タイプ:オブジェクト拡張子 | 1 | 10 | 0 | 0 |
3 | A | 必須 | オブジェクト・タイプ 有効なオブジェクト・タイプは以下のとおりです。 DF = フィールド | ||||
4 | A | 必須 | ワーク・グループ *ALL または有効なワーク・グループ |
戻り値
番号 | タイプ | 必須/任意 | 記述 | 最小長 | 最大長 | 最小小数桁数 | 最大小数桁数 |
|---|---|---|---|---|---|---|---|
1 | A | 必須 | 戻りコード 有効な戻りコード: | 1 | 2 | 0 | 0 |
技術上の注記
区画IDは、この組み込み関数が実行される現在の区画です。
例
以下のRDMLコードは、組み込み関数を別の環境で使用する方法を示します。
LANSAコマンドに以下のパラメータを指定して、以下のファンクションを直接呼び出すことができます。
LANSA REQUEST(RUN) PROCESS(Process_name) FUNCTION(Function_name) PARTITION(DEM)
FUNCTION *DIRECT
DEFINE FIELD(#OBJNM) TYPE(*CHAR) LENGTH(10) DESC('Object Name'
)
DEFINE FIELD(#OBJEX) TYPE(*CHAR) LENGTH(10) DESC('Object Ex')
DEFINE FIELD(#OBJTY) TYPE(*CHAR) LENGTH(2) DESC('Object Type')
DEFINE FIELD(#WRKGP) TYPE(*CHAR) LENGTH(10) DESC('WorkGroup ')
DEFINE FIELD(#TSKID) TYPE(*CHAR) LENGTH(10) DESC('Task ID')
DEFINE FIELD(#RTNCD) TYPE(*CHAR) LENGTH(2) DESC('Return Code')
GROUP_BY NAME(#PARM_GRP) FIELDS((#OBJNM) (#OBJEX) (#OBJTY) (#WRK GP) (#RTNCD))
**********
BEGIN_LOOP
REQUEST FIELDS((#PARM_GRP))
USE BUILTIN(OBJECT_PROPAGATE) WITH_ARGS(#OBJNM #OBJEX #OBJT Y #WRKGP) TO_GET(#RTNCD)
END_LOOP
*
FUNCTION *DIRECT
DEFINE FIELD(#OBJNM) TYPE(*CHAR) LENGTH(10) DESC('Object Name')
DEFINE FIELD(#OBJEX) TYPE(*CHAR) LENGTH(10) DESC('Object Ex')
DEFINE FIELD(#OBJTY) TYPE(*CHAR) LENGTH(2) DESC('Object Type')
DEFINE FIELD(#WRKGP) TYPE(*CHAR) LENGTH(10) DESC('WorkGroup (* ALL)')
DEFINE FIELD(#TSKID) TYPE(*CHAR) LENGTH(10) DESC('Task ID')
DEFINE FIELD(#RTNCD) TYPE(*CHAR) LENGTH(2) DESC('Return Code')
DEFINE FIELD(#MSGDTA1) TYPE(*CHAR) LENGTH(30)
DEFINE FIELD(#MSGDTA) TYPE(*CHAR) LENGTH(132)
CHANGE FIELD(#MSGDTA1) TO('RETURN CODE--> ')
GROUP_BY NAME(#PARM_GRP) FIELDS((#OBJNM) (#OBJEX) (#OBJTY) (#WRK GP) )
IF COND('*JOBMODE = I')
BEGIN_LOOP
REQUEST FIELDS((#PARM_GRP))
SUBMIT PROCESS(TESTBIF) FUNCTION(BIF02) EXCHANGE(#PARM_GRP)
CHANGE FIELD(#PARM_GRP) TO(*NULL)
END_LOOP
ELSE
USE BUILTIN(OBJECT_PROPAGATE) WITH_ARGS(#OBJNM #OBJEX #OBJTY #WRKGP) TO_GET(#RTNCD)
**********
USE BUILTIN(BCONCAT) WITH_ARGS(#MSGDTA1 #RTNCD #OBJNM) TO_GET(#MSGDTA)
MESSAGE MSGID(CPF9898) MSGF(QCPFMSG) MSGDTA(#MSGDTA)
ENDIF