我正在尝试在 NetSuite 中保存从外部源检索的文件。我正在从外部源发出 GET 请求来检索文件,但我不确定需要做什么才能将文件保存到特定记录。正文响应提供 ref 和 fileName。任何有关后续步骤的帮助将不胜感激。
我还没有尝试过任何东西。
我假设您已经在使用 Suitelet,您将需要 POST 文件对象以将其保存在数据库中。
您至少需要使用文件和记录模块。
导入文件对象后,您将需要定义它是什么文件类型,我使用一个函数来读取 mime 类型并返回 NetSuite 文件类型名称来完成此操作。
function convertType(mimeType) {
if (mimeType === 'image/x-dw' || mimeType === 'application/x-autocad') {
return file.Type.AUTOCAD
} else if (mimeType === 'image/bmp') {
return file.Type.BMPIMAGE
}
注意:NetSuite 文件类型有超过 20 种,它们不一定与 mime 类型完美匹配。您可以将任何文件类型分配给任何 mime 类型并仍然保存文件。据我所知,这只是为了让文件可以在 NetSuite 中搜索。一个缺点是没有真正的包罗万象,因此如果您动态获取文件类型,则必须选择一种不会经常使用的文件类型并将其设置为包罗万象,以便文件仍然保存。
一旦获得所有参数,您就可以创建文件 obj
var fileObj = file.create({
name: name,
fileType: fileType,
contents: contents,
folder: folderId
});
然后保存到您要保存的文件。
var fileID = fileObj.save();
record.attach.promise({
record: {
type: 'file',
id: fileID
},
to: {
type: convertRecType,
id: recId
}
});
file.save 保存到文件柜,记录附加到您要附加的 NetSuite 记录。
上面的代码来自我的 Suitelet,您可以在 NS 文档中找到有关这些模块的更多详细信息
https://(您的域名).app.netsuite.com/app/help/helpcenter.nl?fid=chapter_4220488571.html&whence=