BP屏幕增强

58 篇文章 1 订阅
22 篇文章 0 订阅

BP屏幕增强

一、项目需求
  1. 需要在业务伙伴角色ZFLV01和下,供应商:文本右边添加一个附加属性页签。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mDBP3IxO-1678846013049)(D:\学习计划笔记\增强\IMAGE\image-20220531152911987.png)]

二、实现方法
  1. 首先需要在表BUT000中找到结构CI_EEW_BUT000和CI_EEW_BUT000_X中添加增强字段。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gkcgLpmf-1678846013050)(D:\学习计划笔记\增强\IMAGE\image-20220531140543823.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RtRzGUmc-1678846013051)(D:\学习计划笔记\增强\IMAGE\image-20220531140603016.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zKaU64Of-1678846013051)(D:\学习计划笔记\增强\IMAGE\image-20220531140618707.png)]

  2. 然后在se11中创建一个对应的结构ZSBP_001,在后续事件中可能会用到

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eG8PnVYB-1678846013051)(D:\学习计划笔记\增强\IMAGE\image-20220531144055739.png)]

  3. 然后创建一个函数组ZFG_BP,首先在包含LZFG_BPTOP中定义全局变量

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-k69TCSaI-1678846013051)(D:\学习计划笔记\增强\IMAGE\image-20220531145042308.png)]

    TABLES: BUT000.
     
    CONSTANTS:
      TABLE_NAME_BUT000 TYPE FSBP_TABLE_NAME VALUE 'BUT000',
      FALSE             TYPE BOOLE-BOOLE VALUE ''.
     
    DATA: GS_BUT000 TYPE BUT000.
    
  4. 创建子屏幕9001,并将字段编辑在屏幕中,如图,其中表单一定要是BUT000-XXX。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vewq1RQ4-1678846013051)(D:\学习计划笔记\增强\IMAGE\image-20220531150927627.png)]

  5. 实现屏幕中的BPO和BPI。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-s7pGgSjy-1678846013052)(D:\学习计划笔记\增强\IMAGE\image-20220531190011512.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Se6WQNnO-1678846013052)(D:\学习计划笔记\增强\IMAGE\image-20220531190147423.png)]

  6. 然后创建事件函数

    • 事件1:ISDAT 读取数据 (所有人应用程序)

      FUNCTION ZFM_BP_01_ISDAT.
      *"----------------------------------------------------------------------
      *"*"本地接口:
      *"----------------------------------------------------------------------
        DATA: LS_BP_001 TYPE ZSBP_001.
       
        CALL FUNCTION 'BUP_BUPA_BUT000_GET'
          IMPORTING
            E_BUT000 = GS_BUT000.
       
        MOVE-CORRESPONDING GS_BUT000 TO LS_BP_001.
        MOVE-CORRESPONDING LS_BP_001 TO BUT000.
       
      ENDFUNCTION.
      
    • 事件2:DSAVB 收集数据(所有人应用程序)

      FUNCTION ZFM_BP_01_DSAVE.
      *"----------------------------------------------------------------------
      *"*"本地接口:
      *"----------------------------------------------------------------------
        DATA: LS_BP_001 TYPE ZSBP_001.
       
        MOVE-CORRESPONDING BUT000 TO LS_BP_001.
        MOVE-CORRESPONDING GS_BUT000 TO BUT000.
        MOVE-CORRESPONDING LS_BP_001 TO BUT000.
        CALL FUNCTION 'BUP_BUPA_BUT000_COLLECT'
          EXPORTING
            I_SUBNAME = 'ZSBP_001'
            I_BUT000  = BUT000
      *     I_ALL_INTERVALS       = ' '
          .
      ENDFUNCTION.
      
      
    • 事件3:XCHNG 检查数据是否已更改

      FUNCTION ZFM_BP_01_XCHNG.
      *"----------------------------------------------------------------------
      *"*"本地接口:
      *"  EXPORTING
      *"     REFERENCE(E_XCHNG) TYPE  BOOLE_D
      *" E_XCHNG	TYPE	BOOLE_D	域BOOLE的数据要素: 真 (='X'), 假 (=' ')
      *"----------------------------------------------------------------------
       
        DATA: LS_BP_001_NEW TYPE ZSBP_001.
        DATA: LS_BP_001_OLD TYPE ZSBP_001.
       
        MOVE-CORRESPONDING GS_BUT000 TO LS_BP_001_OLD.
        MOVE-CORRESPONDING BUT000    TO LS_BP_001_NEW.
        IF LS_BP_001_NEW NE LS_BP_001_OLD.
          E_XCHNG = 'X'.
        ENDIF.
       
       
      ENDFUNCTION.
      
      
    • 创建PBO函数

      FUNCTION ZFM_BP_BUT000_01_PBO.
      *"----------------------------------------------------------------------
      *"*"本地接口:
      *"----------------------------------------------------------------------
        DATA:LT_BUT000   TYPE TABLE OF BUT000.
       
      * step 1: request data from xo for dynpro structure
        CVI_BDT_ADAPTER=>DATA_PBO(
          EXPORTING
            I_TABLE_NAME = TABLE_NAME_BUT000
          IMPORTING
            E_DATA_TABLE = LT_BUT000[]
        ).
       
        IF LT_BUT000[] IS INITIAL.
          CLEAR GS_BUT000.
        ELSE.
          READ TABLE LT_BUT000 INTO GS_BUT000 INDEX 1.
        ENDIF.
      ENDFUNCTION.
      
      
    • 创建PAI函数

      FUNCTION ZFM_BP_BUT000_01_PAI.
      *"----------------------------------------------------------------------
      *"*"本地接口:
      *"----------------------------------------------------------------------
       
        DATA:LT_BUT000         TYPE TABLE OF BUT000.
        FIELD-SYMBOLS:<BUT000>          LIKE LINE OF LT_BUT000.
       
        DATA: LS_BP_001 TYPE ZSBP_001.
       
        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.
          MOVE-CORRESPONDING GS_BUT000 TO LS_BP_001.
          MOVE-CORRESPONDING LS_BP_001 TO <BUT000>.
        ENDIF.
       
        CVI_BDT_ADAPTER=>DATA_PAI(
          I_TABLE_NAME = TABLE_NAME_BUT000
          I_DATA_NEW   = LT_BUT000[]
          I_VALIDATE   = FALSE
        ).
      ENDFUNCTION.
      
      
