在 SAP PI/PO 的接口开发里,XML 报文往往只是业务数据的骨架,真正让业务流程完整闭环的内容,常常藏在附件里。采购订单可以有 PDF 版合同,质量检验单可以带上图片,供应商对账可以附带 Excel 文件,DocuSign 这类电子签场景也经常绕不开签署后的 PDF 文档。单独看 XML,系统知道单号、供应商、金额、日期;加上附件,业务人员才能看到盖章文件、检验照片、发票扫描件,整个流程才算完整。SAP Proxy Runtime 提供的 Attachments 机制,就是为这种场景准备的。它允许我们在 Consumer Proxy 或 Provider Proxy 的输出消息上挂接附件。同步通信场景里,Provider Proxy 也可以把附件放到响应消息里返回。SAP 官方文档明确说明,附件可以是任何追加到消息上的数据,例如文本或图形;通过 MessageSpecifier 对象,原则上可以向 Consumer Proxy 或同步场景里的 Provider Proxy 输出消息追加不限数量的附件。这里的关键点不是附件数量,而是附件所处的位置。附件并不是 XML 主体里某个字段的字符串,也不应该简单粗暴地塞进 Base64 节点里。它是和消息一起传输、但在编程模型上独立于主 Payload 的数据块。这样设计的好处很明显,业务结构继续保持清爽,文档、图片、二进制文件交给附件机制处理,发送端和接收端各自通过统一接口访问它。Attachments 不只是技术细节,而是接口边界设计的一部分很多项目一开始会把附件问题处理得很随意。常见做法是把 PDF 转成 Base64,放进 XML 的某个字段里,再由接收方解码。这个办法看起来省事,短期
SAP PI/PO Proxy Runtime 附件机制深度解析,MessageSpecifier 如何让业务消息带上文档、图片与二进制内容
在 SAP PI/PO 的接口开发里,XML 报文往往只是业务数据的骨架,真正让业务流程完整闭环的内容,常常藏在附件里。采购订单可以有 PDF 版合同,质量检验单可以带上图片,供应商对账可以附带 Excel 文件,DocuSign 这类电子签场景也经常绕不开签署后的 PDF 文档。单独看 XML,系统知道单号、供应商、金额、日期;加上附件,业务人员才能看到盖章文件、检验照片、发票扫描件,整个流程才算完整。SAP Proxy Runtime 提供的 Attachments 机制,就是为这种场景准备的。它允许我们在 Consumer Proxy 或 Provider Proxy 的输出消息上挂接附件。同步通信场景里,Provider Proxy 也可以把附件放到响应消息里返回。SAP 官方文档明确说明,附件可以是任何追加到消息上的数据,例如文本或图形;通过 MessageSpecifier 对象,原则上可以向 Consumer Proxy 或同步场景里的 Provider Proxy 输出消息追加不限数量的附件。这里的关键点不是附件数量,而是附件所处的位置。附件并不是 XML 主体里某个字段的字符串,也不应该简单粗暴地塞进 Base64 节点里。它是和消息一起传输、但在编程模型上独立于主 Payload 的数据块。这样设计的好处很明显,业务结构继续保持清爽,文档、图片、二进制文件交给附件机制处理,发送端和接收端各自通过统一接口访问它。Attachments 不只是技术细节,而是接口边界设计的一部分很多项目一开始会把附件问题处理得很随意。常见做法是把 PDF 转成 Base64,放进 XML 的某个字段里,再由接收方解码。这个办法看起来省事,短期