SAP代码分享
文章平均质量分 63
以SAP配置,ABAP代码为主的分享专栏
AI云书
科普百科知识分享者;ABAP资深开发工程师;SAP运维实施工程师(精通SD,MM,WM,QM,PM,PP等模块);Python开发者。
E-mail:[email protected]
展开
-
金色传说:SAP-PP-CO01/CO02生产订单释放时增强:检查并显示下层组件在不合格库存地库存
金色传说:SAP-PP-CO01/CO02生产订单释放时增强:检查并显示下层组件在不合格库存地库存原创 2024-03-27 14:49:22 · 452 阅读 · 0 评论 -
金色传说:SAP-MM-ME51N/ME52N采购申请增强
ME51N/ME52N采购申请增强原创 2023-07-07 11:28:46 · 1011 阅读 · 0 评论 -
金色传说:SAP-ABAP-SAPLINK SQL编辑器插件
比SAP官方自带功能好用一万倍的SQL编辑器ZTOAD!原创 2023-03-28 13:36:42 · 1025 阅读 · 0 评论 -
金色传说:SAP-ABAP-SAPLINK 零基础萌新/老鸟通用-SAPLINK最详细使用方式(附:神级SQL编辑器ZTOAD完整导入文件)
SAPLINK的详细导入和使用讲解原创 2023-03-28 12:03:56 · 610 阅读 · 0 评论 -
金色传说:SAP-ABAP-SAPLINK 导入导出数据表DDIC拓展插件
SAPLINK DDIC数据库表拓展插件原创 2023-03-28 11:57:10 · 518 阅读 · 0 评论 -
金色传说:SAP-ABAP-创建预留增强:将销售订单号和行项目写入RESB的行项目中
金色传说:SAP-ABAP-创建预留BAPI_RESERVATION_CREATE1增强原创 2022-11-11 19:00:00 · 1613 阅读 · 0 评论 -
金色传说:SAP-PPDS-SAPAPO/RRP3增强:控制界面需求数量字段修改后检查增强/用户事件USERCOMMAND响应增强
金色传说:SAP-PPDS-SAPAPO/RRP3增强:控制界面需求数量字段修改后检查增强/用户事件USERCOMMAND响应增强原创 2022-06-29 21:00:00 · 860 阅读 · 0 评论 -
金色传说:SAP-ABAP- PM工单:IW32组件增强
金色传说:SAP-ABAP- PM工单:IW32组件增强原创 2022-06-27 06:00:00 · 983 阅读 · 0 评论 -
金色传说:SAP-ABAP-采购订单信息记录的奇怪现象:EINE表中信息记录有效期字段PRDAT问题
金色传说:SAP-ABAP-采购订单信息记录的奇怪现象:EINE表中信息记录有效期字段PRDAT问题原创 2022-04-08 16:39:45 · 1919 阅读 · 6 评论 -
金色传说:SAP-ABAP-采购订单增强实例:检查信息记录有效期,过期不能创建采购订单
金色传说:SAP-ABAP-采购订单增强实例:检查信息记录有效期,过期不能创建采购订单原创 2022-03-30 12:33:22 · 3416 阅读 · 1 评论 -
金色传说:SAP-ABAP-RANGES使用技巧:查询透明表的数据放置在RANGES直接使用
金色传说:SAP-ABAP-RANGES使用技巧:查询透明表的数据放置在RANGES直接使用原创 2022-03-21 09:59:12 · 1607 阅读 · 0 评论 -
金色传说:SAP-ABAP-物料凭证增强:锁定库存地点不能生成物料凭证(限制库存物料进出)
金色传说:SAP-ABAP-物料凭证增强:锁定库存地点不能生成物料凭证(限制库存物料进出)原创 2022-02-17 12:30:44 · 2114 阅读 · 0 评论 -
金色传说:SAP-ABAP-IW21/IW22通知单保存增强:保存通知单时根据特殊条件创建新的事故通知单
金色传说:SAP-ABAP-IW21/IW22通知单保存增强:保存通知单时根据特殊条件创建新的事故通知单原创 2022-02-14 10:56:04 · 1029 阅读 · 0 评论 -
金色传说:ABAP-BC-SMOD/CMOD已激活的增强取消激活方法
文章目录前言一、多激活的增强二、取消激活步骤1.SMOD总结前言SAP的增强对于标准功能的定制化开发来说是一个福音,但是也经常会带来一些不必要的麻烦提示:以下是本篇文章正文内容,下面案例可供参考一、多激活的增强在项目开发时,经常会遇见查找增强的问题,而查找过程中,我们经常会激活大量的增强,然后测试增强效果,以便于我们找到最合适的增强点。这样多余激活的增强我们经常不会再去处理。大多数的增强点激活后不进行处理没有问题,但是有一些则必须取消激活或删除才不会对系统产生影响。例如PM模块的IPRM00原创 2021-09-28 14:43:15 · 1060 阅读 · 0 评论 -
SAPABAP金色传说:SELECT SUM(CASE WHEN THEN END)语法示例
文章目录前言一、SELECT SUM(CASE WHEN THEN END)前言ABAP语法博大精深提示:以下是本篇文章正文内容一、SELECT SUM(CASE WHEN THEN END)SELECT 时,根据某个字段的值进行区别求和。示例:下面是一个简单示例。当shkzg等于S时直接求和,当等于H时,乘-1后再累计求和。代码如下(示例):SELECT a~ebeln,a~ebelp,SUM( CASE shkzg WHEN 'S' THEN a~menge原创 2021-08-17 15:53:55 · 5554 阅读 · 0 评论 -
SAPABAP金色传说:PPDS 自开发启发式的完整步骤(包含实现代码)
文章目录前言一、启发式是什么?二、示例需求场景三、启发式开发步骤1. SE80 复制函数组2.获取主程序名,运算法则名等3.维护视图4.SE11创建结构5.根据创建的结构,更新函数组内的代码6.开发屏幕7.配置新启发式,配置环境进行处理8.自建字段的处理9.成果展示前言PPDS模块的前身是APO,兼并到SAP-ERP内部之后,目前就作者个人看法,还不是太成熟,首先note补丁要打很多,还有不少问题找不到补丁去解决;但是从功能上来讲,对排产问题的改善还是挺不错的。提示:以下是本篇文章正文内容,下面案原创 2021-08-10 10:42:08 · 1496 阅读 · 0 评论 -
金色传说:SAP-ABAP-销售订单增强:记录销售订单修改信息和修改原因
业务场景为了记录从客户或经销商询单到正式下达销售订单的过程并分析,需要记录销售订单创建和修改时的关键信息,其中包括:客户、物料、订单数量、交货日期、更改原因。解决方案创建销售订单时自动记录关键信息到自建表。更改销售订单时弹出更改原因类别及更改明细说明到自建表。增强点使用到的增强点有两个:1.MV45AFZZ程序USEREXIT_SAVE_DOCUMENT_PREPARE:销售订单保存增强点。2.MV45AFZA程序USEREXIT_REFRESH_DOCUMENT:这个增强点是销售订单刷新原创 2021-07-27 17:26:56 · 4753 阅读 · 5 评论 -
SAPABAP金色传说:使用表的结构创建内表和工作区
文章目录前言一、使用步骤1.创建带表头的内表总结前言当我们创建了一个很复杂的表或者直接使用系统标准的表时,在程序中想要使用这些表中的字段,你是否还在一个个字段的复制,然后创建types结构,再data工作区和内表?有没有觉得很麻烦呢?今天给大家介绍一个简单语法,来直接使用表的结构创建内表和工作区提示:以下是本篇文章正文内容,下面案例可供参考一、使用步骤1.创建带表头的内表代码如下(示例):DATA:BEGIN OF gt_alv OCCURS 0. INCLUDE TYPE原创 2021-07-22 09:31:37 · 582 阅读 · 0 评论 -
金色传说:SAP-ABAP-SELECT * FORM 内表语法
一、标题难取你是否受够了同一个程序里不停的根据各种条件反复SELECT同一个表?你是否受够了大量冗余代码的压迫?你是否…好吧,编不下去了,总之,起来!不愿做"奴隶"的ABAP们!今天给大家介绍金色传说语法:ABAP 新语法–SELECT FORM 内表二、正文在此假设场景:要取出创建时间在date1和date2之间的,物料类型为Z100的所有物料,然后根据不同的物料组再进行逻辑处理。这样一个场景,你脑阔里想到的代码是什么样的?是这样的?还是这样的?上面的两种方式都可以达到预期的目的(原创 2021-07-13 14:33:12 · 3166 阅读 · 5 评论 -
SAP ABAP使用SHDB(BDC程序)批量处理数据(从负九九九开始教你ABAP批导程序)
一、业务场景:批量修改工作中心能力(TCode:CR02)页签内的工厂日历,开始时间,休息时间等。由于涉及到PPDS的资源表更新问题,所以没有使用bapi,函数去进行更新,本次采用的是BDC的方式处理。二、代码场景:优先使用函数CR_CAPACITY_UPDATE或者/ISDFPS/WCUPS_WC_CHANGE进行修改工作中心,但笔者发现有时会出现不能同时更新PPDS的资源表/SAPAPO/RES_HEAD的情况,所以使用BDC方式实现,并且顺便做一个比较方便的BDC程序,作为模板,以备后用和分享。三原创 2021-07-06 14:23:53 · 5786 阅读 · 2 评论 -
SAP ABAP 获取工厂(工作中心)的工作日/非工作日
业务场景用途:可用作对生产订单下达时,增强控制生产订单能提前下达多少小时下达;获取工厂排班信息等。代码场景:根据生产订单获取第一道工序的工作中心,获取工作中心的工厂日历,假期日历,获取其工作日/非工作日(天数)。话不多说,直接上代码:*--------------------------------------------------* 数据定义区DATA:gt_date TYPE TABLE OF casdayattr.DATA: ls_objects TYPE bap原创 2021-06-28 11:28:15 · 1465 阅读 · 0 评论 -
SAP-ABAP程序间数据传递
SAP-ABAP程序间数据传递场景:不同程序间,增强或者其它需要传递数据时,可能会用到上一个运行代码中的值,这时候我们参考采用内存传递的方式。(类似于全局参数,但比全局参数更加灵活)1.ABAP Memory方式(同用户)这种方式一般用在同一个窗口,运行某程序后,通过CALL TRANSACTION/SUBMIT或其他代码跳转到其他程序时。DATA ::matnr TYPE mara-matnr.zmatnr = '60000001'."将数据上传memory:EXPORT zmatnr TO原创 2021-06-21 15:14:13 · 1599 阅读 · 1 评论 -
SAP ABAP SE09 TR请求传输技巧
SAP ABAP请求号传输技巧大部分的项目,都是使用的如下client架构(编号不一定相同):100:配置环境,配置需要SCC1接收到300才可以生效。200:开发环境300:第一测试环境,在200做的程序不需要传输即可生效和测试。500:QAS环境,交付用户测试的环境,配置和开发都需要传输和接收才能生效。800:生产环境/生产机,用户正式使用的环境。做开发或配置时经常会遇到300测试环境数据不足,测试困难的问题,此时如果请求号SE09释放掉,可以在500接收测试,但是如果测试不通过,需要再更原创 2021-06-02 15:00:49 · 3374 阅读 · 0 评论 -
SAP ABAP 时间戳转换
SAP时间戳转换DATA:o_date LIKE sy-datum,o_time LIKE sy-uzeit.使用CONVERT将时间戳转换为日期和时间:CONVERT TIME STAMP gs_data-startti TIME ZONE sy-zonlo INTO DATE o_date TIME o_time."ZONE是时区" o_date.和o_time是转换后日期和时间反之,将日期和时间转换为时间戳:CONVERT DATE o_date TIME o_time INTO T原创 2021-04-20 11:14:24 · 2831 阅读 · 0 评论 -
金色传说:SAP-ABAP-VK11/VK12/VK13保存时增强
SAP VK11/VK12/VK13保存增强原创 2021-04-13 15:54:19 · 3807 阅读 · 0 评论 -
SAP PPDS /SAPAPO/MAT1批量分配模型问题
SAP PPDS /SAPAPO/MAT1批量分配模型问题客户新增需求后需要用到MAT1里的分配模型,但是查了好多资料都没有找到能够批量分配模型的功能,使用LSMW和BDC,虽然运行了但是并没有更新数据。LSMW使用比较简单,但是个人认为使用BDC查看录制步骤和排查问题还是比较直观的。这里可以看到,已经执行了ADDMODEL的动作,但是在MAT1分配模型时是有一步选中的步骤的,这里没有记录到:经过半天的时间,在马上要“榨干”脑汁的情况下,忽然发现,在SHDB录制时,可以使用全选的功能,在记录下选中原创 2021-04-12 15:09:29 · 1129 阅读 · 0 评论