
CALL 'C_ENQUEUE' "#EC CI_CCALL
ID 'OPCODE' FIELD '1' " enqueue request
ID 'ENQOBJ' FIELD iv_enqueue_object
ID 'GRANULES' FIELD it_lock_list
ID 'DELAY_ON_REJECT' FIELD ' '
ID 'USTP' FIELD '2'
ID 'COLLISION_UNAME' FIELD ev_user
ID 'COLLISION_OBJECT' FIELD ev_object
ID 'SYNCHRON' FIELD 'X'
ID 'USER' FIELD sy-uname
ID 'USVB' FIELD '00000000000000_OWNER_PERSIST'.
CALL 'C_ENQUEUE' "#EC CI_CCALL
ID 'OPCODE' FIELD '3' " Dequeue request
ID 'ENQOBJ' FIELD iv_enqueue_object
ID 'GRANULES' FIELD it_lock_list
ID 'DELAY_ON_REJECT' FIELD ' '
ID 'USTP' FIELD '2'
ID 'COLLISION_UNAME' FIELD ev_user
ID 'COLLISION_OBJECT' FIELD ev_object
ID 'SYNCHRON' FIELD 'X'
ID 'USER' FIELD sy-uname
ID 'USVB' FIELD '00000000000000_OWNER_PERSIST'.
lwa_lock_list-gname = 'EKKO'. "Tablename
lwa_lock_list-gmode = 'E'. "Lockmode
lwa_lock_list-garg = lv_arg. "Argument
APPEND lwa_lock_list TO it_lock_list.
CLEAR lv_arg.
lv_arg = sy-mandt && lv_ebeln && cgarg. "Arguments
lwa_lock_list-gname = 'EKPO'. "Tablename
lwa_lock_list-gmode = 'E'. "Lockmode
lwa_lock_list-garg = lv_arg. "Argument
APPEND lwa_lock_list TO it_lock_list.
iv_enqueue_object = 'EMEKKOE'. "Name of Lock Object in the Lock Entry
*CALL - System Function Call
CALL 'C_ENQUEUE' "#EC CI_CCALL
ID 'OPCODE' FIELD '1' " enqueue request
ID 'ENQOBJ' FIELD iv_enqueue_object
ID 'GRANULES' FIELD it_lock_list
ID 'DELAY_ON_REJECT' FIELD ' '
ID 'USTP' FIELD '2'
ID 'COLLISION_UNAME' FIELD ev_user
ID 'COLLISION_OBJECT' FIELD ev_object
ID 'SYNCHRON' FIELD 'X'
ID 'USER' FIELD sy-uname "'00000000000000_OWNER_PERSIST'
ID 'USVB' FIELD '00000000000000_OWNER_PERSIST'.
IF sy-subrc IS NOT INITIAL.
lv_message = "PO locked with other user."
REPLACE '&' IN lv_message WITH ev_user.
RAISE EXCEPTION TYPE /iwbep/cx_mgw_busi_exception
EXPORTING
textid = /iwbep/cx_mgw_busi_exception=>business_error
message = lv_message
http_status_code = /iwbep/cx_mgw_busi_exception=>gcs_http_status_codes-not_acceptable.
ELSE.
"PO locked succesfully
lo_message_container = me->mo_context->get_message_container( ).
lo_message_container->add_message(
EXPORTING
iv_msg_id = 'PO'
iv_msg_number = '283'
iv_msg_type = 'S' "Refer to GCS_MESSAGE_TYPE
iv_msg_v1 = CONV #( lv_ebeln )
iv_msg_v2 = 'PO Locked Succesfully'(001)
iv_add_to_response_header = abap_true ).
ENDIF.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
11 | |
6 | |
6 | |
5 | |
4 | |
3 | |
3 | |
3 | |
2 | |
2 |