【发布时间】:2014-06-13 14:50:31
【问题描述】:
我正在尝试利用已保存的搜索来生成 csv 文件。我最大的问题是我有几列是公式。通过查看 API,我需要使用 getValue() 函数,它需要 3 个参数 - 名称、连接、摘要。我的问题是我不知道公式列的“名称”。通过 SuiteScript IDE(带有插件的 Eclipse),它向我展示了一个“getAllColumns()”函数,它应该返回一个列数组。我还在这个文档中找到了它:https://system.netsuite.com/app/common/scripting/nlapihandler.nl?downloadapi=T 但是,当我运行脚本时,我得到了错误 “[L.nlobjSearchResult;”没有名为“getAllColumns”的公共实例字段或方法。”
下面是我的代码。关于如何轻松获取所有列的名称(包括公式)的任何建议都会很棒。我有 38 列,所以如果可能的话,我想遍历它们,而不仅仅是做一个 getValue('name1') 。
function gen_ven(){
var data = '';//this will contain all of the eventual data for this file
var sQF = '"', sDelim = ',';
var results = nlapiSearchRecord('vendor','customsearch_se_ven');
var columns = results.getAllColumns();
for(var i =0;i<results.length;i++)
{
for(var j = 0; j<columns.length; j++){
data += sQF + results[i].getValue(columns[j])+sQF+sDelim;
}
data += '\n';
}
var file = nlapiCreateFile('Vendor.csv', CSV, data);
response.setContentType(file.getType(), 'Vendor.csv');
response.write(file.getValue());
}
我也尝试过使用 results.prototype.getAllColumns() 但这根本不起作用。
感谢您提供的任何帮助
【问题讨论】:
标签: netsuite