” Step 1: Instantiate the Governance API
DATA: go_gov_api TYPE REF TO cl_usmd_gov_api.
go_gov_api ?= cl_usmd_gov_api=>get_instance(
iv_model_name = ” e.g., ‘BP’, ‘MM’, etc.
).
” Step 2: Create the Change Request (CR)
DATA: lv_crequest_id TYPE usmd_crequest_id.
CALL METHOD go_gov_api->if_usmd_gov_api_cr_data~create_crequest
EXPORTING
iv_crequest_type = ” e.g., ‘ZBP1’
iv_description = ” Description of CR
RECEIVING
rv_crequest_id = lv_crequest_id.
” Step 3: Add an attachment to the CR
DATA: ls_attachment TYPE usmd_s_attachment,
lv_tmstp TYPE timestamp.
ls_attachment-usmd_acreated_by = sy-uname.
ls_attachment-usmd_title = ‘Review the Documents’.
ls_attachment-usmd_link = iv_url.
CALL METHOD go_gov_api->if_usmd_gov_api_cr_data~add_attachment
EXPORTING
iv_crequest_id = lv_crequest_id
is_attachment = ls_attachment
RECEIVING
rv_timestamp = lv_tmstp.
” Step 4: Enqueue the Change Request
CALL METHOD go_gov_api->if_usmd_gov_api_cr_data~enqueue_crequest
EXPORTING
iv_crequest_id = lv_crequest_id.
” Step 5: Enqueue and write entity data (e.g., SUT1, SUT4)
CALL METHOD go_gov_api->if_usmd_gov_api_entity~enqueue_entity
EXPORTING
iv_crequest_id = lv_crequest_id
iv_entity_name =
it_data = .
CALL METHOD go_gov_api->if_usmd_gov_api_entity~write_entity
EXPORTING
iv_crequest_id = lv_crequest_id
iv_entity_name =
it_data = .
CALL METHOD go_gov_api->if_usmd_gov_api_entity~write_entity
EXPORTING
iv_crequest_id = lv_crequest_id
iv_entity_name =
it_data = .
” Step 6: Write notes to the CR
DATA: lt_etes TYPE timestamp.
CALL METHOD go_gov_api->if_usmd_gov_api_cr_data~write_note
EXPORTING
iv_crequest_id = lv_crequest_id
iv_note =
RECEIVING
rv_created_at = lt_etes.
” Step 7: Dequeue entities
CALL METHOD go_gov_api->if_usmd_gov_api_entity~dequeue_entity
EXPORTING
iv_crequest_id = lv_crequest_id
iv_entity_name =
it_data = .
” Step 8: Dequeue the Change Request
CALL METHOD go_gov_api->if_usmd_gov_api_cr_data~dequeue_crequest
EXPORTING
iv_crequest_id = lv_crequest_id.
” Step 9: Start the workflow
CALL METHOD go_gov_api->if_usmd_gov_api_process~start_workflow
EXPORTING
iv_crequest_id = lv_crequest_id.
” Step 10: Commit the changes
COMMIT WORK.