编程语言
首页 > 编程语言> > php-通过Netsuite中的自定义字段搜索客户

php-通过Netsuite中的自定义字段搜索客户

作者:互联网

我能够使api在php中工作,并通过内部ID搜索客户.
但是我有一种情况,我将通过自定义字段搜索客户.
在“客户并具有一个自定义”选项卡下,其中包含多个域名和域详细信息.

例如 :

主要搜索条件:域名

Netsuite PHP API中怎么可能?非常感谢您的帮助.我只是NetSuite的新手.
我将如何修改此示例代码以按自定义字段进行搜索?

$service = new NetSuiteService();
$request = new GetRequest();
$request->baseRef = new RecordRef();
$request->baseRef->internalId = "1780";
$request->baseRef->type = "customer";
$getResponse = $service->get($request);

if (!$getResponse->readResponse->status->isSuccess) {
    echo "GET ERROR";
} else {
    $customer = $getResponse->readResponse->record;
    //var_dump($customer);
    echo "GET SUCCESS, customer:";
    echo "\nCompany name: ". $customer->companyName;
    echo "\nInternal Id: ". $customer->internalId;
    echo "\nEmail: ". $customer->email;
    echo "\nCustomerID: ". $customer->firstName;
}

好的,我正在尝试从egrubaugh360获取所有域的自定义记录.

$service = new NetSuiteService();
$request = new GetRequest();

$request->baseRef = new CustomRecordRef();
$request->baseRef->internalId = "47";
//$request->baseRef->externalId = "xxxx";
$request->baseRef->typeId = "custom_list_domains";

$getResponse = $service->get($request);

var_dump($getResponse);

if (!$getResponse->readResponse->status->isSuccess) {
    echo "GET ERROR";
} else {
    var_dump($getResponse->readResponse->record);
    echo "GET SUCCESS";
}

我不确定要在“ typeId”中输入什么,该输入的类型到底是什么?它给我错误“无效的自定义记录类型键”

object(GetResponse)#8 (1) { ["readResponse"]=> object(ReadResponse)#9 (2) { ["status"]=> object(Status)#10 (2) { ["statusDetail"]=> array(1) { [0]=> object(StatusDetail)#11 (3) { ["code"]=> string(26) "INVALID_CSTM_RCRD_TYPE_KEY" ["message"]=> string(31) "Invalid custom record type key." ["type"]=> string(5) "ERROR" } } ["isSuccess"]=> bool(false) } ["record"]=> NULL } }

解决方法:

这是通过自定义字段搜索客户的一般示例.

您可以修改以适合您的需求.

$NSservice = new NetSuiteService();
$NSservice->setSearchPreferences(false, 10);

$cs = new CustomerSearch();
$csb = new CustomerSearchBasic();

$domain = new SearchCustomStringField();
$domain->internalId = 'yourcustomfieldinternalid';
$domain->searchValue = 'text you are searching for';
$domain->operator = 'is';

$scfl = new SearchCustomFieldList();
$scfl->customField = array($domain);
$csb->customFieldList = $scfl;
$cs->basic = $csb;

$request = new SearchRequest();
$request->searchRecord = $cs;

$searchResponse = $NSservice->search($request);

标签:netsuite,api,php
来源: https://codeday.me/bug/20191122/2063455.html