我们可以使用Webservices或套字记录类型提取Netsuite的元数据吗? 例如,如果我有记录摘要发票--->我需要字段名称和每个字段的数据类型?通过SUitescript/Webservices提取Netsuite元数据
-1
A
回答
3
在SuiteScript,你可以加载你想检查记录的一个实例,然后调用其getAllFields
方法:
var record = nlapiLoadRecord('customrecord_summaryinvoice', 'anyInternalIdHere');
var fieldNames = record.getAllFields();
// Do whatever you need to with fieldNames...
不幸的是,我不熟悉的Web服务足以推荐的在那里接近。
0
在SuiteTalk中有一个API调用,您可以调用它来返回所有自定义记录的元数据(scriptId,internalId)。
我使用C#:
public Dictionary<string, string> GetCustomization()
{
Dictionary<string, string> customRecords = new Dictionary<string, string>();
// gets metadata for all custom records.
CustomizationType ct = new CustomizationType() {
getCustomizationType = GetCustomizationType.customRecordType,
getCustomizationTypeSpecified = true
};
GetCustomizationIdResult cr = _myNetSuiteWebReference.getCustomizationId(ct, false);
foreach (CustomizationRef re in cr.customizationRefList)
{
customRecords.Add(re.scriptId, re.internalId);
}
return customRecords;
}
如果您已经下载使用Web服务的记录,你可以使用反射来获取对象的属性。
我将使用一个销售订单记录只是一个例子:
RecordRef rr = new RecordRef();
rr.internalId = "123456789";
rr.typeSpecified = true;
rr.type = RecordType.salesOrder;
ReadResponse readr = Get(rr);
// cast so a sales order object.
SalesOrder so = (SalesOrder)readr.record;
so.getType().getProperties(); // returns an array of PropertyInfo.
foreach(System.Reflection.PropertyInfo pi in so.getType().getProperties())
{
Console.WriteLine(pi.Name);
}
相关问题
- 1. NetSuite交易提取到SQL数据库
- 2. 如何从NetSuite API获取NetSuite帐户元数据?
- 3. Angular不通过Angularfire2提取数据
- 4. PHP通过SQL或PHP提取数据?
- 5. 通过BeautifulSoup提取随机数据
- 6. 通过数据库提取图像
- 7. 通过提取填充数据列表
- 8. 迭代通过MDB的目录,并提取元数据
- 9. 包括通过angularjs在DOM元素中提取数据
- 10. WordPress通过元数据获取用户
- 11. jQuery通过数据ID获取元素
- 12. 通过asp.net(vb.net)从文本中提取地址数据提取
- 13. 通过JSON解析器通过线索提取数据
- 14. 通过Asp.net集成NetSuite
- 15. 通过OAuth访问NetSuite RESTlet
- 16. 通过数据提供商
- 17. 元数据提取 - Java
- 18. 通过Wordpress数据库表提取数据
- 19. 如何通过邮件从数据库发送提取数据
- 20. 通过AJAX和CakePHP 2.x从数据库中提取数据
- 21. 通过使用ajax通过PHP获取数据从数据库中提取数据的预选选项
- 22. 如何通过此元数据提取器库查看exif标签的数组?
- 23. 通过web表单提交数据并提取结果
- 24. 通过HtmlAgilityPack提取
- 25. 通过ajax获取数据
- 26. 获取数据未通过
- 27. 通过数据=属性过滤元素
- 28. 通过对GSA中现有元数据的实体识别提取内容
- 29. 通过数组和提取元素的红宝石循环
- 30. 通过数据库读取数据?
我想有一个跟进的问题 我)我将如何得到,如果所有的自定义记录列表,以及 II)记录类型不存在,我们不能提取出我们首先需要创建记录的字段 我们是否有解决上述2个问题的方法? – Anshul
不幸的是NetSuite的元数据发现不足。我不知道通过编程获取所有自定义记录的列表的好方法。第二个问题的一个选择是手动创建该类型的单个记录,然后将其标记为非活动状态。您仍然可以使用'nlapiLoadRecord'加载非活动记录,但它不会显示在普通搜索结果或其他列表中。 – erictgrubaugh
感谢egrubaugh360 会编写一个爬行程序来提取数据并获取元数据/自定义记录列表,这是一个很好的解决方案吗? – Anshul