Sunteți pe pagina 1din 5

Webui component : TPMOE View : TPMOE/TradePromotionOP METHOD detach_static_ovw_views. DATA: lt_static_views ls_viewid TYPE TYPE bsp_dlc_ovw_dyn_views_list_t, bsp_dlc_ovw_stat_view_attach.

IF mt_detached_views IS NOT INITIAL. detach_and_attach_fund_views( ). detach_and_attach_plb_views( ). rt_viewid = mt_detached_views. EXIT. ENDIF. * Get the views listed in the overview page static configuration. lt_static_views = me->get_list_of_static_views( ). SORT lt_static_views BY viewid. READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'TPMOE/ ProductOVViewSet' BINARY SEARCH. IF sy-subrc EQ 0. * detach ProductOV view ls_viewid-viewid = 'TPMOE/ProductOVViewSet'. APPEND ls_viewid TO mt_detached_views. ENDIF. READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'TPMOE/ ProductEOLViewSet' BINARY SEARCH. IF sy-subrc EQ 0. * detach ProductEOL view ls_viewid-viewid = 'TPMOE/ProductEOLViewSet'. APPEND ls_viewid TO mt_detached_views. ENDIF. READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'TPMOE/ ProductCategoryOV' BINARY SEARCH. IF sy-subrc EQ 0. * detach ProductCategoryOV view ls_viewid-viewid = 'TPMOE/ProductCategoryOV'. APPEND ls_viewid TO mt_detached_views. ENDIF. READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'TPMOE/ ProductCategoryEOL' BINARY SEARCH. IF sy-subrc EQ 0. * detach ProductCategoryEOL view ls_viewid-viewid = 'TPMOE/ProductCategoryEOL'. APPEND ls_viewid TO mt_detached_views.

ENDIF. READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'TPMOE/ ProductGroupOV' BINARY SEARCH. IF sy-subrc EQ 0. * detach ProductGroupOV view ls_viewid-viewid = 'TPMOE/ProductGroupOV'. APPEND ls_viewid TO mt_detached_views. ENDIF. READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'TPMOE/ ProductGroupEOL' BINARY SEARCH. IF sy-subrc EQ 0. * detach ProductGroupEOL view ls_viewid-viewid = 'TPMOE/ProductGroupEOL'. APPEND ls_viewid TO mt_detached_views. ENDIF. READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'UCMKT_ PROD_SEG.MKT_PROD_SEG/OverviewWindow' BINARY SEARCH. IF sy-subrc EQ 0. * detach product segment component ls_viewid-viewid = 'UCMKT_PROD_SEG.MKT_PROD_SEG/OverviewWindow'. APPEND ls_viewid TO mt_detached_views. ENDIF. READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'UCMKT_ PROD_SEG.MKT_PROD_SEG/eOVPWindow' BINARY SEARCH. IF sy-subrc EQ 0. * detach product segment component ls_viewid-viewid = 'UCMKT_PROD_SEG.MKT_PROD_SEG/eOVPWindow'. APPEND ls_viewid TO mt_detached_views. ENDIF. READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'MKTPL_ ENROE.MKTPL_ENROE/OverviewWindow' BINARY SEARCH. "#EC NOTEXT IF sy-subrc EQ 0. * detach enrollment assignment block ls_viewid-viewid = 'MKTPL_ENROE.MKTPL_ENROE/OverviewWindow'. "#EC NOTEXT APPEND ls_viewid TO mt_detached_views. ENDIF. READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'MKTPL_ ENROE.MKTPL_ENROE/eOVPWindow' BINARY SEARCH. "#EC NOTEXT IF sy-subrc EQ 0. * detach enrollment assignment block ls_viewid-viewid = 'MKTPL_ENROE.MKTPL_ENROE/eOVPWindow'. "#EC NOTEXT APPEND ls_viewid TO mt_detached_views. ENDIF.

