日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

sap abap开发从入门到精通_SAP开发-ABAP数据字典(搜索帮助增强)

發布時間:2023/12/20 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sap abap开发从入门到精通_SAP开发-ABAP数据字典(搜索帮助增强) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

搜索幫助在SAP GUI中應用非常廣泛,在上一篇<ABAP系列-數據字典(搜索幫助)>中,我們介紹了系統標準搜索幫助的創建和使用方法。實際工作中,我們還經常會遇到一些特別的搜索要求,需要在標準搜索幫助的基礎上做增強開發。這一篇我們通過一個簡單的例子來看看如何實現搜索幫助的增強。

先回顧下上一篇數據字典搜索幫助的內容。首先,創建一個系統標準搜索幫助ZEMPNO_ESH1。

創建完成后,賦值給相關對象,比如數據元素ZE_EMPNO。激活生效后,我們看到屏幕上實際的使用效果是這樣的。

現在有個小需求,需要將姓氏和名字合成一個字段<姓名>,該如何實現?可以使用搜索字段的增強來完成。我們新建一個搜索幫助ZEMPNO_ESH2,在之前ZEMPNO_ESH1的基礎上,稍作改造。

步驟1:調整輸出參數,去掉FNAME, LNAME, 新增一個字段NAME1。

步驟2:指定搜索幫助增強,(增強又稱作出口)。系統有一個樣例Function <F4IF_SHLP_EXIT_EXAMPLE> 可供參考,可將樣例拷貝至ZF4IF_SHLP_EXIT_EMPNO, 通過事務碼SE37查看,會看到有個變量CALLCONTROL-STEP,這代表了搜索幫助處理過程中的各個事件,包括SELONE,PRESEL,SELECT,DISP等,每一個事件在程序中都有詳細的備注說明。我們可以在DISP事件中添加一段代碼:

IF callcontrol-step = 'DISP'. * PERFORM AUTHORITY_CHECK TABLES RECORD_TAB SHLP_TAB * CHANGING SHLP CALLCONTROL.DATA ls_record LIKE LINE OF record_tab.DATA lv_name TYPE string.LOOP AT record_tab INTO ls_record.lv_name = ls_record-string+9(10).CONDENSE lv_name.lv_name = | { ls_record-string+9(10) }{ ls_record-string+19(10) } |.CONDENSE lv_name.ls_record-string+74(10) = lv_name.MODIFY record_tab FROM ls_record.ENDLOOP.EXIT.ENDIF.

這段代碼主要是用于合并姓氏和名字,合并后更新回結果列表 recode_tab, 如果初學的朋友們對這些代碼感到陌生,沒關系,可以先大概了解,后面熟悉語法后再回頭來看。

創建完搜索幫助ZEMPNO_ESH2,將其賦給數據元素ZE_EMPNO。我們看看屏幕上實際使用的效果。

可以看到,姓氏和名字已經合并成姓名字段了。增強完成,是不是很簡單呢,各位如果還有疑問,可以加入群討論。

微信號:eckwise

總結

以上是生活随笔為你收集整理的sap abap开发从入门到精通_SAP开发-ABAP数据字典(搜索帮助增强)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。