Created by Jerry Wang, last modified on Apr 22, 2015

首先执行如下的report,检测某个business document是否存在pricing document:

REPORT ZORDER_READ_PRICE_PROCEDURE.
PARAMETERS: id type crmd_orderadm_h-object_id OBLIGATORY.
START-OF-SELECTION.
DATA: lt_guid type STANDARD TABLE OF crmd_orderadm_h-guid,lv_procedure TYPE PRCT_PRIC_PROC.
SELECT guid INTO TABLE lt_guid FROM crmd_orderadm_h WHERE object_id = id.
LOOP AT lt_guid ASSIGNING FIELD-SYMBOL(<guid>).CLEAR: lv_procedure.CALL FUNCTION 'CRM_PRIDOC_READ_PRICPROC_OW'EXPORTINGIV_HEADER_GUID = <guid>IMPORTINGEV_PRICING_PROCEDURE = lv_procedure.WRITE: / 'price procedure: ' , lv_procedure.
ENDLOOP.


输出pricing procedure,证明该document 存在pricing document:

输出pricing procedure,证明该document 存在pricing document:

成功删除:

再执行pricing procedure的read report,输出为空,证明link已经成功删除了:

REPORT zremove_price_data.PARAMETERS: id TYPE crmd_orderadm_h-object_id OBLIGATORY.START-OF-SELECTION.DATA: lt_guid TYPE STANDARD TABLE OF crmd_orderadm_h-guid,lv_guid LIKE LINE OF lt_guid,lt_link TYPE STANDARD TABLE OF crmd_link.SELECT guid INTO TABLE lt_guid FROM crmd_orderadm_h WHERE object_id = id.IF sy-subrc <> 0.WRITE: / 'the id you have specified is not valid' , id.RETURN.ENDIF.SELECT * INTO TABLE lt_link FROM crmd_link FOR ALL ENTRIES IN lt_guidWHERE objtype_hi = '05' AND objtype_set = '18' AND guid_hi = lt_guid-table_line.IF sy-subrc <> 0.WRITE: / 'no pricing document link for this order.'.RETURN.ENDIF.LOOP AT lt_guid INTO lv_guid.DELETE FROM crmd_link WHERE objtype_hi = '05' AND objtype_set = '18'AND guid_hi = lv_guid.IF sy-subrc = 0.WRITE: / 'pricing link for document:' , lv_guid,  ' deleted successfully.'.ELSE.WRITE: / 'pricing link for document:' , lv_guid,  ' deleted failed.'.ENDIF.ENDLOOP.

打印系统里所有具有Pricing document的One order ID

Created by Jerry Wang, last modified on Apr 21, 2015

执行如下report:

REPORT ZORDER_SEARCH_PRICING.
data: lt_order TYPE STANDARD TABLE OF crmd_orderadm_h,lt_link_com TYPE CRMT_LINK_COMT.
START-OF-SELECTION.SELECT * INTO TABLE lt_order FROM crmd_orderadm_h UP TO 1000 ROWSWHERE process_type <> 'TA'.LOOP AT lt_order ASSIGNING FIELD-SYMBOL(<order>).CLEAR: lt_link_com.CALL FUNCTION 'CRM_LINK_GET_OW'EXPORTINGiv_guid_hi               = <order>-guidiv_objname_hi            = 'ORDERADM_H'iv_objname_set           = 'PRIDOC'IMPORTINGet_link                  = lt_link_comEXCEPTIONSno_allocated_obj_found   = 1invalid_input_data       = 2undefined_internal_error = 3OTHERS                   = 4.IF sy-subrc = 0.WRITE: / 'id: ' , <order>-object_id, ' type: ' , <order>-process_type.ENDIF.ENDLOOP.

根据打印出的ID 到WebUI上根据Id查找:

