0
SS2.0と 'new' N/ui/messageモジュールを使用して、ユーザーがレコードを表示したときに警告またはエラーを表示したいと考えています。実際には、レコードビューで2.0クライアントスクリプトコードを実行する方法を理解したいと思います。SS2.0レコードにメッセージを表示
私は、コンソールからの作品、私は実行することができますたとえば、管理:編集モード(pageInitまたは場所)の微細
require(['N/currentRecord', 'N/ui/message'],
function(curr, mess) {
var rec = curr.get();
var status = rec.getValue('status');
if (status === 'Unapproved Payment') {
var myMsg = mess.create({
title: "PAYMENT ERROR",
message: status,
type: mess.Type.ERROR
}).show({
duration: 500000
});
}});
ランをしかし、「表示」にロードして実行する方法を発見していません。これは2.0でも可能ですか?私はまだ1.0トリックを使用する必要がありますか?
私は、ビューイベントにロードする前にSS2が必要だと思います。新しい呼び出し: 'form.clientScriptModulePath = './clientScriptPath.js'; 'NSの例では、パスをSuiteScripts/clientScriptPath.jsとして示していますが、私が提案したフォームがうまくいくことを願っています。それ以外の場合は、バンドルされているかパッケージ化されています(すべて自分のフォルダにあります)。 – bknights
このコードをclientScriptModule/FileIdを使用して適切に実行することができませんでした。しかし、それはユーザーエラーでした。私は、上記の例を、beforeLoad UEのフォームに追加するインラインhtml要素の内側の
FWIW以下は、編集モードでは動作しますが、表示モードでは機能しません。 (2016年10月現在で動作するハックについては私の他の答えを見てください)SS1.0では何年も前から同様のコードが働いていたので、これは途中で修正されると思われます。ビジネスケースがある場合は、Netsuiteにサポートケースを提出してください。
ユーザイベントスクリプト:
出典
2016-10-26 16:26:26 bknights
:
ビューモードでは、ユーザーイベントスクリプト(beforeLoad)のみを添付できます。
N/currentRecordモジュールはクライアント側のスクリプトでしか動作しないため、動作しませんでした。
代わりにN /レコードモジュールを使用してください。
出典
2016-10-28 02:10:39 earj
実際にN/currentRecordのコードはクライアント側でうまく動作します。作業例 – bknights
はいを参照してください。基本的には、クライアント側では* N/currentRecord *、サーバー側では* N/record *を使用します。 – earj