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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【三代增强干货一枚】外向交货单Delivery (VL01N)Header屏幕增强

發(fā)布時(shí)間:2025/3/20 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【三代增强干货一枚】外向交货单Delivery (VL01N)Header屏幕增强 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
先了解一下內(nèi)向交貨與外向交貨:
1、外向交貨:VL03N;內(nèi)向交貨:VL33N
2、外向與內(nèi)向相對(duì)于庫存來說的,一個(gè)出庫,一個(gè)入庫

場(chǎng)景:我們做一個(gè)外向交貨單Header Level的一個(gè)屏幕增強(qiáng)。 1、SE11 Append Structure 在交貨單抬頭增強(qiáng)需要在Likp中添加新結(jié)構(gòu)
?
增強(qiáng)的結(jié)構(gòu)的字段,我們一般已ZZ / YY開頭。
?

2、SE80創(chuàng)建一個(gè)Function Group函數(shù)組:YDELIVER_HEAD(Deliver Header:customer Fields)
分別創(chuàng)建兩個(gè)Function module:
Y_GET_DATA_DELI_HEAD(get values for screen)
?
source code:
  • ??cs_likp-yyfull? ???= gv_full.
  • ??cs_likp-yypartial??= gv_partial.
  • ??cs_likp-yyveh_no? ?= gv_veh_no.
  • ??cs_likp-yylr_dkt_no = gv_lr_dkt_no.
  • ??cs_likp-yylr_dkt_dt = gv_lr_dkt_dt.
  • ??cs_likp-yydriver? ? = gv_driver.
  • ??cs_likp-yyinote_num = gv_inote_num .
  • ??cs_likp-yyinote_dt??= gv_inote_dt.
  • ??cs_likp-yyinote_cntr = gv_inote_cntr.
  • ??cs_likp-yytrnsp? ?? ?= gv_trnsp.
  • 復(fù)制代碼
    Y_SET_DATA_DELI_ITEM(set values for screen)
    ?
    source code:
  • ??gv_full? ?? ? = is_likp-yyfull??.
  • ??gv_partial? ? = is_likp-yypartial .
  • ??gv_veh_no? ???= is_likp-yyveh_no??.
  • ??gv_lr_dkt_no??= is_likp-yylr_dkt_no.
  • ??gv_lr_dkt_dt??= is_likp-yylr_dkt_dt .
  • ??gv_driver? ???= is_likp-yydriver .
  • ??gv_inote_num??= is_likp-yyinote_num .
  • ??gv_inote_dt? ?= is_likp-yyinote_dt .
  • ??gv_inote_cntr = is_likp-yyinote_cntr.
  • ??gv_trnsp? ?? ?= is_likp-yytrnsp.
  • 復(fù)制代碼
    3、創(chuàng)建一個(gè)Subscreen屏幕9000
    ?
    畫出屏幕增強(qiáng)需要的字段
    ?
    輸入*,點(diǎn)擊Get From Program按鈕,獲取程序中所有的變量,選中想要的即可
    別忘了激活全部元素

    4、查找相應(yīng)的BADI
    查找方法請(qǐng)參考: SAP第三代增強(qiáng)BADI的實(shí)現(xiàn)方法及查找方式
    Delivery Header level:LE_SHP_TAB_CUST_HEAD
    Delivery Item level:LE_SHP_TAB_CUST_ITEM
    這里Additional tab,我們只需要LE_SHP_TAB_CUST_HEAD

    5、SE18 BADI實(shí)施
    ?
    在BADI對(duì)象的方法中實(shí)現(xiàn)我們相應(yīng)的代碼
    ?
    IF_EX_LE_SHP_TAB_CUST_HEAD~ACTIVATE_TAB_PAGE
  • ??METHOD if_ex_le_shp_tab_cust_head~activate_tab_page.
  • ? ? ef_caption = text-000. " screen caption
  • ? ? ef_program = 'SAPLYDELIVER_HEAD'."FunctionPool:sapl + function group name
  • ? ? ef_position = 4. "tab position
  • ? ? ef_dynpro??= '9000'. "screen number
  • ? ? cs_v50agl_cust = 'X'.
  • ??ENDMETHOD.
  • 復(fù)制代碼
    IF_EX_LE_SHP_TAB_CUST_HEAD~TRANSFER_DATA_TO_SUBSCREEN
  • ??METHOD if_ex_le_shp_tab_cust_head~transfer_data_to_subscreen.
  • ? ? CALL FUNCTION 'Y_SET_DATA_DELI_ITEM'
  • ? ?? ?EXPORTING
  • ? ?? ???is_likp = is_likp.
  • ??ENDMETHOD.
  • 復(fù)制代碼
    IF_EX_LE_SHP_TAB_CUST_HEAD~TRANSFER_DATA_FROM_SUBSCREEN
  • ??METHOD if_ex_le_shp_tab_cust_head~transfer_data_from_subscreen.
  • ? ? CALL FUNCTION 'Y_GET_DATA_DELI_HEAD'
  • ? ?? ?IMPORTING
  • ? ?? ???cs_likp = cs_likp.
  • ??ENDMETHOD.
  • 復(fù)制代碼
    激活代碼,激活BADI對(duì)象
    這里的FUNCTION的import/export為什么是CS_LIKP、IS_LIKP?能不能自己隨便定義能? 當(dāng)然不能,我們可以在Interface:IF_EX_LE_SHP_TAB_CUST_HEAD中Parameter中查找我們所需的傳入、傳出參數(shù)
    6、VL02N測(cè)試
    F4查找一個(gè)存在的交貨單
    ?
    這里就能查看我們?cè)鰪?qiáng)的屏幕了
    ?
    輸入數(shù)據(jù),保存,然后再標(biāo)準(zhǔn)表LIKP就能看到去剛才增強(qiáng)字段的值了

    總結(jié)

    以上是生活随笔為你收集整理的【三代增强干货一枚】外向交货单Delivery (VL01N)Header屏幕增强的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。