CRM WEB UI 02搜索跳转到详细界面

结合上一个,在上一个中,创建的是选择链接字段EBELN。

下面来实现点击EBELN跳转到详细界面:

1.创建ZLYTEST03_H组件,做详细界面。

2.创建概览页 DETOV.

3.创建视图集 DETVS.因为只有一个视图,所以选择1行1列,DETAIL。

4.创建DETAIL视图,并配置DETAIL显示列表

5.组件控制器中创建RESULT节点,并与DETAIL的DETAIL节点绑定。

6.运行时中,将DETAIL加到VS视图集,将VS视图集加到OV概览页,将OV概览页加到WINDOW中,并配置概览页。

7.窗口中添加内向插件,FROMSELECT.

8.运行时,ComponentInterface将WINDOW加入,并将InterfaceController中加入上下文节点,RESULT。

至此,DETAIL界面的事情处理完成了,再回到ZLYTEST03中,做些跳转处理。

1.组件控制器中创建RESULT节点,并与WINDOW中的结果节点与之绑定。

2.在结果视图中重定义OP_EBELN。系统创建的是统一走CLICKONLINK事件,统一分配外向插件,所以可以不用管事件。

  method OP_EBELN.
    DATA: LR_WINDOW TYPE REF TO CL_BSP_WD_WINDOW.
    LR_WINDOW = ME->VIEW_MANAGER->GET_WINDOW_CONTROLLER( ).
    LR_WINDOW->CALL_OUTBOUND_PLUG( 'SELECTTODETAIL' ).
  endmethod.

3.窗口中创建外向插件SELECTTODETAIL(此处可使用默认的WCFSELECT插件)

  method OP_SELECTTODETAIL.
    FIRE_OUTBOUND_PLUG( IV_OUTBOUND_PLUG = 'SELECTTODETAIL' ).
  endmethod.

4.运行时中,将上下文节点RESULT加到InterfaceController中。

好了,到这里,查询组件的事情也处理完了,接下来做MAIN组件控制

1.创建ZLYTEST03_M组件

2.添加BOL,并在组件控制器中创建RESULT节点。

3.运行时中,ComponentUsages中,将搜索窗口和详细窗口加进来:

4.创建NavigationalLinks 

SELECTTODETAIL 源,ZLYTEST03 SELECTTODETAIL  目标 ZLYTEST03_H FROMSELECT

5.组件控制器中,重定义WD_USAGE_INITIALIZE

  METHOD WD_USAGE_INITIALIZE.
    DATA: LV_USAGE      TYPE REF TO IF_BSP_WD_COMPONENT_USAGE,
          LR_CUSTOMCTRL TYPE REF TO ZL_ZLYTEST0_BSPWDCOMPONE2_IMPL,"CL_BT111S_O_CUCOSEARCH_IMPL,
          LR_ENTITY     TYPE REF TO CL_CRM_BOL_ENTITY.
    LV_USAGE = ME->COMP_CONTROLLER->GET_COMPONENT_USAGE( IV_USAGE->USAGE_NAME ).

    CASE IV_USAGE->USAGE_NAME.

* Opportunity Search
      WHEN 'SEARCH'.
        CALL METHOD LV_USAGE->BIND_CONTEXT_NODE
          EXPORTING
            IV_CONTROLLER_TYPE  = CL_BSP_WD_CONTROLLER=>CO_TYPE_COMPONENT
            IV_TARGET_NODE_NAME = 'RESULT'
            IV_NODE_2_BIND      = 'RESULT'.
* Opportunity header
      WHEN 'DETAIL'.
        CALL METHOD LV_USAGE->BIND_CONTEXT_NODE
          EXPORTING
            IV_CONTROLLER_TYPE  = CL_BSP_WD_CONTROLLER=>CO_TYPE_COMPONENT
            IV_TARGET_NODE_NAME = 'RESULT'
            IV_NODE_2_BIND      = 'RESULT'.
      WHEN OTHERS.
    ENDCASE.

  ENDMETHOD.

至此,就可以点击EBELN跳转到详细界面了

原文地址:https://www.cnblogs.com/sapSB/p/6340393.html