[Scripts - Background]で成功する script を [Record-Producer] の script に書くと失敗する

y1207
Tera Contributor

サーバスクリプトで GlideRecordSetValueScriptを書いています

スクリプト - バックグラウンドでは問題なくレコードが挿入されますが、同じスクリプトなのにレコードプロデューサーで実行すると SetValue されません

どうしてこのような違いが出るのか教えてください

5件の返信5

Gunjan Kiratkar
Kilo Patron
Kilo Patron

Hi @y1207 ,

Where exactly you are running that background script for record producer. On record producer script or on Business rules ?


Please Mark My Response as Correct/Helpful based on Impact
Regards,
Gunjan Kiratkar
2X ServiceNow MVP
Community Rising Star 2022
Youtube : ServiceNow Guy

こんにちは、グンジャン・キラトカルさん

あなたの回答に感謝します。

私の script は Record producer script に書かれています。↓

ひとつ問題なのは、gs.info() がApplication log に出ないので、失敗の原因がわからないことなのです。

またこの場合、ビジネスルールは必要ですか?調べましたが指定方法がわかりませんでした。


どこが間違っているのか、教えていただけますか?

よろしくお願いします。

y1207_2-1670411248230.png

 

Hi @y1207 ,

Use below as per your scope otherwise it will throw an error

Global scope – use gs.log();

Custom scope – use gs.info();

also to set value use directly assignment operator as below 

record.u_biko="value";

Please Mark My Response as Correct/Helpful based on Impact
Regards,
Gunjan Kiratkar
2X ServiceNow MVP
Community Rising Star 2022
Youtube : ServiceNow Guy

Brad Bowman
Kilo Patron
Kilo Patron

Record Producer スクリプトでは、異なる構文を使用する必要があります。たとえば、Record Producer 変数を使用する場合の producer.variable_name と current.field_name = value を使用して、新しく作成されたレコードのフィールドの値を設定します。バックグラウンド スクリプトでは、gr.field_name = value を使用して setValue の代わりに値を設定できます。ここで、gr は GlideRecord の名前です。