【发布时间】:2014-02-18 16:00:20
【问题描述】:
我们在通过 SuiteTalk 搜索自定义记录时遇到问题。以下是我们所称的示例。我们遇到的问题是尝试使用记录的 internalId 设置搜索。这里的问题在于我们最初的开发帐户,这个自定义记录的内部 id 是 482,但是当我们通过我们的包部署它时,记录被分配了 314 的内部 ID。按理说这个内部 id 不是每个站点安装一个站点中的静态,所以我们想知道要设置什么属性来引用自定义记录。当我们制作记录时,我们将其“scriptId”分配为“customrecord_myCustomRecord”,但通过suitetalk我们没有“scriptId”。我们允许此代码在所有环境而不是特定环境中工作的最佳方式是什么?如果是这样,您能否举例说明如何使用它。
我们试图从中进行调用的代码 (C#)。我们目前使用的是 2013.2 端点。
private SearchResult NetSuite_getPackageContentsCustomRecord(string sParentRef)
{
List<object> PackageSearchResults = new List<object>();
CustomRecord custRec = new CustomRecord();
CustomRecordSearch customRecordSearch = new CustomRecordSearch();
SearchMultiSelectCustomField searchFilter1 = new SearchMultiSelectCustomField();
searchFilter1.internalId = "customrecord_myCustomRecord_sublist";
searchFilter1.@operator = SearchMultiSelectFieldOperator.anyOf;
searchFilter1.operatorSpecified = true;
ListOrRecordRef lRecordRef = new ListOrRecordRef();
lRecordRef.internalId = sParentRef;
searchFilter1.searchValue = new ListOrRecordRef[] { lRecordRef };
CustomRecordSearchBasic customRecordBasic = new CustomRecordSearchBasic();
customRecordBasic.recType = new RecordRef();
customRecordBasic.recType.internalId = "314"; // "482"; //THIS LINE IS GIVING US THE TROUBLE
//customRecordBasic.recType.name = "customrecord_myCustomRecord";
customRecordBasic.customFieldList = new SearchCustomField[] { searchFilter1 };
customRecordSearch.basic = customRecordBasic;
// Search for the customer entity
SearchResult results = _service.search(customRecordSearch);
return results;
}
【问题讨论】: