【轉載】BP增強 新增自定義螢幕 BUT000 (中文)
參考文章:https://blog.csdn.net/guangcong2009/article/details/80569877
1、 BUT000表增強CI_EEW_BUT000,CI_EEW_BUT000_X
2、 建立增強結構ZSBUT00_CUST,該結構在DSAVB事件中,會被使用到
3、 建立函式組ZSD_BP,增強相關的程式必須全部放在該程式中,包括函式、螢幕、變數
4、 在ZSD_BP的include top中定義變數如下:
5、 建立螢幕9001,螢幕欄位從表BUT000直接F6生成,命名格式必須為BUT000-XXXXX
6、9001螢幕的PBO、PAI如下
6、 螢幕增強配置,進入TCODE: BUPT
7、 建立應用程式
8、 建立資料集
9、 建立欄位組
10、 建立檢視
11、 建立PBO函式無輸入輸出引數
function zsd_but000_pbo.
*"----------------------------------------------------------------------
*"*"本地介面:
*"-------------------------------------------------------------------
data:
lt_but000 type table of but000.
* step 1: request data from xo for dynpro structure
"if gs_but000 is initial.
cvi_bdt_adapter=>data_pbo(
exporting
i_table_name = table_name_but000
importing
e_data_table = lt_but000[]
).
"endif.
if lt_but000[] is initial.
clear gs_but000.
else.
read table lt_but000 into gs_but000 index 1.
endif.
endfunction.
12、 建立PAI函式,無輸入輸出引數
function zsd_but000_pai.
*"----------------------------------------------------------------------
*"*"本地介面:
*"----------------------------------------------------------------------
data:
lt_but000 type table of but000.
field-symbols:
<but000> like line of lt_but000.
check cvi_bdt_adapter=>is_direct_input_active( ) = false.
* step 1: update xo memory from dypro structure
cvi_bdt_adapter=>get_current_bp_data(
exporting
i_table_name = table_name_but000
importing
e_data_table = lt_but000[]
).
if lt_but000[] is initial.
if gs_but000 is not initial.
gs_but000-partner = cvi_bdt_adapter=>get_current_bp( ).
append gs_but000 to lt_but000.
endif.
else.
read table lt_but000 assigning <but000> index 1.
<but000>-zbpmid = gs_but000-zbpmid.
assign gs_but000 to <but000>.
endif.
cvi_bdt_adapter=>data_pai(
i_table_name = table_name_but000
i_data_new = lt_but000[]
i_validate = false
).
endfunction.
13、 將程式名、螢幕號、PBO、PAI函式分配給檢視
14、 建立部分
15、 給部分分配檢視
16、 建立螢幕
17、 螢幕->部分
18、 建立螢幕順序
19、 業務夥伴檢視
20、定義事件
---------------------
作者:一毛
來源:CSDN
原文:https://blog.csdn.net/guangcong2009/article/details/80569877
版權宣告:本文為博主原創文章,轉載請附上博文連結!