如何用ABAP代码读取SAP Business partner的附件数据

简介:

Sent: Wednesday, April 3, 2013 9:47 PM

Subject: RE: how to read attachment in BP overview UI

我写了一个report:

DATA:     ls_kw_business_object TYPE sibflporb,
          lv_relation_name      TYPE crmt_relation_name,
          lt_loios              TYPE skwf_ios,
          lt_phios              TYPE skwf_ios,
          ls_phios              TYPE skwf_io,
          lt_prop_result        TYPE crm_kw_propst,
          ls_prop_result        TYPE crm_kw_props.

  ls_kw_business_object-instid = 'F8D9601DAFD6674F94EA19C1CDBE37DA'.
  ls_kw_business_object-catid = 'BO'.
  ls_kw_business_object-typeid = 'BUS1006'.

CALL METHOD cl_crm_documents=>get_info
      EXPORTING
        business_object       = ls_kw_business_object
        newest_only           = 'X'
      IMPORTING
        ios_properties_result = lt_prop_result
        loios                 = lt_loios
        phios                 = lt_phios.

我解决问题的思路:

首先在UI上debug打开contact detail page的时候,contact上面的attachment是怎样从DB里面读出来并且显示在UI上的。
可以参考product的debug:

这个方法的输入是一个bol entity,输出就是ui上的attachment。所以我通过观察lr_entity里面的attribute就能知道为了读取document,需要哪些输入参数。

这里可以发现instID必须传BP的guid进去。

那下一个问题就是如何在你的代码上下文里拿到BP guid呢?我们只知道contact的id。
如果你观察BP的model,你会发现BuilHeader有三个association都能到另一个root object BuilContactPerson,

而BuilContactPerson也有association到BuilHeader。

如果你在UI上修改account ID = 400646的description,你会发现对应的contact ID = 400646的description也自动变了。所以这里的contact和account对应DB(BUT000)里面是同一条entry,BP的guid也就是contact的GUID。

所以你直接用contact的guid作为api的输入就可以了。

本文来自云栖社区合作伙伴“汪子熙”,了解相关信息可以关注微信公众号"汪子熙"。

相关文章
|
1月前
|
存储 数据处理 开发者
ABAP 如何把 unicode 代码点转换成字符
ABAP 如何把 unicode 代码点转换成字符
19 0
|
12天前
|
存储
使用 ABAP 代码打印出 SAP CRM 系统里所有维护了 Sales Area 的 business partner id
使用 ABAP 代码打印出 SAP CRM 系统里所有维护了 Sales Area 的 business partner id
19 0
|
1月前
|
BI
工具分享 - 将一个 ABAP Function Group 内所有 Function Module 按照代码行数从高到低排序并显示试读版
工具分享 - 将一个 ABAP Function Group 内所有 Function Module 按照代码行数从高到低排序并显示试读版
15 0
|
1月前
|
存储
ABAP 代码从十进制转二进制的方法
ABAP 代码从十进制转二进制的方法
21 0
|
6月前
|
存储 语音技术 UED
如何用 ABAP 代码进行文本转语音的输出工作
如何用 ABAP 代码进行文本转语音的输出工作
35 0
|
2月前
|
SQL 数据库
小技巧:如何让 ABAP OPEN SQL 代码具有自解释性(Self-Explained)
小技巧:如何让 ABAP OPEN SQL 代码具有自解释性(Self-Explained)
23 0
|
2月前
|
XML 持续交付 开发工具
SAPGUI 里 ABAP 代码导出成 PDF 格式的隐藏小技巧
SAPGUI 里 ABAP 代码导出成 PDF 格式的隐藏小技巧
25 0
|
2月前
|
XML 数据格式
使用 ABAP 代码将 Word 文档设置成只读
使用 ABAP 代码将 Word 文档设置成只读
22 0
|
3月前
小技巧分享:如何使用动态断点快速找到成对的 ABAP 内存 IMPORT 和 EXPORT 的代码位置
小技巧分享:如何使用动态断点快速找到成对的 ABAP 内存 IMPORT 和 EXPORT 的代码位置
22 0
|
3月前
答知识星球朋友疑问:执行 ABAP 代码出现超时的原因,背后的理论和解决方案试读版
答知识星球朋友疑问:执行 ABAP 代码出现超时的原因,背后的理论和解决方案试读版
17 0