ディスカッション

スイート全体に組み込まれたAI機能は、データをより迅速に分析し、より優れた意思決定を促進する独自の考察を生成できるようにすることで、生産性を向上させ、リーダーに利便性をもたらします。オラクルのAI機能がどのように役立つかについては、これらのオンデマンド・ウェビナーをご覧ください。

AIを用いた自動化で請求書処理を合理化

AIを用いた考察を使用して、計画と予測を迅速化
NetSuiteの保存検索やレポートをマスターするための究極のガイドである分析センターを使用して、データの力を最大限に活用しましょう。複雑さを単純化し、組織の真の可能性を解き放ちます。今すぐ分析センターに参加して、新たな高みを目指しましょう!
NetSuite Release 2025.1リリース・ノートは、こちらからダウンロードできます。
SuiteWorld 2025年10月6日~9日 アジェンダビルダーが公開されました!

SuiteWorldまであと41日となりました。以下の最新情報をご確認ください。
アジェンダビルダー公開
SuiteWorld On Airの登録受付開始
新しいNetSuite Prompt Studioコンテスト
その他の最新情報も!

詳細はこのスレッドでご確認ください!

SuiteScript 2.0でRESTletの応答としてPDFファイルを出力する

編集済:Dec 24, 2024 3:06PM SuiteCloud / カスタマイズ

適用

製品:  NetSuite 2024.2
 

シナリオ

統合のためNetSuiteのファイルキャビネットからPDFファイルをRESTLetレスポンスとして返したい

解決策

RESTLetのレスポンスはJSONオブジェクトタイプなので、pdfファイルを直接返すことはできません。回避策としては、N/fileモジュールのfile.getContents();メソッドを使用することができます。このメソッドは、pdfをBASE64エンコードに自動的に変換し、サードパーティのアプリケーションが文字列をデコードして再びpdfフォーマットに変換します。

RESTlet script:

/**
 * @NApiVersion 2.x
 * @NScriptType Restlet
 * @NModuleScope SameAccount
 */
define(['N/file'], function(file) {
	function post(dataIn) {
	 if(dataIn){
	  var recFile = file.load({ id : dataIn.id });
	  if (recFile.size < 10485760){
	   return recFile.getContents();
    });
	  } else {
	   return 'File more than 10MB'; }
	  }
	  }
		return { post : post }; }
	);

 

  1. 上記のコードをコピーし、javascriptファイルとして保存
  2. NetSuite上で、カスタマイズ>スクリプト>スクリプト>新規に移動
  3. スクリプトファイルフィールドの横にある”+”ボタンをクリック。新しく保存したjavascriptファイルを探します。
  4. スクリプトレコードの作成をクリック
  5. スクリプトレコードのページで、スクリプトレコードの名前を入力。
  6. 保存&デプロイをクリック
  7. スクリプトのデプロイメントページで、保存をクリック

RESTletをPOSTman経由でPOSTメソッドで実行し、ペイロードとして以下のJSONを指定します。

JSON Body:

{"id":"123"}

Note: "123" is the internal id of the pdf file in the file cabinet in NetSuite.

 

注:Postmanを使ったRESTletの設定と実行の手順については、参照記事50998 Hello World RESTletを参照してください。

 

免責事項

ここに記載されているサンプルコードは、法律で認められている最大限の範囲で、いかなる種類の保証もなく、「現状のまま」で提供されています。Oracle+NetSuite社は、開発者がそれぞれの開発プラットフォームにサンプルコードを実装したり、独自の Web サーバー構成を使用したりする際に、個々の成功を保証するものではありません。

Oracle + NetSuite社は、サンプルコードに関連するデータまたは情報の使用、使用結果、正確性、適時性または完全性に関して、いかなる保証も行わず、表明もしません。Oracle + NetSuite社は、明示的にも黙示的にもすべての保証を放棄し、特に、商品性、特定目的への適合性、およびコード、またはそれに関連するサービスやソフトウェアに関連する保証を放棄します。

Oracle + NetSuite社は、本サンプルコードに関連してお客様または他者が行った行為に起因するいかなる種類の直接的、間接的または結果的な損害または費用についても責任を負いません。

タグ付けされた:

ようこそ!

サインイン

完全な詳細を表示するには、サインインしてください。

登録

アカウントがありませんか?ここをクリックして始めましょう!

リーダーボード

コミュニティの達人

第3四半期 (7月~9月 2025年)

今週のリーダー

今月のリーダー

歴代リーダー