cancel
Showing results for 
Search instead for 
Did you mean: 

IW37N responsable person

j_beerens
Explorer
0 Kudos

IW37N is using structure RIH_ORDER_OPERATION_LIST were CI_AUFK is in it as ".INCLUDE". To fill the field(s) in CI_AUFK (ZVERANTW=Employee responsible), I use "CALL BADI gb_badi_eam_singlelevel_list->fill_add_fields" , but after the CALL BADI only the fields with fieldname ".INCLUDE--AP" are changed and in RIH_ORDER_OPERATION_LIST the fieldsname in CI_AUFK is ".INCLUDE" so no changes are made.

IW39 uses structure RIHAUFK_LIST, were CI_AUFK is added as append structure, it is using also

"CALL BADI gb_badi_eam_singlelevel_list->fill_add_fields" and it works the same but changes are made because the fieldname has the value ".INCLUDE--AP" .

In both programs, to change CI_AUFK ZVERANTW, after the CALL BADI :

*--- find APPEND structures (only direct APPEND structures)
LOOP AT gt_dd03p ASSIGNING <ls_dd03p>
WHERE fieldname = '.INCLU--AP'
AND adminfield = '0'.
CREATE DATA lr_append TYPE (<ls_dd03p>-precfield).
ASSIGN lr_append->* TO <ls_append>.
MOVE-CORRESPONDING ls_order_operation_list TO <ls_append>.
MOVE-CORRESPONDING <ls_append> TO cs_order_operation_list.
ENDLOOP.

How can I get the same result in IW37N

johnsonzavier
Explorer
0 Kudos

Hi j.beerens, were you able to resolve this issue? i am facing the same issue. FYI. The badi is called as the filter condition is met.

thanks

Accepted Solutions (0)

Answers (2)

Answers (2)

j_beerens
Explorer
0 Kudos

SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF; } .L0S31 { font-style: italic; color: #808080; } .L0S32 { color: #3399FF; } .L0S33 { color: #4DA619; } .L0S52 { color: #0000FF; } .L0S55 { color: #800080; } .L0S70 { color: #808080; }

method if_ex_badi_eam_singlelevellist~fill_add_fields.
*
* Nr 1908 vullen Zverantw in IW38/39
* Nr 2169 04-07-18 JB geen vervallen verantw-medew ihpa
* Nr 2230 25-01-19 JB IW37N toegevoegd 'RIH_ORDER_OPERATION_LIST'
*****************************************************************

if iv_structure_name eq 'RIHAUFK_LIST' or
iv_structure_name eq 'RIH_ORDER_OPERATION_LIST'.

field-symbols:
<fs_zverantw> type zverantwoordelijke,
<fs_zverantw_tk> type zverantw_taak,
<fs_objnr> type j_objnr,
<fs_pernr> type co_pernr.

data: lv_parnr type i_parnr,
lv_inits type inits,
lv_nachn type nachn,
wa_pa0002 type pa0002.

*-- assign the 'Verantwoordelijke' to a field symbol
if iv_structure_name eq 'RIHAUFK_LIST'.
assign component 'ZVERANTW' of structure cs_object to <fs_zverantw>.
elseif iv_structure_name eq 'RIH_ORDER_OPERATION_LIST'.
assign component 'ZVERANTW_ORD' of structure cs_object to <fs_zverantw>.
assign component 'ZVERANTW_TK' of structure cs_object to <fs_zverantw_tk>.
assign component 'PERNR' of structure cs_object to <fs_pernr>.
endif.
check sy-subrc = 0.
assign component 'OBJNR' of structure cs_object to <fs_objnr>.
check sy-subrc = 0.

commit work. "evt wijziging in IHPA opslaan

select single parnr from ihpa into lv_parnr
where objnr eq <fs_objnr>
and parvw eq 'ZM'
and kzloesch <> 'X'.
*Nr 1908 parvw VU vervangen door EH(ZM) en ophalen uit PA0002
if sy-subrc eq 0.
clear wa_pa0002.
select single * from pa0002 into wa_pa0002
where pernr eq lv_parnr.
if sy-subrc = 0.
concatenate wa_pa0002-rufnm wa_pa0002-nachn into <fs_zverantw> SEPARATED BY ' '.
endif.
endif.

if iv_structure_name eq 'RIH_ORDER_OPERATION_LIST'.
clear wa_pa0002.
select single * from pa0002 into wa_pa0002 where pernr eq <fs_pernr>.
if sy-subrc = 0.
concatenate wa_pa0002-rufnm wa_pa0002-nachn into <fs_zverantw_tk> SEPARATED BY ' '.
endif.
endif.
endif.

endmethod.

this works !
NTeunckens
Active Contributor
0 Kudos

The BAdI is Filter-Dependent, so you should have an active Filter on the "REPORT_NAME".

Try adding "RI_ORDER_OPERATION_LIST" as a Filter-Dependent Value for "REPORT_NAME" and try again.