@programLinkData
@programLinkData 複合プロパティーは、 ユーザーがフォームを送信したときや、ハイパーテキスト・リンクをクリックしたときの、別の VGWebTransaction プログラムへの制御権移動に関する詳細を指定します。
ある VGWebTransaction プログラムから別の VGWebTransaction プログラムへの情報転送は多少複雑な処理であり、この処理には、@programLinkData 内のさまざまなプロパティー・フィールドが関係しています。 VGUI レコード変数を新規プログラムに渡し、@linkParameter のプロパティーを使用してそのレコードをロードします。
この複合プロパティーには、以下のプロパティー・フィールドが含まれています。
- programName
- ユーザーがフォームを送信したときや、ハイパーテキスト・リンクをクリックしたときに呼び出すプログラムを識別する STRING。 別名を指定した場合、または、プログラム・パーツの名前を指定したケースで、そのパーツに別名があり、 そのパーツが現行のワークスペースにある場合には、生成時にその別名が使用されます。
- VGWebTransaction プログラムが定義済みで、現行のワークスペースからアクセス可能な場合、その VGWebTransaction プログラムのパッケージ名を使用して、実行時に使用される Bean が生成されます。 それ以外の場合、そのプログラムのパッケージ名は、hptLinkage プロパティー・ファイルのアプリケーション項目の javaProperty 値から取得されます。
- uiRecordName
- 送信する VGUI レコードを識別する STRING (ある場合)。 このレコードには、Web フォーム、リンケージ・パラメーター、またはその両方からのデータが含まれています。 別名を指定した場合、または VGUIRecord パーツの名前を指定したケースで、そのパーツに別名があり、そのパーツが現行のワークスペースにある場合は、生成時にその別名が使用されます。
- uiRecordName フィールドに指定した VGUIRecord パーツが定義済みで、生成時に現行のワークスペースからアクセス可能な場合、その VGUIRecord パーツのパッケージ名を使用して、実行時に使用される Bean が生成されます。それ以外の場合は、そのプログラムに使用されるパッケージ名が VGUI レコードにも使用されます。
- newWindow
- ユーザーがフォームを送信したブラウザー・ウィンドウまたはハイパーテキスト・リンクをクリックしたブラウザー・ウィンドウとは別のブラウザー・ウィンドウに、呼び出し先プログラムによって表示された
Web ページが表示されるかどうかを示すブール値。
有効な値は以下のとおりです。
- no (デフォルト)
- Web ページは同じウィンドウに表示されます。 現行のフォームが returning 文節のある show ステートメントまたは converse ステートメントによって表示された場合、新規のウィンドウでは、ユーザーとの既存の会話を中断させます。
- yes
- Web ページは異なるウィンドウに表示されます。
- linkParms
- これは、@linkParameter 複合プロパティー (後述します) の配列です。
この配列のメンバーは、ゲートウェイ・サーブレットに渡される照会パラメーターを表しています。
linkParms プロパティー・フィールドには、以下の複合プロパティーが含まれています。
- @linkParameter
- 受け取り側プログラムの入力レコードに配置する値を示します。
@linkParameter 複合プロパティーには、以下のプロパティー・フィールドが含まれています。
- name
- ゲートウェイ照会パラメーターの名前を含む STRING。詳しくは、Web トランザクションのゲートウェイ照会パラメーターを参照してください。
- value
- パラメーターに割り当てるリテラル STRING 値。
- valueRef
- 呼び出し先プログラムに送信されるレコード内のフィールドの名前を含む STRING。このフィールドの値がパラメーターに割り当てられます。
1 つの @linkParameter プロパティーに、value と valueRef の両方を指定することはできません。
例
DataItem Prog1LinkItem char(9) {
@ProgramLinkData {
programName = "my.company.sys1.PROG1",
linkParms = [
@LinkParameter {
name="parm1",
value="abc"
},
@LinkParameter {
name="parm2",
value="efg"
}
]
}
}
end