天天看點

SAP CRM 使用Javascript觸發SAP Server Event

原文位址:How To Trigger SAP Server Event With Javascript

本文位址:http://www.cnblogs.com/hhelibeb/p/5977921.html

  為了在BSP中使用Javascript觸發server event,你需要在.htm檔案中使用<bsp:event>标簽生成一個Javascript方法。如果有需要的話,可以通過該标簽傳遞兩個參數:

<bsp:htmlbEvent name = "fireServerEvent"
                Id   = "fireServerEvent"
                p1   = "p1"
                p2   = "p2" />      

  接下來生成像下面這樣的方法:

<script language="javascript">
    fireServerEvent( p1 = "first_parameter"
                     p2 = "second_parameter" );
</script>      

  你需要通過serveEvent(大小寫敏感)建立一個event handler來處理事件。接下來像這樣在event handler内部通路資料:

DATA: lr_event       TYPE REF TO cl_bsl_htmlb_event,
      lt_event_items TYPE tihyypnvp,
      ls_event_items TYPE ihttpnvp.

IF htmlb_event_ex IS BOUND.
       lr_event ?= htmlb_event_ex.
       IF  lr_event->name = 'fireServerEvent'.
*      your code here
*      access the parameters as lr_event->p1 and lr_event->p2
    ENDIF
ENDIF      

  可以在.htm檔案中使用下面的代碼來周期性地觸發一個server event,即通過使用Javascript中的setInterval()方法。在這個例子中是每十秒觸發一次。

<bsp:htmlbEvent name = "fireServerEvent"
                id   = "fireServerEvent" />

<script language="javascript">
    var oInterval = setInterval("fireServerEvent()", 10000);
</script>