#soap #netsuite
#soap #netsuite
Вопрос:
У меня есть клиент в 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>
Ответ №1:
Каждый (или, во всяком случае, большинство) элемент списка * имеет атрибут replaceAll. Установите для этого значение false, и вы будете обновлять или добавлять в список только в том случае, если адресная книга не имеет internalId
например, что-то вроде:
<q1:addressbookList replaceAll="false">
<q1.addressbook>...</q1.addressbook>
</q1:addressbookList>