- 看了一圈,发现网上BUPT增强的很少,有的也是做一个字段的页签的增强,我自己花时间研究了一下,在BP增加新的interface 界面按钮。

BP页签增强部分就不写了,大家看链接吧 加上如何做出新的interface 界面吧。感谢各位大佬的支持哈。

英文

https://www.abaplog.com/Icerik/50/add-new-tab-to-bp

中文

https://blog.csdn.net/guangcong2009/article/details/80569877

1.关于BUPT增强相关部分说明

  1. 实施BUPT增强时,需要用的的菜单事务码是(BUPT),菜单中使用的事务码如下

  1. 应用程序-我的理解是你实施的所有增强下程序调用的连接。在一次实施中只创建一个应用程序。(此例中创建ZBP1)
  2. 数据集-BP界面上数据的集合-在创建是一般一个屏幕(页签)创建一个。(此例中为Z0001,Z0002,Z0003)
  3. 字段组-包含界面上字段的组-可以包含多个字段,且在BP配置中字段是否必输是按照字段组来设置的。

  1. 视图(重要):包含字段组的界面部分,也是BP界面上的一个界面,一个视图对应一个BP界面上的SCREEN。

一般界面如下图勾选,

子画面中:程序Function Group,同时包含了screen 9001

注意:BP中对于一个view来说,它的PBO 和 PAI使用下图 FM函数

同时一个view 包含多个 field group

  1. 部分section-section相当于BP界面上的块,一个section可以包含多个view,section无功能。
  2. 屏幕screen-相当于BP上的页签,
  3. 屏幕顺序screen sequence-BP界面页签的顺序
  4. 屏幕顺序类型screen sequence type-一般创建是只包含一个屏幕顺序,多个的没有做过
  5. 新界面-抬头标识-new interface:BP界面菜单栏上一般数据,销售数据等按钮

如下图所示view,section,screen,interface

  1. 对于增强的实施,如有需要增强的结构为

需要增强的表

需要增强的字段

对应创建一个结构来提供DSAVB事件使用

BUT000

INCL_EEW_BUT000-CI_EEW_BUT000

INCL_EEW_BUT000_X-CI_EEW_BUT000_X

ZOTC_BUT000_S001

KNA1

INCL_EEW_KNA1

INCL_EEW_KNA1_X

ZOTC_KNA1_S001

KNB1

INCL_EEW_KNB1

INCL_EEW_KNB1_X

ZOTC_KNB1_S001

KNVV

INCL_EEW_KNVV

INCL_EEW_KNA1_X

ZOTC_KNVV_S001

供应商同理

2.实施BUPT增强例子

BP增强具体步骤见文章顶部链接哈。

  1. 如是只增强如文档所需要的增强,则只需要创建到屏幕(SCREEN)即可(后面的屏幕顺序和屏幕顺序类别并不需要创建),只需要将客制的屏幕加入到标准的屏幕顺序即可,并不需要创建屏幕顺序
  2. 同时在维护业务伙伴(TCODE:BUSD)时,只需要维护数据集和调用应用程序
  3. 在创建DSAVB事件的时候,如是最KNVV或者KNB1增强时,需要判断(销售区域-销售组织,分销渠道,产品组 或 公司代码)是否存在,否则会重复获得空值,保存时报错-KNVV_NEW 错误 、 KNB1_NEW错误

  1. 同时,需要创建DLVE1事件(TCODE BUS7)对应的FM:如Z***_CLEAR_EVENT_DLVE1,用来清除内存,防止在BP界面直接新建客户时,将上一个客户填的自定义数据带过去。
  2. 同时可以创建Z***_KNVV_EVENT_FM0D2,填入字段组模处,用来控制字段组的是否可输入,参考FM : CVIC_BUPA_EVENT_FMOD2_SALES

3.进一步增强

若是要实现如下的增强:

1.需要创建屏幕顺序sequence和屏幕顺序类别sequence type。

同时将自己创建的screen(ZTAB1 ZTAB2 ZTAB3)分配给屏幕顺序:ZSEQU

然后将屏幕顺序分配给自己创建的屏幕顺序类别: ZSEQU

目前实现单一屏幕,所以一个屏幕顺序类别包含一个屏幕顺序即可。

2.在新界面(TCODE:BUS_HDRID)中增加一列

3.同时在SM30(V_TBZJ1C)中去激活BP的对话框顺序

4.在业务伙伴视图 BUSD中维护:屏幕顺序 和 子标题ID

