Show TOC

Öffentliche API zum Anlegen, Bearbeiten und Löschen von IBCRsLocate this document in the navigation structure

Sie verwenden die Klasse CL_SRT_PUBLIC_IBCR in Ihrer Anwendung, um Identifiable Business Context References (IBCRs) anzulegen, zu bearbeiten und zu löschen.

Überblick

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.

Instanziierung

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.

Interface IF_SRT_PUBLIC_IBCR_HANDLER

Dieses Interface enthält die folgenden Methoden zum Abrufen und Anlegen von IBCR-Instanzen:

Tabelle 1:
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.
Interface IF_SRT_PUBLIC_IBCR

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.

Tabelle 2:
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

Beispiel

Liste aller IBCRs eines bestimmten Typs

Das folgende Beispiel zeigt, wie Sie eine Liste aller IBCRs abrufen können, deren IBCR-Typ (RECEIVER_TYPE) <CLIENT> ist:

Beispielcode
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 ).

Beispiel

IBCR instanziieren

Der folgende Beispielreport verwendet die Methode OPEN_BY_RECEIVER, um die korrekte IBCR mittels Empfängertyp und Empfängername zu instanziieren:

Beispielcode
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.