如何在Netsuite中获取内部ID列表

Anu*_*mar 2 netsuite suitescript

有没有适当的方法来获取Netsuite记录中所有内部ID的列表?

var record = nlapiLoadRecord('customer', 1249);
var string = JSON.stringify(record);
nlapiLogExecution('DEBUG', 'string ', string );
Run Code Online (Sandbox Code Playgroud)

我可以使用json字符串获取大多数ID,但我正在寻找一种适当的方法。它打印所有数据,包括内部ID。是否有Api或其他方式?

Mik*_*ins 5

getAllFields()函数将返回给定记录的所有字段名称(标准和自定义)的数组。

var customer = nlapiLoadRecord('customer', 5069);
var fields = customer.getAllFields();

fields.forEach(function(field) {
  nlapiLogExecution('debug', field);
})
Run Code Online (Sandbox Code Playgroud)


mic*_*oel 5

我实际上开发了一个Chrome扩展程序,可以在方便的弹出窗口中显示此信息。

在此处输入图片说明

我遇到了一个问题,即nlobjRecord不能正确地进行字符串化,最终我要做的是手动请求并解析NS在调用时在内部使用的同一AJAX页面nlapiLoadRecord()

  var id = nlapiGetRecordId();
  var type = nlapiGetRecordType();
  var url = '/app/common/scripting/nlapihandler.nl';
  var payload = '<nlapiRequest type="nlapiLoadRecord" id="' + id + '" recordType="' + type + '"/>';

  var response = nlapiRequestURL(url, payload);
  nlapiLogExecution('debug', response.getBody());
Run Code Online (Sandbox Code Playgroud)

您可以在GitHub上查看完整的源代码

https://github.com/michoelchaikin/netsuite-field-explorer/