Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- FORM determine_partner_wm_not USING i_viqmel TYPE viqmel is_act_bo_tsk TYPE ztwpm_act_bo_tsk
- iv_parvw CHANGING cs_iviqmsm TYPE wqmsm.
- DATA: lv_vaplz TYPE teregplantwc-vaplz,
- lt_return TYPE TABLE OF bapiret2,
- lt_costs_sum TYPE TABLE OF bapi_alm_order_costs_sum_e,
- ls_searchparams TYPE bapi_isufinder_efindpar,
- lt_searchresult TYPE TABLE OF bapi_isufinder_result.
- CHECK cs_iviqmsm-parnr IS INITIAL.
- cs_iviqmsm-parvw = iv_parvw.
- SELECT SINGLE nrart INTO @DATA(lv_nrart) FROM tpar WHERE parvw = @iv_parvw.
- IF i_viqmel-qmart NE 'Z3'.
- SELECT SINGLE iloan FROM qmih INTO @DATA(lv_iloan) WHERE qmnum = @i_viqmel-qmnum.
- ELSE.
- lv_iloan = i_viqmel-iloan.
- ENDIF.
- SELECT SINGLE swerk, tplnr FROM iloa INTO @DATA(ls_iloa) WHERE iloan = @lv_iloan.
- ls_searchparams-installation = cs_iviqmsm-zzanlage.
- CALL FUNCTION 'BAPI_ISUFINDER_FINDOBJOFDATA'
- EXPORTING
- objecttype = 'CONNOBJ'
- searchparameters = ls_searchparams
- TABLES
- searchresult = lt_searchresult.
- READ TABLE lt_searchresult ASSIGNING FIELD-SYMBOL(<ls_searchresult>) INDEX 1.
- CHECK sy-subrc = 0.
- IF lv_nrart = 'A'.
- IF iv_parvw = 'ZI'.
- IF cs_iviqmsm-zzilart IS INITIAL OR ( i_viqmel-qmgrp = 'ZNEWCONN' AND i_viqmel-qmcod = 'NEWS' ).
- SELECT SINGLE ilart FROM /hepedm/tew_0003 INTO @DATA(lv_ilart) WHERE
- codegrp = @is_act_bo_tsk-codegruppe AND code = @is_act_bo_tsk-code.
- ELSE.
- lv_ilart = cs_iviqmsm-zzilart.
- ENDIF.
- SELECT SINGLE ilatx FROM t353i_t INTO @DATA(lv_ilatx) WHERE spras = '6' AND ilart = @lv_ilart.
- IF sy-subrc = 0.
- DATA(lv_fin_activity) = substring_before( val = lv_ilatx sub = ` ` ).
- IF lv_fin_activity = '2713'.
- DATA(fin_code) = '1'.
- ELSEIF lv_fin_activity CP '27++'.
- fin_code = '2'.
- ELSE.
- MESSAGE e144(zwpm).
- ENDIF.
- CALL FUNCTION 'BAPI_ALM_ORDER_GET_DETAIL'
- EXPORTING
- number = i_viqmel-aufnr
- TABLES
- et_costs_sum = lt_costs_sum
- return = lt_return.
- READ TABLE lt_costs_sum ASSIGNING FIELD-SYMBOL(<ls_costs_sum>) INDEX 1.
- IF sy-subrc = 0.
- IF <ls_costs_sum>-total_costs_plan GE '40000'.
- DATA(lv_cost_est) = 2.
- ELSE.
- lv_cost_est = 1.
- ENDIF.
- SELECT SINGLE regiogroup FROM ehauisu INTO @DATA(lv_regiogroup) WHERE haus = @ls_iloa-tplnr.
- IF sy-subrc = 0.
- SELECT SINGLE partner_ou FROM ztwpm_det_orguni INTO @cs_iviqmsm-parnr WHERE cuobj_plant = @ls_iloa-swerk
- AND cuobj_regiogroup = @lv_regiogroup AND fin_activity = @fin_code AND cost_estimation = @lv_cost_est.
- ENDIF.
- ENDIF.
- ENDIF.
- ELSE.
- zcl_wpm_workcenter_utils=>get_workcenter(
- EXPORTING
- iv_haus = CONV haus( <ls_searchresult>-objkey ) " Functional Location
- iv_codegrp = is_act_bo_tsk-codegruppe " Code Group
- iv_code = is_act_bo_tsk-code " Code
- IMPORTING
- ev_vaplz = lv_vaplz " Main work center for maintenance tasks
- ev_plant = cs_iviqmsm-zzworkcenter_plant " Plant
- ).
- cs_iviqmsm-parnr = lv_vaplz.
- ENDIF.
- ENDIF.
- ENDFORM.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement