MM BP供應(yīng)商采購(gòu)視圖屏幕增強(qiáng)

目的:
BP創(chuàng)建供應(yīng)商主數(shù)據(jù)的時(shí)候,需要增強(qiáng)幾個(gè)字段到采購(gòu)視圖毫蚓,在采購(gòu)下添加新的分頁(yè)簽
實(shí)現(xiàn)步驟:
1 . 增強(qiáng)字段到INCL_EEW_LFM1 & INCL_EEW_LFM1_X
2.se80 創(chuàng)建函數(shù)組 和子屏幕
3.保存數(shù)據(jù)

DATA:lt_lfm1 TYPE TABLE OF lfm1.
  DATA:ls_lfm1 TYPE lfm1.

  REFRESH lt_lfm1.
  lfm1-ekorg = cvi_bdt_adapter=>get_current_purchasing_org( ).

  IF lfm1-ekorg IS NOT INITIAL.

    REFRESH lt_lfm1.
    cvi_bdt_adapter=>data_pbo(
       EXPORTING
         i_table_name = table_name_lfm1
       IMPORTING
         e_data_table = lt_lfm1
     ).

    SORT lt_lfm1 BY lifnr ekorg.
    DELETE ADJACENT DUPLICATES FROM lt_lfm1 COMPARING lifnr ekorg.
    DELETE lt_lfm1 WHERE ekorg <> lfm1-ekorg.

    CALL FUNCTION 'CVIV_BUPA_LFM1_COLLECT'
      EXPORTING
        i_subname = 'ZSMMSUPPLIER'
      TABLES
        t_lfm1    = lt_lfm1.

    FREE:lt_lfm1.
  ENDIF.

4.獲取數(shù)據(jù)

DATA lv_data TYPE bussdi3-data.

  CALL FUNCTION 'CVIV_BUPA_LFM1_GET'
    IMPORTING
      e_lfm1 = gs_lfm1
      e_data = lv_data.

  lfm1-zlxrcz  = gs_lfm1-zlxrcz .
  lfm1-zlxryx  = gs_lfm1-zlxryx .
  lfm1-zlxrdz  = gs_lfm1-zlxrdz .
  lfm1-zbeizhu = gs_lfm1-zbeizhu.

5.標(biāo)記修改

  IF gs_lfm1-zlxrcz NE lfm1-zlxrcz
  OR gs_lfm1-zlxryx NE lfm1-zlxryx
  OR gs_lfm1-zlxrdz NE lfm1-zlxrdz
  OR gs_lfm1-zbeizhu NE lfm1-zbeizhu
  OR gs_lfm1-ekorg NE lfm1-ekorg.
    e_xchng = 'X'.
  ENDIF.

6.pbo 事件

DATA:
    lt_lfm1           TYPE TABLE OF lfm1,
    lv_purchasing_org TYPE ekorg,
    lv_lifnr          TYPE lfm1-lifnr.

* step 1: request data from xo for dynpro structure
  lv_lifnr = cvi_bdt_adapter=>get_current_bp( ).
  lv_purchasing_org = cvi_bdt_adapter=>get_current_purchasing_org( ).
  IF lv_purchasing_org IS INITIAL .
    CLEAR gs_lfm1.
  ELSE.

    REFRESH lt_lfm1[].
    cvi_bdt_adapter=>data_pbo(
       EXPORTING
         i_table_name = table_name_lfm1
       IMPORTING
         e_data_table = lt_lfm1[]
     ).

    SORT lt_lfm1[] BY lifnr ekorg.
    DELETE ADJACENT DUPLICATES FROM lt_lfm1[] COMPARING lifnr ekorg.

    READ TABLE lt_lfm1 INTO gs_lfm1
      WITH KEY ekorg = lv_purchasing_org.
    IF sy-subrc <> 0.
      CLEAR gs_lfm1.
    ENDIF.
    lfm1-zlxrcz     = gs_lfm1-zlxrcz .
    lfm1-zlxryx     = gs_lfm1-zlxryx .
    lfm1-zlxrdz     = gs_lfm1-zlxrdz .
    lfm1-zbeizhu    = gs_lfm1-zbeizhu.

  ENDIF.
 

7.pai事件

DATA:
    lt_lfm1         TYPE TABLE OF lfm1.
  FIELD-SYMBOLS:
    <lfm1>          LIKE LINE OF lt_lfm1.

  DATA: lv_purchasing_org TYPE ekorg,
        lv_lifnr          TYPE lfm1-lifnr.

  lv_lifnr = cvi_bdt_adapter=>get_current_bp( ).
  lv_purchasing_org = cvi_bdt_adapter=>get_current_purchasing_org( ).
  CHECK cvi_bdt_adapter=>is_direct_input_active( ) = abap_false.
* step 1: update xo memory from dypro structure
  REFRESH lt_lfm1[].
  cvi_bdt_adapter=>get_current_bp_data(
    EXPORTING
      i_table_name = table_name_lfm1
    IMPORTING
      e_data_table = lt_lfm1[]
  ).
  IF lt_lfm1[] IS INITIAL.
    IF gs_lfm1 IS NOT INITIAL.
      gs_lfm1-lifnr = lv_lifnr.
      gs_lfm1-ekorg = lv_purchasing_org.
      APPEND gs_lfm1 TO lt_lfm1.
    ENDIF.
  ELSE.
    READ TABLE lt_lfm1 ASSIGNING <lfm1> WITH KEY lifnr = lv_lifnr ekorg = lv_purchasing_org.
    IF sy-subrc = 0.
      <lfm1>-zlxrcz  = lfm1-zlxrcz .
      <lfm1>-zlxryx  = lfm1-zlxryx .
      <lfm1>-zlxrdz  = lfm1-zlxrdz .
      <lfm1>-zbeizhu = lfm1-zbeizhu.
    ENDIF.
  ENDIF.

  cvi_bdt_adapter=>data_pai(
    i_table_name = table_name_lfm1
    i_data_new   = lt_lfm1[]
    i_validate   = abap_false
  ).

