Variante 1: Anzeige über Partnernummer
PARAMETERS: p_bp TYPE bapibus1006_head-bpartner.
START-OF-SELECTION.
IF NOT p_bp IS INITIAL.
* SAP-GP Dialog: Navigationscommando
DATA(o_req) = NEW cl_bupa_navigation_request( ).
* Partnernummer setzen, analog zu set_partner_guid( )
o_req->set_partner_number( p_bp ).
* Setzt die aktive Pflege (Einstieg, Partnerdaten, Beziegungen)
o_req->set_maintenance_id( iv_value = cl_bupa_navigation_request=>gc_maintenance_id_partner ).
* Aktivität zur Anzeige / Pflege der Geschäftspartnerdaten
o_req->set_bupa_activity( iv_value = cl_bupa_navigation_request=>gc_activity_display ).
* Setzt den aktiven Tabreiter der Geschäftspartnerpflege
* o_req->set_bupa_sub_header_tab( 'CVIC01' ). " Tabelle TBZ3A, Objekt BUPA
* Setzt die Geschäftspartnerrolle für die Geschäftspartnerpflege
* o_req->set_bupa_partner_role( VALUE #( role = 'FS0000' ) ). " Tabelle TB003
* SAP-GP Dialog: Startoptionen für die Pflegeoberfläche
DATA(o_options) = NEW cl_bupa_dialog_joel_options( ).
* Setzt die Sichtbarkeit des Locators
o_options->set_locator_visible( space ).
* Macht das Navigieren zu anderen Partnern unmöglich
* o_options->set_navigation_disabled( abap_true ).
* Setzt das Kennzeichen für 'Anlegen von Beziehungen' erlaubt
* o_options->set_bupr_create_not_allowed( abap_true ).
* Macht das Navigieren zu anderen Rollen unmöglich
* o_options->set_role_switching_disabled( abap_true ).
* Maintenance
* o_options->set_bupr_maintenance( VALUE #( create_allowed = abap_true
* change_allowed = abap_true
* delete_allowed = abap_true ) ).
* Macht das Navigieren zu einer anderen Aktivität unmöglich
* o_options->set_activity_switching_off( space ).
* Startmethode für Aufrufe aus anderen Anwendungen
cl_bupa_dialog_joel=>start_with_navigation( iv_request = o_req
iv_options = o_options
iv_in_new_internal_mode = abap_true ).
ENDIF.
Variante 2: Anzeige über GUID des Business-Partners
PARAMETERS: p_bp TYPE bapibus1006_head-bpartner.
START-OF-SELECTION.
IF NOT p_bp IS INITIAL.
* GP: Allgemeine Daten I
* BP-GUID zur Partnernummer holen
SELECT SINGLE FROM but000
FIELDS partner_guid
WHERE partner = @p_bp
INTO @DATA(lv_bp_guid).
IF lv_bp_guid IS NOT INITIAL.
* SAP-GP Dialog: Navigationscommando
DATA(o_req) = NEW cl_bupa_navigation_request( ).
o_req->set_partner_guid( lv_bp_guid ).
o_req->set_maintenance_id( iv_value = cl_bupa_navigation_request=>gc_maintenance_id_partner ).
o_req->set_bupa_activity( iv_value = cl_bupa_navigation_request=>gc_activity_display ).
* SAP-GP Dialog: Startoptionen für die Pflegeoberfläche
DATA(o_options) = NEW cl_bupa_dialog_joel_options( ).
o_options->set_locator_visible( space ).
* Startmethode für Aufrufe aus anderen Anwendungen
cl_bupa_dialog_joel=>start_with_navigation( iv_request = o_req
iv_options = o_options
iv_in_new_internal_mode = abap_true ).
ENDIF.
ENDIF.
Links