透過 Business Eventing Toolkit for SAP 發布事件

本文說明如何透過 Business Eventing Toolkit for SAP 發布事件。

透過程式輔助方式,將事件發布至已設定的 Google Cloud 目標

系統會根據已設定的目標 Google Cloud 服務,衍生出目標服務。如要瞭解如何設定目標 Google Cloud 服務,請參閱「設定目標 Google Cloud 服務」。

以下程式碼片段說明如何將事件資料發布至已設定的目標:

/goog/cl_event_publisher=>publish_event(
     EXPORTING
        iv_event_key = 'EVENT_KEY'
        it_data      = VALUE /goog/cl_publisher_base=>tt_messages( ( data = 'Hello World!' ) )
     IMPORTING
        et_output    = DATA(lt_output)
        et_return    = DATA(lt_return)
).

EVENT_KEY 替換為用於將事件發布至目標 Google Cloud 服務的事件鍵。

如要以 CloudEvent 傳送事件,您可以設定CloudEvent 預設屬性鍵,並在設定目標 Google Cloud 服務時,將此鍵附加至事件鍵。接著,SAP 的 Business Eventing Toolkit 會挑選 CloudEvent 的預設屬性值。

透過程式輔助方式,將 API 要求發布為含有預設值的 CloudEvents

下列程式碼片段說明如何將 HTTP API 要求發布為含有預設值的 CloudEvent:

lo_api_client->encode_as_cloud_event(
   EXPORTING
      iv_ce_key         = 'CLOUD_EVENT_ATTRIBUTE_KEY'
).

CLOUD_EVENT_ATTRIBUTE_KEY 替換為「設定 CloudEvent 屬性」部分中設定的「Cloud Event 預設屬性鍵」

透過程式碼以 CloudEvents 的形式發布 API 要求

如要透過程式輔助方式將業務事件發布為 CloudEvent,並覆寫設定表中定義的預設值,您可以使用 ENCODE_AS_CLOUD_EVENT 方法,為 CloudEvent 屬性傳遞特定值。

下列程式碼片段說明如何在將 HTTP 要求編碼為 CloudEvent 時,覆寫預設值:

lo_api_client->encode_as_cloud_event(
   EXPORTING
      "mandatory attributes
      iv_source         = 'SAP'
      iv_type           = 'ce.structured-ce'
      " add optional attributes
      iv_subject        = 'test'
      " extension attributes -> key,value
      it_extension_attr = VALUE #( ( name = 'my_ext_attr1' value = 'my_ext_value1')
                                   ( name = 'my_ext_attr2' value = 'my_ext_value2' ) )
      iv_encoding       = /goog/if_ce_spec_version=>c_ce_encoding-binary
).

如要發布 SAP 事件,請參閱下列說明: