Очень надеюсь на помощь в этом.
Я пытаюсь получить Заказы на продажу Партнерами на основе пользовательского статуса (поля) для Заказа на продажу. Текст этого пользовательского поля: Hold for Release .
. Я могу успешно получать записи транзакций по партнеру, но я не могу, судя по всему, понять, как выбирать только те, которые имеют имя Hold for Release
. В результате получается огромный возвращенный набор данных, который мне действительно нужно минимизировать.
Я использую следующий код:
$service = new NetSuiteService();
$service->setSearchPreferences(true,100);
$customerSearchBasic = new PartnerSearchBasic();
$searchValue = new RecordRef();
$searchValue->type = 'partner';
$searchValue->internalId = 39;
$searchMultiSelectField = new SearchMultiSelectField();
setFields($searchMultiSelectField, array('operator' => 'anyOf', 'searchValue' => $searchValue));
$customerSearchBasic->internalId = $searchMultiSelectField;
$transactionSearchBasic = new TransactionSearchBasic();
$searchMultiSelectEnumField = new SearchEnumMultiSelectField();
setFields($searchMultiSelectEnumField, array('operator' => 'anyOf', 'searchValue' => "_salesOrder"));
$custSearchField = new SelectCustomFieldRef();
$custSearchField->value = new ListOrRecordRef();
$custSearchField->value->internalId = 1;
$custSearchField->internalId = "custbody5";
$transactionSearchBasic->type = $searchMultiSelectEnumField;
$transactionSearch = new TransactionSearch();
$transactionSearch->basic = $transactionSearchBasic;
$transactionSearch->partnerJoin = $customerSearchBasic;
//$transactionSearch->customSearchJoin = $csb;
$transactionSearch->customFieldList = new CustomFieldList();
$transactionSearch->customFieldList->customField = array($custSearchField);
$request = new SearchRequest();
$request->searchRecord = $transactionSearch;
$searchResponse
= $service->search($request);
Но он не возвращает только удержание для транзакций Release. Часть возвращенных данных выглядит следующим образом:
["customFieldList"]=>
object(CustomFieldList)#4511 (1) {
["customField"]=>
array(71) {[3]=>
object(SelectCustomFieldRef)#4516 (3) {
["value"]=>
object(ListOrRecordRef)#4517 (4) {
["name"]=>
string(16) "Hold for Release"
["internalId"]=>
string(1) "1"
["externalId"]=>
NULL
["typeId"]=>
string(3) "173"
}
["internalId"]=>
string(3) "884"
["scriptId"]=>
string(9) "custbody5"
}
Те записи, которые мне нужны, и эти, которые мне нужно отфильтровать:
[2]=>
object(SelectCustomFieldRef)#4754 (3) {
["value"]=>
object(ListOrRecordRef)#4755 (4) {
["name"]=>
string(22) "Released to Production"
["internalId"]=>
string(1) "5"
["externalId"]=>
NULL
["typeId"]=>
string(3) "173"
}
["internalId"]=>
string(3) "884"
["scriptId"]=>
string(9) "custbody5"
}
Что в мире я делаю неправильно?