2019.05.30 S4 BUPT BP 客户增强说明的更多相关文章

  1. SAP S4/HANA BP屏幕增强添加自定义字段(BDT方式)

    喜欢博主的读者也许会意识到,这是本博客中第一篇有关屏幕增强的文章.之前没有总结过相关的东西,除了因为相关经验有限之外,我个人也是不喜欢所谓dynpro编程的,它有许多“潜规则”一样的东西要记住,想要运 ...

  2. HANA- SAP S4/HANA BP屏幕增强添加自定义字段(BDT方式)

    转载:https://www.cnblogs.com/hhelibeb/p/7412792.html 这里我们可以使用的技术是Business Data Toolset(以下简称BDT). 以下是网络 ...

  3. 2019.3.28&2019.3.30考试

    2019.3.28 : 肥肠爆芡,因为这场考试的题太屑了,所以我咕咕了 Upd on 2019.3.30 压进来一篇(因为都没啥意义) 2019.3.30 : 全机房读错题+没有大样例=T2全体爆炸 ...

  4. Heartbeat took longer than "00:00:01" at "09/06/2019 05:08:08 +00:00".

    .netcore在k8s+docker+linux,部署后,偶尔会报这样的警告 Warn:Microsoft.AspNetCore.Server.KestrelHeartbeat took longe ...

  5. Alpha冲刺(7/10)——2019.4.30

    所属课程 软件工程1916|W(福州大学) 作业要求 Alpha冲刺(7/10)--2019.4.30 团队名称 待就业六人组 1.团队信息 团队名称:待就业六人组 团队描述:同舟共济扬帆起,乘风破浪 ...

  6. 【MM系列】SAP 客户增强

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP 客户增强   前言部分 大家 ...

  7. WCF服务调用超时错误:套接字连接已中止。这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的。本地套接字超时是“00:05:30”(已解决)

    问题: 线上正式环境调用WCF服务正常,但是每次使用本地测试环境调用WCF服务时长就是出现:套接字连接已中止.这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的.本地套接字超 ...

  8. Checklist: 2019 05.01 ~ 06.30

    Golang Lessons learned porting 50k loc from Java to Go Five things that make Go fast Simple techniqu ...

  9. 2019.03.30 图解HTTP

    文章来源<图解HTTP> 第一章 了解Web及网络基础 你有想过当你在浏览器(web browser)的地址栏上输入URL时,Web页面是如何实现的吗? 嗯,好像也没想过 web使用一种名 ...

随机推荐

  1. PAT Basic 1030 完美数列 (25 分)

    给定一个正整数数列,和正整数 p,设这个数列中的最大值是 M,最小值是 m,如果 M≤mp,则称这个数列是完美数列. 现在给定参数 p 和一些正整数,请你从中选择尽可能多的数构成一个完美数列. 输入格 ...

  2. cubase 的FX轨道使用方法

    FX为辅助通道!

  3. Vim——替换命令

     原创声明:本文系博主原创文章,转载或引用请注明出处. 1. 文本替换 #替换每一行的第一个a :%s/a/b/ #全部替换 :%s/a/b/g #替换/时需要转义"\/" 2. ...

  4. Rails 用Webpack安装Bootstrap(附录webpack使用)

    Rails6将默认使用webpack代替asset: 本文讲述如何自己配置. 参考: https://getbootstrap.com/docs/4.1/getting-started/webpack ...

  5. 浅析Service Worker

    一.service worker是什么? 平常浏览器窗口中跑的页面运行的是主JavaScript线程,DOM和window全局变量都是可以访问的. Service Worker是走的另外的线程,可以理 ...

  6. RSA加密解密,Base64String

    ///<remarks> /// DotNet.Utilities.RSACryption cryption = new DotNet.Utilities.RSACryption(); / ...

  7. jpa多对一映射

    1.插入 建一个部门类Dept和一个员工类Emp: Emp对Dept是多对一的关系:因为一个部门有多个员工,而一个员工只有一个部门:   Emp类中添加一个Dept的属性: @ManyToOne注解表 ...

  8. AJAX 请求完成时执行函数。Ajax 事件。

    ajaxComplete(callback) 概述 AJAX 请求完成时执行函数.Ajax 事件. XMLHttpRequest 对象和设置作为参数传递给回调函数.大理石直角尺 参数 callback ...

  9. Asteroids POJ - 3041

    Asteroids POJ - 3041 题目大意:N*N的地图里,存在一些小行星,Bessie有个很牛x但又很耗蓝的武器,一次可以消灭一行或者一列的所有小行星,问最少使用多少次这个武器可以消灭所有的 ...

  10. SQL语句中 NOT IN 子句的“正确打开方式”

    在写SQL语句的时候,若where条件是判断用户不在某个集合当中,我们习惯使用 where 列名 not in (集合) 子句,这种写法本身没有问题,但实践过程中却发现很多人在写类似的SQL语句时,写 ...