我在NetSuite有一个客户,地址簿中有3个送货地址 - 1个默认值,2个不是默认值。
我想简单地使用SOAP更新添加另一个(非默认)送货地址。
当我发布下面的内容时,它不仅会覆盖我的第一个非默认地址,它实际上会删除另一个非默认地址。
如何以不同的方式定义它,以便它只是将我的新地址添加到客户的地址簿中?
<q1:addressbook>
<q1:defaultShipping>false</q1:defaultShipping>
<q1:addressbookAddress>
<addr1 xmlns="urn:common_2016_1.platform.webservices.netsuite.com">new address line</addr1>
<addrPhone xmlns="urn:common_2016_1.platform.webservices.netsuite.com">555-555-5555</addrPhone>
<city xmlns="urn:common_2016_1.platform.webservices.netsuite.com">New York</city>
<country xmlns="urn:common_2016_1.platform.webservices.netsuite.com" internalId="_unitedStates"/>
<state xmlns="urn:common_2016_1.platform.webservices.netsuite.com">NY</state>
<zip xmlns="urn:common_2016_1.platform.webservices.netsuite.com">10001</zip>
</q1:addressbookAddress>
</q1:addressbook>
每个(或大多数)* List元素都有一个replaceAll属性。将其设置为false,除非地址簿具有internalId,否则您只会更新或添加到列表中
例如就像是:
<q1:addressbookList replaceAll="false">
<q1.addressbook>...</q1.addressbook>
</q1:addressbookList>