在客户记录上多次插入地址。

问题描述 投票:0回答:1

我们正在使用REST API来 Upsert客户记录。PUT中包括地址记录。

每次我们发送PUT时,客户记录都会按预期更新。问题是,每次我们运行请求时,一个新的地址被添加到地址簿中。

"companyName"=> $result['CLIENTNAME'],
"email"=> '',
"emailPreference"=> "PDF",
"emailTransactions"=> false,
"externalId"=> $netsuiteCustomerId,
"isinactive"=> false,
"phone"=> $result['TELEPHONENO'],
"subsidiary"=> ["id"=> "2"],
"terms"=> ["externalId"=> "PTTRM".$result["TERMID"]],
"vatRegNumber"=> $result['ABN'],
"addressbook" => array(
    "items" => array(
        array(
            "label"=> $address['addr1'],
            "addressbookaddress" => $address = array(
                "addr1" => $result['ADDRESS1'],
                "addressee" => $result['CLIENTNAME'],
                "addrText"=> $result['ADDRESS1']."\n".$result['ADDRESS2'],
                "externalId" => 'ADDR_'.$netsuiteCustomerId,
            );
        )                
    )
)

添加 externalId 到地址似乎并不奏效。我们有多个相同ID的地址。SOAP API允许一个 replaceAll 属性,但在REST API上并不存在。

netsuite
1个回答
0
投票

我还没有尝试过这样做,但你可能想再次检查文档(https:/docs.oracle.comcloudlatestnetsuitecs_gsNSTRWNSTRW.pdf。). 它显示了在查询参数中使用'replace'替换子列表的示例。

REST API浏览器也在请求参数下提到了'replace'。

© www.soinside.com 2019 - 2024. All rights reserved.