簡體   English   中英

使用Netsuite php工具包搜索客戶過濾的銷售訂單

[英]Search sales orders filtered by customer using Netsuite php toolkit

我需要搜索特定客戶的所有銷售訂單(使用客戶內部ID或實體ID)。 當我在腳本下面運行時,它會返回所有銷售訂單(頁面為20)。 如何過濾客戶的結果?

require_once 'PHPToolkit/NetSuiteService.php';

$service = new NetSuiteService();


    $service->setSearchPreferences(false, 20);

    $SearchEnumMultiSelectField = new SearchEnumMultiSelectField();
    $SearchEnumMultiSelectField->searchValue = Array('_salesOrder');
    $SearchEnumMultiSelectField->operator = 'anyOf';

    $search = new TransactionSearchBasic();
    $search->type = $SearchEnumMultiSelectField;

    //$search->customForm = new SearchMultiSelectField();
    //$id = new RecordRef();
    //$id->internalId = 'xxxxxx';  customer internal Id
    //$search->customForm->searchValue = $id;


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

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

    echo print_r($searchResponse,true);
        $service = new NetSuiteService(self::_config);
        $customerSearchBasic = new CustomerSearchBasic();

        $searchValue = new RecordRef();
        $searchValue->type = 'customer';
        $searchValue->internalId = $customer_id;

        $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"));

        $transactionSearchBasic->type = $searchMultiSelectEnumField;
        $transactionSearch = new TransactionSearch();
        $transactionSearch->basic = $transactionSearchBasic;
        $transactionSearch->customerJoin = $customerSearchBasic;

        $request = new SearchRequest();
        $request->searchRecord = $transactionSearch;
        $searchResponse = $service->search($request);

        if ($searchResponse->searchResult->status->isSuccess) {
            if(isset($searchResponse->searchResult->recordList)) {
                return $searchResponse->searchResult->recordList->record;
            }
        } 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM