FPM四:用OVP做查询跳转到明细

时间:2023-03-10 06:47:37
FPM四:用OVP做查询跳转到明细

前面做了查询的UIBB配置,在这边可以直接复用,查询的feeder class也就自动复用了。

1.给查询的feeder class添加接口,继续继承form的接口。

FPM四:用OVP做查询跳转到明细

2.挨个实现每个方法,即使是用不到的也点进去激活。

  method IF_FPM_GUIBB_FORM~GET_DATA.
CS_DATA = gw_table.
endmethod.
  method IF_FPM_GUIBB_FORM~GET_DEFINITION.
DATA:gt_data TYPE TABLE OF zhsb_order_index. eo_field_catalog ?= cl_abap_tabledescr=>describe_by_data( gw_table ).
mo_catalog = eo_field_catalog.FPM四:用OVP做查询跳转到明细
"action 参数是控制UIBB参数映射的EVENT定义。这里可以定义回车事件,下拉事件等
endmethod.

3.给search的事件处理方法中添加跳转的事件(给选择单号的事件):

  METHOD if_fpm_guibb_search~process_event.
DATA:lt_where TYPE rsds_where_tab.
DATA:lt_order TYPE TABLE OF zhsb_order_index,
ls_order TYPE zhsb_order_index.
DATA:lc_para TYPE REF TO cl_fpm_parameter.
DATA:ls_value TYPE string. DATA:ls_result TYPE zhsb_order_index. IF io_event->mv_event_id = if_fpm_guibb_search=>fpm_execute_search. TRY .
CALL METHOD cl_fpm_guibb_search_conversion=>to_abap_select_where_tab
EXPORTING
it_fpm_search_criteria = it_fpm_search_criteria
iv_table_name = 'ZHSB_ORDER_INDEX'
io_field_catalog = mo_catalog
IMPORTING
et_abap_select_table = lt_where.
CATCH cx_fpmgb.
ENDTRY. SELECT * FROM zhsb_order_index INTO TABLE lt_order UP TO iv_max_num_results ROWS WHERE (lt_where).
IF sy-subrc = .
LOOP AT lt_order INTO ls_order.
MOVE-CORRESPONDING ls_order TO ls_result.
APPEND ls_result TO gt_table.
ENDLOOP.
ev_result = 'OK'.
ENDIF. ELSEIF io_event->mv_event_id = 'FPM_RESULT_SEL'.
DATA : lo_event TYPE REF TO cl_fpm_event,
lo_fpm TYPE REF TO if_fpm. READ TABLE gt_table INTO gw_table INDEX .
lo_event ?= cl_fpm_event=>create_by_id( 'FPM_CHANGE_CONTENT_AREA' ). lo_event->mo_event_data->set_value(
EXPORTING
iv_key = 'TARGET_CONTENT_AREA'
iv_value = 'PAGE_2'
).
lo_fpm ?= cl_fpm=>get_instance( ). lo_fpm->raise_event( lo_event ).
ENDIF.
ENDMETHOD.

4.打开FPM_WB.新建empty application。

FPM四:用OVP做查询跳转到明细

选择包,保存。

5.点击,编辑配置

FPM四:用OVP做查询跳转到明细

进入到概览页配置界面:

FPM四:用OVP做查询跳转到明细

修改第一页描述,并添加第二页。

FPM四:用OVP做查询跳转到明细

6.给page 1分配UIBB配置类型Search.

FPM四:用OVP做查询跳转到明细

FPM四:用OVP做查询跳转到明细

配置编号选择前一篇中的配置编号,复用。

FPM四:用OVP做查询跳转到明细

选择UIBB,点击配置。

FPM四:用OVP做查询跳转到明细

修改结果中的单号字段,改为link to action。保存并返回.

这时候可以点击运行,试看一下。

FPM四:用OVP做查询跳转到明细

很好,这第一页没问题了,开始加第二页。

7.配置第二页:

FPM四:用OVP做查询跳转到明细

添加FORM组件

FPM四:用OVP做查询跳转到明细

输入配置号,点击UIBB配置。

点击OK.

FPM四:用OVP做查询跳转到明细

填写Feeder class.

FPM四:用OVP做查询跳转到明细

FPM四:用OVP做查询跳转到明细

保存并返回。

8.给PAGE2添加按钮,并指向page 1.

FPM四:用OVP做查询跳转到明细

保存,运行。

FPM四:用OVP做查询跳转到明细

et_action_definition