Ari*_* WB 3 javascript csv httpresponse netsuite suitescript2.0
希望你能帮忙。一些看似很小的东西却让我心烦意乱!
我在 SuiteScript 2.0 中想要做的就是在 Suitelet 上点击“提交”按钮后立即将 CSV 文件直接下载到客户端。我的代码下载到客户端,但文件中的内容不正确。
以下代码创建文件(成功):
//creating CSV file
var fileObj = FILEMODULE.create({
name: 'ThreePLreport.csv',
fileType: FILEMODULE.Type.CSV,
contents: contents
});
Run Code Online (Sandbox Code Playgroud)
最后一段代码将文件写入客户端:
context.response.writeFile(fileObj,true);
Run Code Online (Sandbox Code Playgroud)
现在 - 当我打开文件时,它看起来像这样:
当我将相同的文件保存在文件柜上时,它看起来是正确的:
我尝试在代码中添加标头,例如:
context.response.addHeader({
name: 'Content-Type:',
value: 'text/csv' //text/csv
});
context.response.addHeader({
name: 'Content-Disposition',
value: 'attachment; filename="report1.csv"'
});
Run Code Online (Sandbox Code Playgroud)
这似乎无助于纠正 CSV 文件内的内容。仍然显示 HTML 代码,如您在上面看到的那样。
有任何想法吗?
提前致谢!
我已经做过很多次几乎完全一样的事情了。看起来你写完文件后就没有返回。例如:
context.response.writeFile({
file:fileObj,
isInline:false
});
return;
Run Code Online (Sandbox Code Playgroud)