摘要: 1,创建watchpoint Debug模式下,点击'监视点'按钮,填入需要跟踪的变量名称以及条件, 2,F8 运行程序, 程序会在物料号码等于57024867的地方停止, 以上. 阅读全文
posted @ 2020-03-20 21:49 差劲 阅读(457) 评论(0) 推荐(0)
摘要: 如果要修改没有维护视图的表内数据,在不写report代码直接更新的情况下,可以通过debug的方式直接修改或删除表数据内容。 步骤如下,首先要有debug change的权限。 本例子要更新自定义表ZEMPLOYEE中的字段DEPT_ID值 SE16,显示要更新的数据记录 选中需要更改的行,点击眼镜 阅读全文
posted @ 2020-03-20 21:47 差劲 阅读(534) 评论(0) 推荐(0)
摘要: 由于弹出窗口没有状态栏,所以不能用/h的方法来进行Debug,但是天无绝人之路,下面就介绍一个十分简单的用拖拽TXT文件的方式进入debug模式的方法。 创建一个文本文件,并在文件中输入如下内容: [Function] Command=/H Type=SystemCommand debug文件下载 阅读全文
posted @ 2020-03-20 21:46 差劲 阅读(306) 评论(0) 推荐(0)
摘要: 作为一个ABAPer一定要掌握两个技能一个是baidu google的技能,另外一个就是debug的技能,下面就总结一下debug的方法和小技巧。 1, SE38中设置断点 程序运行前可以在ABAP编辑器中设置断点,如下: 会话断点-在同一登录会话不同窗口都有效,用户注销后消失 外部断点-用户注销后 阅读全文
posted @ 2020-03-20 21:44 差劲 阅读(183) 评论(0) 推荐(0)
摘要: 1, 场景介绍 众所周知,我们可以使用tcode SAT方便的跟踪传统dialog程序。但是对于一些非传统dialog应用就不是那么方便了,比如说webdynpro程序或者Fiori应用,本文就介绍一种在debug过程中启动SAT跟踪程序的方法。 举例说明: 在下面这个Fiori应用中,用到了oda 阅读全文
posted @ 2020-03-20 21:42 差劲 阅读(228) 评论(0) 推荐(0)
摘要: 当后台job已经运行完,但是很不幸,发生错误了,这时我们也可以通过SM37进行Debug,步骤如下, 1, SM37 显示后台JOB 点击Step按钮,进入下一屏幕, 2, 设置断点 在Step list界面中,点击goto-->program进入abap 编辑器,设置断点, 3, 命令栏输入JDB 阅读全文
posted @ 2020-03-20 21:41 差劲 阅读(364) 评论(0) 推荐(0)
摘要: 本文介绍一种方法能快速在校验(validation)的代码中设置断点的方法。详细步骤如下: 1,Tcode: GGB0 进入校验的定义界面 2,找到需要设置断点的校验,本例子中,要在FI行项目的校验CIDNY1设置断点.鼠标选中CIDNY1,然后在命令栏输入’=shcd‘回车就会进入对应的校验代码处 阅读全文
posted @ 2020-03-20 21:39 差劲 阅读(432) 评论(0) 推荐(0)
摘要: 1, 问题描述 进行system debug/update debug调试abap程序时,设置的断点不停。 设置system debug/update debug模式,如下, 2, 问题解决 断点应该设置成外部断点(external breakpoints),而不是session breakpoin 阅读全文
posted @ 2020-03-20 21:37 差劲 阅读(374) 评论(0) 推荐(0)
摘要: /h:启动正常的debug。 在命令栏输入/h,然后回车即可。 /hs:启动系统debug(system debug),可以debug系统程序。 /ha: 与/h类似,只不过/ha debug会跳过所有的屏幕screen, 以上。 阅读全文
posted @ 2020-03-20 21:36 差劲 阅读(599) 评论(0) 推荐(0)
摘要: 在Debug ABAP程序过程中,能将输入Function的测试数据保存到SE37,这样就可以直接在SE37中测试function,而不用再次debug整个程序。 方法如下: 1,debug时,F5进入到需要测试的Function中,点击右侧工具按钮进入到variable Fast Display 阅读全文
posted @ 2020-03-20 21:34 差劲 阅读(549) 评论(0) 推荐(0)
摘要: debug调试abap程序时,有时要人为触发数据库commit work。如下图所示,需要在执行完数据库insert操作之后立即触发DB的commit动作,保证数据真正写入到database table中去。 1 insert crmd_soc_post from ls_lock 在默认情况下,DB 阅读全文
posted @ 2020-03-20 21:33 差劲 阅读(337) 评论(0) 推荐(0)
摘要: 1, 场景介绍 1. 准备两个系统:Y58, 主程序会在该系统运行; Y57, 被调用系统, 主程序中会调用本系统的FM 2. 在系统Y58中,通过tcode SM59创建一个RFC destination ‘testrfc’, 将connection type 设置为’3′, 并指定登录语言, 客 阅读全文
posted @ 2020-03-20 21:32 差劲 阅读(549) 评论(0) 推荐(0)
摘要: 在SAP项目中,经常会遇到一个比较复杂的程序报出个错误消息(有时会是一个标准SAP程序报错),但是不知道到底是哪段ABAP代码出错了。 下面通过一个简单的例子,来介绍6种方法来定位报message的ABAP程序。 比如在SE38中输入一个不存在的程序ZSDFSF,点击显示按钮,在下面的状态栏会弹出一 阅读全文
posted @ 2020-03-20 21:31 差劲 阅读(502) 评论(0) 推荐(0)
摘要: smartforms中的地址节点(address node)对应的是函数ADDRESS_INTO_PRINTFORM,在函数中设置断点,运行smartforms就可以调试了。 SE37: 地址节点: 以上。 阅读全文
posted @ 2020-03-20 21:29 差劲 阅读(229) 评论(0) 推荐(0)
摘要: 很多项目中,权限控制的很严格,一般开发是不能更改cross-client表的。 比如:要创建一个新的parameter ID需要在跨client表TPARA中添加记录,但是木有权限。。。 点开help发现缺少权限S_TABU_CLI, 这时可以通过debug,跳过权限检查部分。 在命令栏输入/h,然 阅读全文
posted @ 2020-03-20 21:28 差劲 阅读(421) 评论(0) 推荐(0)
摘要: 正常情况下ABAP是不能debug调试宏的,可但是有个变通的方法能让你初略的一步一步执行宏内的代码。 写了一段简单的abap代码,里面包括一个宏,用来取EKPO表内数据,然后sort一下。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 REPORT 阅读全文
posted @ 2020-03-20 21:27 差劲 阅读(209) 评论(0) 推荐(0)
摘要: SRM中有个配置表 bbp_function_map,从里面可以查询到寻源用到的函数B46B_SOURCEDETER_GETSOS_MULTI,搜索条件 GetSourcesOfSupplyMulti, 在函数B46B_SOURCEDETER_GETSOS_MULTI中就可以加断点了,主要寻源的逻辑 阅读全文
posted @ 2020-03-20 21:26 差劲 阅读(172) 评论(0) 推荐(0)
摘要: 1, BTE介绍 BTE英文全称Business Transaction Event,业务交易事件,我们知道一般的增强(Tcode:SMOD|CMOD)依旧使用ABAP,BTE则可提供了RFC调用其它产品的可能(Tcode:FIBF)。BTE的设计思路还是比较简单,和BADI有点类似。在标准程序中留 阅读全文
posted @ 2020-03-20 21:24 差劲 阅读(509) 评论(0) 推荐(0)
摘要: 如果是半路加入一个项目,肯定对系统内已经实施 的增强不是清楚,比如说采购订单me23n下都创建了什么增强,SAP提供了一个程序SNIF,可以通过这个直接查找出已经实施的BADi、user-exit、BTE甚至是调用的BAPI。 1,首先先找到ME23N所在的包 点击对象列表按钮,然后再点击上级对象, 阅读全文
posted @ 2020-03-20 21:23 差劲 阅读(450) 评论(0) 推荐(0)
摘要: 在HANA系统下,使用tcode FIBF中的BTE 1120对冲销的会计凭证的文本进行了增强,将被冲销凭证号写到文本中,FB03查看时一切正常也就是bseg-sgtxt字段能替代成功,但是,fagll03确没有实现功能,也就是acdoca-sgtxt没有被替代,还是原值。 FIBF中的1120,是 阅读全文
posted @ 2020-03-20 21:22 差劲 阅读(1063) 评论(0) 推荐(0)
摘要: 1, Call Transaction Call Transaction: 就是直接调用Tcode进行数据批量导入。 优点:方便快捷,程序处理方便,同步更新时能实时得到BDC处理结果。 缺点:系统不能自动保存BDC 日志,需自己建透明表来维护数据,或者仅仅是将日志显示出来。 call transac 阅读全文
posted @ 2020-03-20 21:21 差劲 阅读(318) 评论(0) 推荐(0)
摘要: 1, Session 不直接运行,而是将BDC程序生成session,通过SM35或者SAP标准程序RSBDCSUB或者 RSBDCBTC 触发。 优点:通过T-code SM35可以进行运行管理及日志管理,方便查错。 缺点:数据直到session被处理才能更新。 2, 用到的函数、程序 . 1,  阅读全文
posted @ 2020-03-20 21:19 差劲 阅读(955) 评论(0) 推荐(0)
摘要: 1, 问题描述 调用bapi 'BAPI_SALESORDER_CREATEFROMDAT2' 创建销售订单,发现生成的销售订单有incompletion log,是关于可配置物料的,如下 可配置物料的可以通过字段MARA-KZKFG判断, 2, 问题分析 经过某大师指点发现,造成此问题的根本原因是 阅读全文
posted @ 2020-03-20 21:18 差劲 阅读(292) 评论(0) 推荐(0)
摘要: 有时出于程序效率或防止内存变量影响的考虑会要异步新开task执行BDC代码。我们可以通过SAP提供的CALL_TRANSACTION_FROM_TABLE_CO函数快速实现。 不仅可以实现异步执行BDC,此函数还可以实现call transaction的功能, 以上。 阅读全文
posted @ 2020-03-20 21:17 差劲 阅读(316) 评论(0) 推荐(0)
摘要: 1, 问题描述 BDC录屏时,发生一个错误提示‘Field XXXX input value is longer than screen field’,对应的汉语是“字段XXXX输入值比屏幕字段长”。可以通过SE91,查看message class 00,348 2, 问题解决 其实就是BDC输入时 阅读全文
posted @ 2020-03-20 21:16 差劲 阅读(269) 评论(0) 推荐(0)
摘要: 在abap程序的BDC录屏中,数量和日期格式是和su3中的设置相关的,如果格式不一致BDC会报错。 Tcode:SU3,可以看到小数点,日期格式以及时间格式的设置。 所以在处理数量,日期和时间时要用write to转换一下: 数量转换: 注意不要忘了单位 UNIT 1 WRITE <lfs_alv> 阅读全文
posted @ 2020-03-20 21:15 差劲 阅读(309) 评论(0) 推荐(0)
摘要: 1,delivery block VA03可以看到delivery block字段 2,代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 data: lwa_header_in type bapisdh1, lwa_header_inx type bapisdh1x 阅读全文
posted @ 2020-03-20 21:09 差劲 阅读(278) 评论(0) 推荐(0)
摘要: 1,MM03查看物料文档 MM03点击Additional Data 在详细信息中,可以看到文档的工厂信息 2,例子程序 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 阅读全文
posted @ 2020-03-20 21:07 差劲 阅读(242) 评论(0) 推荐(0)
摘要: 1,MM03查看物料文档 MM03点击Additional Data 在详细信息中,可以看到文档的工厂信息 2,例子程序 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 阅读全文
posted @ 2020-03-20 21:04 差劲 阅读(437) 评论(0) 推荐(0)
摘要: 如果我们找BAPI可以通过SAP标准事物代码:BAPI查询到已经释放的BAPI. 如果只知道事物代码,可以通过下面的方式查询相应的BAPI. 1, 找到Tcode对应的package 例如我们找创建销售订单的BAPI 我们知道事物代码是VA01.进入VA01 界面,找到system --> stat 阅读全文
posted @ 2020-03-20 21:00 差劲 阅读(466) 评论(0) 推荐(0)
摘要: 前台可以通过MB1B实现物料移动,下面是特殊库存移动(需要输入‘E'), 回车后,输入销售订单,行项目,对应的物料,数量,然后保存实现物料转移。 此过程,可调用BAPI ‘BAPI_GOODSMVT_CREATE’实现。 完整代码: 注意:如果不是特殊库存物料移动,则不用输入’E'和对应的销售订单和 阅读全文
posted @ 2020-03-20 18:29 差劲 阅读(422) 评论(0) 推荐(0)
摘要: 1, 问题描述 调用bapi ‘BAPI_ROUTING_CREATE’,创建routing时会报出错误消息‘Enter a selected set’,提示set没有输入。 错误消息号:QP,消息ID:411,具体如下图: 实际上,在输入table INSPCHARACTERISTIC中SEL_S 阅读全文
posted @ 2020-03-20 18:28 差劲 阅读(442) 评论(0) 推荐(0)
摘要: 1, 场景介绍 调用bapi BAPI_PRODORD_CHANGE 更新生产订单排产日期,单独更新生产订单没有问题,但是有时批量更新多个生产订单时会dump。 相关代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 lwa_order-basic_start_da 阅读全文
posted @ 2020-03-20 18:27 差劲 阅读(797) 评论(0) 推荐(0)
摘要: 石头 一月 31, 2017 BAPI 11,597 views 1 在使用bapi BAPI_SALESORDER_CREATEFROMDAT2创建销售订单时,可以通过extensionin参数给自定义的参数赋值。 具体的使用方法可以通过点击Function module documentaion 阅读全文
posted @ 2020-03-20 18:26 差劲 阅读(1584) 评论(0) 推荐(0)
摘要: bapi 'BAPI_DOCUMENT_CREATE2'可以模拟前台的tcode CV01N创建文档。 CV01N 前台操作,简单介绍如下: 输入document,type,part 和version相关内容,回车进入下一屏幕, 输入描述,设置status和authorization group,然 阅读全文
posted @ 2020-03-20 18:23 差劲 阅读(725) 评论(0) 推荐(0)
摘要: Tcode:OB08,能查到SAP系统内配置的汇率信息,汇率有效期,汇率类型,汇率币种以及汇率。 这些汇率信息能通过bapi BAPI_EXCHANGERATE_GETDETAIL获取 SE37: 汇率数据保存在表TCURR中,也可以直接Select表, 以上。 阅读全文
posted @ 2020-03-20 18:21 差劲 阅读(845) 评论(0) 推荐(0)
摘要: 石头 三月 20, 2017 BAPI 9,583 views 0 [隐藏] 1, 前台操作 2, BAPI实现 3, 保存批次数据库表 下面介绍SAP SD的销售订单外向交货单按批次拆分(Batch-Managed),包括前台操作和调用bapi ‘BAPI_OUTB_DELIVERY_CHANGE 阅读全文
posted @ 2020-03-20 18:20 差劲 阅读(1237) 评论(0) 推荐(0)
摘要: 能通过Tcode CN25进行网络确认(network Confirmation)。SAP也提供了bapi BAPI_NETWORK_CONF_ADD来实现网络确认,下面介绍一下如何使用BAPI_NETWORK_CONF_ADD。 1, 如何通过销售订单找到网络(Network) 项目中应用了PS模 阅读全文
posted @ 2020-03-20 18:19 差劲 阅读(2004) 评论(0) 推荐(0)
摘要: 1, 问题描述 ABAP程序中,调用函数 BAPI_PRODORDCONF_CREATE_TT确认工序(confirm operations)失败,返回一个错误,提示Personnel master record xxxx not found (check entry),message id:RU, 阅读全文
posted @ 2020-03-20 18:18 差劲 阅读(196) 评论(0) 推荐(0)
摘要: 介绍一个PP模块的BAPI, “BAPI_PRODORD_GET_DETAIL”,通过这个BAPI能取得PP订单的详细信息. 具体能读取的详细信息包括: 抬头(Header) 行项目(Item) 工序中的Sequence 工序(Operation) 子工序(Suboperation or secon 阅读全文
posted @ 2020-03-20 18:16 差劲 阅读(360) 评论(0) 推荐(0)
摘要: 在网上第一次看到有人用BAPI BAPI_PATIENT_CREATE创建病人主数据,特此转贴记录一下。 SE37 2, NEW_PATIENT_DATA为空 调用之后,如果没能成功创建任何数据(NEW_PATIENT_DATA为空), 该问题有几种可能性: 传入的数据有误,此时可在参数return 阅读全文
posted @ 2020-03-20 18:14 差劲 阅读(163) 评论(0) 推荐(0)
摘要: 可以通过BAPI BAPI_MATERIAL_SAVEDATA为物料主数据创建/拓展 工厂视图(plant view). 例子代码如下: 实现功能很简单,就是将物料主数据拓展到新的工厂,也就是在MARC表中为新工厂创建一条记录。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 阅读全文
posted @ 2020-03-20 18:12 差劲 阅读(1442) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。 阅读全文
posted @ 2020-03-20 18:09 差劲 阅读(0) 评论(0) 推荐(0)
摘要: 通过BAPi BAPI_DOCUMENT_DELETE_DIRECT 可以删除文档。 代码很简单如下: 注意:要用 CONVERSION_EXIT_ALPHA_INPUT转换一下文档号码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 阅读全文
posted @ 2020-03-20 18:08 差劲 阅读(275) 评论(0) 推荐(0)
摘要: 利用BAPI_PO_CREATE1中行项目table参数中的BAPIMEPOITEM-PREQ_NO和BAPIMEPOITEM-PREQ_ITEM字段可以将采购申请PR添加到采购订单PO的行项目上。 前台可以通过ME23n来查看采购订单行项目上的采购申请号: 以上。 阅读全文
posted @ 2020-03-20 18:04 差劲 阅读(858) 评论(0) 推荐(0)
摘要: 可以通过 BAPI_COSTELEMENTGRP_GETDETAIL取得成本要素组(cost element group),也就是tcode KAH3对应的bapi是BAPI_COSTELEMENTGRP_GETDETAIL。 例子代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 阅读全文
posted @ 2020-03-20 18:03 差劲 阅读(203) 评论(0) 推荐(0)
摘要: 在使用BAPI BAPI_GOODSMVT_CREATE需要通过制定GM_CODE来确定bapi 模拟的货物移动的事务代码(Tcode)。 相关GM_code保存在表T158G中, GMCODE TCODE: GM_Code 01: Goods receipt for purchase order 阅读全文
posted @ 2020-03-20 18:01 差劲 阅读(479) 评论(0) 推荐(0)
摘要: 下面介绍一下使用bapi BAPI_GOODSMVT_CREATE为委外订单创建物料移动凭证。 例子代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 阅读全文
posted @ 2020-03-20 18:00 差劲 阅读(253) 评论(0) 推荐(0)
摘要: 1,BAPI简介 可以通过调用BAPI BAPI_ALM_ORDER_MAINTAI来更改工单的状态,具体使用到的参数是IT_METHODS。 IT_METHODS的定义如下: 各个字段含义如下: REFNUMBER:是objecttype参数中填入的相关对象对应的内表行数,OBJECTTYPE:对 阅读全文
posted @ 2020-03-20 17:39 差劲 阅读(706) 评论(0) 推荐(0)
摘要: 可以通过BAPI BAPI_PO_GETRELINFO 直接读取采购订单PO的审批信息数据,包括审批策略,审批组,审批状态,审批代码,发布标识以及对应的描述,还有审批代码对应的前序审批。 举例说明: Tcode me29n查看一个采购订单PO审批的相关数据,如下: 从中可以看出,这个采购订单有两级审 阅读全文
posted @ 2020-03-20 17:35 差劲 阅读(155) 评论(0) 推荐(0)
摘要: 1,问题描述 项目里使用了ADSUBCON,在调用BAPI_GOODSMVT_CREATE创建带subcontractor行项目的物料移动凭证时,发现主行项目中的批次赋值错误。 错误截图: 看到第一行,也就是物料移动类型是101的行项目上的批次是1208221560,实际调用bapi时的输入批次是另 阅读全文
posted @ 2020-03-20 17:31 差劲 阅读(331) 评论(0) 推荐(0)
摘要: 可以通过tcode SLDAPICUST 查看ECC系统中配置的PI连接账号,并测试连接状态。 点击测试按钮可以查看连接情况, 以上。 阅读全文
posted @ 2020-03-20 17:28 差劲 阅读(259) 评论(0) 推荐(0)
摘要: 来源:王小磊-https://blog.csdn.net/wangjolly/article/details/86677243 倔强的ABAPER-https://blog.csdn.net/sq1986127/article/details/84797454 1,问题描述 调用BAPI_ACC_D 阅读全文
posted @ 2020-03-20 17:26 差劲 阅读(441) 评论(0) 推荐(0)
摘要: 1,问题描述 调用bapi BAPI_INCOMINGINVOICE_PARK创建预制发票时,报了个错误"采购凭证的帐户设置00不存在", 消息类ME,消息编号715. 2,问题解决 查看一下bapi的输入参数发现,账户设置对应的是BAPI_INCINV_CREATE_ACCOUNT-SERIAL_ 阅读全文
posted @ 2020-03-20 17:23 差劲 阅读(505) 评论(0) 推荐(0)
摘要: 可以使用标准bapi BAPI_EQUI_GETSTATUS来获取设备的用户状态和系统状态。 SE37 测试: 系统状态system_status中有一条数据 用户状态user_status中也返回一条数据 tcode IE03 点击惊叹号图标查看设备状态, 以上。 阅读全文
posted @ 2020-03-20 17:14 差劲 阅读(191) 评论(0) 推荐(0)