Created
October 29, 2012 14:48
-
-
Save Odomontois/3973960 to your computer and use it in GitHub Desktop.
ABAP деривация ФМ из карточки договора
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class ZCL_IM_RCM_ME_GUI_PO definition | |
public | |
final | |
create public . | |
public section. | |
*"* public components of class ZCL_IM_RCM_ME_GUI_PO | |
*"* do not include other source files here!!! | |
interfaces IF_EX_ME_GUI_PO_CUST . | |
constants ELEMENT_HEADER type STRING value 'HEADER'. "#EC NOTEXT | |
constants ELEMENT_ITEM type STRING value 'ITEM'. "#EC NOTEXT | |
protected section. | |
*"* protected components of class ZCL_IM_RCM_ME_GUI_PO | |
*"* do not include other source files here!!! | |
data HEADER_CNTR_DATA type ZSRCM_ME_GUI_CUSTM . | |
private section. | |
*"* private components of class ZCL_IM_RCM_ME_GUI_PO | |
*"* do not include other source files here!!! | |
ENDCLASS. | |
CLASS ZCL_IM_RCM_ME_GUI_PO IMPLEMENTATION. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_GUI_PO->IF_EX_ME_GUI_PO_CUST~EXECUTE | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] IM_NAME TYPE MEPO_NAME | |
* | [--->] IM_MODEL TYPE REF TO IF_MODEL_MM | |
* | [--->] IM_FCODE TYPE SY-UCOMM | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
method IF_EX_ME_GUI_PO_CUST~EXECUTE. | |
endmethod. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_GUI_PO->IF_EX_ME_GUI_PO_CUST~MAP_DYNPRO_FIELDS | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [<-->] CH_MAPPING TYPE MMPUR_DYNPRO_FIELDS | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
method IF_EX_ME_GUI_PO_CUST~MAP_DYNPRO_FIELDS. | |
DATA ls_mapping LIKE LINE OF ch_mapping. | |
LOOP AT ch_mapping INTO ls_mapping. | |
CASE ls_mapping-fieldname . | |
WHEN zcl_rcm_ptdo_const=>custm_po_field-header-contract_num-name . | |
ls_mapping-metafield = zcl_rcm_ptdo_const=>custm_po_field-header-contract_num-meta. | |
WHEN OTHERS. | |
ENDCASE. | |
MODIFY ch_mapping FROM ls_mapping. | |
ENDLOOP. | |
endmethod. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_GUI_PO->IF_EX_ME_GUI_PO_CUST~SUBSCRIBE | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] IM_APPLICATION TYPE STRING40 | |
* | [--->] IM_ELEMENT TYPE STRING40 | |
* | [<-()] RE_SUBSCRIBERS TYPE MEPO_T_SUBSCRIBERS | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
method IF_EX_ME_GUI_PO_CUST~SUBSCRIBE. | |
DATA ls_subscriber LIKE LINE OF re_subscribers. | |
CASE im_element. | |
WHEN element_header. | |
ls_subscriber-dynpro = zcl_rcm_ptdo_const=>custm_po_field-header-screen . | |
ls_subscriber-height = 2. | |
ls_subscriber-label = 'Данные договора'(T01). | |
ls_subscriber-name = zcl_rcm_ptdo_const=>custm_po_field-header-tab_id . | |
ls_subscriber-position = 50. | |
ls_subscriber-program = zcl_rcm_ptdo_const=>custm_po_field-report_id . | |
ls_subscriber-struct_name = zcl_rcm_ptdo_const=>custm_po_field-header-struct_name . | |
INSERT ls_subscriber INTO TABLE re_subscribers. | |
ENDCASE. | |
endmethod. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_GUI_PO->IF_EX_ME_GUI_PO_CUST~TRANSPORT_FROM_DYNP | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] IM_NAME TYPE MEPO_NAME | |
* | [--->] IM_FCODE TYPE SY-UCOMM | |
* | [<-()] RE_CHANGED TYPE MMPUR_BOOL | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
method IF_EX_ME_GUI_PO_CUST~TRANSPORT_FROM_DYNP. | |
CALL FUNCTION 'ZRCM_MEGUI_EX_GET_HEADER_DATA' | |
IMPORTING | |
data = me->header_cntr_data " Поля интеграции с системой договоров | |
changed = re_changed. " Поля интеграции с системой договоров | |
endmethod. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_GUI_PO->IF_EX_ME_GUI_PO_CUST~TRANSPORT_FROM_MODEL | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] IM_NAME TYPE MEPO_NAME | |
* | [--->] IM_MODEL TYPE REF TO IF_MODEL_MM | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD if_ex_me_gui_po_cust~transport_from_model. | |
DATA ls_header_data TYPE mepoheader. | |
DATA li_header_model TYPE REF TO if_purchase_order_mm. | |
mmpur_dynamic_cast li_header_model im_model . | |
CASE im_name . | |
WHEN zcl_rcm_ptdo_const=>custm_po_field-header-tab_id . | |
CHECK li_header_model IS BOUND. | |
ls_header_data = li_header_model->get_data( ). | |
me->header_cntr_data-contract_num = ls_header_data-zzdognr. | |
ENDCASE. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_GUI_PO->IF_EX_ME_GUI_PO_CUST~TRANSPORT_TO_DYNP | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] IM_NAME TYPE MEPO_NAME | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
method IF_EX_ME_GUI_PO_CUST~TRANSPORT_TO_DYNP. | |
CALL FUNCTION 'ZRCM_MEGUI_EX_SET_HEADER_DATA' | |
EXPORTING | |
data = me->header_cntr_data. | |
endmethod. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_GUI_PO->IF_EX_ME_GUI_PO_CUST~TRANSPORT_TO_MODEL | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] IM_NAME TYPE MEPO_NAME | |
* | [--->] IM_MODEL TYPE REF TO IF_MODEL_MM | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD if_ex_me_gui_po_cust~transport_to_model. | |
DATA ls_header_data TYPE mepoheader. | |
DATA li_header_model TYPE REF TO if_purchase_order_mm. | |
mmpur_dynamic_cast li_header_model im_model . | |
CASE im_name . | |
WHEN zcl_rcm_ptdo_const=>custm_po_field-header-tab_id . | |
CHECK li_header_model IS BOUND. | |
ls_header_data = li_header_model->get_data( ). | |
ls_header_data-zzdognr = me->header_cntr_data-contract_num. | |
li_header_model->set_data( ls_header_data ). | |
ENDCASE. | |
ENDMETHOD. | |
ENDCLASS. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class ZCL_IM_RCM_ME_PROCESS_PO definition | |
public | |
final | |
create public . | |
public section. | |
*"* public components of class ZCL_IM_RCM_ME_PROCESS_PO | |
*"* do not include other source files here!!! | |
interfaces IF_BADI_INTERFACE . | |
interfaces IF_EX_ME_PROCESS_PO_CUST . | |
constants TRTYP_CREATION type TRTYP value 'H'. "#EC NOTEXT | |
protected section. | |
*"* protected components of class ZCL_IM_RCM_ME_PROCESS_PO | |
*"* do not include other source files here!!! | |
data IMPORT_CNTR_DATA type ABAP_BOOL . | |
methods CHECK_ZZDOGNR_IS_NOT_INITIAL | |
importing | |
!IM_HEADER type ref to IF_PURCHASE_ORDER_MM . | |
methods DERIVE_CONTRACT_FM_CODING | |
importing | |
!HEADER type ref to IF_PURCHASE_ORDER_MM . | |
methods IMPORT_CREATION_DATA | |
importing | |
!HEADER type ref to IF_PURCHASE_ORDER_MM . | |
private section. | |
*"* private components of class ZCL_IM_RCM_ME_PROCESS_PO | |
*"* do not include other source files here!!! | |
data DERIVED_CONTRACT type ZIF_RCM_CONST=>TD_CONTRACT_NUM . | |
ENDCLASS. | |
CLASS ZCL_IM_RCM_ME_PROCESS_PO IMPLEMENTATION. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Protected Method ZCL_IM_RCM_ME_PROCESS_PO->CHECK_ZZDOGNR_IS_NOT_INITIAL | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] IM_HEADER TYPE REF TO IF_PURCHASE_ORDER_MM | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD check_zzdognr_is_not_initial. | |
DATA: ls_mepoheader TYPE mepoheader, | |
lv_dummy TYPE c LENGTH 128. | |
INCLUDE mm_messages_mac. "useful macros for message handling | |
*---------------------------------------------------------------------* | |
* here we check customers data | |
*---------------------------------------------------------------------* | |
ls_mepoheader = im_header->get_data( ). | |
IF ls_mepoheader-lifnr IS NOT INITIAL AND | |
ls_mepoheader-zzdognr IS INITIAL. | |
mmpur_metafield mmmfd_cust_09. | |
MESSAGE e026(z000) INTO lv_dummy. | |
mmpur_message sy-msgty sy-msgid sy-msgno | |
sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. | |
* invalidate the object | |
* CALL METHOD im_header->invalidate( ). | |
ENDIF. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Protected Method ZCL_IM_RCM_ME_PROCESS_PO->DERIVE_CONTRACT_FM_CODING | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] HEADER TYPE REF TO IF_PURCHASE_ORDER_MM | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD derive_contract_fm_coding. | |
DATA ls_item TYPE purchase_order_item. | |
DATA ls_item_data TYPE mepoitem. | |
DATA lt_items TYPE purchase_order_items. | |
DATA lt_accountings TYPE purchase_order_accountings. | |
DATA ls_accounting TYPE purchase_order_accounting. | |
DATA ls_accounting_data TYPE mepoaccounting. | |
lt_items = header->get_items( ). | |
LOOP AT lt_items INTO ls_item. | |
ls_item_data = ls_item-item->get_data( ). | |
CHECK header->get_data( )-zzdognr NE me->derived_contract. | |
derived_contract = header->get_data( )-zzdognr. | |
lt_accountings = ls_item-item->get_accountings( ). | |
CALL METHOD zcl_rcm_cobl_cntr_extend=>get_contract_budget_coding | |
EXPORTING | |
cntr_num = header->get_data( )-zzdognr | |
fipos_type = zcl_rcm_ptdo_const=>fipos_type_credit | |
IMPORTING | |
commit_item = ls_item_data-fipos | |
funds_center = ls_item_data-fistl. | |
ls_item-item->set_data( ls_item_data ). | |
LOOP AT lt_accountings INTO ls_accounting. | |
ls_accounting_data = ls_accounting-accounting->get_data( ). | |
ls_accounting_data-fipos = ls_item_data-fipos. | |
ls_accounting_data-fistl = ls_item_data-fistl. | |
ls_accounting-accounting->set_data( ls_accounting_data ). | |
ENDLOOP. | |
ENDLOOP. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_PROCESS_PO->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. | |
endmethod. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_PROCESS_PO->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_RCM_ME_PROCESS_PO->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. | |
DATA ls_fieldsel LIKE LINE OF ch_fieldselection. | |
LOOP AT ch_fieldselection INTO ls_fieldsel. | |
CASE ls_fieldsel-metafield. | |
WHEN zcl_rcm_ptdo_const=>custm_po_field-header-contract_num-meta. | |
IF im_header->is_changeable( ) IS NOT INITIAL . | |
ls_fieldsel-fieldstatus = '+'. | |
ELSE. | |
ls_fieldsel-fieldstatus = '-'. | |
ENDIF. | |
WHEN OTHERS. | |
ENDCASE. | |
MODIFY ch_fieldselection FROM ls_fieldsel. | |
ENDLOOP. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_PROCESS_PO->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_RCM_ME_PROCESS_PO->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. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_PROCESS_PO->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_RCM_ME_PROCESS_PO->IF_EX_ME_PROCESS_PO_CUST~INITIALIZE | |
* +-------------------------------------------------------------------------------------------------+ | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD if_ex_me_process_po_cust~initialize. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_PROCESS_PO->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. | |
DATA ls_header TYPE mepoheader. | |
IF im_trtyp EQ trtyp_creation. | |
me->import_cntr_data = abap_true. | |
ENDIF. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_PROCESS_PO->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. | |
DATA ld_fistl TYPE fistl. | |
DATA ld_fipos TYPE fipos. | |
DATA lt_items TYPE purchase_order_items. | |
DATA ls_item LIKE LINE OF lt_items. | |
DATA ls_item_data TYPE mepoitem. | |
CALL METHOD zcl_rcm_cobl_cntr_extend=>get_contract_budget_coding | |
EXPORTING | |
cntr_num = im_header->get_data( )-zzdognr | |
IMPORTING | |
commit_item = ld_fipos | |
funds_center = ld_fistl. | |
lt_items = im_header->get_items( ). | |
LOOP AT lt_items INTO ls_item. | |
ls_item_data = ls_item-item->get_data( ). | |
ls_item_data-fipos = ld_fipos. | |
ls_item_data-fistl = ld_fistl. | |
ls_item-item->set_data( ls_item_data ). | |
ENDLOOP. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_PROCESS_PO->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_RCM_ME_PROCESS_PO->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. | |
import_creation_data( im_header ). | |
derive_contract_fm_coding( im_header ). | |
" Перенесено из класса ZCL_IM__PO_CUST | |
check_zzdognr_is_not_initial( im_header ). | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_PROCESS_PO->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. | |
* DATA ld_fistl TYPE fistl. | |
* DATA ld_fipos TYPE fipos. | |
* DATA ls_item_data TYPE mepoitem. | |
* | |
* CALL METHOD zcl_rcm_cobl_cntr_extend=>get_contract_budget_coding | |
* EXPORTING | |
* cntr_num = im_item->get_header( )->get_data( )-zzdognr | |
* IMPORTING | |
* commit_item = ld_fipos | |
* funds_center = ld_fistl. | |
* CHECK ld_fipos IS NOT INITIAL OR ld_fistl IS NOT INITIAL. | |
* | |
* ls_item_data = im_item->get_data( ). | |
* ls_item_data-fipos = ld_fipos. | |
* ls_item_data-fistl = ld_fistl. | |
* im_item->set_data( ls_item_data ). | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_IM_RCM_ME_PROCESS_PO->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 Protected Method ZCL_IM_RCM_ME_PROCESS_PO->IMPORT_CREATION_DATA | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] HEADER TYPE REF TO IF_PURCHASE_ORDER_MM | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD import_creation_data. | |
DATA ls_header TYPE mepoheader. | |
CHECK header->is_changeable( ) EQ abap_true. | |
CHECK me->import_cntr_data EQ abap_true. | |
IMPORT po_header TO ls_header FROM MEMORY ID zcl_rcm_ptdo_const=>memid_po_create. | |
IF sy-subrc EQ 0. | |
ls_header-bsart = header->get_data( )-bsart. | |
header->set_data( ls_header ). | |
ENDIF. | |
import_cntr_data = abap_false. | |
ENDMETHOD. | |
ENDCLASS. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class ZCL_RCM_COBL_CNTR_EXTEND definition | |
public | |
create protected . | |
public section. | |
*"* public components of class ZCL_RCM_COBL_CNTR_EXTEND | |
*"* do not include other source files here!!! | |
interface ZIF_RCM_CONST load . | |
type-pools ABAP . | |
constants KASSA_SUBSTITUTION type ABAP_BOOL value abap_true. "#EC NOTEXT | |
constants TCODE_CASH_JOURNAL type SYTCODE value 'FBCJ'. "#EC NOTEXT | |
data TAB_BKPF type BKPF_T read-only . | |
data TAB_BSEG type BSEG_T read-only . | |
data TAB_BSEG_SUB type BSEG_SUBST_T read-only . | |
constants HKONT_FI_PAT1 type STRING value '^(91|90).*'. "#EC NOTEXT | |
constants HKONT_FI_PAT2 type STRING value '^(3|10|15).*'. "#EC NOTEXT | |
constants HKONT_FI_CNTR_PAT1 type STRING value '^(60|68|69|73|76).*'. "#EC NOTEXT | |
constants HKONT_FI_CNTR_PAT2 type STRING value '^(62|76).*'. "#EC NOTEXT | |
data COBL type COBL read-only . | |
data COBL_AD type COBL_AD read-only . | |
data FMDERIVE type FMDERIVE read-only . | |
constants TCODE_SALES_ORDER_CREATE type SYTCODE value 'VA01'. "#EC NOTEXT | |
constants TCODE_TR_POST_FLOWS type SYTCODE value 'TBB1'. "#EC NOTEXT | |
constants TCODE_MEPO_CREATE type SYTCODE value 'ME21N'. "#EC NOTEXT | |
constants TCODE_MEPO_CHANGE type SYTCODE value 'ME22N'. "#EC NOTEXT | |
constants TCODE_MEPO_VIEW type SYTCODE value 'ME23N'. "#EC NOTEXT | |
constants TCODE_FI_POST type SYTCODE value 'FB01'. "#EC NOTEXT | |
constants SHKZG_DEBIT type SHKZG value 'S'. "#EC NOTEXT | |
constants SHKZG_CREDIT type SHKZG value 'H'. "#EC NOTEXT | |
constants KOART_GL type KOART value 'S'. "#EC NOTEXT | |
constants KOART_VENDOR type KOART value 'K'. "#EC NOTEXT | |
constants KOART_CUSTOMER type KOART value 'D'. "#EC NOTEXT | |
constants TCODE_FI_POST_CREDITOR type SYTCODE value 'FB70'. "#EC NOTEXT | |
constants TCODE_FI_POST_DEBITOR type SYTCODE value 'FB60'. "#EC NOTEXT | |
constants TCODE_FI_CASH_JOURNAL type SYTCODE value 'FBCJ'. "#EC NOTEXT | |
methods FI_ITEM_SUITABLE_FOR_SUBST | |
importing | |
!FI_HEADER type BKPF | |
!FI_ITEM type BSEG | |
returning | |
value(SUITABLE) type ABAP_BOOL . | |
methods FI_SETUP | |
importing | |
!TAB_BKPF type BKPF_T | |
!TAB_BSEG type BSEG_T | |
!TAB_BSEG_SUB type BSEG_SUBST_T | |
returning | |
value(INSTANCE) type ref to ZCL_RCM_COBL_CNTR_EXTEND . | |
methods FI_SUBSTITUTION | |
returning | |
value(INSTANCE) type ref to ZCL_RCM_COBL_CNTR_EXTEND . | |
methods VALIDATE_USER_TEMP . | |
methods DERIVE | |
returning | |
value(INSTANCE) type ref to ZCL_RCM_COBL_CNTR_EXTEND . | |
class-methods GET_CONTRACT_BUDGET_CODING | |
importing | |
value(FIKRS) type FIKRS optional | |
value(CNTR_NUM) type ZIF_RCM_CONST=>TD_CONTRACT_NUM | |
value(FIPOS_TYPE) type FMCI-POTYP optional | |
exporting | |
value(FUNDS_CENTER) type FISTL | |
value(COMMIT_ITEM) type FIPOS . | |
class-methods NEW | |
returning | |
value(INSTANCE) type ref to ZCL_RCM_COBL_CNTR_EXTEND . | |
methods SETUP | |
importing | |
!I_COBL type COBL optional | |
!I_COBL_AD type COBL_AD optional | |
!C_FMDERIVE type FMDERIVE | |
returning | |
value(INSTANCE) type ref to ZCL_RCM_COBL_CNTR_EXTEND . | |
protected section. | |
*"* protected components of class ZCL_RCM_COBL_CNTR_EXTEND | |
*"* do not include other source files here!!! | |
class-data MEMORIZED_FIPOS type FIPOS . | |
methods FILL_FI_SUBSTITUTION | |
importing | |
!FI_HEADER type BKPF | |
!FI_ITEM type BSEG | |
!INDEX type SYTABIX | |
!FIPOS type FIPOS | |
!FUND_CENTER type FISTL . | |
methods GET_FI_CASH_JOURNAL_FIPOS_TYPE | |
returning | |
value(FIPOS_TYPE) type FMCI-POTYP . | |
methods GET_FI_FIPOS_TYPE | |
importing | |
!FI_ITEM type BSEG | |
!FI_HEADER type BKPF | |
returning | |
value(FIPOS_TYPE) type FMCI-POTYP . | |
methods GET_TR_FIPOS_TYPE | |
importing | |
value(CNTR_NUM) type ZIF_RCM_CONST=>TD_CONTRACT_NUM | |
returning | |
value(FIPOS_TYPE) type FMCI-POTYP . | |
class-methods GET_VALID_PB_ITEM | |
importing | |
!FIKRS type FIKRS | |
!ITEMS type ZTRCM_SUBCOMP_ITEM_PB | |
!FIPOS_TYPE type FMCI-POTYP | |
returning | |
value(ITEM) type ZSRCM_SUBCOMP_ITEM_PB | |
raising | |
ZCX_RCM . | |
methods READ_FI_CASH_JOURNAL_CNTR_NUM | |
returning | |
value(CNTR_NUM) type ZIF_RCM_CONST=>TD_CONTRACT_NUM . | |
methods FILL_BUDGET_CODING | |
importing | |
value(CNTR_NUM) type ZIF_RCM_CONST=>TD_CONTRACT_NUM | |
value(FIPOS_TYPE) type FMCI-POTYP . | |
type-pools ABAP . | |
methods POST_FLOWS_SUITABLE | |
returning | |
value(SUITABLE) type ABAP_BOOL . | |
class-methods READ_FIN_ACCT_CNTR_NUM | |
returning | |
value(CNTR_NUM) type ZIF_RCM_CONST=>TD_CONTRACT_NUM . | |
methods READ_FI_POST_CNTR_NUM | |
importing | |
!FI_HEADER type BKPF | |
returning | |
value(CNTR_NUM) type ZIF_RCM_CONST=>TD_CONTRACT_NUM . | |
class-methods READ_MEPO_CNTR_NUM | |
returning | |
value(CNTR_NUM) type ZIF_RCM_CONST=>TD_CONTRACT_NUM . | |
class-methods READ_SALES_ORDER_CNTR_NUM | |
returning | |
value(CNTR_NUM) type ZIF_RCM_CONST=>TD_CONTRACT_NUM . | |
private section. | |
*"* private components of class ZCL_RCM_COBL_CNTR_EXTEND | |
*"* do not include other source files here!!! | |
ENDCLASS. | |
CLASS ZCL_RCM_COBL_CNTR_EXTEND IMPLEMENTATION. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_RCM_COBL_CNTR_EXTEND->DERIVE | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [<-()] INSTANCE TYPE REF TO ZCL_RCM_COBL_CNTR_EXTEND | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD derive. | |
DATA ld_cntr_num TYPE zif_rcm_const=>td_contract_num. | |
DATA ld_fipos_type TYPE fmci-potyp. | |
instance = me. | |
CASE sy-tcode. | |
"Деривация в заказы клиента SD | |
WHEN tcode_sales_order_create. | |
ld_cntr_num = read_sales_order_cntr_num( ). | |
ld_fipos_type = zcl_rcm_ptdo_const=>fipos_type_debit. | |
"Деривация в проводке сделки TR | |
WHEN tcode_tr_post_flows. | |
ld_cntr_num = read_fin_acct_cntr_num( ). | |
ld_fipos_type = get_tr_fipos_type( ld_cntr_num ). | |
"Деривация в кассовом журнале FI | |
WHEN tcode_cash_journal. | |
ld_cntr_num = read_fi_cash_journal_cntr_num( ). | |
ld_fipos_type = get_fi_cash_journal_fipos_type( ). | |
"Деривация в заказе MM-PUR | |
WHEN tcode_mepo_create | |
OR tcode_mepo_change | |
OR tcode_mepo_view. | |
ld_cntr_num = read_mepo_cntr_num( ). | |
ld_fipos_type = zcl_rcm_ptdo_const=>fipos_type_credit. | |
ENDCASE. | |
CHECK ld_cntr_num IS NOT INITIAL | |
AND ld_fipos_type IS NOT INITIAL. | |
fill_budget_coding( cntr_num = ld_cntr_num | |
fipos_type = ld_fipos_type ). | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Protected Method ZCL_RCM_COBL_CNTR_EXTEND->FILL_BUDGET_CODING | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] CNTR_NUM TYPE ZIF_RCM_CONST=>TD_CONTRACT_NUM | |
* | [--->] FIPOS_TYPE TYPE FMCI-POTYP | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD fill_budget_coding. | |
DATA ld_fipos TYPE fipos. | |
DATA ld_fistl TYPE fistl. | |
DATA ls_subcomp TYPE scmg_subcomponent_backend. | |
DATA lt_subcomp TYPE scmg_tt_subcomponent_backend. | |
DATA li_item_pb_api TYPE REF TO zif_case_subcomp_item_pb_api. | |
DATA lt_item_pb LIKE li_item_pb_api->gt_outtab. | |
DATA ls_item_pb LIKE LINE OF lt_item_pb. | |
get_contract_budget_coding( EXPORTING cntr_num = cntr_num | |
fipos_type = fipos_type | |
IMPORTING commit_item = ld_fipos | |
funds_center = me->fmderive-fund_center ). | |
me->fmderive-commit_item = zcl_fm_utils=>get_fipex_by_fipos( ld_fipos ). | |
me->memorized_fipos = ld_fipos. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Protected Method ZCL_RCM_COBL_CNTR_EXTEND->FILL_FI_SUBSTITUTION | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] FI_HEADER TYPE BKPF | |
* | [--->] FI_ITEM TYPE BSEG | |
* | [--->] INDEX TYPE SYTABIX | |
* | [--->] FIPOS TYPE FIPOS | |
* | [--->] FUND_CENTER TYPE FISTL | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD fill_fi_substitution. | |
DATA lr_bseg_subst TYPE REF TO bseg_subst. | |
DATA ls_bseg_subst TYPE bseg_subst. | |
READ TABLE me->tab_bseg_sub REFERENCE INTO lr_bseg_subst WITH KEY tabix = index. | |
IF sy-subrc NE 0. | |
MOVE-CORRESPONDING fi_item TO ls_bseg_subst. | |
ls_bseg_subst-tabix = index. | |
INSERT ls_bseg_subst INTO TABLE me->tab_bseg_sub REFERENCE INTO lr_bseg_subst. | |
ENDIF. | |
lr_bseg_subst->fipos = fipos. | |
lr_bseg_subst->fistl = fund_center. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_RCM_COBL_CNTR_EXTEND->FI_ITEM_SUITABLE_FOR_SUBST | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] FI_HEADER TYPE BKPF | |
* | [--->] FI_ITEM TYPE BSEG | |
* | [<-()] SUITABLE TYPE ABAP_BOOL | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD fi_item_suitable_for_subst. | |
IF fi_item-koart EQ koart_gl AND ( | |
( match( val = fi_item-hkont regex = hkont_fi_pat1 ) NE '' | |
AND fi_header-blart EQ 'DR' | |
AND fi_item-shkzg EQ shkzg_credit | |
AND fi_item-ktosl EQ space ) | |
OR ( match( val = fi_item-hkont regex = hkont_fi_pat2 ) NE '' | |
AND fi_header-blart EQ 'KR' | |
AND fi_item-shkzg EQ shkzg_debit ) | |
). | |
suitable = abap_true. | |
ENDIF. | |
"Касса | |
IF kassa_substitution EQ abap_true. | |
IF fi_item-koart EQ koart_vendor | |
AND fi_item-shkzg EQ shkzg_debit | |
AND fi_header-blart EQ 'RO'. | |
suitable = abap_true. | |
ELSEIF fi_item-shkzg EQ shkzg_credit | |
AND fi_header-blart EQ 'PO' | |
AND ( fi_item-koart EQ koart_vendor | |
OR fi_item-koart EQ koart_customer ). | |
suitable = abap_true. | |
ENDIF. | |
ENDIF. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_RCM_COBL_CNTR_EXTEND->FI_SETUP | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] TAB_BKPF TYPE BKPF_T | |
* | [--->] TAB_BSEG TYPE BSEG_T | |
* | [--->] TAB_BSEG_SUB TYPE BSEG_SUBST_T | |
* | [<-()] INSTANCE TYPE REF TO ZCL_RCM_COBL_CNTR_EXTEND | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD fi_setup. | |
me->tab_bkpf = tab_bkpf. | |
me->tab_bseg = tab_bseg. | |
me->tab_bseg_sub = tab_bseg_sub. | |
instance = me. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_RCM_COBL_CNTR_EXTEND->FI_SUBSTITUTION | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [<-()] INSTANCE TYPE REF TO ZCL_RCM_COBL_CNTR_EXTEND | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD fi_substitution. | |
DATA ls_fi_header TYPE bkpf. | |
DATA ls_fi_item TYPE bseg. | |
DATA ld_cntr_num TYPE zif_rcm_const=>td_contract_num. | |
DATA ld_fipos_type TYPE fmci-potyp. | |
DATA ld_fipos TYPE fipos. | |
DATA ld_fund_center TYPE fistl. | |
DATA ld_item_index TYPE sytabix. | |
instance = me. | |
CHECK sy-tcode EQ tcode_fi_post | |
OR sy-tcode EQ tcode_fi_post_creditor | |
OR sy-tcode EQ tcode_fi_post_debitor | |
OR sy-tcode EQ tcode_fi_cash_journal. | |
LOOP AT me->tab_bkpf INTO ls_fi_header. | |
ld_cntr_num = read_fi_post_cntr_num( ls_fi_header ). | |
CHECK ld_cntr_num IS NOT INITIAL. | |
LOOP AT me->tab_bseg INTO ls_fi_item. | |
ld_item_index = sy-tabix. | |
CHECK fi_item_suitable_for_subst( | |
fi_header = ls_fi_header | |
fi_item = ls_fi_item ) EQ abap_true. | |
ld_fipos_type = get_fi_fipos_type( fi_header = ls_fi_header | |
fi_item = ls_fi_item ). | |
CHECK ld_fipos_type IS NOT INITIAL. | |
get_contract_budget_coding( EXPORTING cntr_num = ld_cntr_num | |
fipos_type = ld_fipos_type | |
IMPORTING commit_item = ld_fipos | |
funds_center = ld_fund_center ). | |
fill_fi_substitution( index = ld_item_index | |
fi_item = ls_fi_item | |
fi_header = ls_fi_header | |
fipos = ld_fipos | |
fund_center = ld_fund_center ). | |
ENDLOOP. | |
ENDLOOP. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Static Public Method ZCL_RCM_COBL_CNTR_EXTEND=>GET_CONTRACT_BUDGET_CODING | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] FIKRS TYPE FIKRS(optional) | |
* | [--->] CNTR_NUM TYPE ZIF_RCM_CONST=>TD_CONTRACT_NUM | |
* | [--->] FIPOS_TYPE TYPE FMCI-POTYP(optional) | |
* | [<---] FUNDS_CENTER TYPE FISTL | |
* | [<---] COMMIT_ITEM TYPE FIPOS | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD get_contract_budget_coding. | |
DATA ld_case_guid TYPE scmg_case_guid. | |
DATA li_case_api TYPE REF TO if_scmg_case_api. | |
DATA li_mva_manager TYPE REF TO zif_rcm_case_mva_manager. | |
DATA lt_lines TYPE ztt_rcm_mva_line. | |
DATA li_line TYPE REF TO zif_rcm_case_mva_line. | |
DATA ld_fistl TYPE fistl. | |
DATA ls_subcomp TYPE scmg_subcomponent_backend. | |
DATA lt_subcomp TYPE scmg_tt_subcomponent_backend. | |
DATA li_item_pb_api TYPE REF TO zif_case_subcomp_item_pb_api. | |
DATA lt_item_pb LIKE li_item_pb_api->gt_outtab. | |
DATA ls_item_pb LIKE LINE OF lt_item_pb. | |
DATA ld_bukrs TYPE bukrs. | |
CHECK cntr_num IS NOT INITIAL. | |
ld_case_guid = zcl_rcm_utils=>find_case_by_external_ref( cntr_num ). | |
CHECK ld_case_guid IS NOT INITIAL. | |
li_case_api = cl_scmg_case_api=>open_case( ld_case_guid ). | |
li_mva_manager ?= zcl_rcm_utils=>connect_rcm_object( | |
rm_object = li_case_api->get_backend_case( ) | |
class_role = zcl_rcm_ptdo_const=>clro_mva_manager | |
target_var = li_mva_manager ). | |
CHECK li_mva_manager IS BOUND. | |
TRY. | |
* lt_lines = li_mva_manager->get_mva_object( zif_rcm_const=>funds_center )->get_lines( ). | |
* | |
* CHECK lines( lt_lines ) EQ 1. | |
* READ TABLE lt_lines INTO li_line INDEX 1. | |
* | |
* ld_fistl = li_line->get_value( zcl_rcm_ptdo_const=>mva_fistl-id ). | |
lt_subcomp = li_case_api->get_backend_case( )->get_subcomponents( ). | |
LOOP AT lt_subcomp INTO ls_subcomp. | |
CHECK ls_subcomp-class->get_type( ) EQ zcl_rcm_ptdo_const=>subcomp_type_item_pb. | |
li_item_pb_api ?= ls_subcomp-class->get_api( ). | |
lt_item_pb = li_item_pb_api->gt_outtab. | |
ENDLOOP. | |
IF fikrs IS INITIAL. | |
ld_bukrs = li_case_api->attribute_get( zif_rcm_const=>bukrs ). | |
fikrs = zcl_fm_utils=>get_fm_area( ld_bukrs ) . | |
ENDIF. | |
ls_item_pb = get_valid_pb_item( items = lt_item_pb | |
fipos_type = fipos_type | |
fikrs = fikrs ). | |
CHECK ls_item_pb IS NOT INITIAL. | |
funds_center = ls_item_pb-zfistl_item . | |
commit_item = ls_item_pb-zfipos. | |
CATCH zcx_rcm_mva zcx_rcm . | |
ENDTRY. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Protected Method ZCL_RCM_COBL_CNTR_EXTEND->GET_FI_CASH_JOURNAL_FIPOS_TYPE | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [<-()] FIPOS_TYPE TYPE FMCI-POTYP | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD get_fi_cash_journal_fipos_type. | |
IF ( cobl-koart EQ koart_vendor | |
OR cobl-koart EQ koart_customer ). | |
IF cobl-shkzg EQ shkzg_debit. | |
fipos_type = zcl_rcm_ptdo_const=>fipos_type_credit. | |
ELSE. | |
fipos_type = zcl_rcm_ptdo_const=>fipos_type_debit. | |
ENDIF. | |
ENDIF. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Protected Method ZCL_RCM_COBL_CNTR_EXTEND->GET_FI_FIPOS_TYPE | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] FI_ITEM TYPE BSEG | |
* | [--->] FI_HEADER TYPE BKPF | |
* | [<-()] FIPOS_TYPE TYPE FMCI-POTYP | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD get_fi_fipos_type. | |
CASE fi_item-shkzg. | |
WHEN shkzg_credit. | |
fipos_type = zcl_rcm_ptdo_const=>fipos_type_debit. | |
WHEN shkzg_debit. | |
fipos_type = zcl_rcm_ptdo_const=>fipos_type_credit. | |
ENDCASE. | |
"Касса | |
IF kassa_substitution EQ abap_true. | |
IF fi_item-koart EQ koart_vendor | |
AND fi_item-shkzg EQ shkzg_debit | |
AND fi_header-blart EQ 'RO'. | |
fipos_type = zcl_rcm_ptdo_const=>fipos_type_credit. | |
ELSEIF fi_item-shkzg EQ shkzg_credit | |
AND fi_header-blart EQ 'PO' | |
AND ( fi_item-koart EQ koart_vendor | |
OR fi_item-koart EQ koart_customer ). | |
fipos_type = zcl_rcm_ptdo_const=>fipos_type_debit. | |
ENDIF. | |
ENDIF. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Protected Method ZCL_RCM_COBL_CNTR_EXTEND->GET_TR_FIPOS_TYPE | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] CNTR_NUM TYPE ZIF_RCM_CONST=>TD_CONTRACT_NUM | |
* | [<-()] FIPOS_TYPE TYPE FMCI-POTYP | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD get_tr_fipos_type. | |
DATA ld_case_guid TYPE scmg_case_guid. | |
DATA li_case_api TYPE REF TO if_scmg_case_api. | |
FIELD-SYMBOLS <deal> TYPE vtbfha. | |
ASSIGN ('(RFTBBB00)VTBFHA') TO <deal>. | |
CHECK sy-subrc EQ 0. | |
CHECK cobl-koart EQ koart_gl. | |
CHECK cntr_num IS NOT INITIAL. | |
ld_case_guid = zcl_rcm_utils=>find_case_by_external_ref( cntr_num ). | |
CHECK ld_case_guid IS NOT INITIAL. | |
li_case_api = cl_scmg_case_api=>open_case( ld_case_guid ). | |
CASE <deal>-sgsart . | |
WHEN '51A' OR '55A'. "Более одного БА | |
CASE li_case_api->attribute_get( zif_rcm_const=>z_cntr_category ). | |
WHEN 'FINANCE04' OR 'FINANCE17'. | |
WHEN OTHERS. | |
EXIT. | |
ENDCASE. | |
IF match( val = cobl-hkont regex = zcl_rcm_ptdo_const=>hkont_pat_flow_derv ) NE '' . | |
CASE cobl-shkzg. | |
WHEN shkzg_credit. | |
fipos_type = zcl_rcm_ptdo_const=>fipos_type_debit. | |
WHEN shkzg_debit. | |
fipos_type = zcl_rcm_ptdo_const=>fipos_type_credit. | |
ENDCASE. | |
ELSEIF match( val = cobl-hkont regex = zcl_rcm_ptdo_const=>hkont_pat_flow_derv2 ) NE '' | |
AND cobl-shkzg EQ shkzg_credit . | |
fipos_type = zcl_rcm_ptdo_const=>fipos_type_credit. | |
ENDIF. | |
WHEN OTHERS." только один БА | |
CHECK <deal>-sfhaart NE 'F02' AND <deal>-sfhaart NE 'P02'. | |
CHECK cobl-shkzg EQ shkzg_debit. | |
CHECK match( val = cobl-hkont regex = zcl_rcm_ptdo_const=>hkont_pat_flow_derv ) NE ''. | |
fipos_type = zcl_rcm_ptdo_const=>fipos_type_credit. | |
ENDCASE. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Static Protected Method ZCL_RCM_COBL_CNTR_EXTEND=>GET_VALID_PB_ITEM | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] FIKRS TYPE FIKRS | |
* | [--->] ITEMS TYPE ZTRCM_SUBCOMP_ITEM_PB | |
* | [--->] FIPOS_TYPE TYPE FMCI-POTYP | |
* | [<-()] ITEM TYPE ZSRCM_SUBCOMP_ITEM_PB | |
* | [!CX!] ZCX_RCM | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD get_valid_pb_item. | |
DATA BEGIN OF ls_item_group. | |
DATA fipos_type TYPE fmci-potyp. | |
DATA BEGIN OF fin_mgmt. | |
DATA fistl LIKE item-zfistl_item . | |
DATA fipos LIKE item-zfipos . | |
DATA END OF fin_mgmt. | |
DATA item_ref LIKE REF TO item. | |
DATA END OF ls_item_group. | |
DATA lt_item_group LIKE HASHED TABLE OF ls_item_group WITH UNIQUE KEY fipos_type. | |
DATA ls_new_group LIKE ls_item_group. | |
LOOP AT items REFERENCE INTO ls_new_group-item_ref . | |
ls_new_group-fipos_type = zcl_fm_utils=>get_fipos_type( | |
fipos = ls_new_group-item_ref->zfipos | |
fikrs = fikrs ). | |
ls_new_group-fin_mgmt-fistl = ls_new_group-item_ref->zfistl_item. | |
ls_new_group-fin_mgmt-fipos = ls_new_group-item_ref->zfipos. | |
READ TABLE lt_item_group INTO ls_item_group | |
WITH TABLE KEY fipos_type = ls_new_group-fipos_type. | |
IF sy-subrc NE 0. | |
INSERT ls_new_group INTO TABLE lt_item_group. | |
ELSEIF ls_new_group-fin_mgmt NE ls_item_group-fin_mgmt . | |
RAISE EXCEPTION TYPE lcx_no_valid_item. | |
ENDIF. | |
ENDLOOP. | |
READ TABLE lt_item_group INTO ls_item_group WITH TABLE KEY fipos_type = fipos_type. | |
IF sy-subrc NE 0. | |
RAISE EXCEPTION TYPE lcx_no_valid_item. | |
ENDIF. | |
item = ls_item_group-item_ref->*. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Static Public Method ZCL_RCM_COBL_CNTR_EXTEND=>NEW | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [<-()] INSTANCE TYPE REF TO ZCL_RCM_COBL_CNTR_EXTEND | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD new. | |
CREATE OBJECT instance. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Protected Method ZCL_RCM_COBL_CNTR_EXTEND->POST_FLOWS_SUITABLE | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [<-()] SUITABLE TYPE ABAP_BOOL | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD post_flows_suitable. | |
CHECK cobl-shkzg EQ shkzg_debit. | |
CHECK cobl-koart EQ koart_gl. | |
CHECK match( val = cobl-hkont regex = zcl_rcm_ptdo_const=>hkont_pat_flow_derv ) NE '' . | |
suitable = abap_true. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Static Protected Method ZCL_RCM_COBL_CNTR_EXTEND=>READ_FIN_ACCT_CNTR_NUM | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [<-()] CNTR_NUM TYPE ZIF_RCM_CONST=>TD_CONTRACT_NUM | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD read_fin_acct_cntr_num. | |
FIELD-SYMBOLS <fi_acct_item> TYPE accit. | |
ASSIGN ('(SAPLRWCL)T_ACCIT') TO <fi_acct_item>. | |
CHECK sy-subrc EQ 0 AND <fi_acct_item> IS ASSIGNED. | |
cntr_num = <fi_acct_item>-zuonr. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Protected Method ZCL_RCM_COBL_CNTR_EXTEND->READ_FI_CASH_JOURNAL_CNTR_NUM | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [<-()] CNTR_NUM TYPE ZIF_RCM_CONST=>TD_CONTRACT_NUM | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD read_fi_cash_journal_cntr_num. | |
FIELD-SYMBOLS <cash_journal_posting> TYPE iscj_postings. | |
ASSIGN ('(SAPMFCJ0)ITCJ_E_POSTINGS') TO <cash_journal_posting>. | |
CHECK sy-subrc EQ 0. | |
cntr_num = <cash_journal_posting>-alloc_nmbr. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Protected Method ZCL_RCM_COBL_CNTR_EXTEND->READ_FI_POST_CNTR_NUM | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] FI_HEADER TYPE BKPF | |
* | [<-()] CNTR_NUM TYPE ZIF_RCM_CONST=>TD_CONTRACT_NUM | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD read_fi_post_cntr_num. | |
DATA ls_fi_item TYPE bseg. | |
LOOP AT me->tab_bseg INTO ls_fi_item . | |
IF ( match( val = ls_fi_item-hkont regex = hkont_fi_cntr_pat1 ) NE '' | |
AND fi_header-blart EQ 'KR' | |
AND ls_fi_item-shkzg EQ shkzg_credit ) | |
OR ( match( val = ls_fi_item-hkont regex = hkont_fi_cntr_pat2 ) NE '' | |
AND fi_header-blart EQ 'DR' | |
AND ls_fi_item-shkzg EQ shkzg_debit ). | |
cntr_num = ls_fi_item-zuonr. | |
RETURN. | |
ENDIF. | |
"Касса | |
IF kassa_substitution EQ abap_true. | |
IF ( ls_fi_item-koart EQ koart_vendor | |
AND ls_fi_item-shkzg EQ shkzg_debit | |
AND fi_header-blart EQ 'RO' ) | |
OR ( ls_fi_item-shkzg EQ shkzg_credit | |
AND fi_header-blart EQ 'PO' | |
AND ( ls_fi_item-koart EQ koart_vendor | |
OR ls_fi_item-koart EQ koart_customer ) ) . | |
cntr_num = ls_fi_item-zuonr. | |
RETURN. | |
ENDIF. | |
ENDIF. | |
ENDLOOP. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Static Protected Method ZCL_RCM_COBL_CNTR_EXTEND=>READ_MEPO_CNTR_NUM | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [<-()] CNTR_NUM TYPE ZIF_RCM_CONST=>TD_CONTRACT_NUM | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD read_mepo_cntr_num. | |
FIELD-SYMBOLS <purchase_order_header> TYPE ekko. | |
ASSIGN ('(SAPLMEPO)EKKO') TO <purchase_order_header>. | |
CHECK sy-subrc EQ 0. | |
cntr_num = <purchase_order_header>-zzdognr. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Static Protected Method ZCL_RCM_COBL_CNTR_EXTEND=>READ_SALES_ORDER_CNTR_NUM | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [<-()] CNTR_NUM TYPE ZIF_RCM_CONST=>TD_CONTRACT_NUM | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD read_sales_order_cntr_num. | |
FIELD-SYMBOLS <sales_order_header> TYPE vbak. | |
ASSIGN ('(SAPMV45A)VBAK') TO <sales_order_header>. | |
CHECK sy-subrc EQ 0. | |
*---> gtfsos 21.08.2012 | |
* ZUONR - номер карточки договора в SD заказах ИУС ПЗ | |
" cntr_num = <sales_order_header>-bstnk. | |
cntr_num = <sales_order_header>-zuonr. | |
* <---- gtfsos 21.08.2012 | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_RCM_COBL_CNTR_EXTEND->SETUP | |
* +-------------------------------------------------------------------------------------------------+ | |
* | [--->] I_COBL TYPE COBL(optional) | |
* | [--->] I_COBL_AD TYPE COBL_AD(optional) | |
* | [--->] C_FMDERIVE TYPE FMDERIVE | |
* | [<-()] INSTANCE TYPE REF TO ZCL_RCM_COBL_CNTR_EXTEND | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD setup. | |
me->cobl = i_cobl. | |
me->cobl_ad = i_cobl_ad. | |
me->fmderive = c_fmderive. | |
instance = me. | |
ENDMETHOD. | |
* <SIGNATURE>---------------------------------------------------------------------------------------+ | |
* | Instance Public Method ZCL_RCM_COBL_CNTR_EXTEND->VALIDATE_USER_TEMP | |
* +-------------------------------------------------------------------------------------------------+ | |
* +--------------------------------------------------------------------------------------</SIGNATURE> | |
METHOD validate_user_temp. | |
DATA ld_raise_error TYPE abap_bool. | |
IF fmderive-usertemp1 IS NOT INITIAL | |
AND me->memorized_fipos IS NOT INITIAL | |
AND fmderive-usertemp1 NE me->memorized_fipos. | |
ld_raise_error = abap_true. | |
ENDIF. | |
CLEAR me->memorized_fipos. | |
IF ld_raise_error EQ abap_true. | |
MESSAGE e032(zrcm_ptdo). | |
ENDIF. | |
ENDMETHOD. | |
ENDCLASS. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
*"* use this source file for the definition and implementation of | |
*"* local helper classes, interface definitions and type | |
*"* declarations | |
CLASS lcl_check DEFINITION DEFERRED. | |
CLASS lcl_attr_condition DEFINITION DEFERRED. | |
CLASS lcl_and_condition DEFINITION DEFERRED. | |
CLASS lcl_or_condition DEFINITION DEFERRED. | |
TYPES td_cond_attr TYPE int4. | |
CONSTANTS BEGIN OF cond_attr. | |
CONSTANTS fipos_type TYPE td_cond_attr VALUE 1. | |
CONSTANTS fi_account TYPE td_cond_attr VALUE 2. | |
CONSTANTS fi_acc_type TYPE td_cond_attr VALUE 3. | |
CONSTANTS fi_debcred_ind TYPE td_cond_attr VALUE 4. | |
CONSTANTS END OF cond_attr. | |
*----------------------------------------------------------------------* | |
* CLASS lcx_bad_coding DEFINITION | |
*----------------------------------------------------------------------* | |
* | |
*----------------------------------------------------------------------* | |
CLASS lcx_no_valid_item DEFINITION INHERITING FROM zcx_rcm. | |
ENDCLASS. "lcx_bad_coding DEFINITION | |
*----------------------------------------------------------------------* | |
CLASS lcl_check DEFINITION. | |
ENDCLASS. "lcl_check DEFINITION | |
*----------------------------------------------------------------------* | |
* CLASS lcl_condition DEFINITION | |
*----------------------------------------------------------------------* | |
* | |
*----------------------------------------------------------------------* | |
CLASS lcl_attr_condition DEFINITION. | |
PUBLIC SECTION. | |
DATA attr TYPE td_cond_attr. | |
METHODS with_attr IMPORTING value(cond_attr) TYPE td_cond_attr | |
RETURNING value(condition) TYPE REF TO lcl_attr_condition. | |
ENDCLASS. "lcl_condition DEFINITION | |
*----------------------------------------------------------------------* | |
* CLASS lcl_and_condition DEFINITION | |
*----------------------------------------------------------------------* | |
* | |
*----------------------------------------------------------------------* | |
CLASS lcl_and_condition DEFINITION. | |
ENDCLASS. "lcl_and_condition DEFINITION | |
*----------------------------------------------------------------------* | |
* CLASS lcl_or_condition DEFINITION | |
*----------------------------------------------------------------------* | |
* | |
*----------------------------------------------------------------------* | |
CLASS lcl_or_condition DEFINITION. | |
ENDCLASS. "lcl_or_condition DEFINITION | |
*----------------------------------------------------------------------* | |
* CLASS lcl_condition IMPLEMENTATION | |
*----------------------------------------------------------------------* | |
* | |
*----------------------------------------------------------------------* | |
CLASS lcl_attr_condition IMPLEMENTATION. | |
METHOD with_attr. | |
ENDMETHOD. "with_attr | |
ENDCLASS. "lcl_condition IMPLEMENTATION |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
FUNCTION z_open_fi_interface_00001120. | |
*"---------------------------------------------------------------------- | |
*"*"Локальный интерфейс: | |
*" IMPORTING | |
*" VALUE(I_BKDF) TYPE BKDF OPTIONAL | |
*" TABLES | |
*" T_BKPF STRUCTURE BKPF | |
*" T_BSEG STRUCTURE BSEG | |
*" T_BKPFSUB STRUCTURE BKPF_SUBST | |
*" T_BSEGSUB STRUCTURE BSEG_SUBST | |
*" T_BSEC STRUCTURE BSEC OPTIONAL | |
*" CHANGING | |
*" REFERENCE(I_BKDFSUB) TYPE BKDF_SUBST OPTIONAL | |
*"---------------------------------------------------------------------- | |
** ASLEONOV 13.09.2012 18:42:12 | |
* break gtflas. | |
FIELD-SYMBOLS: | |
<bsg> TYPE bseg, | |
<sgs> TYPE bseg_subst. | |
DATA: lgsber TYPE bseg-gsber VALUE '3900', | |
lnum TYPE i, | |
wa_bseg1 TYPE bseg, | |
wa_bseg2 TYPE bseg. | |
*&---------------------------------------------------------------------* | |
* Название : Процедура замещения крассного сторно при выравнивании | |
* | |
* Код разработки : D0061/01 | |
* Дата создания : 13.09.2012 | |
* Транспорт : MR5K901044 | |
* Постановщик : Т.Лавор | |
* Разработчик : А.Леонов | |
* Описание Замещение красного сторно для документов выравнивания контрагентов | |
*** Цель: Чтобы документы выравнивания по одному счету не создавали дополнительных оборотов | |
*** Работает если при выравнивании создается документ по одному счету | |
*&---------------------------------------------------------------------* | |
LOOP AT t_bkpf WHERE blart = 'KV' OR blart = 'DV' OR blart = 'AB'. | |
CLEAR: lnum, wa_bseg1, wa_bseg1 . | |
LOOP AT t_bseg WHERE bukrs = t_bkpf-bukrs AND belnr = t_bkpf-belnr | |
AND gjahr = t_bkpf-gjahr. | |
lnum = lnum + 1. | |
IF lnum = 1. | |
MOVE-CORRESPONDING t_bseg TO wa_bseg1. | |
ELSEIF lnum = 2. | |
MOVE-CORRESPONDING t_bseg TO wa_bseg2. | |
ENDIF. | |
ENDLOOP. | |
IF lnum = 2. | |
IF wa_bseg1-hkont = wa_bseg2-hkont. | |
LOOP AT t_bseg WHERE bukrs = t_bkpf-bukrs AND belnr = t_bkpf-belnr | |
AND gjahr = t_bkpf-gjahr. | |
IF t_bseg-bukrs = wa_bseg1-bukrs AND t_bseg-belnr = wa_bseg1-belnr | |
AND t_bseg-gjahr = wa_bseg1-gjahr AND t_bseg-buzei = wa_bseg1-buzei. | |
READ TABLE t_bsegsub WITH KEY tabix = sy-tabix ASSIGNING <sgs>. | |
IF sy-subrc = 0 AND <sgs>-xnegp IS INITIAL. | |
<sgs>-xnegp = 'X'. | |
ELSE. | |
CLEAR: t_bsegsub. | |
t_bsegsub-tabix = sy-tabix. | |
t_bsegsub-xnegp = 'X'. | |
APPEND t_bsegsub. | |
ENDIF. | |
ENDIF. | |
ENDLOOP. | |
ENDIF. | |
ENDIF. | |
ENDLOOP. | |
*&---------------------------------------------------------------------* | |
* Название : Процедура замещения бизнес сферы | |
* | |
* Код разработки : D0062/01 | |
* Дата создания : 14.02.2012 | |
* Транспорт : MR5K901044 | |
* Постановщик : Т.Лавор | |
* Разработчик : А.Леонов | |
* Описание Замещение бизнес-сферы во все позиции документа | |
*** Цель: Единая бизнес сфера во всех позициях | |
*** Работает если БЕ равна 1039 | |
*&---------------------------------------------------------------------* | |
LOOP AT t_bkpf WHERE bukrs = '1039'. | |
LOOP AT t_bsegsub ASSIGNING <sgs>. | |
IF <sgs> IS ASSIGNED. | |
<sgs>-gsber = lgsber. | |
ENDIF. | |
ENDLOOP. | |
ENDLOOP. | |
************************************************************************ | |
** Вызываем ФМ коллег FI_FM не удалять, т.к. из BTE таблиц я его снес | |
CALL FUNCTION 'ZPZ_PDOCS_CLR_COPY' | |
EXPORTING | |
i_bkdf = i_bkdf | |
TABLES | |
t_bkpf = t_bkpf[] | |
t_bseg = t_bseg[] | |
t_bkpfsub = t_bkpfsub[] | |
t_bsegsub = t_bsegsub[] | |
t_bsec = t_bsec[] | |
CHANGING | |
i_bkdfsub = i_bkdfsub. | |
** ASLEONOV 13.09.2012 18:42:16 | |
*┌──────────────────────────────────────────────────────────────────╖ | |
*│╔════════════════════════════════════════════════════════════════╕║ | |
*│║ Деривация финансовых аналитик из договора │║ | |
*│╙────────────────────────────────────────────────────────────────┘║ | |
*│╔══════════════════╕╔════════════════════════════════════════════╕║ | |
*│║ Разработчик │║ О. Нижников │║ | |
*│╙──────────────────┘╙────────────────────────────────────────────┘║ | |
*│╔══════════════════╕╔════════════════════════════════════════════╕║ | |
*│║ Аналитик │║ В. Миронов │║ | |
*│╙──────────────────┘╙────────────────────────────────────────────┘║ | |
*│╔══════════════════╕╔════════════════════════════════════════════╕║ | |
*│║ Код разработки │║ D0044-01 │║ | |
*│╙──────────────────┘╙────────────────────────────────────────────┘║ | |
*│╔══════════════════╕╔════════════════════════════════════════════╕║ | |
*│║ Дата создания │║ 12.10.2012 │║ | |
*│╙──────────────────┘╙────────────────────────────────────────────┘║ | |
*│╔══════════════════╕╔════════════════════════════════════════════╕║ | |
*│║ ID транспортного │║ MR5K901190 │║ | |
*│║ запроса │║ │║ | |
*│╙──────────────────┘╙────────────────────────────────────────────┘║ | |
*│╔══════════════════╕╔════════════════════════════════════════════╕║ | |
*│║ Постановка │║ Автоматически заполнить финансовые │║ | |
*│║ │║ аналитики у соотв. позиции на основе │║ | |
*│║ │║ данных из договора, указанного в другой │║ | |
*│║ │║ специфической позиции. │║ | |
*│╙──────────────────┘╙────────────────────────────────────────────┘║ | |
*╘══════════════════════════════════════════════════════════════════╝ | |
t_bsegsub[] = zcl_rcm_cobl_cntr_extend=>new( )->fi_setup( | |
tab_bkpf = t_bkpf[] | |
tab_bseg = t_bseg[] | |
tab_bseg_sub = t_bsegsub[] | |
)->fi_substitution( )->tab_bseg_sub. | |
ENDFUNCTION. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
*&---------------------------------------------------------------------* | |
*& Include ZXFMDTU01 | |
*&---------------------------------------------------------------------* | |
*"---------------------------------------------------------------------- | |
*"*"Local interface: | |
*" IMPORTING | |
*" REFERENCE(I_ENVIRONMENT) LIKE TABADRS-ABADRENV | |
*" REFERENCE(I_DERIVATION_DATE) LIKE SY-DATUM | |
*" REFERENCE(I_STEP_ID) TYPE TABADRS-STEPID | |
*" REFERENCE(I_FMDERIVE_SOURCE) LIKE FMDERIVE STRUCTURE FMDERIVE | |
*" EXPORTING | |
*" REFERENCE(E_FMDERIVE_TARGET) LIKE FMDERIVE STRUCTURE FMDERIVE | |
*" REFERENCE(E_EXIT_IS_ACTIVE) | |
*" REFERENCE(E_FAILED) | |
*" EXCEPTIONS | |
*" DERIVATION_FAILED | |
*"---------------------------------------------------------------------- | |
zcl_rcm_cobl_cntr_extend=>new( )->setup( c_fmderive = i_fmderive_source )->validate_user_temp( ). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
*&---------------------------------------------------------------------* | |
*& Include ZXFMDTU02 | |
*&---------------------------------------------------------------------* | |
*"---------------------------------------------------------------------- | |
*"*"Local Interface: | |
*" IMPORTING | |
*" REFERENCE(I_COBL) LIKE COBL STRUCTURE COBL | |
*" REFERENCE(I_COBL_AD) LIKE COBL_AD STRUCTURE COBL_AD | |
*" CHANGING | |
*" REFERENCE(C_FMDERIVE) LIKE FMDERIVE STRUCTURE FMDERIVE | |
*" VALUE(C_FLG_SKIP_BUFFER) TYPE XFELD OPTIONAL | |
*"---------------------------------------------------------------------- | |
* Формирование заказов FI из модуля TR | |
c_fmderive = zcl_rcm_cobl_cntr_extend=>new( )->setup( | |
i_cobl = i_cobl | |
i_cobl_ad = i_cobl_ad | |
c_fmderive = c_fmderive | |
)->derive( )->fmderive. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment