CM: 如何通过attachment的physical instance id反查到所属的business object ID
Created by Jerry Wang, last modified on Mar 21, 2014
通過(guò)這個(gè)wiki,我們很容易能得到一個(gè)business object instance,例如product,下面包含的attachment 信息。
那么反過(guò)來(lái), 已知一個(gè)attachment的physical instance guid,也能找到這個(gè)attachment是屬于哪個(gè)product instance的。
例如我們已知一個(gè)physical instance的guid 為FA163E5CA86F1ED3A888F18542E37D7B, 可以通過(guò)下面的代碼找到是哪一個(gè)product 包含了該attachment:
“因?yàn)槿魏我粋€(gè)physical instance一定對(duì)應(yīng)一個(gè)logical instance(多對(duì)一的關(guān)系),所以可以用select single的方式找到對(duì)應(yīng)的logical instance guid:
SELECT SINGLE * INTO ls_ph FROM bdsphio22 WHERE phio_id = 'FA163E5CA86F1ED3A888F18542E37D7B'. CHECK sy-subrc = 0." relationship表里的naming convention:</>
lv_instance_b = 'L/' && ls_ph-lo_class && '/' && ls_ph-loio_id.
" business object和其attachment 的對(duì)應(yīng)關(guān)系統(tǒng)一維護(hù)在SKWG_BREL這張表里
SELECT SINGLE * INTO ls_relation FROM skwg_brel WHERE instid_b = lv_instance_b AND typeid_a = 'BUS1178'.
CHECK sy-subrc = 0.
" product的guid就包含在ls_relation-instid_a里
SELECT SINGLE * INTO ls_product FROM comm_product WHERE product_guid = ls_relation-instid_a.
CHECK sy-subrc = 0.
"最終輸出product ID
WRITE: / ls_product-product_id.
測(cè)試結(jié)果和UI上觀察到的attachment一致:
也可以直接使用function module CRM_KW_DOCUMENT_ROOTS_GET
總結(jié)
以上是生活随笔為你收集整理的CM: 如何通过attachment的physical instance id反查到所属的business object ID的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 微信红包怎么设置皮肤(微信公众平台)
- 下一篇: CM: 如何通过table SKWG_B