Ansicht
Dokumentation
RBAM_ACL_SET_ENTRY_NODE_ID - Erzeugen von ACL-Entry Daten
ROGBILLS - Synchronize billing plans RFUMSV00 - Advance Return for Tax on Sales/PurchasesDiese Dokumentation steht unter dem Copyright der SAP AG.
Funktionalität
Die API dient der Vorbereitung eines Upgrade einer ACL-Entry-Tabelle.
Es wird vorausgesetzt, dass die korrespondierende ACL-Root-Tabelle vorhanden und mit korrekten UUIDs für die existierende ACL gepflegt ist.
Aufgabe der API ist, die Einträge der ACL-Entry Tabelle zu ergänzen um die Node Id und den Verweis zum Element in der ACL-Root-Tabelle (Parent Node Id). Das Ergebnis wird in Form der ACL-Entry-Tabelle (CT_ENTRY_DATA) bereitgestellt. Es werden keine weiteren Daten verändert.
Die Tabelle wird so erzeugt, dass sie per Massen-Insert in die entsprechende Datenbanktabelle eingefügt werden kann, z. B. für XPRA -Anwendungen.
Beispiel
DATA:
gf_root_table_name TYPE rbam_acl_root_table_name,
gf_entry_table_name TYPE rbam_acl_entry_table_name.
DATA:
gt_root_data TYPE rbam_acl_root_t,
gt_entry_data TYPE rbam_acl_entry_t,
gs_entry_data TYPE rbam_acl_entry_s.
gf_root_table_name = 'RBAMTST_ACLROOT'.
gf_entry_table_name = 'RBAMTST_ACLENTRY'.
* Assume gt_root_data is filled with all data already!
* Fill table Entry Nodes
gs_entry_data-mandt = '700'.
gs_entry_data-context = 'XYZZ'.
gs_entry_data-...
gs_entry_data-parent_node_id = 'HOST_NODE_ID_001'.
APPEND gs_entry_data TO gt_entry_data.
gs_entry_data-mandt = '700'.
gs_entry_data-context = 'XYZZ'.
gs_entry_data-...
gs_entry_data-parent_node_id = 'HOST_NODE_ID_001'.
APPEND gs_entry_data TO gt_entry_data.
gs_entry_data-mandt = '700'.
gs_entry_data-context = 'ABCD'.
gs_entry_data-...
gs_entry_data-parent_node_id = 'HOST_NODE_ID_002'.
APPEND gs_entry_data TO gt_entry_data.
TRY.
CALL FUNCTION 'RBAM_ACL_SET_ENTRY_NODE_ID'
EXPORTING
if_root_table_name = gf_root_table_name
if_entry_table_name = gf_root_table_name
it_root_data = gt_root_data
CHANGING
ct_entry_data = gt_entry_data.
CATCH cx_uuid_error.
ENDTRY.
Hinweise
Die ACL-Entry Tabelle (CT_ENTRY_DATA) darf in der Spalte PARENT_NODE_ID nur Werte aus der Spalte PARENT_NODE_ID der Tabelle IT_ROOT_DATA enthalten und auf gar keinen Fall "echte" generierte Node Id, wie sie später als Ergebnis der API in der ACL-Entry Tabelle enthalten sind!
Beim Update der ACL-Entry Tabelle (CT_ENTRY_DATA) wird geprüft, ob die PARENT_NODE_ID in der Root-Tabelle (ET_ROOT_DATA) enthalten ist. Ist das nicht der Fall, wird das Feld PARENT_NODE_ID in der ACL-Entry Tabelle (CT_ENTRY_DATA) initial gesetzt.
Daher muss nach Ausführung des Bausteins immer geprüft werden, ob es evtl. Zeilen mit leerem Feld PARENT_NODE_ID gibt!
Weiterführende Informationen
Parameter
CT_ENTRY_DATAIF_ENTRY_TABLE_NAME
IF_ROOT_TABLE_NAME
IT_ROOT_DATA
Ausnahmen
CX_UUID_ERRORFunktionsgruppe
RBAMACLAPIABAP Short Reference TXBHW - Original Tax Base Amount in Local Currency
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 4517 Date: 20240604 Time: 025717 sap01-206 ( 47 ms )