• SAP PI PO 接口常见问题处理:应用程序使用内容计划


    您遇到以下两种情况之一:
    •XI 消息通过 XI 适配器发送,内容计划值将在来自应用程序的 HTTP 头中设置。
    •通过 XI 适配器接收 XI 消息,并且将在应用程序中处理来自 HTTP 头的内容计划。

    原因和条件

    正在将 SAP Process Integration 用作应用程序系统中的本地集成引擎。

    具有上述场景之一。对于技术适配器(例如文件适配器),将有效负载写入文件。例如,同时将文件名发送到文件适配器。先前支持的 XI 消息协议中的 HTTP 头字段,例如“内容类型”或“内容描述”不能用于此。

    解决方案

    XI 适配器提供从 XI 请求消息的 HTTP 头设置或接收内容计划的选项(无确认,因为这不包含附件)。

    示例:

    内容计划:attachment;filename="soap-a3b11c506f1d11e2cf05000000829f42@sap.com.xml"

    发送方系统(本地集成引擎)

    在发送方系统中,应用程序调用出站代理并由此生成 XI 消息。应用程序可以使用 SAP Note 2422045 中的 API 来设置动态头中的值。

    如果上述示例使用名为 "MainDocument" 的附件发送,动态头设置如下
    •命名空间 "http://sap.com/xi/XI/Message/30/Disposition"
    •名称 "MainDocument"
    •值 "attachment;filename=soap-a3b11c506f1d11e2cf05000000829f42@sap.com.xml"

    在出站 XI 适配器中,每个附件的内容计划值由动态头确定。XI 消息的每个附件都以名称列在清单中,从而从动态头接收内容计划的值。

    示例清单:

    1. "1.0" encoding="utf-8"?>
    2. <SAP:Manifest>
    3. <SAP:Payload xlink:href="cid:payload-4310261D81C41EDA98DB006272CCB1A9@sap.com">
    4. <SAP:Name>MainDocumentSAP:Name>
    5. <SAP:Description/>
    6. <SAP:Type>ApplicationSAP:Type>
    7. <SAP:Disposition>
    8. attachment;filename=soap-a3b11c506f1d11e2cf05000000829f42@sap.com.xmlSAP:Disposition> SAP:Payload>
    9. SAP:Manifest>

    因此,管理员可以在接收方系统的 XI 监控器中看到每个附件的相关内容计划值。

    从而为 HTTP 头中的附件设置内容规划:
    内容计划:attachment;filename=soap-a3b11c506f1d11e2cf05000000829f42@sap.com.xml
    中央集成服务器 (IS)

    在出站 XI 适配器中,将 XI 消息发送到接收方系统。接收方系统的类型决定确定哪种配置以及如何处理内容计划:
    •接收方类型:应用程序系统中的中央集成服务器或本地集成引擎

    将确定与通信通道的接收方协议,以及这种情况下,确定在 XI 消息处理期间将如何使用内容计划的操作:

    通信通道中的技术属性 "passDisposition":
    ◦属性不存在,则使用缺省值 "0" => 内容计划处于非活动状态
    ◦存在值为 "0" 的属性 => 内容计划处于非活动状态
    ◦存在值为 "1" 的属性 => 内容计划处于活动状态
    •接收方类型:适配器框架 (AFW) => 内容计划处于活动状态


    确定内容计划操作后,将执行以下步骤。
    •活动
    ◦在清单中设置动态头中的内容计划(如果可用)。
    如果动态头中的内容计划值为初始值,则删除内容计划。
    ◦清单中的内容计划在 HTTP 头中设置,如上所述。
    •非活动
    ◦在清单中删除附件的内容计划值。
    ◦将删除命名空间 = "http://sap.com/xi/XI/Message/30/Disposition" 的动态头中的条目。

    接收方系统(本地集成引擎)

    在入站 XI 适配器中,确定每个附件的内容计划值。XI 消息的每个附件都列在清单中,并带有名称和内容计划。

    因此,管理员可以在 XI 监控器中看到每个附件的相关内容计划值。

    示例清单:

    1. "1.0" encoding="utf-8"?>
    2. <SAP:Manifest>
    3. <SAP:Payload xlink:href="cid:payload-4310261D81C41EDA98DB006272CCB1A9@sap.com">  
    4. <SAP:Name>MainDocumentSAP:Name>
    5. <SAP:Description/>
    6. <SAP:Type>ApplicationSAP:Type>
    7. <SAP:Disposition>
    8. attachment;filename=soap-a3b11c506f1d11e2cf05000000829f42@sap.com.xm
    9. lSAP:Disposition>
    10. SAP:Payload>
    11. SAP:Manifest>

    此外,将内容计划值与清单中的附件名称一起写入 XI 消息的动态头。

    如果上述示例使用名为 "MainDocument" 的附件发送,动态头如下所示:
    •命名空间 "http://sap.com/xi/XI/Message/30/Disposition"
    •名称 "MainDocument"
    •值 "attachment;filename=soap-a3b11c506f1d11e2cf05000000829f42@sap.com.xml"

    应用程序的入站代理在接收方系统中调用。应用程序可使用 SAP Note 2422045 中的 API 来访问动态头中的条目。
     

  • 相关阅读:
    linux搭建邮件服务器 - postifx + SSL + 465端口配置
    Python神经网络入门与实战,神经网络算法python实现
    SpringBoot笔记
    【毕业设计源码】基于java的足球联赛管理系统的设计与实现
    jQuery类库
    C++单调向量算法:132模式枚举1简洁版
    3D可视化智慧园区建模监控系统,数字化解决方案
    [vite] 带看文档配置postcss-pxtorem
    【季报分析】美团:真的很美
    The rate shock 利率冲击 | 经济学人中英双语精读笔记
  • 原文地址:https://blog.csdn.net/dwjnhkbc123/article/details/127096314