开放通道集成-如何向有效负载添加自定义属性?

2020-09-14 07:41发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好, 我们已经实现了开放...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好,

我们已经实现了开放渠道集成,以通过CPI将CSV文件发送到外部SFTP服务器。

问题在于,现在我们在"营销:广告系列"中创建了几个字段。 这些字段显示在广告系列中,并且可以在用户界面中进行填写->到目前为止一切顺利。

现在,我们也希望将这些数据连同有效载荷一起作为测量数据添加到csv文件,如以下xml文件概述中所示:

存在BAdI"(4)开放渠道:增强数据传输的有效负载"。 在此BAdI中,存在表" TARGET_GROUP_MEMBER_ATTRIBUTES",其描述如下:该表包含已传输数据的元数据。

我们如何增强此BAdI,以便将我们的自定义属性发送到有效负载内?

BR/

(73.5 kB)
3条回答
半个程序猿
2020-09-14 07:51

嗨,

BAdI"(4)开放渠道:增强数据传输的有效负载"仅用于增强具有导出定义中某些属性的每个目标组成员的有效负载,但是由于您要将广告系列标题属性添加到消息标题中 我的建议是实施"(3)开放渠道:定义执行全局设置",并在"更改表HEADER_ATTRIBUTES"中附加其他自定义广告系列参数。

为此,您可以在运行时使用cl_cuan_campaign_helper_api => campaign_root_read(导出iv_id = lv_campaign_id)对广告系列进行读取调用。

数据:lv_campaign_id TYPE cuan_initiative_id,
           ls_header_Attr类似于HEADER_ATTRIBUTES行,
           ls_campaign_root_api类型cuan_s_campaign_root_api。


     package_size =20。"更改在一个包中处理并在odata有效负载中传输的目标组成员的数量
     CHECK_PERMISSION = abap_false。


     读取表HEADER_ATTRIBUTES,分配了具有键param_name ='CAMPAIGN'的FIELD-SYMBOL()。
     如果sy-subrc eq 0。
        lv_campaign_id = -参数值。
     万一。


    ls_campaign_root_api = cl_cuan_campaign_helper_api => campaign_root_read(导出iv_id = lv_campaign_id)。


     如果ls_campaign_root_api-yy1_goal_min不是INITIAL。
     清除ls_header_attr。
     ls_header_attr-param_name ='ZOC_INI_GOAL'。
     ls_header_attr-param_value = ls_campaign_root_api-yy1_goal_min。
     将ls_header_Attr附加到HEADER_ATTRIBUTES。
     万一。


 

谢谢

Saurabh

一周热门 更多>