フォーム(Requested itemやRecord producer)にて、variableを事前に埋めた状態で他のUserに共有したい。

Taiki Soeya
Tera Contributor

お世話になります。

表題の通りです。

 

フォーム(Requested itemやRecord producer)にて、variableを事前に埋めた状態で他のUserに共有し、申請してもらう方法はありますでしょうか。

 

■想定している具体的な運用例---------------
特定のレコードの更新をトリガーとしてFlow(①)を実行。
このFlow(①)の中で、Userにフォーム(②)のリンクを送り、提出(③)してもらう。
提出されたことをFlow①でキャッチし、Flow①のフローステップを進める。
------------------------------------

これを実現するためには、Flow①と提出された③を紐づける必要があるため、フォーム(②)のVariableにFlow①の情報を含ませたいと考えている。(例えば、Flowのトリガーとなったレコードの番号等)

 

Flow①の中で、フォーム②にonLoad Client Scriptを埋め込んでからリンクを送ることで実現可能ではあるのですが、このフォーム②は汎用性が高いため、同じタイミングでたまたまフォーム②開き、それを提出されてしまうと、誤った紐づきが出来てしまいます。

そのため、Client Scriptではなく、URLにパラメータとして値を含ませる方法があればBestだと感じています。

なお、サービスポータル以外のUIでも問題ないです。

 

お手数ですが、ご教授いただけますと幸いです。 

 

以上、どうぞよろしくお願いします。

Hitoshi Ozawa
Giga Sage

onLoad Client Scriptで申請都度の条件でg_form.setValue()で設定できないのでしょうか?

具体的に申請都度異なる条件を明記してください。

説明文が不足しておりましたので、追記・編集いたしました。

結論から申し上げますと、設定すること自体はonLoad Client Scriptで申請都度の条件でg_form.setValue()で可能なのですが、たまたま同じタイミングでフォームを開いた人にも値が表示されてしまう事態を防げないと感じています。

どのような設定を行うかが不明ですが、同時に違うユーザがg_user.userNameをしても異なる値になります。

onLoadクライアントスクリプトの他にもデフォルト値にJavascriptを記述することも可能です。この場合はサーバ側でフォームが作成される時にサーバ側でスクリプトが実行されます。

その他にもdisplay business ruleを使うことも可能です。この場合もフォームが作成される前にサーバ側でスクラッチパッド変数にクライアントスクリプトで利用できる変数を設定します。

Ankur Bawiskar
Tera Patron

Hi,

It would be nice if you could post the details in English so that members can help you

Regards
Ankur

Regards,
Ankur
Certified Technical Architect  ||  10x ServiceNow MVP  ||  ServiceNow Community Leader