変数からのサービス要求の「要求元:」の設定Issue <!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } デフォルトでは、ユーザーがサービス要求を送信すると、[要求元] と [オープン者] の両方が要求を送信するユーザー (現在ログオンしているユーザー) に設定されます。顧客は、他のユーザーに代わって要求を送信するオプションを要求者に提供したい場合があります。この場合、新しい「要求元」変数が作成され、カタログアイテムに追加されます。しかし、それは最初のステップにすぎません。親サービス要求の [要求元] フィールドに対する新しい変数の値を取得する必要があります。この記事では、これを行う 1 つの方法を紹介します。 Release<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Resolution<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } このプロセスには、次の 2 つのコンポーネントが含まれます。 サービス要求テーブル (sc_request) の [requested_for] フィールドを設定するために使用される スクリプトインクルード 。カタログクライアントスクリプトは、上記のスクリプトインクルードを呼び出し、必要なパラメーターを渡します。 以下の例では、ユーザーテーブル (sys_user) への参照フィールドである「Requested_For」という名前の変数が作成されています。変数は任意の名前で呼び出すことができますが、必要なのはカタログクライアントスクリプトを正しい変数名で変更するだけです。注意: スクリプトインクルードの変数名を変更する必要はなく、カタログスクリプトを変更するだけです。 スクリプトインクルードをビルドする。 スクリプトインクルード>システム定義に移動し、[新規] をクリックします。 名前 = CartRequestFunction [アクティブ] と [クライアント呼び出し可能 の両方をオンにする必要があります。 スクリプト: var CartRequestFunction = Class.create();CartRequestFunction.prototype = Object.extendsObject(AbstractAjaxProcessor, {cartRequestFunction: function () {var requestedFor = this.getParameter('sysparm_requestedFor');var cart = new GlideRecord('sc_cart');var userid = this.getParameter('sysparm_currentUser');cart.addQuery('user', userid);cart.query();if(cart.next()){// Update Requested for in the cartif (cart.requested_for != requestedFor) {cart.requested_for = requestedFor;cart.update();}}}}); カタログクライアントスクリプトのビルド [サービスカタログ] > [カタログポリシー] > [カタログクライアントスクリプト] に移動し、[新規] をクリックします。 名前 = 変数からRequested_forを設定する。 適用先: これは、変数セットまたはカタログアイテムのいずれかに適用できます。これは、「Requested_For」変数がある場所に依存します。 変数セット/カタログアイテム: 「Requested_For」変数が存在する場所を指定します。 [アクティブ] はオンです。 タイプ = onSubmit 適用先:これはカタログアイテムビューにのみ適用されます。 スクリプト: function onSubmit() {if (g_form.getValue('Requested_For') != ""){var ga = new GlideAjax('CartRequestFunction');ga.addParam('sysparm_name', 'cartRequestFunction');ga.addParam('sysparm_requestedFor', g_form.getValue('Requested_For'));ga.addParam('sysparm_currentUser', g_user.userID);ga.getXMLWait();}} 上の黄色で強調表示:ここでは、名前が異なる場合に変数を使用するようにスクリプトを変更します。 Related Links<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } 要求元が親サービス要求 (REQ) に保存されることを忘れないでください。変数はカタログアイテムにあり、要求アイテム (RITM) に関連しています。1 つのサービス要求 (REQ) に対して複数の要求アイテム (RITM) を含めることができます。このシナリオは、1 つの REQ に対して 1 つの RITM しかない場合に最適です。複数の RITM がある場合、2 番目の RITM が [要求元] を上書きするリスクがあります (それらが異なっていた場合)。