NetSuite ファイル キャビエント内に更新が必要なファイルがあります (url フィールドが変更されました)。このサイトで注目の記事を見つけましたが、要求を実行するためのコード例はありません。nlapiLoadFile および nlapiSubmitFile 呼び出しを使用することを示します。コード例を手伝ってくれる人はいますか?
6712 次
4 に答える
3
既存のファイルを編集するための特別な API 関数はありません。既存のファイルの詳細を取得して、同じ詳細で新しいファイルを作成できますが、データ フィールドのみを変更し、古いファイルを削除します。
var start = function(request, response)
{
var fileId = "107524";//get the existing file id
var file = nlapiLoadFile(fileId);
var data = file.getValue();
var name = file.getName();
var folderId = file.getFolder();
var fileType = file.getType();
nlapiDeleteFile(fileId);//delete the older file
data += ",this is the appended data";//change the data
var newFile = nlapiCreateFile(name, fileType, data);//create a new file with the same details
newFile.setFolder(folderId);
nlapiSubmitFile(newFile);//submit it
}
于 2015-05-21T09:06:30.553 に答える
3
ええ、それは少し奇妙に思えます。私が見つけた唯一の方法は次のとおりです。
- ファイルをロード
- 以下を使用してファイル ハンドルを作成します。
- ファイル名を意図したものに設定します。
- コンテンツを意図したものに設定する
- フォルダを設定して送信します。
コードスニペットを添付しました
var file = nlapiLoadFile(file_id); var content = file.getValue(); content = '...あなたのコンテンツを入れてください...'; file = nlapiCreateFile(file.getName(), 'ファイル タイプ', content); file.setFolder(required_folder_id); nlapiSubmitFile(ファイル);
お役に立てれば。
于 2013-02-13T15:45:16.753 に答える
1
フィールドではなくファイルのことですか?nlapiLoadFile(/path/file) を使用する場合は、getURL() を使用してそのファイルへのリンクを提供できます。
于 2012-11-29T22:59:59.100 に答える
0
NetSuite には編集ファイルのような API はありません。元のファイルをロードし、必要に応じてコンテンツを変更してから、同じファイル名で同じフォルダー内に新しいファイルを作成してそのデータを送信する必要があります。これは単に既存のファイルを上書きします。
コードサンプルは次のとおりです。
var original = nlapiLoadFile(FILE_ID_OR_FILE_PATH_IN_FILE_CABINET);
var originalContent = original.getValue(); //Return the value (base64 encoded for binary types) of the file
var updated = nlapiCreateFile(original.getName(), FILE_TYPE, UPDATED_FILE_CONTENTS);
updated.setFolder(original.getFolder());
nlapiSubmitFile(updated);
于 2014-12-23T13:31:04.067 に答える