9.19 COMPILE_COMPONENT

LANSA

9.19 COMPILE_COMPONENT


Þ 注:組 み込み関数の規則

このBIFはコンポーネントをコンパイルします。

Þこ れは、 開発環境のみで使用される特殊BIF です。

各製品の対応

LANSA/AD

未 対応

 

Visual LANSA for Windows

使 用可

Visual LANSAはコンパイル・プロセスを開始し、コンパイルが完了するまでは制御を戻しません。

Visual LANSA for Linux

未 対応

 

 

引数

番号

タイプ

必須/

任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

1

L

必 須

作 業リスト名。作業リストの長さは合計で9バイトである必要があります。

各 リスト項目は、次のような形式にする必要があります。

1 から9バイト:A(9)、コンポーネント名

1

9

 

 

2

A

任 意

強 制コンパイル(YES/NO)
このオプションがNOの場合は必要なコンポーネントのみコンパイルされ、オプションがYESの場合はすべてのコンポーネントがコンパイルされます。

デ フォルト:未対応

2

3

 

 

3

A

任 意

生 成されるソース・コードを保持する(YES/NO)

デ フォルト:未対応

2

3

 

 

4

A

任 意

デ バッグ用コンパイル(YES/NO)

デ フォルト:未対応

2

3

 

 

5

A

任 意

コ ンパイルのWebサービス(A/W/N)

A: すべてのWebルーチン
W:新しいWebルーチンのみ
N:コンパイルしない

デ フォルト:N

1

1

 

 

6

L

任 意

作 業リスト名。作業リストの長さは合計で21バイトである必要があります。

各 リスト項目は、次のような形式にする必要があります。

テ クノロジ・サービスID。A(21)。<プロバイダ名>:<テクノロジ・サービス名>の形式で 指定する必要があります。
例えば、LANSA:XHTMLのようになります。

1

21

 

 

 

戻り値

番号

タイプ

必須/

任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

1

A

必 須

戻 りコード
コンポーネントはビルド・プロセスを渡していないかロックされていると失敗する場合があります。

OK: コンパイル実行が成功した

NR: リスト内でコンパイル可能なコンポーネントが見つからなかった

ER: 引数の詳細が無効であるか、権限上の問題が発生した。この場合は、戻りコード・エラー・メッセージが自動的に発行されます。

2

2

 

 

 

ユーザーが自身のバージョンの「コンポーネントのコンパイル/再コンパイル」の機能を使用して、コンポーネントのコンパイルを制御する場合は、次のように 行います。

*********  Define arguments and lists
DEFINE     FIELD(#COMPNAME) TYPE(*CHAR) LENGTH(9)
DEFINE     FIELD(#RETCOD) TYPE(*CHAR) LENGTH(2)
DEF_LIST   NAME(#WKCOMP) FIELDS(#COMPNAME) TYPE(*WORKING)
DEF_LIST   NAME(#BWCOMP) FIELDS(#COMPNAME)
*********  Clear working and browse lists
BEGIN_LOOP
CLR_LIST   NAMED(#WKCOMP)
INZ_LIST   NAMED(#BWCOMP) NUM_ENTRYS(2) WITH_MODE(*CHANGE)
*********  Request component names
REQUEST    BROWSELIST(#BWCOMP)
*********  Move components from the browselist to the working list
SELECTLIST NAMED(#BWCOMP)
ADD_ENTRY  TO_LIST(#WKCOMP)
ENDSELECT
*********  Execute built-in-function - COMPILE_COMPONENT
USE        BUILTIN(COMPILE_COMPONENT) WITH_ARGS(#WKCOMP) TO_GET(#RETCOD)
*********  Check if submission was successful
IF         COND('#RETCOD *EQ ''OK''')
MESSAGE    MSGTXT('Compile Component submitted successfully')
ELSE
MESSAGE    MSGTXT('Compile Component submit failed with errors, refer to additional messages')
ENDIF
END_LOOP