Page History
...
7.77.3 INCLUDE の使用例
| Anchor | ||||
|---|---|---|---|---|
|
多数のファンクションから実行する必要のある共通の一連のコードがある場合、以下のようにします。 多数のファンクションから実行する必要のある共通の一連のコードがある場合、以下のようにします。
FUNCA
...
RDML
SUBROUTINE NAME(SUB1)
*<<共通のコード・セット>>
ENDROUTINE
...
FUNCB RDML
...
EXECUTE SUBROUTINE(SUB1)
...
INCLUDE PROCESS(PROCA)
...
FUNCTION(FUNCA)
...
または、共通コード用のファンクション内に共通コードを配置して必要に応じて呼び出すか、またはそのコードを必要とする各ファンクションにコピーすることもできます。INCLUDEコマンドを使用した方法を取ることをお勧めします。 または、共通コード用のファンクション内に共通コードを配置して必要に応じて呼び出すか、またはそのコードを必要とする各ファンクションにコピーすることもできます。INCLUDEコマンドを使用した方法を取ることをお勧めします。
| Anchor | ||||
|---|---|---|---|---|
|
あるファンクションから別のファンクションを呼び出し、作業リストを渡します。この作業リストは、両方のファンクションでまったく同じように定義されている必要があります。 あるファンクションから別のファンクションを呼び出し、作業リストを渡します。この作業リストは、両方のファンクションでまったく同じように定義されている必要があります。
FUNC1
...
RDML
DEF_
...
LIST NAME(#WRKLIST)
...
FIELDS(<<fields needed>>) TYPE(*WORKING)
...
ENTRYS(10)
...
FUNC2
...
RDML
INCLUDE PROCESS(*DIRECT)
...
FUNCTION(FUNC1)
...
CALL PROCESS(*DIRECT)
...
FUNCTION(FUNC3)
...
PASS_LST(#WRKLIST)
...
FUNC3
...
RDML
FUNCTION OPTIONS(*DIRECT)
...
RCV_LIST(#WRKLIST)
...
INCLUDE PROCESS(*DIRECT)
...
FUNCTION(FUNC1)
...
または、一方のファンクションで作業リストを定義してもう一方のファンクションにコピーするか、作業リストを必要とするファンクション内に作業リストを取り込むこともできます。 または、一方のファンクションで作業リストを定義してもう一方のファンクションにコピーするか、作業リストを必要とするファンクション内に作業リストを取り込むこともできます。