如何手动删除一个business document和pricing document的relationship相关推荐

  1. html中js添加或删除activex,JS:操作样式表2 :用JS实现添加和删除一个类名的功能(addClass()和removeClass())...

    var box = document.getElementById("box"); box.id = "pox"; 将id = "box", ...

  2. 如何用JavaScript手动实现一个栈

    什么是栈(Stack) 栈是一种遵从后进先出(LIFO)原则的有序集合. 新添加的或待删除的元素都保存在栈的末尾,称为栈顶,另一端叫栈底. 在栈里,新元素都靠近栈顶,旧元素都接近栈底 现实中的例子 在 ...

  3. vue 分模块打包 脚手架_手动撸一个webpack4脚手架(仿vuecli2)

    其实vue的脚手架是真的多,vue的nuxt脚手架的,vue的webpack脚手架的,还有各种gitHub上的后台管理系统模板的..... 而vue-cli2的webpack模板,这个相信是大多数人最 ...

  4. uglifyjs报错 webpack_基于vue2.X的webpack基本配置,教你手动撸一个webpack4的配置

    webpack说复杂也不复杂.不复杂,核心概念不外乎是entry, output, loader, plugins.webpack4还新增了optimization选项,用于代码分割和打包优化.现在w ...

  5. linux下手动删除数据库实例

    linux下手动删除数据库实例,直接删除相应的目录就可以了,不多说了.... 1. $ORACLE_HOME/dbs/ [oracle9@frogger dbs]$ pwd /u01/app/orac ...

  6. 三、如何手动实现一个微前端框架雏形

    如何手动实现一个微前端框架雏形 一.了解微前端 1. 什么是微前端 为了解决一整块儿庞大的前端服务所带来的变更和拓展方面的限制,将整体前端服务拆分成一些更小.更简单的,能够独立开发.测试部署的小块儿. ...

  7. vtk删除一个actor_如何构建一个基于actor的简单区块链

    vtk删除一个actor Scalachain is a blockchain built using the Scala programming language and the actor mod ...

  8. vsc写vue生成基本代码快捷键_基于vue2.X的webpack基本配置,教你手动撸一个webpack4的配置...

    webpack说复杂也不复杂.不复杂,核心概念不外乎是entry, output, loader, plugins.webpack4还新增了optimization选项,用于代码分割和打包优化.现在w ...

  9. 3.5链表----链表中元素的删除(只删除一个元素情况)

    3.5链表----链表中元素的删除(只删除一个元素情况) 该部分与上一节是息息相关的,关于如何在链表中删除元素,我们一步一步来分析: 一.图示删除逻辑 假设我们需要在链表中删除索引为2位置的元素,此时 ...

最新文章

  1. 3D 视觉 相关知识-SLAM框架-常见方案对比
  2. 深入理解 Spring 之源码剖析IOC
  3. Hystrix指标窗口实现原理
  4. ATEN—第九章OSPF多区域的配置
  5. 隐藏网页文件的后缀(IIS测试通过)!
  6. 远控免杀专题11-Avoidz免杀
  7. 分布式版本控制系统入门
  8. html怎么播放下一首,javascript – HTML5音频播放列表 – 第一个结束后如何播放第二个音频文件?...
  9. 不能使用for循环,传入n和m, 生成一个长度为n,每一项都是m的数组
  10. git暂存工作区stash
  11. 讨论 innodb_log_block_size 变量
  12. Android 提高 5 SurfaceView绘图容器的基本使用
  13. 通信原理(四) 信源编码
  14. 我的世界java追踪光影_探索MC的光线追踪 真实光影下的马赛克世界
  15. 银行客户流失分析预测
  16. Supervised Contrastive Learning浅读
  17. Kinect(XBOX360)相机在ROS下标定
  18. java制作小鱼吃大鱼_大鱼吃小鱼游戏(Java编写)
  19. js、css 实现table表头固定
  20. STM32-Chapter1-6电机开发概述,定时器之基本定时器定时高级定时器互补输出输入捕获输出比较实验

热门文章

  1. JS基础--条件判断(3)
  2. 高德地图JavaScript API开发研究
  3. ASP.Net Telerik RadGrid动态生成表头
  4. 揭秘HTML5和CSS3
  5. 文献学习(part87)--Linearized Alternating Direction Method with Adaptive Penalty for Low-Rank ...
  6. 第三次学JAVA再学不好就吃翔(part76)--Collection类
  7. iis7+php7.1配置,IIS7.X配置PHP运行环境小结
  8. SAP HANA Cloud 简介
  9. SAP Fiori 应用里图标(Icon)的渲染原理和使用技巧
  10. SAP从业者群里讨论SAP技术的更新换代问题