LoginSignup
0
0

[ServiceNow] FormのExportメニューをRole別Table別で表示・非表示を制御する

Last updated at Posted at 2023-08-01

はじめに

ServiceNowのFormでは、Context MenuのExportから、対象レコードの情報をPDFで出力することができます。
しかし、Userのような機微な情報は、PDF化を禁止したいという要望もあるかもしれません。
ここでは、sys_userテーブルを対象に、admin以外は、Context MenuのExportを非表示にする方法を取り上げます。

UI Macroの設定

FormのコンテキストメニューはUI Macroで制御されています。
All > System UI > UI Macrosから、「context_form_header」を開きます。
XMLの102行目に以下のコードを見つけてください。
(環境によっては位置が異なるかもしれません。)

XML
        	gcm.addMenu("${gs.getMessage('Export')}", mExport, "context_exportmenu");

この行を、次のようにif文でネストします。
ref変数には、OOTBで対象のTable名が格納されています。
今回はこれを活用して、「admin以外はsys_userのFormのExportを表示しない」という要件を実現しています。

XML
			<j2:if test="$[${gs.hasRole('admin')} || ${ref != 'sys_user'}]">
        	gcm.addMenu("${gs.getMessage('Export')}", mExport, "context_exportmenu");
			</j2:if>
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0