2014-04-07 40 views
1

我正在使用NetSuite PHP Toolkit(2013_2版本)。而且我能够成功地完成保存搜索和客户搜索。除此之外,我的实际客户总数为1800,而我的NetSuite电话只有1000条记录。所以我需要知道,如果我们可以在使用PHP工具包的NetSuite调用中获取所有记录(超过1000个)。我的代码基本上这样...NetSuite - PHP搜索获得超过1000条记录

$service = new NetSuiteService(); 
$search = new CustomerSearchAdvanced(); 
$search->savedSearchId = "115"; //internal ID of saved search 

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

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

在此先感谢!

回答

3

1000个记录是一个硬限制。您必须使用searchMoreWithId(Docs)

代码应该是这样的

$searchId = $searchResponse['searchId']; 
$request = new SearchMoreWithIdRequest(); 
$request->searchId = $searchId; 
$request->pageIndex = 2; 
$moreSearchResponse = $service->searchMoreWithId($request); 
+0

非常感谢!你节省了我的时间..! :) –

+0

嗨@saqib ...现在我的记录超过2000.So我试图循环新的SearchMoreWithIdRequest();调用来获取所有记录。但是通过这样做,执行时间非常巨大,有时它无法加载数据。对于这种情况,你有任何可能的建议或想法吗?提前致谢!! –

+0

@ShanG恐怕没有完美的方法来优化这个。您可以缓存记录以更快地运行该进程,也可以应用serach过滤器来减小数据集。 – Saqib

相关问题