
Sie verwenden die Klasse CL_SRT_PUBLIC_IBCR in Ihrer Anwendung, um Identifiable Business Context References (IBCRs) anzulegen, zu bearbeiten und zu löschen.
Mit der Klasse CL_SRT_PUBLIC_IBCR in Ihrer Anwendung können Sie Identifiable Business Context References (IBCRs) anlegen, bearbeiten und löschen.
Normalerweise müssen Sie IBCRs (weder mit Hilfe dieser API in einer Anwendung noch manuell mit SOA-Manager) erstellen, da SAP NetWeaver dies für Sie automatisch übernimmt, wenn Sie IBCs anlegen. Am häufigsten wird diese API für den Zugriff auf die aktuelle Liste der IBCRs im System und zum Anlegen einer Instanz einer vorhandenen IBCR benutzt.
CL_SRT_PUBLIC_FACTORY=>GET_IBCR_HANDLER( ).
Die Methode GET_IBCR_HANDLER gibt eine Instanz des Klassentyp CL_SRT_PUBLIC_IBCR mit dem Interface IF_SRT_PUBLIC_IBCR_HANDLER zurück.
Dieses Interface enthält die folgenden Methoden zum Abrufen und Anlegen von IBCR-Instanzen:
| Methode | Ebene | Beschreibung |
|---|---|---|
| LIST | Statische Methode | IBCs abfragen |
| OPEN_BY_ID | Instanzmethode | Instanz einer vorhandenen IBCR durch Ermitteln ihrer ID anlegen |
| OPEN_BY_RECEIVER | Instanzmethode | Instanz einer vorhandenen IBCR durch Ermitteln ihres IBCR-/Empfängertyps und -namens anlegen |
| CREATE | Instanzmethode | Instanz einer IBCR anlegen, um eine neue IBCR anzulegen |
| EXISTS | Instanzmethode | Prüfen, ob eine IBCR vorhanden ist. |
Dieses Interface stellt Methoden zum Abrufen von Informationen sowie zum Ändern und Löschen von IBCR-Instanzen bereit. Bevor diese Operationen ausgeführt werden können, müssen zuerst IBCRs mit der Methode OPEN_BY_ID, OPEN_BY_RECEIVER oder CREATE im Interface IF_SRT_PUBLIC_IBCR_HANDLER erstellt werden.
| Methode | Ebene | Beschreibung |
|---|---|---|
| ADD_USAGE | Instanzmethode | Verwendungseintrag zu einer IBCR hinzufügen |
| ASSIGN | Instanzmethode | IBCR zu einem Provider-System zuordnen |
| DELETE | Instanzmethode | IBCR löschen |
| DELETE_DESCRIPTION | Instanzmethode | Beschreibung für eine bestimmte Sprache löschen |
| DELETE_USAGE | Instanzmethode | Verwendungseintrag einer IBCR löschen |
| GET_ASSIGNMENT | Instanzmethode | Zuordnungsdaten holen |
| GET_BUSINESS_ADDRESS | Instanzmethode | Geschäftsadresse holen |
| GET_DESCRIPTION | Instanzmethode | IBCR-Beschreibung holen |
| GET_IBC_NOTES | Instanzmethode | IBC-Hinweise holen |
| GET_IBCR_NOTES | Instanzmethode | IBCR-Hinweise holen |
| GET_LAST_CHANGE | Instanzmethode | Datum der letzten Änderung holen |
| GET_RECEIVER | Instanzmethode | Empfängerinformationen holen |
| GET_TECHNICAL_ADDRESS | Instanzmethode | Technische Adresse holen |
| GET_USAGES | Instanzmethode | Verwendungen einer IBCR holen |
| GET_VALID_FROM | Instanzmethode | Gültigkeitsbeginn holen |
| GET_VALID_TO | Instanzmethode | Gültigkeitsende holen |
| LOCK | Instanzmethode | IBCR sperren |
| SAVE | Instanzmethode | IBCR sichern |
| SET_BUSINESS_ADDRESS | Instanzmethode | Geschäftsadresse bearbeiten |
| SET_DESCRIPTION | Instanzmethode | Beschreibung bearbeiten |
| SET_IBC_NOTES | Instanzmethode | IBC-Hinweise bearbeiten |
| SET_IBCR_NOTES | Instanzmethode | IBCR-Hinweise bearbeiten |
| SET_LAST_CHANGE | Instanzmethode | Datum der letzten Änderung bearbeiten |
| SET_RECEIVER | Instanzmethode | Empfängerinformationen bearbeiten |
| SET_TECHNICAL_ADDRESS | Instanzmethode | Technische Adresse bearbeiten |
| SET_VALID_FROM | Instanzmethode | Gültigkeitsbeginn bearbeiten |
| SET_VALID_TO | Instanzmethode | Gültigkeitsende bearbeiten |
| UNASSIGN | Instanzmethode | Provider-System-Zuordnung entfernen |
| UNLOCK | Instanzmethode | IBCR entsperren |
Das folgende Beispiel zeigt, wie Sie eine Liste aller IBCRs abrufen können, deren IBCR-Typ (RECEIVER_TYPE) <CLIENT> ist:
lr_ibcr_handler ?= cl_srt_public_factory=>get_ibcr_handler( ).
data(l_tab_ibcr) = lr_ibcr_handler->list( exporting search_attributes = value #( ( attribute_name = 'RECEIVER_TYPE'
sign = 'I'
option = 'EQ'
low = 'CLIENT' ) )
max_hits = 999 ).
Der folgende Beispielreport verwendet die Methode OPEN_BY_RECEIVER, um die korrekte IBCR mittels Empfängertyp und Empfängername zu instanziieren:
report test_ibcr_instantiation.
data l_sender_ibc_id type srt_wsp_ibc_id.
data l_receiver_type type srt_wsp_ibc_receiver_type value 'EPMBUYER'.
data l_receiver_name type srt_wsp_ibc_receiver_name value '0100000000'.
data lr_ibc_handler type ref to cl_srt_public_ibc.
try.
lr_ibc_handler ?= cl_srt_public_factory=>get_ibc_handler( ).
l_sender_ibc_id = lr_ibc_handler->if_srt_public_ibc_handler~open_by_receiver( exporting receiver_type = l_receiver_type
receiver_name = l_receiver_name )->get_ibc_id( ).
catch cx_srt_public_config into data(l_cx_srt_public_config).
write: / l_cx_srt_public_config->get_text( ).
endtry.