Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

[ Image Removed |../../index.htm#lansa/include_e.htm]
現在地:

...

7.77.3 INCLUDE の使用例

複数のファンクションに共通の実行可能コードを取り込む

複数のファンクションに共通の宣言を取り込む

Anchor
INCLUDE_EX1
INCLUDE_EX1
複数のファンクションに共通の実行可能コードを取り込む

多数のファンクションから実行する必要のある共通の一連のコードがある場合、以下のようにします。 多数のファンクションから実行する必要のある共通の一連のコードがある場合、以下のようにします。 

FUNCA

...

RDML 

   SUBROUTINE NAME(SUB1)
*<<共通のコード・セット>>
ENDROUTINE

...

FUNCB RDML

...

   EXECUTE SUBROUTINE(SUB1)

...


INCLUDE PROCESS(PROCA)

...

 FUNCTION(FUNCA)

...

または、共通コード用のファンクション内に共通コードを配置して必要に応じて呼び出すか、またはそのコードを必要とする各ファンクションにコピーすることもできます。INCLUDEコマンドを使用した方法を取ることをお勧めします。 または、共通コード用のファンクション内に共通コードを配置して必要に応じて呼び出すか、またはそのコードを必要とする各ファンクションにコピーすることもできます。INCLUDEコマンドを使用した方法を取ることをお勧めします。 

Anchor
INCLUDE_EX2
INCLUDE_EX2
複数のファンクションに共通の宣言を取り込む

あるファンクションから別のファンクションを呼び出し、作業リストを渡します。この作業リストは、両方のファンクションでまったく同じように定義されている必要があります。 あるファンクションから別のファンクションを呼び出し、作業リストを渡します。この作業リストは、両方のファンクションでまったく同じように定義されている必要があります。 

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)

または、一方のファンクションで作業リストを定義してもう一方のファンクションにコピーするか、作業リストを必要とするファンクション内に作業リストを取り込むこともできます。   
または、一方のファンクションで作業リストを定義してもう一方のファンクションにコピーするか、作業リストを必要とするファンクション内に作業リストを取り込むこともできます。
[ Image Removed |../../index.htm#lansa/include_e.htm]