ディスカッション
AIを用いた自動化で請求書処理を合理化
AIを用いた考察を使用して、計画と予測を迅速化
SuiteWorldまであと41日となりました。以下の最新情報をご確認ください。
アジェンダビルダー公開
SuiteWorld On Airの登録受付開始
新しいNetSuite Prompt Studioコンテスト
その他の最新情報も!
詳細はこのスレッドでご確認ください!
テストアカウントで外部URLを使用すると、ログインなしで使用可能なSuiteletがメールを送信しない
適用
製品: NetSuite 2022.1
シナリオ
email.send(options)がトリガーされるが、スイートレットの外部URLを使用するとメールが送信されず、テストドライブや開発アカウントで内部URLを使用するとメールが送信されるという問題が発生しています。
解決策
テストアカウント、開発アカウントでは、ルーティングのためのメールオプションは、ログインしたユーザーにメールを送信するように設定されており、ハードコードされていることに注意することが重要です。サンドボックスとリリース プレビューのアカウントでは、スイートレットの外部URLを使用してメールを送信するには、セットアップ > 会社 > メール設定 > メールオプションで、送信先フィールドを特定のメール アドレスに設定する必要があります。
この値はテストドライブや開発アカウントにハードコードされているため、email.send(options)やnlapiSendEmailがトリガーされたときに、現在ログインしているユーザが存在せず、セッションを認証することができません。
ただし、本番アカウントでは、このような制限はなく、関数は実行され、メールは正常に送信されます。
この動作は、以下のサンプルのスイートレットを使用して、サンドボックス、リリースプレビュー、プロダクション、開発アカウントでテストすることができ、理解を深めることができます。
/**
* @NApiVersion 2.x
* @NScriptType Suitelet
* @NModuleScope SameAccount
*/
define(['N/record', 'N/email', 'N/log', 'N/runtime'],
function (record, email, log, runtime) {
/**
* Definition of the Suitelet script trigger point.
*
* @param {Object} context
* @param {ServerRequest} context.request - Encapsulation of the incoming request
* @param {ServerResponse} context.response - Encapsulation of the Suitelet response
* @Since 2015.2
*/