9.163 PUT_HELP
注意: 9.1 組み込み関数の規則 利用オプション
指定のフィールド、ファンクション、またはプロセスに関するヘルプ・テキストのリストを追加/更新します。
この BIF は、9.2 開発環境のみで使用される組み込み関数 です。
引数
番号 | タイプ | 必須/任意 | 記述 | 最小長 | 最大長 | 最小小数桁数 | 最大小数桁数 |
|---|---|---|---|---|---|---|---|
1 | A | 必須 | オブジェクト名 フィールド、ファンクション、またはプロセスの名前です。 | 1 | 10 | ||
2 | A | 必須 | オブジェクトの拡張名 オブジェクト・タイプがファンクションの場合、この値にはファンクションが定義されているプロセス名を含める必要があります。オブジェクト・タイプがファンクションでない場合、この値はブランクにします。 | 1 | 10 | ||
3 | A | 必須 | オブジェクト・タイプ 値: | 2 | 2 | ||
4 | L | 必須 | ヘルプ・テキストを含める作業リスト呼び出し元のRDMLファンクションは、項目の長さの合計が正確に77バイトの作業リストを提供しなければなりません。 送信する各リスト項目は、次のような形式にする必要があります。 開始 - 終了 説明 | 1 | 77 |
戻り値
番号 | タイプ | 必須/任意 | 記述 | 最小長 | 最大長 | 最小小数桁数 | 最大小数桁数 |
|---|---|---|---|---|---|---|---|
1 | A | 必須 | 戻りコード OK = ヘルプ・テキストが正常にデータベースに追加/更新された ER = 引数の詳細が無効であるか、権限上の問題が発生した "ER" の場合は、戻りコード・エラー・メッセージが自動的に発行されます。 | 2 | 2 |
例
ユーザーは、プロセス制御メニューおよびフィールド制御メニューに提供されたLANSAオプションで、フィールド、ファンクション、プロセスのヘルプ・テキストを作成/変更できますが、これを使わずに特定のオブジェクトのヘルプ・テキストを取得および更新する場合は次のように行います。
********* Define arguments and lists
DEFINE FIELD(#OBJNAM) TYPE(*CHAR) LENGTH(10)
DEFINE FIELD(#OBJEXT) TYPE(*CHAR) LENGTH(10)
DEFINE FIELD(#OBJTYP) TYPE(*CHAR) LENGTH(2)
DEFINE FIELD(#HLPTXT) TYPE(*CHAR) LENGTH(77)
DEFINE FIELD(#RETCOD) TYPE(*CHAR) LENGTH(2)
DEF_LIST NAME(#WKHLPL) FIELDS((#HLPTXT)) TYPE(*WORKING)
DEF_LIST NAME(#BWHLPL) FIELDS((#HLPTXT))
GROUP_BY NAME(#RQSOBJ) FIELDS((#OBJNAM) (#OBJEXT) (#OBJTYP))
GROUP_BY NAME(#DSPHLP) FIELDS((#OBJNAM) (#OBJEXT) (#OBJTYP))
********* Clear working and browse lists
BEGIN_LOOP
CLR_LIST NAMED(#WKHLPL)
CLR_LIST NAMED(#BWHLPL)
********* Request Object Name, Extension and Type
REQUEST FIELDS(#RQSOBJ)
********* Execute Built-In Function - GET_HELP
USE BUILTIN(GET_HELP) WITH_ARGS(#OBJNAM #OBJEXT #OBJTYP) TO_GET(#WKHLPL #RETCOD)
********* Help text was retrieved successfully
IF COND('#RETCOD *EQ ''OK''')
********* Move Help text from the working list to the browselist
SELECTLIST NAMED(#WKHLPL)
ADD_ENTRY TO_LIST(#BWHLPL) WITH_MODE(*CHANGE)
ENDSELECT
********* Allow Help text to be changed for the object
REQUEST FIELDS(#DSPHLP) BROWSELIST(#BWHLPL)
********* Change the help text for this object
EXECUTE SUBROUTINE(PUTHELP)
********* Working list overflowed, more help text to retrieve
ELSE
IF COND('#RETCOD *EQ ''OV''')
MESSAGE MSGTXT('List not big enough to fit all help text')
********* GET_HELP failed with errors, report error
ELSE
MESSAGE MSGTXT('GET_HELP failed with errors, try again')
ENDIF
ENDIF
END_LOOP
********* Subroutine to change help text for this object
SUBROUTINE NAME(PUTHELP)
CLR_LIST NAMED(#WKHLPL)
********* Move Help text from the browselist to the working list
SELECTLIST NAMED(#BWHLPL)
ADD_ENTRY TO_LIST(#WKHLPL)
ENDSELECT
********* Execute Built-In Function - PUT_HELP
USE BUILTIN(PUT_HELP) WITH_ARGS(#OBJNAM #OBJEXT #OBJTYP #WKHLPL) TO_GET(#RETCOD)
********* Help text was changed successfully
IF COND('#RETCOD *EQ ''OK''')
MESSAGE MSGTXT('Help text for this object has been changed')
********* PUT_HELP failed with errors, report error
ELSE
MESSAGE MSGTXT('PUT_HELP failed with errors, try again')
ENDIF
ENDROUTINE