Ansicht
Dokumentation
CRM_WR_BRF_RAISE_EVENT_ONLINE - BRF-Ereignis online aus Web-Antrag aufrufen
PERFORM Short Reference BAL Application Log DocumentationDiese Dokumentation steht unter dem Copyright der SAP AG.
Funktionalität
Dieser Baustein ist für den Aufruf aus dem BAdI für Web-Anträge CRM_SERVICE_WEBREQ vorgesehen. Die Schnittstelle besteht aus
- dem BRF-Ereignis
- der BRF-Anwendungsklasse
- dem Antragstyp (Service_ID)
- und der XML-Datei.
Nach der Abarbeitung der Regeln kann die XML-Datei verändert worden sein, indem Meldungen hinzugefügt oder Feldeinträge verändert wurden.
In der Tabelle ET_MESSAGE werden Meldungen erfasst, bei denen es sich um spezifische Meldungen des Business Rule Frameworks (BRF) handelt. Möchten Sie die Fehler bei der Antragsbearbeitung ausgeben, dann müssen diese an die Tabelle ET_MESSAGE des BAdI's übergeben.
Die Tabelle ET_WEBREQ_MESSAGE enthält Meldungen, die aus dem BRF an die XML-Datei hinzugefügt wurden. Um zu vermeiden, dass diese Meldungen doppelt vorhanden sind, sollten Sie diese nicht an die BAdI-Tabelle ET_MESSAGE übergeben.
Parametrisierung von BRF-Ereignissen
BRF-Ereignisse sind parametrisierbar. Haben Sie ein Ereignis parametrisiert, dann können Sie die Auswahl der durchzuführenden Regel funktionsgerecht auf den jeweiligen Parameter einschränken. Hierzu können Sie einem speziellen Ereignis einen Parameterschlüssel mit dem dazugehörigen Wert übergeben. Dies geschieht über die Struktur IS_BRF_PARAMS.
Die Definition von Parameterschlüsseln führen Sie in der IMG-Aktivität Parameterschlüssel definieren durch. Weitere Information über die Parametriesierung von BRF-EReignissen finden Sie in der dazugehörigen IMG-Dokumentation.
Das untere Beispiel zeigt Ihnen, wie Sie beim Aufrufen des Ereignisses den Parameterschlüssel 'Z_WEBREQ' mit dem Antragstyp als Wert mitgeben.
Zusätzlicher Ereigniskontext
Sie können für ein Ereigniskontext zusätzliche Daten bereitstellen, indem Sie diese zusätzlichen Daten in der Tabelle IT_APPL_CONTEXT zur Verfügung stellen. Analog zur Parametrisierung sind Referenzen auf Objekte oder Daten möglich. Im BRF rufen Sie die Daten über einen Schlüssel auf.
Beispiel
DATA: lt_message type uxb_t_message.
lv_req_type TYPE REF TO CRMT_REQT_S,
ls_req_type TYPE crmt_reqt_s,
ls_brf_param type CRMT_BRF_EVENT_PARAMS.
lt_wr_message type uxb_t_message.
ls_req_type-req_type = id_service_id.
FIELD-SYMBOLS: <fs> TYPE ANY.
CREATE DATA lv_req_type. "TYPE ('CRMT_REQT_S').
ASSIGN lv_req_type->* TO <fs>.
<fs> = ls_req_type.
ls_brf_param-param_key = 'Z_WEBREQ'.
ls_brf_param-param_values_ref = lv_req_type.
if cd_event eq 'CHECK'.
CALL FUNCTION 'CRM_WR_BRF_RAISE_EVENT_ONLINE'
EXPORTING
IV_EVENT = 'CHECK'
IV_APPLCLASS = 'Z_WR'
ID_SERVICE_ID = id_service_id
iR_FORM_DATA_ENVELOPE = ir_form_data_envelope
is_brf_params = ls_brf_param
IMPORTING
ET_MESSAGE = lt_message
ET_WEBREQ_MESSAGE = lt_wr_message
EXCEPTIONS
ERROR_OCCURRED = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
endif.
Hinweise
Weiterführende Informationen
Parameter
ET_MESSAGEET_WEBREQ_MESSAGE
ID_SERVICE_ID
IR_FORM_DATA_ENVELOPE
IS_BRF_PARAMS
IT_APPL_CONTEXT
IV_APPLCLASS
IV_EVENT
IV_TRACE_ON
Ausnahmen
ERROR_OCCURREDFunktionsgruppe
CRM_WR_BRF_EVENTFill RESBD Structure from EBP Component Structure rdisp/max_wprun_time - Maximum work process run time
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 5858 Date: 20240523 Time: 131333 sap01-206 ( 69 ms )