In the beginning I consider it is very easy to delete attachments via code, just like below. I have defined one method with following two importing parameters and one returning parameter:
(1) iv_bor_type type string – the BOR type of your business object (2) iv_uuid type raw16 – the guid of your business object instance (3) rv_successful type abap_bool – indicates whether the deletion is successful
DATA: ls_bo TYPE SIBFLPORB,
lt_loios TYPE SKWF_IOS,
ls_loios TYPE SKWF_IO,
ls_error TYPE SKWF_ERROR,
lt_badios TYPE SKWF_IOERRS,
lv_del_flag TYPE ABAP_BOOL.
ls_bo-instid = iv_uuid.
ls_bo-typeid = iv_bor_type.
ls_bo-catid = 'BO'.
rv_successful = abap_false.
CALL METHOD cl_crm_documents=>get_info
EXPORTING
business_object = ls_bo
IMPORTING
loios = lt_loios.
LOOP AT lt_loios INTO ls_loios.
CALL METHOD cl_crm_documents=>lock
EXPORTING
is_bo = ls_bo
is_loio = ls_loios
IMPORTING
es_error = ls_error.
IF ls_error IS NOT INITIAL.
RETURN.
ENDIF.
ENDLOOP.
CALL METHOD cl_crm_documents=>delete
EXPORTING
business_object = ls_bo
ios = lt_loios
IMPORTING
bad_ios = lt_badios
error = ls_error.
IF ls_error IS INITIAL. " deletion failed
rv_successful = abap_true.
ENDIF.
Through testing I found it works perfectly well with most of BOR type like product, IBASE, BP, and one order.
However, it does not work for my new BOR type CRMSOCPOST in CRM7.0 EHP3 – the relationship between my BO and the attachments is not really deleted until an explicit call COMMIT WORK is written in the report. However, for any other standard CRM BOR type, the COMMIT WORK is not needed. Why? After some debugging finally I find answer. Have you already observed the comments below? It is written quite clearly: if the business object exists in the database, the COMMIT WORK is not needed.
Back to my case, since CRMSOCPOST is a new BOR type created in CRM7.0 EHP3, the function module does not recognize it, so the code reached line 225, and then the BO instance is regarded as non-exist in DB. So an explicit COMMIT WORK is always necessary to make deletion work.
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
相关推荐
在SAP CRM中,产品目录的发布涉及到数据的复制和更新,这需要系统能够正确地建立和维护索引以确保高效的数据检索。当这个过程失败时,通常需要检查几个关键点。SRMO(Service Request Management Object)的连接测试...
标题与描述中的"SAP CRM 7.0 PA-CR100"指向的是SAP公司的一款企业级软件——客户关系管理(Customer Relationship Management)系统的一个特定版本与课程代码。SAP CRM是SAP Business Suite的一部分,它帮助企业优化...
BP主数据是SAP CRM主数据的重要部分,这里简要介绍几个常用的CRM BP主数据透明表 一、BP主数据普通数据部分 二、BP主数据ERP销售数据 三、BP主数据关系部分数据 四、其他业务数据
本章节将针对用户在使用过程中可能遇到的一些常见问题提供解答,如忘记密码如何重置、如何恢复已删除的数据等。 #### 五、注意事项 - 在使用过程中应确保数据的安全性和隐私保护。 - 定期备份重要数据以防意外丢失...
标签"源码"表明内容可能涉及到SAP CRM系统的一些底层代码或者数据结构的实现细节,这对于开发者来说是非常有价值的。"工具"可能指的是用于查询、分析或维护这些CRM表格的实用程序,比如ABAP开发环境、SQL查询工具...
- **定义**:GUID (Globally Unique Identifier) 是SAP CRM 中用于唯一标识数据记录的一种特殊编码机制。通常采用16位、22位或32位 RAW 字符格式。例如,ORDER_GUID 为32位,POD (Point Of Delivery) GUID 为22位。 ...
2. 开发和测试:软件开发人员可以在这个环境中构建、测试和调试自定义代码,确保其与SAP CRM的兼容性。 3. 演示和展示:销售人员和顾问可以用它来向潜在客户展示SAP CRM的功能和价值。 下载和安装SAP CRM 2007 ...
SAP CRM系统介绍SAP CRM系统介绍SAP CRM系统介绍SAP CRM系统介绍SAP CRM系统介绍
四、数据分析与挖掘:SAP CRM提供了数据分析与挖掘功能,帮助企业分析客户行为、预测销售趋势和优化销售策略。 五、实时企业:SAP CRM提供了实时企业功能,帮助企业实时了解客户需求、销售情况和市场趋势,提高销售...
### SAP CRM IPC增强知识点详解 #### 一、SAP CRM IPC增强概述 SAP CRM (Customer Relationship Management) 是一个全面的解决方案,旨在帮助企业管理和优化与客户之间的互动过程。IPC(Interactive Pricing ...
SAP CRM 2007 IDES
### SAP CRM管理方案介绍 #### 一、总体方案概述 SAP CRM(Customer Relationship Management)是一种全面的企业级解决方案,旨在帮助企业管理与客户的交互过程。它不仅涵盖了传统的市场营销、销售和服务等核心...
CRM原厂解决方案 SAP标准CRM业务模式介绍,CRM产品
SAP公司全套CRM解决方案覆盖了销售、市场营销、售后服务、客户分析、客服中心、电子商务、社交CRM及移动手机等各个方面。客户可按当前业务所需选择的相关功能,应用程序可在6-8周内迅速部署并投入使用。新的SAP CRM...
CRM系统能够处理从客户数据的收集、管理到客户交互过程中的订单处理、服务请求等业务流程,是SAP商务套件的一部分,能够与SAP ERP(企业资源计划)系统进行紧密集成。 SAP CRM的基础知识通常包括对于其核心组件的...
在SAP CRM系统中,数据通常被组织成表的形式,这些表可以分为两类:主数据表(Master Data Tables)和事务数据表(Transaction Data Tables)。这些表是组织和管理SAP CRM系统中各种信息的基础。 主数据表涉及的是...
SAP CR100 用于SAP CRM培训。
1. 数据挖掘技术:使用数据挖掘算法来分析大规模数据,发现隐藏的模式和规律。 2. 业务智能技术:使用业务智能工具来分析和可视化数据,获取有价值的商业信息和见解。 3. 报表设计技术:使用报表设计工具来设计和...
通过阅读“SAP SAPCRM课程中文自学笔记.pdf”,你可以深入学习以上各个知识点,并逐步掌握SAP CRM的使用和管理,为企业的客户关系管理提供强大的技术支持。在实践中不断探索,你将成为SAP CRM领域的专家,为企业带来...