8.配置子屏幕
在開(kāi)始配置之前可以通過(guò)TCODE:BUPT 打開(kāi)區(qū)域菜單
BUS1 創(chuàng)建應(yīng)用
BUS23 創(chuàng)建DATASET
BUS2 創(chuàng)建字段組
給字段組綁定增強(qiáng)字段
BUS3創(chuàng)建視圖 填上上述自定義程序名稱 此處程序名為SAPL+函數(shù)組名稱
分配字段組到視圖
BUS4 創(chuàng)建section 部分
分配視圖到部分
BUS5 創(chuàng)建視圖
分配部分到屏幕
BUS6創(chuàng)建屏幕順序
定義屏幕順序種類
將屏幕順序綁定到順序種類 這一步驟決定了頁(yè)簽的顯示位置
在順序里加ZLIF屏幕
BUSD 創(chuàng)建BP視圖
在該角色下添加數(shù)據(jù)集等信息
FLCU00/FLCU01 為客戶
FLVN00/FLVN01為供應(yīng)商,此處為供應(yīng)商
9.定義業(yè)務(wù)伙伴角色
分別配置角色
區(qū)分類型:2 可能的業(yè)務(wù)伙伴類型:組織(對(duì)應(yīng)BP上的按鈕)

  1. BUS7 維護(hù)事件
    常用的事件說(shuō)明:
    ISSTA 初始化
    ISDAT 由主應(yīng)用從數(shù)據(jù)庫(kù)讀取數(shù)據(jù)
    ISDST 分配數(shù)據(jù)到其他使用該數(shù)據(jù)的應(yīng)用中
    DTITL 更改屏幕標(biāo)題
    DCUAD 決定菜單
    DCUAC 更改菜單中功能嗎的狀態(tài)等
    AUTH1 權(quán)限控制
    FCODE 出發(fā)自定義的功能碼后的操作
    XCHNG 檢查屏幕輸入字段是否有改變
    DSAVB 收集本應(yīng)用的數(shù)據(jù)
    DCHCK 數(shù)據(jù)有效性檢查
    DTAKE 數(shù)據(jù)匯總后保存到內(nèi)存
    DSAVC 完成待保存入數(shù)據(jù)庫(kù)的數(shù)據(jù)
    DSAVE 數(shù)據(jù)保存庫(kù)保存操作
    DLVE1 初始化本地內(nèi)存
    DLVE2 初始化全局內(nèi)存
    11.在該項(xiàng)目中主要使用到DSAVB昔善,ISDAT,XCHNG
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末元潘,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子君仆,更是在濱河造成了極大的恐慌翩概,老刑警劉巖牲距,帶你破解...
    沈念sama閱讀 219,490評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異钥庇,居然都是意外死亡牍鞠,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門评姨,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)难述,“玉大人,你說(shuō)我怎么就攤上這事吐句⌒埠螅” “怎么了?”我有些...
    開(kāi)封第一講書人閱讀 165,830評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵蕴侧,是天一觀的道長(zhǎng)择同。 經(jīng)常有香客問(wèn)我,道長(zhǎng)净宵,這世上最難降的妖魔是什么敲才? 我笑而不...
    開(kāi)封第一講書人閱讀 58,957評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮择葡,結(jié)果婚禮上紧武,老公的妹妹穿的比我還像新娘。我一直安慰自己敏储,他們只是感情好阻星,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評(píng)論 6 393
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著已添,像睡著了一般妥箕。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上更舞,一...
    開(kāi)封第一講書人閱讀 51,754評(píng)論 1 307
  • 那天畦幢,我揣著相機(jī)與錄音,去河邊找鬼缆蝉。 笑死宇葱,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的刊头。 我是一名探鬼主播黍瞧,決...
    沈念sama閱讀 40,464評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼原杂!你這毒婦竟也來(lái)了印颤?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤污尉,失蹤者是張志新(化名)和其女友劉穎膀哲,沒(méi)想到半個(gè)月后往产,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,847評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡某宪,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評(píng)論 3 338
  • 正文 我和宋清朗相戀三年仿村,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片兴喂。...
    茶點(diǎn)故事閱讀 40,137評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蔼囊,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出衣迷,到底是詐尸還是另有隱情畏鼓,我是刑警寧澤,帶...
    沈念sama閱讀 35,819評(píng)論 5 346
  • 正文 年R本政府宣布壶谒,位于F島的核電站云矫,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏汗菜。R本人自食惡果不足惜让禀,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望陨界。 院中可真熱鬧巡揍,春花似錦、人聲如沸菌瘪。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 32,023評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)俏扩。三九已至糜工,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間录淡,已是汗流浹背啤斗。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,149評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留赁咙,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,409評(píng)論 3 373
  • 正文 我出身青樓免钻,卻偏偏與公主長(zhǎng)得像彼水,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子极舔,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評(píng)論 2 355