ACE Check für CRM Business Partner

Hat man die ACE im Einsatz, dann stehen in allen (zumindest in den meisten) Transaktionen einem User nur jene Business Partner zur Verfügung, für die er laut ACE berechtigt ist.

Liest man nun innerhalb eines Programmes die Business Partner direkt von der Datenbank, dann muss man sich als Entwickler um die ACE Prüfung selbst kümmern. Diesen Check kann man recht einfach mit Hilfe der WebUI GenIL Klasse CL_CRM_BUIL_SERVICES durchführen.

Dieses kleine Beispiel soll, zeigen wie man den ACE Check durchführen kann. Die Tabelle LT_PARNERS entspricht der Datenbank Tabelle BUT000.

LOOP AT lt_partners ASSIGNING <wa_partners>.
* Check partner authorization against ACE
  cl_crm_buil_services=>authority_check( EXPORTING iv_activity           = '02'
                                                   iv_partner_guid       = <wa_partners>-partner_guid
                                                   iv_add_message_to_log = abap_false
                                         IMPORTING ev_no_authority       = lv_check_auth ).
ENDLOOP.

 

Hat die Variable lv_check_auth nach dem Methodenaufruf den Wert ABAP_TRUE, dann besitzt der User keine Berechtigung für den Business Partner.

Für iv_activity sind folgende Parameter möglich:

01 Create

02 Change

03 Display

04 Modify

06 Delete

Posted on 20. März 2015 in ABAP, Blog

Back to Top