点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
选择界面 明细结果呈现 左侧通过树状结构呈现消息类型及状态 统计IDOC个数. 双击任意节点,右侧ALV显示节点下的所有IDOC明细 单个IDOC显示 双击明细条目显示单个IDOC的具体内容. 如果选择界面限制的IDOC只有一个,会直接进入单个IDOC具体内容显示 其中涉及报错的段红色显示.可以快速定位错误. 具体的报错信息在状态记录中显示(状态记录中显示了所有BAPI返回的结果,警告消息也会记录,这样会导致很难在这里看到重要的错误信息,相关的表 EDIDS中可以比较方便的查询所有错误信息) 修改IDOC内容 双击节点图标 (部分版本的ERP可能需要通过TCODE WE05才能修改IDOC内容) 点击菜单, 修改IDOC指定段内容 修改后, IDOC状态调整为69状态 同时会产生一个70状态的IDOC,记录原始IDOC的内容 通过链接可以看到这两个IDOC的关系(只能在新生成的70的IDOC中查看关系) 修改后的IDOC,可以使用BD87重新执行. 查看IDOC产生的单据 处理成功的IDOC 也可以通过显示链接看到产生的单据信息,双击特定的单据,可以跳转到单据的显示界面. 单据与IDOC关系 IDOC产生的单据与IDOC的关系记录在下述表中 SRRELROLES 对象关系服务:角色 IDOCREL 在 IDoc 和应用程序对象之间的链接 关联表创建一个CDS视图,将会改进关系的访问 WE02对零售IDOC的局限 WP* 开头的IDOC类型无法通过WE02看到具体的报错信息 选择界面 执行WPER, 才能看到具体的报错信息 (该报错信息记录在表WPLST中,报错的IDOC一旦处理成功, 系统会清空WPLST表中的相关内容) 对WPLST 的统计可以快速查看零售IDOC的报错 附加功能 允许对IDOC执行相关的业务处理(这些功能可以批量执行. 针对节点下的多个IDOC同时执行,比如选中节点是地点, 执行功能则该地点下所有的IDOC都会执行指定的功能) 拒收: 报错信息关闭.该IDOC不再处理 取消/冲销: 成功的IDOC标记成未处理, BD87重新执行时, 系统使用反向的数量产生业务单据. 处理: 报错的IDOC重新处理, 零售类的IDOC 重新提交: 类似于处理功能. TIPS SPRING WPER中的冲销功能只是产生反向数量重新执行过账处理,产生新的单据.新生成的单据可能无法完全冲销掉已经生成的单据. 新单据与旧单据不是冲销关系,类似于退货关系,所以产生的单据的成本或其它定价可能和原单不一致 修改内容 双击可以修改IDOC内容 IDOC与单据的关系 成功的部分,可以看到产生的单据信息,双击可以跳转到单据的显示. 零售IDOC的关系与其它IDOC关系的记录表是一样的, 详见WE02中的介绍. 约定 如果你对这篇文章感兴趣,请帮忙点赞,在看,分享. (如果你真的喜欢这篇文章,请记得回来打个赏,作为支持我继续下去的动力,这是一个正反馈过程. 越多的人打赏,作者越有动力分享,读者就能享受更多的福利.毕竟打赏的金额富不了我,穷不了你,却能支持这个公众号长久发文.) 公众号 : syjf1976_abap ABAP开发技巧 微信号 : 392077 公众号主群加入受限, 请扫码加入副群后,向管理员申请加入主群@AbapCatalog.sqlViewName: 'ZDDL_WPUUMS_REL'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: '小票单据关系'
define view ZCDS_WPUUMS_REL
as select from srrelroles as a
inner join idocrel on a.roleid = idocrel.role_a
inner join srrelroles as b on b.roleid = idocrel.role_b
{
key a.objkey as obj_a,
key a.objtype as obj_a_type,
key a.roletype as obj_a_roletype,
key b.objkey as obj_b,
@EndUserText.label: '单号'
SUBSTRING(b.objkey, 1, 10) as ordnr,
substring(b.objkey,11,4) as mjahr,
b.objtype as obj_b_type,
b.roletype as obj_b_roletype
}