This commit is contained in:
2025-11-27 13:54:06 +00:00
parent c7fbf7ae3d
commit 81163b671c
2 changed files with 42 additions and 25 deletions

View File

@@ -28,37 +28,40 @@ START-OF-SELECTION.
AND reffld = @pa_reffl
AND msgty = @pa_msgty
AND msgid = @pa_msgid
AND msgno = @pa_msgno.
AND msgno = @pa_msgno
AND status NE '@08@'.
CREATE OBJECT gr_repare TYPE (pa_class).
LOOP AT lt_message ASSIGNING FIELD-SYMBOL(<ls_message>).
CALL METHOD gr_repare->(pa_meth)
EXPORTING
iv_view = <ls_message>-check_view
iv_object = <ls_message>-object
iv_objkey = <ls_message>-objkey
CHANGING
cs_message = <ls_message>
RECEIVING
rv_update = lv_update.
IF NOT pa_meth IS INITIAL.
IF lv_update = abap_true.
CALL METHOD gr_repare->(pa_meth)
EXPORTING
iv_view = <ls_message>-check_view
iv_object = <ls_message>-object
iv_objkey = <ls_message>-objkey
CHANGING
cs_message = <ls_message>
RECEIVING
rv_update = lv_update.
UPDATE /deso/dh_message SET status = '@08@'
WHERE check_view = pa_view
AND object = pa_obj
AND refobject = pa_refob
AND reffld = pa_reffl
AND refobjkey = <ls_message>-refobjkey
AND msgty = pa_msgty
AND msgid = pa_msgid
AND msgno = pa_msgno.
COMMIT WORK.
ELSE.
IF lv_update = abap_true.
UPDATE /deso/dh_message SET status = '@08@'
WHERE check_view = pa_view
AND object = pa_obj
AND refobject = pa_refob
AND reffld = pa_reffl
AND refobjkey = <ls_message>-refobjkey
AND msgty = pa_msgty
AND msgid = pa_msgid
AND msgno = pa_msgno.
COMMIT WORK.
ELSE.
* Update war nicht erfolgreich.
ROLLBACK WORK.
ROLLBACK WORK.
ENDIF.
ENDIF.
ENDLOOP.

View File

@@ -796,7 +796,7 @@ FORM start_jobs_repare USING ls_result_show TYPE ty_result_show.
<ls_sel>-sign = 'I'.
<ls_sel>-option = 'EQ'.
<ls_sel>-kind = 'P'.
<ls_sel>-selname = 'pa_obj'.
<ls_sel>-selname = 'PA_OBJ'.
<ls_sel>-low = ls_result_show-object.
APPEND INITIAL LINE TO lt_selection ASSIGNING <ls_sel>.
@@ -834,6 +834,20 @@ FORM start_jobs_repare USING ls_result_show TYPE ty_result_show.
<ls_sel>-selname = 'PA_MSGNO'.
<ls_sel>-low = ls_result_show-msgno.
APPEND INITIAL LINE TO lt_selection ASSIGNING <ls_sel>.
<ls_sel>-sign = 'I'.
<ls_sel>-option = 'EQ'.
<ls_sel>-kind = 'P'.
<ls_sel>-selname = 'PA_CLASS'.
<ls_sel>-low = ls_result_show-rep_class.
APPEND INITIAL LINE TO lt_selection ASSIGNING <ls_sel>.
<ls_sel>-sign = 'I'.
<ls_sel>-option = 'EQ'.
<ls_sel>-kind = 'P'.
<ls_sel>-selname = 'PA_METH'.
<ls_sel>-low = ls_result_show-rep_methode.
SUBMIT /deso/dh_hawk_correct WITH SELECTION-TABLE lt_selection
VIA JOB lv_jobname NUMBER lv_jobcount AND RETURN.