File
File
************************************************************************
* Program Title : APO Setup Matrix Creation *
* Author : Senthil Manthaiyan *
* Date : 30-SEP-2024 *
* SAP Change Request : DS4K9A0JGV *
*----------------------------------------------------------------------*
* Description: : This program is used to create the APO Group *
* setup matrix for /SAPAPO/CDPSC7 tcode *
* Type: : Conversion *
* Run Frequency: : On request *
* Development Class: : ZWPS_APO_CIF *
* Requirement Ref. : GAP 1354407 / HE0281 *
*----------------------------------------------------------------------*
* INPUTS *
* Variants : None *
* Input file name : N/A *
* Other : N/A *
*----------------------------------------------------------------------*
* OUTPUTS *
* Files : N/A *
* Errors : Standard error messages *
* Other : N/A *
*----------------------------------------------------------------------*
*
*&---------------------------------------------------------------------*
*& Include ZAPO_CREATE_SETUP_MATRIX_TOP
*&---------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
* T A B L E S *
*----------------------------------------------------------------------*
*
TABLES : sscrfields.
*
*----------------------------------------------------------------------*
* T Y P E S *
*----------------------------------------------------------------------*
*
TYPES: BEGIN OF ty_input,
locno TYPE /sapapo/locno, "Location
mname TYPE /sapapo/cdps_matrix_name, "Name of Setup Matrix
mtext TYPE /sapapo/cdps_prf_text, "Setup Matrix Description
group TYPE /sapapo/cdps_setup_group, "Setup Group
END OF ty_input.
*
TYPES: BEGIN OF ty_output,
locno TYPE /sapapo/locno, "Location
mname TYPE /sapapo/cdps_matrix_name, "Name of Setup Matrix
mtext TYPE /sapapo/cdps_prf_text, "Setup Matrix Description
prede TYPE /sapapo/cdps_setup_group, "Predecssr Setup Group
succe TYPE /sapapo/cdps_setup_group, "Successor Setup Group
setup TYPE char16, "Setup Time
unit TYPE /sapapo/cdps_duration_unit, "Setup Time Unit
msgtyp TYPE bdc_mart, "Message Type
mesage TYPE char128, "Message
END OF ty_output.
*
*----------------------------------------------------------------------*
* I N T E R N A L T A B L E S *
*----------------------------------------------------------------------*
*
DATA: lt_input TYPE STANDARD TABLE OF ty_input,
lt_output TYPE STANDARD TABLE OF ty_output,
lt_bdcdata TYPE STANDARD TABLE OF bdcdata,
lt_messtab TYPE STANDARD TABLE OF bdcmsgcoll.
*
*----------------------------------------------------------------------*
* W O R K A R E A *
*----------------------------------------------------------------------*
*
DATA: lwa_input TYPE ty_input,
lwa_input1 TYPE ty_input,
lwa_output TYPE ty_output,
lwa_bdcdata TYPE bdcdata,
lwa_options TYPE ctu_params.
*
*----------------------------------------------------------------------*
* G L O B A L V A R I A B L E *
*----------------------------------------------------------------------*
*
DATA: l_file TYPE string,
l_server TYPE char1,
l_head TYPE int2,
l_group TYPE /sapapo/cdps_setup_group,
l_message TYPE bapiret2-message.
*
DATA: l_key TYPE salv_s_layout_key,
l_msg TYPE string,
l_fval TYPE scrtext_m,
l_column TYPE lvc_fname.
*
*----------------------------------------------------------------------*
* C O N S T A N T S *
*----------------------------------------------------------------------*
*
CONSTANTS: c_x TYPE char1 VALUE 'X',
c_e TYPE char1 VALUE 'E',
c_s TYPE char1 VALUE 'S',
c_p TYPE char1 VALUE 'P',
c_update TYPE c LENGTH 1 VALUE 'S',
c_mode TYPE c LENGTH 1 VALUE 'N',
c_unit TYPE c LENGTH 3 VALUE 'MIN',
c_fc01 TYPE c LENGTH 4 VALUE 'FC01'.
*
CONSTANTS: c_tab TYPE char1 VALUE cl_abap_char_utilities=>horizontal_tab.
*----------------------------------------------------------------------*
* C L A S S *
*----------------------------------------------------------------------*
CLASS lcl_main DEFINITION DEFERRED.
*
DATA: lo_alv TYPE REF TO lcl_main ##needed,
lcl_alv_ref TYPE REF TO cl_salv_table,
lcl_layout TYPE REF TO cl_salv_layout,
lcl_functions TYPE REF TO cl_salv_functions,
lcl_col_tab TYPE REF TO cl_salv_columns_table,
lcl_col TYPE REF TO cl_salv_column_table,
lo_events1 TYPE REF TO cl_salv_events_table,
lcl_salv_not_found TYPE REF TO cx_salv_not_found,
lt_cols TYPE salv_t_column_ref.
*
DATA: lo_grid TYPE REF TO cl_salv_form_layout_grid,
lr_action TYPE REF TO cl_salv_form_action_info,
lo_label TYPE REF TO cl_salv_form_label,
l_lines TYPE i,
l_lines1 TYPE i,
l_line TYPE char10,
l_text1 TYPE string,
l_text2 TYPE string.
*
CREATE OBJECT lo_grid.
*
CLASS lcl_main DEFINITION.
* Set Component Hotspot/Doubleclick.
*
PUBLIC SECTION.
METHODS:
set_hotspot
CHANGING
co_alv TYPE REF TO cl_salv_table
co_report TYPE REF TO lcl_main.
*
METHODS: on_after_events
FOR EVENT after_salv_function OF cl_salv_events_table.
*
ENDCLASS.
CLASS lcl_main IMPLEMENTATION.
*
METHOD set_hotspot.
*
lo_events1 = lcl_alv_ref->get_event( ).
CREATE OBJECT co_report.
*
* event handler
SET HANDLER co_report->on_after_events FOR lo_events1.
*
ENDMETHOD. "set_hotspot
METHOD on_after_events.
*
DATA: lit_filter TYPE slis_t_filtered_entries.
*
CALL FUNCTION 'REUSE_ALV_GRID_LAYOUT_INFO_GET'
IMPORTING
et_filtered_entries = lit_filter
EXCEPTIONS
no_infos = 1
program_error = 2
OTHERS = 3.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
ENDMETHOD. "on_after_events
*
ENDCLASS.
*
************************************************************************
* Program Title : APO Setup Matrix Creation *
* Author : Senthil Manthaiyan *
* Date : 30-SEP-2024 *
* SAP Change Request : DS4K9A0JGV *
*----------------------------------------------------------------------*
* Description: : This program is used to create the APO Group *
* setup matrix for /SAPAPO/CDPSC7 tcode *
* Type: : Conversion *
* Run Frequency: : On request *
* Development Class: : ZWPS_APO_CIF *
* Requirement Ref. : GAP 1354407 / HE0281 *
*----------------------------------------------------------------------*
* INPUTS *
* Variants : None *
* Input file name : N/A *
* Other : N/A *
*----------------------------------------------------------------------*
* OUTPUTS *
* Files : N/A *
* Errors : Standard error messages *
* Other : N/A *
*----------------------------------------------------------------------*
*
*&---------------------------------------------------------------------*
*& Include ZAPO_CREATE_SETUP_MATRIX_SEL
*&---------------------------------------------------------------------*
************************************************************************
* S E L E C T I O N - S C R E E N *
************************************************************************
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-ss1.
PARAMETERS: p_ifile TYPE string OBLIGATORY LOWER CASE,
p_head TYPE int2 OBLIGATORY DEFAULT 1.
SELECTION-SCREEN SKIP 1.
PARAMETERS: p_same TYPE /sapapo/cdps_duration OBLIGATORY,
p_diff TYPE /sapapo/cdps_duration OBLIGATORY.
SELECTION-SCREEN SKIP 1.
PARAMETERS: rb_creat RADIOBUTTON GROUP rb1 MODIF ID cl,
rb_chang RADIOBUTTON GROUP rb1 MODIF ID cl.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN FUNCTION KEY 1.
************************************************************************
* Program Title : APO Setup Matrix Creation *
* Author : Senthil Manthaiyan *
* Date : 30-SEP-2024 *
* SAP Change Request : DS4K9A0JGV *
*----------------------------------------------------------------------*
* Description: : This program is used to create the APO Group *
* setup matrix for /SAPAPO/CDPSC7 tcode *
* Type: : Conversion *
* Run Frequency: : On request *
* Development Class: : ZWPS_APO_CIF *
* Requirement Ref. : GAP 1354407 / HE0281 *
*----------------------------------------------------------------------*
* INPUTS *
* Variants : None *
* Input file name : N/A *
* Other : N/A *
*----------------------------------------------------------------------*
* OUTPUTS *
* Files : N/A *
* Errors : Standard error messages *
* Other : N/A *
*----------------------------------------------------------------------*
*
*&---------------------------------------------------------------------*
*& Include ZZAPO_CREATE_SETUP_MATRIX_F01
*&---------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Form authority_check
*&---------------------------------------------------------------------*
FORM authority_check .
*
AUTHORITY-CHECK OBJECT 'C_APO_MSP'
ID 'ACTVT' FIELD '02'.
IF sy-subrc NE 0.
MESSAGE TEXT-t01 TYPE c_s DISPLAY LIKE c_e.
LEAVE LIST-PROCESSING.
ENDIF.
*
ENDFORM.
*&---------------------------------------------------------------------*
*& Form VALUE_REQUEST_IFILE
*&---------------------------------------------------------------------*
*& Value Request for File
*&---------------------------------------------------------------------*
FORM value_request_ifile USING p_file TYPE string
p_server TYPE char1.
DATA: l_file TYPE string,
l_server TYPE char1.
*
l_file = p_file.
l_server = p_server.
CALL METHOD zcl_bci000_util=>f4_get_filename
EXPORTING
im_location = l_server
CHANGING
ch_filename = l_file.
IF sy-subrc = 0.
p_file = l_file.
ENDIF.
*
ENDFORM.
*&---------------------------------------------------------------------*
*& Form upload_file
*&---------------------------------------------------------------------*
FORM upload_file .
*
l_file = p_ifile.
l_head = p_head.
l_server = c_p.
*
CALL METHOD zcl_bci000_util=>upload_file
EXPORTING
im_file_name = l_file
im_separator = c_tab
im_location = l_server
CHANGING
tab_data = lt_input
EXCEPTIONS
file_open_error = 1
file_close_error = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE e116(zqm_06) WITH l_file.
ENDIF.
*
DO l_head TIMES.
DELETE lt_input INDEX 1.
ENDDO.
*
ENDFORM.
*&---------------------------------------------------------------------*
*& Form data_process
*&---------------------------------------------------------------------*
FORM data_process .
*
SORT lt_input.
*
lwa_options-racommit = abap_true.
lwa_options-updmode = c_update.
lwa_options-dismode = c_mode.
lwa_options-nobinpt = abap_true.
lwa_options-defsize = abap_true.
*
LOOP AT lt_input ASSIGNING FIELD-SYMBOL(<fs>).
TRANSLATE <fs>-mname TO UPPER CASE.
ENDLOOP.
DATA(lt_input1) = lt_input.
DELETE ADJACENT DUPLICATES FROM lt_input1 COMPARING locno mname.
*
IF lt_input1 IS NOT INITIAL.
ENDLOOP.
WAIT UP TO 2 SECONDS.
lt_input1 = lt_input.
LOOP AT lt_input INTO lwa_input.
lwa_input1-group = '*'.
PERFORM create_group.
PERFORM create_group.
*
ENDLOOP.
CLEAR: lwa_input1.
ENDLOOP.
ELSE.
*
lt_input1 = lt_input.
LOOP AT lt_input INTO lwa_input.
*
TRY .
lwa_matrix = lt_matrix[ locno = lwa_input-locno
matrix_name = lwa_input-mname ].
CATCH cx_sy_itab_line_not_found.
PERFORM matrix_log.
CONTINUE.
ENDTRY.
*
lwa_input1-group = '*'.
PERFORM change_group.
*
LOOP AT lt_input1 INTO lwa_input1
WHERE locno = lwa_input-locno
AND mname = lwa_input-mname.
PERFORM change_group.
*
ENDLOOP.
CLEAR: lwa_input1.
ENDLOOP.
ENDIF.
*
ENDFORM.
*&---------------------------------------------------------------------*
*& Form create_matrix
*&---------------------------------------------------------------------*
FORM create_matrix .
*
PERFORM bdc_dynpro USING '/SAPAPO/SETUP_MATRIX_MAINTAIN' '1000'.
PERFORM bdc_field USING 'BDC_CURSOR' 'MNAME-LOW'.
PERFORM bdc_field USING 'BDC_OKCODE' '=ONLI'.
PERFORM bdc_field USING 'LOCNO-LOW' lwa_input1-locno.
PERFORM bdc_field USING 'MNAME-LOW' lwa_input1-mname.
*
PERFORM bdc_dynpro USING '/SAPAPO/SAPLCDPS_MATRIX_GUI' '0010'.
PERFORM bdc_field USING 'BDC_OKCODE' '=NEWENTRIES'.
*
PERFORM bdc_dynpro USING '/SAPAPO/SAPLCDPS_MATRIX_GUI' '0010'.
PERFORM bdc_field USING 'BDC_OKCODE' '=SAVE'.
PERFORM bdc_field USING '/SAPAPO/CDPS_MATRIX_D0010_STR-LOCNO(01)'
lwa_input1-locno.
PERFORM bdc_field USING '/SAPAPO/CDPS_MATRIX_D0010_STR-MATRIX_NAME(01)'
lwa_input1-mname.
PERFORM bdc_field USING '/SAPAPO/CDPS_MATRIX_D0010_STR-MATRIX_TXT(01)'
lwa_input1-mtext.
*
PERFORM bdc_dynpro USING '/SAPAPO/SAPLCDPS_MATRIX_GUI' '0010'.
PERFORM bdc_field USING 'BDC_OKCODE' '/EEXIT'.
*
PERFORM bdc_dynpro USING '/SAPAPO/SETUP_MATRIX_MAINTAIN' '1000'.
PERFORM bdc_field USING 'BDC_OKCODE' '/EENDE'.
CALL TRANSACTION '/SAPAPO/CDPSC7' USING lt_bdcdata
OPTIONS FROM lwa_options
MESSAGES INTO lt_messtab.
*
CLEAR:lwa_output.
lwa_output-locno = lwa_input1-locno.
lwa_output-mname = lwa_input1-mname.
lwa_output-mtext = lwa_input1-mtext.
*
LOOP AT lt_messtab[] ASSIGNING FIELD-SYMBOL(<fs_messtab>).
* Set PF-Stauts
lcl_functions = lcl_alv_ref->get_functions( ).
lcl_functions->set_all( abap_true ).
* Get columns
lcl_col_tab = lcl_alv_ref->get_columns( ).
lcl_col_tab->set_optimize( 'X' ). "optimise colums of SALV grid
WHEN 'MTEXT'.
l_fval = 'Descrption'(h06).
lcl_col->set_medium_text( l_fval ).
WHEN 'PREDE'.
l_fval = 'Predecessor'(h01).
lcl_col->set_medium_text( l_fval ).
WHEN 'SUCCE'.
l_fval = 'Successor '(h02).
lcl_col->set_medium_text( l_fval ).
WHEN 'SETUP'.
l_fval = 'Setup Time '(h05).
lcl_col->set_medium_text( l_fval ).
WHEN 'MSGTYP'.
l_fval = 'Mes.Type'(h03).
lcl_col->set_medium_text( l_fval ).
WHEN 'MESAGE'.
l_fval = 'Message'(h04).
lcl_col->set_medium_text( l_fval ).
ENDCASE.
ENDLOOP.
*
* Header Information
* Total No. of Records Selected
DESCRIBE TABLE lt_output LINES l_lines.
l_line = l_lines.
CONCATENATE TEXT-t11 l_line
INTO l_text1 SEPARATED BY space.
CONCATENATE TEXT-t12 l_line
INTO l_text2 SEPARATED BY space.
*
* Add row
lo_grid->add_row( ).
* Label Information
lo_label = lo_grid->create_label( row = 1 column = 1
text = l_text1
tooltip = l_text1 ).
* Top of List
lcl_alv_ref->set_top_of_list( lo_grid ).
CLEAR: lo_label, lo_grid.
CREATE OBJECT lo_grid.
* End of List
CREATE OBJECT lr_action
EXPORTING
text = l_text2.
lcl_alv_ref->set_end_of_list( lr_action ).
interfaces IF_BADI_INTERFACE .
interfaces IF_EX_ME_PROCESS_PO_CUST .
protected section.
private section.
methods SET_HDR_TEXT_FROM_S010
importing
!IM_HEADER type ref to IF_PURCHASE_ORDER_MM
!IM_TDOBJECT type THEAD-TDOBJECT
!IM_TDNAME type THEAD-TDNAME
!IM_TDID type TDID .
ENDCLASS.
*
<SIGNATURE>----------------------------------------------------------------
-----------------------+
* | Instance Public Method ZCL_IM_ENH_PO_SRV_LIMIT-
>IF_EX_ME_PROCESS_PO_CUST~CHECK
*
+--------------------------------------------------------------------------
-----------------------+
* | [--->] IM_HEADER TYPE REF TO IF_PURCHASE_ORDER_MM
* | [--->] IM_HOLD TYPE MMPUR_BOOL
* | [--->] IM_PARK TYPE MMPUR_BOOL(optional)
* | [<-->] CH_FAILED TYPE MMPUR_BOOL
*
+--------------------------------------------------------------------------
------------</SIGNATURE>
METHOD if_ex_me_process_po_cust~check.
************************************************************************
* Program Title : PO Service Limit Validation *
* Author : Venkateshwarlu Chilukuri *
* Date : 01/09/2024 *
* SAP Change Request #: DS4K9A02LW *
*----------------------------------------------------------------------*
* Description: : This program is to validate the overall limit *
* is in the toelarance range for Purchase order *
* Type: : Enhancment *
* Run Frequency: : On request *
* Development Class: : ZWPS_MM_PUR *
* Requirement Ref. : GAP 1058891/ *
*----------------------------------------------------------------------*
* INPUTS *
* Variants : None *
* Input file name : N/A *
* Other : *
*----------------------------------------------------------------------*
* OUTPUTS *
* Files : N/A *
* Errors : Standard error messages *
* Other : *
*----------------------------------------------------------------------*
ENDIF.
ENDIF.
ENDIF.
ENDMETHOD.
*
<SIGNATURE>----------------------------------------------------------------
-----------------------+
* | Instance Public Method ZCL_IM_ENH_PO_SRV_LIMIT-
>IF_EX_ME_PROCESS_PO_CUST~CLOSE
*
+--------------------------------------------------------------------------
-----------------------+
* | [--->] IM_HEADER TYPE REF TO IF_PURCHASE_ORDER_MM
*
+--------------------------------------------------------------------------
------------</SIGNATURE>
method IF_EX_ME_PROCESS_PO_CUST~CLOSE.
endmethod.
*
<SIGNATURE>----------------------------------------------------------------
-----------------------+
* | Instance Public Method ZCL_IM_ENH_PO_SRV_LIMIT-
>IF_EX_ME_PROCESS_PO_CUST~FIELDSELECTION_HEADER
*
+--------------------------------------------------------------------------
-----------------------+
* | [--->] IM_HEADER TYPE REF TO IF_PURCHASE_ORDER_MM
* | [--->] IM_INITIATOR TYPE
MEPO_INITIATOR(optional)
* | [<-->] CH_FIELDSELECTION TYPE
TTYP_FIELDSELECTION_MM
*
+--------------------------------------------------------------------------
------------</SIGNATURE>
method IF_EX_ME_PROCESS_PO_CUST~FIELDSELECTION_HEADER.
endmethod.
*
<SIGNATURE>----------------------------------------------------------------
-----------------------+
* | Instance Public Method ZCL_IM_ENH_PO_SRV_LIMIT-
>IF_EX_ME_PROCESS_PO_CUST~FIELDSELECTION_HEADER_REFKEYS
*
+--------------------------------------------------------------------------
-----------------------+
* | [--->] IM_HEADER TYPE REF TO IF_PURCHASE_ORDER_MM
* | [<-->] CH_KEY0 TYPE BREFN
* | [<-->] CH_KEY1 TYPE BREFN
* | [<-->] CH_KEY2 TYPE BREFN
* | [<-->] CH_KEY3 TYPE BREFN
* | [<-->] CH_KEY4 TYPE BREFN
* | [<-->] CH_KEY5 TYPE BREFN
* | [<-->] CH_KEY6 TYPE BREFN
*
+--------------------------------------------------------------------------
------------</SIGNATURE>
method IF_EX_ME_PROCESS_PO_CUST~FIELDSELECTION_HEADER_REFKEYS.
endmethod.
*
<SIGNATURE>----------------------------------------------------------------
-----------------------+
* | Instance Public Method ZCL_IM_ENH_PO_SRV_LIMIT-
>IF_EX_ME_PROCESS_PO_CUST~FIELDSELECTION_ITEM
*
+--------------------------------------------------------------------------
-----------------------+
* | [--->] IM_HEADER TYPE REF TO IF_PURCHASE_ORDER_MM
* | [--->] IM_ITEM TYPE REF TO
IF_PURCHASE_ORDER_ITEM_MM
* | [<-->] CH_FIELDSELECTION TYPE
TTYP_FIELDSELECTION_MM
*
+--------------------------------------------------------------------------
------------</SIGNATURE>
METHOD IF_EX_ME_PROCESS_PO_CUST~FIELDSELECTION_ITEM.
************************************************************************
* Program Title : Need to enable and Disable the screen for *
* some specific PO document type which has PO *
* history and Src and Final stock type condition*
* Author : Satya Panda *
* Date : 15/03/2024 *
* SAP Change Request #: DS4K9A0683 *
*----------------------------------------------------------------------*
* Description: : This Method is used to Disable the screen for *
* Src and Final stock type as per PO History *
* Type: : Enhancment *
* Run Frequency: : On request *
* Development Class: : ZWPS_MM_PUR *
* Requirement Ref. : GAP-1118347/HE0031 *
*----------------------------------------------------------------------*
* INPUTS *
* Variants : None *
* Input file name : N/A *
* Other : *
*----------------------------------------------------------------------*
* OUTPUTS *
* Files : N/A *
* Errors : Screen Enable and disable *
* Other : *
*----------------------------------------------------------------------*
ENDLOOP.
LOOP AT SCREEN.
CASE SCREEN-NAME.
WHEN LC_INSMK_SRC.
SCREEN-INPUT = 0.
MODIFY SCREEN.
WHEN LC_INSMK.
SCREEN-INPUT = 0.
MODIFY SCREEN.
ENDCASE.
ENDLOOP.
ENDIF.
ENDIF.
ENDIF.
ENDMETHOD.
*
<SIGNATURE>----------------------------------------------------------------
-----------------------+
* | Instance Public Method ZCL_IM_ENH_PO_SRV_LIMIT-
>IF_EX_ME_PROCESS_PO_CUST~FIELDSELECTION_ITEM_REFKEYS
*
+--------------------------------------------------------------------------
-----------------------+
* | [--->] IM_ITEM TYPE REF TO
IF_PURCHASE_ORDER_ITEM_MM
* | [<-->] CH_KEY0 TYPE BREFN
* | [<-->] CH_KEY1 TYPE BREFN
* | [<-->] CH_KEY2 TYPE BREFN
* | [<-->] CH_KEY3 TYPE BREFN
* | [<-->] CH_KEY4 TYPE BREFN
* | [<-->] CH_KEY5 TYPE BREFN
* | [<-->] CH_KEY6 TYPE BREFN
*
+--------------------------------------------------------------------------
------------</SIGNATURE>
method IF_EX_ME_PROCESS_PO_CUST~FIELDSELECTION_ITEM_REFKEYS.
endmethod.
*
<SIGNATURE>----------------------------------------------------------------
-----------------------+
* | Instance Public Method ZCL_IM_ENH_PO_SRV_LIMIT-
>IF_EX_ME_PROCESS_PO_CUST~INITIALIZE
*
+--------------------------------------------------------------------------
-----------------------+
*
+--------------------------------------------------------------------------
------------</SIGNATURE>
method IF_EX_ME_PROCESS_PO_CUST~INITIALIZE.
endmethod.
*
<SIGNATURE>----------------------------------------------------------------
-----------------------+
* | Instance Public Method ZCL_IM_ENH_PO_SRV_LIMIT-
>IF_EX_ME_PROCESS_PO_CUST~OPEN
*
+--------------------------------------------------------------------------
-----------------------+
* | [--->] IM_TRTYP TYPE TRTYP
* | [--->] IM_HEADER TYPE REF TO IF_PURCHASE_ORDER_MM
* | [<-->] CH_VALID TYPE MMPUR_BOOL
* | [<-->] CH_DISPLAY_ONLY TYPE MMPUR_BOOL
*
+--------------------------------------------------------------------------
------------</SIGNATURE>
method IF_EX_ME_PROCESS_PO_CUST~OPEN.
endmethod.
*
<SIGNATURE>----------------------------------------------------------------
-----------------------+
* | Instance Public Method ZCL_IM_ENH_PO_SRV_LIMIT-
>IF_EX_ME_PROCESS_PO_CUST~POST
*
+--------------------------------------------------------------------------
-----------------------+
* | [--->] IM_EBELN TYPE EBELN
* | [--->] IM_HEADER TYPE REF TO IF_PURCHASE_ORDER_MM
*
+--------------------------------------------------------------------------
------------</SIGNATURE>
method IF_EX_ME_PROCESS_PO_CUST~POST.
endmethod.
*
<SIGNATURE>----------------------------------------------------------------
-----------------------+
* | Instance Public Method ZCL_IM_ENH_PO_SRV_LIMIT-
>IF_EX_ME_PROCESS_PO_CUST~PROCESS_ACCOUNT
*
+--------------------------------------------------------------------------
-----------------------+
* | [--->] IM_ACCOUNT TYPE REF TO
IF_PURCHASE_ORDER_ACCOUNT_MM
*
+--------------------------------------------------------------------------
------------</SIGNATURE>
method IF_EX_ME_PROCESS_PO_CUST~PROCESS_ACCOUNT.
endmethod.
*
<SIGNATURE>----------------------------------------------------------------
-----------------------+
* | Instance Public Method ZCL_IM_ENH_PO_SRV_LIMIT-
>IF_EX_ME_PROCESS_PO_CUST~PROCESS_HEADER
*
+--------------------------------------------------------------------------
-----------------------+
* | [--->] IM_HEADER TYPE REF TO IF_PURCHASE_ORDER_MM
*
+--------------------------------------------------------------------------
------------</SIGNATURE>
METHOD if_ex_me_process_po_cust~process_header.
************************************************************************
* Program Title : Update the Shipping instructions *
* Author : Venkateshwarlu Chilukuri *
* Date : 06/17/2024 *
* SAP Change Request #: DS4K9A0BR4 & DS4K9A0HP7 *
*----------------------------------------------------------------------*
* Description: : Update the Shipping instructions in the PO *
* header from SO10 text *
* Type: : Enhancment *
* Run Frequency: : On request *
* Development Class: : ZWPS_MM_PUR *
* Requirement Ref. : GAP 1230424/ *
*----------------------------------------------------------------------*
* INPUTS *
* Variants : None *
* Input file name : N/A *
* Other : *
*----------------------------------------------------------------------*
* OUTPUTS *
* Files : N/A *
* Errors : Standard error messages *
* Other : *
*----------------------------------------------------------------------*
CONSTANTS : lc_zs2p_sto_sipping_text TYPE tvarvc-name VALUE
'ZS2P_STO_SHIPPING_TEXT'.
*--------------------------------------------------**
* Extract PO Item Information **
*--------------------------------------------------**
REFRESH : lt_items.
lt_items = zcl_po->if_purchase_order_mm~get_items( ).
LOOP AT lt_items INTO DATA(lwa_items).
lwa_mepoitem = lwa_items-item->get_data( ).
EXIT.
ENDLOOP.
CLEAR lv_pallet_instruc.
CONCATENATE me->gc_so10_shipping_inst lwa_mepoitem-bukrs INTO
lv_pallet_instruc. "so10 text maintained at company code level
me->set_hdr_text_from_s010(
im_header = im_header
im_tdobject = me->gc_tdobject_ekko
im_tdname = lv_pallet_instruc
im_tdid = me->gc_f06_txtid
).
me->g_text_f06_set = 'X'.
ENDIF.
ENDIF.
ENDIF.
ENDMETHOD.
*
<SIGNATURE>----------------------------------------------------------------
-----------------------+
* | Instance Public Method ZCL_IM_ENH_PO_SRV_LIMIT-
>IF_EX_ME_PROCESS_PO_CUST~PROCESS_ITEM
*
+--------------------------------------------------------------------------
-----------------------+
* | [--->] IM_ITEM TYPE REF TO
IF_PURCHASE_ORDER_ITEM_MM
*
+--------------------------------------------------------------------------
------------</SIGNATURE>
method IF_EX_ME_PROCESS_PO_CUST~PROCESS_ITEM.
endmethod.
*
<SIGNATURE>----------------------------------------------------------------
-----------------------+
* | Instance Public Method ZCL_IM_ENH_PO_SRV_LIMIT-
>IF_EX_ME_PROCESS_PO_CUST~PROCESS_SCHEDULE
*
+--------------------------------------------------------------------------
-----------------------+
* | [--->] IM_SCHEDULE TYPE REF TO
IF_PURCHASE_ORDER_SCHEDULE_MM
*
+--------------------------------------------------------------------------
------------</SIGNATURE>
method IF_EX_ME_PROCESS_PO_CUST~PROCESS_SCHEDULE.
endmethod.
*
<SIGNATURE>----------------------------------------------------------------
-----------------------+
* | Instance Private Method ZCL_IM_ENH_PO_SRV_LIMIT->SET_HDR_TEXT_FROM_S010
*
+--------------------------------------------------------------------------
-----------------------+
* | [--->] IM_HEADER TYPE REF TO IF_PURCHASE_ORDER_MM
* | [--->] IM_TDOBJECT TYPE THEAD-TDOBJECT
* | [--->] IM_TDNAME TYPE THEAD-TDNAME
* | [--->] IM_TDID TYPE TDID
*
+--------------------------------------------------------------------------
------------</SIGNATURE>
METHOD set_hdr_text_from_s010.
************************************************************************
* Program Title : Read SO10 Text *
* Author : Venkateshwarlu Chilukuri *
* Date : 06/17/2024 *
* SAP Change Request #: DS4K9A0BR4 *
*----------------------------------------------------------------------*
* Description: : Update the Shipping instructions in the PO *
* header from SO10 text *
* Type: : Enhancment *
* Run Frequency: : On request *
* Development Class: : ZWPS_MM_PUR *
* Requirement Ref. : GAP 1230424/ *
*----------------------------------------------------------------------*
* INPUTS *
* Variants : None *
* Input file name : N/A *
* Other : *
*----------------------------------------------------------------------*
* OUTPUTS *
* Files : N/A *
* Errors : Standard error messages *
* Other : *
*----------------------------------------------------------------------*
DATA: im_textlines TYPE mmpur_t_textlines,
wa_textlines LIKE LINE OF im_textlines,
text_tab TYPE TABLE OF tline,
wa_text_tab TYPE tline.