*Causals READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'CUMktp rj_Causal_PCAT.MKTPRJ_CAUSAL/MainWindow' BINARY SEARCH. "#EC NOTEXT IF sy-subrc EQ 0. * detach Causal Product Category assignment block ls_viewid-viewid = 'CUMktprj_Causal_PCAT.MKTPRJ_CAUSAL/MainWindow'. "#EC NOTEXT APPEND ls_viewid TO mt_detached_views. ENDIF. READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'CUMktp rj_Causal_PRD.MKTPRJ_CAUSAL/MainWindow' BINARY SEARCH. "#EC NOTEXT IF sy-subrc EQ 0. * detach Causal Product assignment block ls_viewid-viewid = 'CUMktprj_Causal_PRD.MKTPRJ_CAUSAL/MainWindow'. "#EC N OTEXT APPEND ls_viewid TO mt_detached_views. ENDIF. READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'CUMktp rj_Causal_PRG.MKTPRJ_CAUSAL/MainWindow' BINARY SEARCH. "#EC NOTEXT IF sy-subrc EQ 0. * detach Causal Product Group assignment block ls_viewid-viewid = 'CUMktprj_Causal_PRG.MKTPRJ_CAUSAL/MainWindow'. "#EC N OTEXT APPEND ls_viewid TO mt_detached_views. ENDIF. READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'TPMOE/ ProductSegmentLogOV' BINARY SEARCH. "#EC NOTEXT IF sy-subrc EQ 0. * detach Product Segment Change History assignment block ls_viewid-viewid = 'TPMOE/ProductSegmentLogOV'. "#EC NOTEXT APPEND ls_viewid TO mt_detached_views. ENDIF. READ TABLE lt_static_views TRANSPORTING NO FIELDS WITH KEY viewid = 'TPMOE/ TargetGroupLogOV' BINARY SEARCH. "#EC NOTEXT IF sy-subrc EQ 0. * detach Target Group Change History assignment block ls_viewid-viewid = 'TPMOE/TargetGroupLogOV'. "#EC NOTEXT APPEND ls_viewid TO mt_detached_views. ENDIF. detach_and_attach_fund_views( ). rt_viewid = mt_detached_views. ENDMETHOD.

METHOD reattach_static_ovw_views. DATA: lv_detached_view ls_viewid lv_log_config TYPE TYPE TYPE bsp_dlc_ovw_stat_view_attach, bsp_dlc_ovw_stat_view_attach, string.

detach_and_attach_fund_views( ). detach_and_attach_plb_views( ). DATA: lr_property_access_obj TYPE REF TO if_bol_bo_property_access, lv_enrollment_required TYPE crm_mktpl_enr_enrollment_req. * get 'ENROLLMENT REQUIRED'-flag of trade promotion lr_property_access_obj = me->typed_context->trade->collection_wrapper>get_current( ). CALL METHOD lr_property_access_obj->get_property_as_value EXPORTING iv_attr_name = 'ENROLLMENT_REQ' IMPORTING ev_result = lv_enrollment_required. "#EC NOTEXT * insertion of additional assignment block handling LOOP AT mt_detached_views INTO lv_detached_view. CASE lv_detached_view-viewid. WHEN 'MKTPL_ENROE.MKTPL_ENROE/OverviewWindow' OR 'MKTPL_ENROE.MKTPL_ENR OE/eOVPWindow'. "#EC NOTEXT * reattach enrollment assignment block if 'ENROLLMENT REQUIRED'-flag of trade promotion * is set, ogtherwise don't IF lv_enrollment_required = abap_true. CLEAR ls_viewid. ls_viewid-viewid = lv_detached_view-viewid. "#EC NOTEXT APPEND ls_viewid TO mt_reattached_views. ELSE. DELETE mt_reattached_views WHERE viewid = lv_detached_view-viewid. "#EC NOTEXT ENDIF. ENDCASE. ENDLOOP. * Check if Prseg or Tgrp logs views should be attached. * As soon as the trade has already been in Released Status, and if the trade contains a Prseg or a Tgrp, * then attached the corresponding logs views. lv_log_config = get_tgrp_prseg_config( ). CASE lv_log_config. WHEN co_prseg_config. READ TABLE mt_detached_views INTO lv_detached_view WITH KEY viewid = 'T

PMOE/ProductSegmentLogOV'. IF sy-subrc = 0. APPEND lv_detached_view TO ENDIF. WHEN co_tgrp_config. READ TABLE mt_detached_views PMOE/TargetGroupLogOV'. IF sy-subrc = 0. APPEND lv_detached_view TO ENDIF. WHEN co_pr_tg_config. READ TABLE mt_detached_views PMOE/ProductSegmentLogOV'. IF sy-subrc = 0. APPEND lv_detached_view TO ENDIF.

mt_reattached_views.

INTO lv_detached_view WITH KEY viewid = 'T

mt_reattached_views.

INTO lv_detached_view WITH KEY viewid = 'T

mt_reattached_views.

READ TABLE mt_detached_views INTO lv_detached_view WITH KEY viewid = 'T PMOE/TargetGroupLogOV'. IF sy-subrc = 0. APPEND lv_detached_view TO mt_reattached_views. ENDIF. ENDCASE. rt_return = mt_reattached_views.

ENDMETHOD.

S-ar putea să vă placă și