Mukesh
Mukesh

Reputation: 35

Retrieving Bills from TransactionSearch

I want to retrieve vendorBills from Netsuite.

Here is my code

TransactionSearch transactionSearch = new TransactionSearch();

            TransactionSearchBasic tranSearchBasic = new TransactionSearchBasic();
            TransactionSearchAdvanced tranAdvancedSearch = new TransactionSearchAdvanced();

            SearchDateField searchDate = new SearchDateField();
            searchDate.setOperator(SearchDateFieldOperator.within);
            searchDate.setSearchValue(startDate);
            searchDate.setSearchValue2(endDate);
            tranSearchBasic.setDateCreated(searchDate);
transactionSearch.setBasic(tranSearchBasic);

            tranAdvancedSearch.setCriteria(transactionSearch);

            SearchResult billResult = port.search(tranAdvancedSearch);

The above code retruns all Transaction records created between specified date. But I want to filter out only vendorBill.

I have tried the following

String[] type = new String[1];
type[0]=RecordType._vendorBill;
tranSearchBasic.setType(type);

but it returns null.

webservice host address:https://webservices.na1.netsuite.com/wsdl/v2012_2_0/netsuite.wsdl

any immediate help is appreciated

Upvotes: 0

Views: 1186

Answers (1)

Chase Salvatori
Chase Salvatori

Reputation: 21

$typeSearchField = new SearchStringField();
$typeSearchField->operator = SearchStringFieldOperator::is;
$typeSearchField->searchValue = "SalesOrder";

$search = new TransactionSearchBasic();
$search->recordType = $typeSearchField;

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

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

This is how you would go about doing this in PHP for Sales Orders. Code for C# should be something like the following.

TransactionSearchBasic tranSearchBasic = new TransactionSearchBasic();

SearchDateField searchDate = new SearchDateField();
searchDate.setOperator(SearchDateFieldOperator.within);
searchDate.setSearchValue(startDate);
searchDate.setSearchValue2(endDate);
SearchStringField searchRecordType = new SearchStringField();
searchRecordType.setOperator(SearchStringFieldOperator.is);
searchRecordType.setSearchValue("VendorBill");
tranSearchBasic.setDateCreated(searchDate);
tranSearchBasic.setRecordType(searchRecordType);

SearchResult billResult = port.search(tranSearchBasic);

Upvotes: 2

Related Questions