adesso business consulting Stellenangebote
Software Engineer Senior
| (Senior) Cloud Software Engineer BTP | Senior Frontend Software Engineer SAP BTP
| (Senior) Consultant Technologie
Werkstudent Softwareentwicklung · Consulting
Objekte in der Cloud Entwicklung mit Hilfe eines Sperrobjektes sperren
Folgende verwendete Klasse ist nur ein Wrapper und benutzt ebenso die Funktionsbausteine, die das Sperrobjekt automatisch nach Anlage generiert. Allerdings ist die Klasse CL_ABAP_LOCK_OBJECT_FACTORY für die Cloud-Entwicklung freigegeben und daher bevorzugt zu verwenden.
Deklaration
DATA mo_lock_object TYPE REF TO if_abap_lock_object.
</syntaxhighlight lang="abap">
== Sperren ==
<syntaxhighlight lang="abap">
TRY.
mo_lock_object = cl_abap_lock_object_factory=>get_instance( 'EXKNA1' ).
mo_lock_object->enqueue( it_parameter = VALUE #( ( name = 'KUNNR'
value = REF #( mv_customer_no ) )
( name = 'MODE_KNA1'
value = REF #( if_abap_lock_object=>cs_mode-write_lock ) )
)
).
CATCH cx_abap_lock_failure INTO DATA(lx_lock_fail).
_add_msg_to_prot( is_message = VALUE #( messageid = _co_message-class
messagenumber = _co_message-number_v1_v2_v3_v4
messagevariable1 = lx_lock_fail->get_text( ) ) ).
RAISE EXCEPTION TYPE cx_fiil_error.
CATCH cx_abap_foreign_lock INTO DATA(lx_foreign_lock).
_add_msg_to_prot( is_message = VALUE #( messageid = _co_message-class
messagenumber = _co_message-number_v1_v2_v3_v4
messagevariable1 = lx_foreign_lock->get_text( ) ) ).
RAISE EXCEPTION TYPE cx_fiil_error.
ENDTRY.
Entsperren
TRY.
mo_lock_object->dequeue( it_parameter = VALUE #( ( name = 'KUNNR'
value = REF #( mv_customer_no ) )
( name = 'MODE_KNA1'
value = REF #( if_abap_lock_object=>cs_mode-write_lock ) )
)
).
CATCH cx_abap_lock_failure INTO DATA(lx_lock_fail).
"catch handling here
CATCH cx_abap_foreign_lock INTO DATA(lx_foreign_lock).
"catch handling here
ENDTRY.
Dieses Wiki wird privat in Freizeit nach bestem Wissen und Gewissen gepflegt und dient primär als eigene Wissenssammlung für die tägliche Arbeit im SAP-ERP-Umfeld.
Alle dargestellten Softwareprodukte, auch in Form von Screenshots, sind Eigentum der SAP SE. Ihre Marken, vgl. Link, sind u.a.: SAP®, ABAP®, SAP Fiori®, SAP HANA®, SAP S/4HANA®, SAP S/4HANA® Cloud