You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从OIC映射器向ERP Rest Adapter传递NULL值

在OIC中通过ERP Adapter将发票暂存表字段设为NULL的解决方法

以下是几个可行的解决思路,按优先级排序:

1. 直接使用映射器的NULL字面量

在OIC映射器中,给目标字段直接赋值不带引号的大写NULL:

  • 打开映射器,定位到需要更新的暂存表字段
  • 选择赋值方式为「Literal」,输入NULL(不要加任何引号)
  • 保存映射后重新触发集成

ERP Adapter会自动将这个值解析为ERP Cloud API可识别的NULL,而非字符串,从而覆盖原有错误值。

2. 自定义XSLT实现xsi:nil属性

如果映射器直接赋值无效,可通过自定义XSLT片段实现:

<xsl:element name="YourTargetField">
  <xsl:attribute name="xsi:nil">true</xsl:attribute>
</xsl:element>
  • 将YourTargetField替换为实际的暂存表字段名
  • 在映射器中切换到「XSLT」模式,替换原字段的映射逻辑
  • 确保xsi命名空间已正确绑定(OIC通常会自动处理,无需手动添加)

这种方式会生成符合XML规范的空值节点,ERP API会识别为NULL。

3. 检查ERP Adapter的更新配置

确认Adapter的操作模式为**「Update」而非「Merge」**:

  • 进入ERP Adapter的配置页面,在「操作」步骤选择「Update」操作
  • 若有「允许空值覆盖」类的选项,务必勾选

Merge模式下,空白或未赋值的字段会保留原有值,只有Update模式才会强制覆盖为指定的NULL。

注意事项

  • 不要传递空白字符串''或"",ERP API会将其视为有效字符串,不会转换为NULL
  • 使用xsi:nil="true"时,字段节点不能包含任何文本内容,否则会被识别为非空值

内容的提问来源于stack exchange,提问作者Nick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 08:55:31