三、BP配置
  1. BDT事务码:BUPT

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kaaIiJKN-1678846013052)(D:\学习计划笔记\增强\IMAGE\image-20220531153713599.png)]

  2. 首先创建应用程序,双击BUS1进入后,建立新条目。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-G0fUI6Vi-1678846013052)(D:\学习计划笔记\增强\IMAGE\image-20220531153827414.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-11QZFDQC-1678846013052)(D:\学习计划笔记\增强\IMAGE\image-20220531153907626.png)]

  3. 然后创建数据集,双击BUS23,进入后新建条目

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-I9vKiuyq-1678846013053)(D:\学习计划笔记\增强\IMAGE\image-20220531154214664.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LC3LY2nR-1678846013053)(D:\学习计划笔记\增强\IMAGE\image-20220531154323420.png)]

  4. 创建字段组,双击BUS2后,建立新条目。然后建立字段组和字段

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WEzWICtG-1678846013053)(D:\学习计划笔记\增强\IMAGE\image-20220531154450859.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OmhE8DZA-1678846013053)(D:\学习计划笔记\增强\IMAGE\image-20220531154643345.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5hsoPIOh-1678846013053)(D:\学习计划笔记\增强\IMAGE\image-20220531155312829.png)]

  5. 创建视图,双击BUS3后,建立新条目。子屏幕名可以通过执行子屏幕获得。然后将前面创建的字段组分配给视图。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UptbnVtx-1678846013054)(D:\学习计划笔记\增强\IMAGE\image-20220531160143821.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nFfyFX2r-1678846013054)(D:\学习计划笔记\增强\IMAGE\image-20220531160500392.png)]

  6. 创建部分,双击BUS4后,建立新条目。然后建视图分配给部分。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eGp8Ury2-1678846013054)(D:\学习计划笔记\增强\IMAGE\image-20220531160642259.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-z4M36gEj-1678846013054)(D:\学习计划笔记\增强\IMAGE\image-20220531161422779.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oFCGUKEK-1678846013054)(D:\学习计划笔记\增强\IMAGE\image-20220531161110001.png)]

  7. 创建屏幕,双击BUS5后,建立新条目。然后将部分分配给屏幕。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-A8lcsTK1-1678846013054)(D:\学习计划笔记\增强\IMAGE\image-20220531161755138.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-g9ne84Ni-1678846013055)(D:\学习计划笔记\增强\IMAGE\image-20220531161602861.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hXTGcFgd-1678846013055)(D:\学习计划笔记\增强\IMAGE\image-20220531161727623.png)]

  8. 创建屏幕顺序,双击BUS6后,建立创建屏幕顺序。然后将屏幕分配给屏幕顺序,还需要将自定义屏幕分配给标准屏幕顺序 BUP001,创建顺序种类,将屏幕顺序分配给屏幕顺序种类。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tUua9jkB-1678846013055)(D:\学习计划笔记\增强\IMAGE\image-20220531162015272.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bKgoUopt-1678846013055)(D:\学习计划笔记\增强\IMAGE\image-20220531162232902.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pINQ13Mb-1678846013055)(D:\学习计划笔记\增强\IMAGE\image-20220531162322423.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Xi2d9iPn-1678846013056)(D:\学习计划笔记\增强\IMAGE\image-20220531162633008.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tPBW6fDh-1678846013056)(D:\学习计划笔记\增强\IMAGE\image-20220531162738970.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XthrouLJ-1678846013056)(D:\学习计划笔记\增强\IMAGE\image-20220531162820358.png)]

  9. 创建业务伙伴视图,双击BUSD,然后新建业务伙伴视图,然后分配数据集,然后分配应用程序

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c5PB4ztJ-1678846013056)(D:\学习计划笔记\增强\IMAGE\image-20220531165120830.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-n3aR1Xla-1678846013056)(D:\学习计划笔记\增强\IMAGE\image-20220531165309766.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ijilN13X-1678846013056)(D:\学习计划笔记\增强\IMAGE\image-20220531165357029.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nkOzovTN-1678846013057)(D:\学习计划笔记\增强\IMAGE\image-20220531165439725.png)]

  10. 分配事件函数,双击BUS7,创建事件,然后分配功能模块 ,并且将ISDAT和XCHNG都分配函数[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-h1luZJya-1678846013057)(D:\学习计划笔记\增强\IMAGE\image-20220531165839782.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XBC5zpyK-1678846013057)(D:\学习计划笔记\增强\IMAGE\image-20220531170529921.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Rrvi7VqW-1678846013057)(D:\学习计划笔记\增强\IMAGE\image-20220531170438126.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RVb5ii8g-1678846013057)(D:\学习计划笔记\增强\IMAGE\image-20220531171211667.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uvknUwVF-1678846013057)(D:\学习计划笔记\增强\IMAGE\image-20220531171411418.png)]

  11. 将视图添加到对应的伙伴角色上

    • SPRO->跨应用组件->SAP业务伙伴->业务合作伙伴->基本设置->商业伙伴角色->定义业务伙伴角色

    • 定义角色:

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-avCRNwKg-1678846013058)(D:\学习计划笔记\增强\IMAGE\image-20220531174224568.png)]

    • 找到对应的角色分组,将新建的BP角色分配给角色分组

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GcwMA5yc-1678846013058)(D:\学习计划笔记\增强\IMAGE\image-20220531174448754.png)]

  12. 效果:TJX1,TJ00000011

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6wFG09kZ-1678846013058)(D:\学习计划笔记\问题解决办法\IMAGE\image-20220601125748941.png)]

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值