Versions Compared

Key

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

...

  1. 提供されているHandleWebEvent()という名前のJavaScript関数を使用します。
    この関数を呼び出す方法は、HandleEvent()関数を呼び出す方法と同じです。

  2. (Webroutineを呼び出す場合とは異なり) ウェブレットにはWEBEVENTを呼び出すための追加のプロパティはありません。HandleWebEvent()は、ほとんどのウェブレットのpresubmit_jsプロパティから、またはユーザー定義のJavaScriptによって呼び出せます。例えば、onclick属性の値を設定することでJavascriptを直接実行することが可能です。

          documentdocument.LANSA.SEARCH.onclick = "HandleWebEvent('MYPROC', 'MYFUNC', null, 'WEFrame', 'ASURNAME', 'ASTDRENTRY')"

  3. パラメータは、HandleWebEvent(Process, Webevent, Form, Target, "ASURNAME", "ASTDRENTRY", ...)のようになっていて、各フィールドに対応する可変数のパラメータの値をWEBEVENTに渡すことができます。Form以外のすべてのパラメータは文字列であり、Formは、実際のフォームDHTMLオブジェクト(document.MYFORMなど)にします。ここでフィールド名の前に接頭辞を1文字付けることが重要です。この接頭辞は、Alphanumericフィールドの場合はA、Packedフィールドの場合はP、Signedフィールドの場合はS、RDMLXフィールドの場合はQです。この接頭辞は必須で、これにより呼び出し対象のWEBEVENTが渡されるフィールド値を交換できるようになります。

    JavaScript関数のTargetパラメータは必須です。指定できる値は、中に組み込むNavigation panel (std_nav_panel) ウェブレットの名前、ウィンドウの名前、独自のHTMLエレメントである<iframe>または<frame>の名前のいずれかです。

  4. このJavaScript関数は、指定のFormパラメータ (またはFormがnullの場合はデフォルト値の"LANSA"フォーム) からフィールドの値を取得し、一時的なフォームを作成して、URLに送信されるこのフォームにフィールドと値を挿入します。そして、URLに対するHTTP postを実行します。HandleWebEvent()にパラメータとして渡すフィールド名にはすべて、フィールドのタイプを示す1文字の接頭辞を付ける必要があることに注意してください。WAMフィールド参照は接頭辞を必要としませんが、WEBEVENTファンクションは必要とします。したがって、このJavaScriptコードは、WAMフォームから指定のフィールド値を取得するときには1文字の接頭辞なしで取得しますが、WEBEVENTファンクションにフィールド名を送信するときには接頭辞付きで送信します。

  5. その結果、指定のフィールド値が渡されたWEBEVENT LANSAファンクションが実行され、WEBEVENTページが宛先のNavigation panel (std_nav_panel) ウィンドウに表示されるか、独自のHTMLエレメントである<iframe>または<frame>に表示されます。

WAMフォームからWEBEVENTフォームを開始し、情報を渡す方法

...