Обновление SOAP NetSuite для добавления адреса в адресную книгу - PullRequest
0 голосов
/ 03 апреля 2019

У меня есть клиент в 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 Ответ

2 голосов
/ 03 апреля 2019

Каждый (или в большинстве случаев) элемент списка * имеет атрибут replaceAll. Установите для этого параметра значение false, и вы будете обновлять или добавлять в список только в том случае, если в адресной книге есть внутренний идентификатор

.

например. что-то вроде:

<q1:addressbookList replaceAll="false">
   <q1.addressbook>...</q1.addressbook>
</q1:addressbookList>

https://system.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2018_1/schema/other/customeraddressbooklist.html?mode=package

...