- 博客(131)
- 资源 (1)
- 收藏
- 关注
原创 隐式提交的引申之DB/SAP LUW
DB LUW(Database Logical Unit of Work):又称数据库逻辑单元。为了保证一系列数据库操作,要么同时成功提交,要么同时失败回滚,就引入了DB LUW,DB LUW 是数据库管理系统(DBMS)层面上的一个概念。如下图:数据库从左侧开始(代表一个DB LUW开始),经过INSERT、UPDATE、DELETE多次操作,如果其中任何一项操作出现问题,则对DB LUW开始以来的所有操作进行回滚,使数据库回滚到最左侧(最左侧,代表初始数据)。
2024-03-13 20:11:37
303
原创 创建预留跳过ATP检查增强
业务要求,当创建预留时,根据工厂和库存地点判断是否要进行ATP校验,而不能从物料维度控制ATP校验,因此需要做增强实现。本文档将实现通过增强在前台MB21和BAPI:BAPI_RESERVATION_CREATE1创建时,以及通过BAPI:BAPI_RESERVATION_CHANGE修改预留时,跳过ATP校验。
2024-02-28 18:17:42
392
原创 聊聊更新表时的隐式提交
显式提交是指在程序中使用明确的提交操作来提交数据到数据库。这可以通过使用语句COMMIT或COMMIT WORK来实现。显式提交是一种手动提交数据的方式,它将当前的数据库事务立即提交,使之成为永久性的更改。在显式提交之后,数据将立即被其他事务所见。与显式提交相对的是隐式提交。在隐式提交中,数据的提交由系统自动处理,而无需明确的提交操作。本文档将通过一个简单的数据库更新操作,介绍各种场景的隐式提交。
2024-02-01 08:59:30
504
原创 SUBMIT指定用户名错误
在ABAP中,SUBMIT关键字用于运行另一个ABAP程序。通过SUBMIT关键字,可以在当前程序内部调用其他程序,而无需关闭当前程序。
2024-01-25 12:04:49
370
原创 MB51选择屏幕与报表增强
如之前文档《》,在MIGO中增强自定义字段,那么在查询MB51时,想通过自定义字段进行筛选,并将数据展示到报表中,就需要对MB51进行增强。此处需要说明,文档 《》中是将自定义字段存入自建表中,读者也可以自己研究,是否能将字段存入标准表MSEG中。两种做法不同,则在本篇文档中的做法也有一定区别,请读者予以辨别。
2024-01-18 21:55:52
1214
原创 MIGO新增页签增强
本方法是将新增字段,展示在MIGO的新增页签中,并保存到自建表。新增页签的方法,和采购订单新增页签的方法原理基本一致,都是需要创建函数组,并实现相应方法和屏幕,并在增强中调用该函数组,展示出屏幕,实现对应操作。
2024-01-11 08:54:29
532
原创 关于对物料计量单位的维护
一般情况下,在设计产品时,明确了物料的计量单位,并在维护物料主数据时,维护完整单位数据。但也有例外情况,例如当设计产品时,不明确未来的打包方式,不明确要维护哪些种计量单位,只有当生产完成之后,再确定通过包还是箱等方式包装产品,并将新的计量单位同步给外围系统方便运输。因此就需要在生产完成之后,再修改对应的物料主数据的计量单位。前台操作,事务代码MM02,维护物料的量纲和附加数据里面的计量单位附加数据。
2024-01-03 16:44:35
492
原创 使用RFC跳过权限校验的方法
由于业务流程的复杂性,用户往往只具备部分功能的权限,导致在操作自开发程序时出现权限问题。例如前台限制了用户对销售订单的修改,而自开发功能中又涉及单据修改,此时一味限制权限,则无法正常使用功能。
2023-12-28 10:01:40
444
原创 VA01/VA02/VA03 销售订单根据定价和步骤校验权限隐藏价格(二)
之前发表过相关文章《》,本篇文章对上一篇文章做补充说明。第一篇文章是通过拥有权限,则隐藏价格的模式,即对需要隐藏价格的用户,配置权限对象,使其通过权限校验,然后隐藏价格;没有配置权限对象的用户,权限校验不通过,则不隐藏价格。此处存在两个问题:(如果项目忽略这两个问题,则还可以参照第一篇文章的方式实现)1.对于自定义权限对象,如果将其添加到SAP_ALL中,会导致拥有SAP_ALL权限的用户,也校验通过,并且看不到价格。(主要问题)
2023-12-25 09:17:01
1138
原创 SAP搜索帮助的限制值范围样式
第一种样式:没有配置F4METHOD,或者配置了参数值为ActiveX。第二种样式:配置了F4METHOD且值为NoActiveX。点击下拉框,输入筛选数据,筛选搜索帮助列表。点击漏斗,输入筛选数据,筛选搜索帮助列表。不同的样式,通过账号的参数设置决定。
2023-12-18 15:07:13
560
原创 CNS0项目创建交货单增加销售办事处
销售办事处是指在企业中负责销售活动的区域性单位或部门。在SD模块中,可以表示企业的不同销售地点、销售办公室、分销中心或分公司。销售办事处扮演着多种角色和职责,例如:销售活动管理:销售办事处负责管理和监控属于其管辖范围内的销售活动。这包括销售订单的处理、客户询价、报价管理、合同管理等。客户关系管理:销售办事处是与客户直接互动的关键机构。它们负责与客户进行沟通、建立关系、处理客户投诉和问题,并确保客户满意度。销售数据分析:销售办事处负责收集、记录和分析销售数据以及相关指标。
2023-11-30 08:20:53
910
原创 ABAP使用异步远程RFC实现并行处理
当开发复杂报表,需要处理大量数据,不管怎么优化计算和查询语句,程序的运行效率还是达不到用户要求,怎么办?为了解决这个问题,就需要程序实现并行处理。本文档就是通过异步调用远程RFC的办法,实现对大量数据的计算,以并行的方式,更快的计算出最终结果。
2023-11-15 18:11:09
318
原创 COGI控制删除按钮增强
COGI在SAP中主要用于解决生产订单异常的问题。通常发生在生产订单执行过程中,当出现了特定的异常情况时,需要进行处理。这些异常情况可能包括物料缺失、数量不匹配、质量问题等等。当这些异常情况发生时,系统会生成异常记录并将其显示在COGI中。在COGI中,用户可以查看异常记录的详细信息,例如物料号、数量、批次信息等。用户可以逐条处理异常记录,以解决相应的问题。处理异常记录时,用户可以执行一些操作,例如重新分配物料、更新数量、签发新的批次等。
2023-11-09 09:16:22
441
原创 递归函数实现省市区多级联动搜索帮助
当程序中有互为层级的字段,需要使用搜索帮助时,可以通过多次调用搜索帮助来实现。比如在程序中需要填写省市区三级地址。
2023-11-01 18:07:09
220
原创 VA01/VA02/VA03 销售订单根据定价和步骤校验权限隐藏价格(一)
针对用户使用销售订单时,根据定价和步骤顺序,判断是否有权限,没有权限时隐藏销售订单抬头和行项目的部分价格数据要限制的定价和步骤在spro中的位置限制的步骤。
2023-10-19 14:21:17
663
2
原创 使用BAPI_NETWORK_COMP_*实现生产订单组件的增删改查
对于生产订单组件的增删改有多种办法,比较常用的有使用内部函数CO_XT_COMPONENT_*,有改造BAPI_ALM_ORDER_MAINTAIN来实现,各有千秋。本文档介绍,通过PS的BAPI_NETWORK_COMP_*系列BAPI,来实现常见的组件先删后建的覆盖式操作,组件部分字段修改,组件信息查询等功能。
2023-10-09 20:18:31
609
2
原创 VA01/VA02/VA03/VA05 销售订单根据权限隐藏价格
针对用户使用销售订单时,判断是否有权限,没有权限时隐藏销售订单抬头和行项目的价格相关字段。
2023-09-11 11:22:25
376
原创 关于将预留单中增强字段带入物料凭证和会计凭证中
预留中自定义文本字段“大项修”。根据预留创建物料凭证时,将该字段带入到物料凭证中,类似标准字段“项目文本”。并在物料凭证自动产生会计凭证后,将该字段带入到会计凭证行项目中。其中需要解决以上三张凭证对该字段的界面显示,以及预留对该字段的维护。解决接口中用BAPI对创建预留,创建物料凭证的字段维护。
2023-08-09 10:33:00
530
原创 GOS会计凭证上传附件
GOS是一个连接文档和SAP内各种对象的工具,在SAP的一些凭证中,可以通过GOS进行附件的上传、查看和删除等功能,例如采购订单、会计凭证等。如果没有这个按钮,可以将当前登录用户的类型设置为对话即可。
2023-05-18 16:32:06
531
原创 VA21 创建报价单
报价是提供给客户交付货物或服务的一份文件,客户想要知道产品价格以及装运时间。事务代码VA21输入报价单类型和销售组织、分销渠道、产品组输入售达方和行项目的物料信息,订购数量等信息输入条件,金额。
2023-05-09 09:15:50
380
原创 关于改造维护工单BAPI_ALM_ORDER_MAINTAIN用于生产订单组件批量修改
根据多次的源码调试,找到程序运行相关的函数、包含文件等,依次进行代码的复制,过程不做过多说明,结果如下:1、复制标准BAPI:BAPI_ALM_ORDER_MAINTAIN 为:ZBAPI_ALM_ORDER_MAINTAIN2、复制标准函数:IBAPI_C_DEFAULT_VALUES_01 为:ZBAPI_C_DEFAULT_VALUES_01 修改反冲标识。
2023-04-17 15:40:35
1784
原创 采购订单的确认控制
配置路径:IMG→物料管理→采购→确认→建立确认控制下达采购订单后,供应商根据订单回执能够交货的日期和数量。例如:采购订单下达后通过接口同步给SRM,SRM执行确认后,调用接口同步给SAP确认的交货日期和数量。确认有两种方案:一步法和两步法。第一步:供应商回复确认的交货计划,系统中确认页签添加AB类别的行;第二步:供应商按第一步的日期交货,在SAP中通过VL31N创建内向交货单,系统会自动在确认页签产生LA类别的行。对两步法的简化,具体看项目如何定义,是只做第一步还是只做第二步。
2023-04-06 17:36:12
2486
原创 FOR ALL ENTRIES IN 与 INNER JOIN 内表
FOR ALL ENTRIES IN 与 INNER JOIN 内表,目的都是通过内表找数据库表与之对应的数据,但是有区别。
2023-04-03 17:20:04
891
原创 ABAP READ内表新老语法对比
现编写一个实例,循环2万条数据GT_ACD,并循环查询有14万条数据的LT_ACD中对应的值。下边测试各种情况下的查询速度。综上所述:不使用二分查找,则新老语法都很慢。使用二分查找或新语法搭配排序表,则速度都有非常明显的提升。由于老语法可以使用二分法查找,因此在效率上将会有差异。
2023-03-27 18:54:09
1577
原创 FB08、F.80凭证冲销校验增强
例如:会计凭证号是BELNR,但是在屏幕中的字段为BELNS,并且存在于RF05A结构中。当使用FB08和F.80在前台冲销会计凭证时,需要限制三种不同的会计凭证类型,并报消息到相应的程序中处理这三种会计凭证类型。在此处添加隐式增强,并注意,当点击保存按钮进行过账,并且是执行FB08或F.80时,才触发该增强。在BADI和二代中均未找到合适的增强点,因此根据在前台DUBUG,找到隐式增强点。在此处发现RF05A中有年度和凭证号,BKPF中有公司代码,满足需要。进入标准程序的PAI中,
2023-03-20 15:08:22
350
原创 ABAP 调用HTTP上传附件(二)之中文乱码
此函数可以通过定义format = cl_abap_format=>e_url_full,得出和Java代码中同样的效果,其实cl_abap_format=>e_ur。
2023-03-20 11:23:26
687
2
原创 关于ABAP索引
如果把数据库表看做一本书,索引就可以看做书的检索目录。目录中包含书中的大小标题(部分字段数据),并且有对应的数据表条目的页码(指针),可以快速的访问数据库表中对应行的所有字段内容是系统根据表关键字自动创建的,用户不需要创建。索引字段的组合,在表中只存在最多一条记录。如果未选择主索引中的字段,则会扫描全表或尝试使用合适的二级索引是用户自定义的,索引ID为三位字符,ID 0为主索引。内置数据类型STRING、RAWSRING和GEOM_EWKB与参考数据类型为FLTP的表字段,都不能作为索引字段。
2023-03-15 17:26:50
1435
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人