GlideForm (g_form): クライアント
GlideForm API はフォームをカスタマイズするメソッドを提供します。
GlideForm.js はメソッドを含む JavaScript クラスです。クライアント上でのみ GlideForm メソッドを使用してください。これらのメソッドを使用して、レコードのフォームビューにカスタム変更を加えることができます。例のすべての検証は、クライアントスクリプトを使用して行われています。
これらのメソッドの一部は、他のクライアントスクリプト (カタログクライアントスクリプトやウィザードクライアントスクリプトなど) でも使用できますが、最初にこれをテストして、期待どおりに機能するかどうかを判断する必要があります。
GlideForm クラスにコンストラクターはありません。g_form グローバルオブジェクトを使用して GlideForm メソッドにアクセスします。
GlideForm - addDecoration(文字列 fieldName, 文字列 icon, 文字列 title)
フィールドのラベルにアイコンを追加します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールド名 |
| アイコン | 文字列 | フィールドの横に表示するフォントアイコン。サポートされているアイコン:icon-user、icon-user-group、icon-lightbulb、icon-home、icon-mobile、icon-comment、icon-mail、icon-locked、icon-database、icon-book、icon-drawer、icon-folder、icon-catalog、icon-tab、icon-cards、icon-tree-right、icon-tree、icon-book-open、icon-paperclip、icon-edit、icon-trash、icon-image、icon-search、icon-power、icon-cog、icon-star、icon-star-empty、icon-new-ticket、icon-dashboard、icon-cart-full、icon-view、icon-label、icon-filter、icon-calendar、icon-script、icon-add、icon-delete、icon-help、icon-info、icon-check-circle、icon-alert、icon-sort-ascending、icon-console、icon-list、icon-form、および icon-livefeed。 |
| title | 文字列 | アイコンのテキストタイトル。 |
| タイプ | 説明 |
|---|---|
| なし |
g_form.addDecoration('caller_id', 'icon-star', 'preferred member');
GlideForm - addDecoration(文字列 fieldName, 文字列 icon, 文字列 title, 文字列 color)
フィールドのラベルにアイコンを追加します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールド名 |
| アイコン | 文字列 | フィールドの横に表示するフォントアイコン。サポートされているアイコン:icon-user、icon-user-group、icon-lightbulb、icon-home、icon-mobile、icon-comment、icon-mail、icon-locked、icon-database、icon-book、icon-drawer、icon-folder、icon-catalog、icon-tab、icon-cards、icon-tree-right、icon-tree、icon-book-open、icon-paperclip、icon-edit、icon-trash、icon-image、icon-search、icon-power、icon-cog、icon-star、icon-star-empty、icon-new-ticket、icon-dashboard、icon-cart-full、icon-view、icon-label、icon-filter、icon-calendar、icon-script、icon-add、icon-delete、icon-help、icon-info、icon-check-circle、icon-alert、icon-sort-ascending、icon-console、icon-list、icon-form、および icon-livefeed。 |
| title | 文字列 | アイコンのテキストタイトル。 |
| 色 | 文字列 | CSS カラー。 |
| タイプ | 説明 |
|---|---|
| なし |
g_form.addDecoration('caller_id', 'icon-star', 'Mark as Favorite', 'color-green');
GlideForm - addErrorMessage(文字列 message)
指定されたエラーメッセージをフォームの上部に表示します。
このメッセージは約 4 秒間表示され、その後消えます。現時点でこのタイムアウトは設定できません。
| 名前 | タイプ | 説明 |
|---|---|---|
| message | 文字列 | 表示するメッセージ。 |
| タイプ | 説明 |
|---|---|
| なし |
g_form.addErrorMessage('This is an error');
GlideForm - addFormMessage(文字列メッセージ, 文字列型, オブジェクトオプション)
フォーム詳細セクションの上部に浮遊型のフォームメッセージを表示します。メッセージは UI アクションに対応していません。
| 名前 | タイプ | 説明 |
|---|---|---|
| message | 文字列 | 表示するメッセージ。 |
| type | 文字列 | メッセージのタイプ。 有効な値:
|
| オプション | オブジェクト | オプション。フォームメッセージに追加するボタンと、ボタンクリックを処理するために必要なメタデータを含むオブジェクト。 |
| options.buttons | アレイ | フォームメッセージに追加するボタンのアレイ。 |
| options.buttons.label | 文字列 | ボタンに表示するテキスト。 |
| options.buttons.actionName | 文字列 | クリックされたボタンを決定するためにFORM_MESSAGE_BUTTON_CLICKEDイベントハンドラーによって使用される名前。 たとえば、actionName |
| options.meta | オブジェクト | キーと値のペアとして書式設定されたボタンクリックを処理するために必要なメタデータのマップ。 たとえば、[ 自分にアサイン ] ボタンの場合、イベントハンドラーには、レコードをアサインするユーザーのsys_idが必要です。 |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、各タイプのフォームメッセージを追加する方法を示しています。
g_form.addFormMessage('info message','info');
g_form.addFormMessage('warning message','warning');
g_form.addFormMessage('error message','error');
g_form.addFormMessage('info2 message','info');
g_form.addFormMessage('warning2 message','warning');
g_form.addFormMessage('error2 message','error');
g_form.addFormMessage('Would you like to reassign this to yourself?', 'info', {buttons: [{label: "Assign to me", actionName: "assign_to_me"}], meta: {'userId': '46d44a23a9fe19810012d100cca80666'}});
GlideForm - addInfoMessage(文字列 message)
指定された情報メッセージをフォームの上部に追加します。
このメッセージは約 4 秒間表示され、その後消えます。現時点でこのタイムアウトは設定できません。
| 名前 | タイプ | 説明 |
|---|---|---|
| message | 文字列 | 表示するメッセージ。 |
| タイプ | 説明 |
|---|---|
| なし |
g_form.addInfoMessage('The top five fields in this form are mandatory');
GlideForm - addOption(文字列 fieldName, 文字列 choiceValue, 文字列 ChoiceLabel)
選択リストフィールドの末尾に選択肢を追加します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドの名前。 |
| choiceValue | 文字列 | データベースに格納される値。 |
| choiceLabel | 文字列 | 表示される値。 |
| タイプ | 説明 |
|---|---|
| なし |
g_form.addOption('priority', '6', '6 - Really Low');
GlideForm - addOption(文字列 fieldName, 文字列 choiceValue, 文字列 ChoiceLabel, 数値 choiceIndex)
リストフィールドの指定された位置に選択肢を追加します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールド名 |
| choiceValue | 文字列 | データベースに格納されている値。 |
| choiceLabel | 文字列 | 表示される値。 |
| choiceIndex | 数値 | リスト内の選択肢の順序。インデックスはゼロベースのアレイです。 |
| タイプ | 説明 |
|---|---|
| なし |
g_form.addOption('priority', '2.5', '2.5 - Moderately High', 3);
GlideForm - clearMessages()
フォームの上部からすべての情報メッセージとエラーメッセージを削除します。
g_form.addInfoMessage() および g_form.addErrorMessage() で追加された情報メッセージとエラーメッセージを削除します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| なし |
g_form.clearMessages();
GlideForm - clearAllFormMessages()
任意のタイプのすべてのフォームメッセージを削除します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、フォームからすべてのメッセージをクリアする方法を示しています。
g_form.clearAllFormMessages();
GlideForm - clearFormMessages(文字列 type)
指定されたタイプのすべてのフォームメッセージを削除します。
| 名前 | タイプ | 説明 |
|---|---|---|
| type | 文字列 | メッセージのタイプ。 有効な値:
|
| タイプ | 説明 |
|---|---|
| なし |
次の例は、フォームからすべてのエラーメッセージをクリアする方法を示しています。
g_form.clearFormMessages('error');
GlideForm - clearOptions(文字列 fieldName)
選択リストからすべてのオプションを削除します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドの名前 |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - clearValue(文字列 fieldName)
フィールドから値を削除します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドの名前 |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - disableAttachments()
添付ファイルが追加されないようにします。
このメソッドはモバイルプラットフォームでは利用できません。このメソッドがモバイルプラットフォームで実行されても、何も起こりません。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - enableAttachments()
添付ファイルの追加を許可します。ペーパークリップアイコンを表示します。
このメソッドはモバイルプラットフォームでは利用できません。このメソッドがモバイルプラットフォームで実行されても、何も起こりません。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - flash(文字列 fieldName, 文字列 color, 数値 count)
特定のフィールドへの関心を引くために使用します。指定されたフィールドを指定された時間、指定された色で点滅させます。
このメソッドは Service Catalog ではサポートされていません。
このメソッドはモバイルプラットフォームでは利用できません。このメソッドがモバイルプラットフォームで実行されても、何も起こりません。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | ハイライト表示するフィールドを形式「<テーブル名>.<フィールド名>」で指定します。 |
| 色 | 文字列 | RGB カラーまたは許容される CSS カラー。 |
| count | 数値 | ラベルの点滅時間を指定します。次のオプションが含まれます。
|
| タイプ | 説明 |
|---|---|
| なし |
g_form.flash("incident.number", "#FFFACD", 0);
GlideForm - getActionName()
最新のアクション名を返します。クライアントスクリプトの場合はクリックされた UI アクションの sys_id を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| 文字列 | 現在のアクション名。 |
function onSubmit() {
var action = g_form.getActionName();
alert('You pressed ' + action);
}
GlideForm - getBooleanValue(文字列 fieldName)
指定されたフィールドのブーリアン値を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドの名前 |
| タイプ | 説明 |
|---|---|
| ブーリアン | フィールド値が false または undefined の場合は false を返します。それ以外の場合は true を返します。 |
GlideForm - getControl(文字列 fieldName)
指定されたフィールドの HTML 要素を返します。
複合フィールドには複数の HTML 要素を含めることができます。フォーム上でフィールドを使用する組み込みメソッドがあるため、このメソッドは通常必要ありません。
フィールドが参照フィールドであり、コントロールが選択リストである場合、getControl() は想定どおりにコントロールを返さないことがあります。この場合、sys_select.<table name>.<フィールド名> を使用します。
このメソッドは、モバイルスクリプトまたは Service Portal スクリプトでは使用できません。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドの名前 |
| タイプ | 説明 |
|---|---|
| HTMLElement | フィールドの HTML 要素。 |
GlideForm - getDecimalValue(文字列 fieldName)
指定されたフィールドの 10 進数値を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドの名前。 |
| タイプ | 説明 |
|---|---|
| 文字列 | 指定されたフィールドの 10 進数値。 |
function onChange(control, oldValue, newValue, isLoading) {
alert(g_form.getDecimalValue('percent_complete'));
}
GlideForm - getDisplayBox(文字列 fieldName)
コア UI のフォームから表示値を取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フォームで値を取得するフィールドの名前。 |
| タイプ | 説明 |
|---|---|
| なし |
var caller = g_form.getDisplayBox('caller_id').value;
var assignee = g_form.getDisplayBox('assigned_to').value;
if (caller == assignee)
{
alert('in');
}
GlideForm - getDisplayValue(文字列 fieldName)
サービスポータル のフォームから表示値を取得します。
g_form.getDisplayValue() として呼び出すと、個々のフィールドの表示値ではなくレコード表示値が返されます。| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フォームで値を取得するフィールドの名前。 |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、コア UI または サービスポータルで参照変数の表示値を取得する方法を示しています。この例のユースケースは 、コミュニティ サイトにあります。
function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}
if(window == null){
var valuePortal = g_form.getDisplayValue('requester');
alert('Portal->' + valuePortal);
}
else{
var valueNative = g_form.getDisplayBox('requester').value;
alert('CoreUI->' + valueCoreUI);
}
//Type appropriate comment here, and begin script below
}
GlideForm - getElement(文字列 id)
パラメーターで指定された HTML 要素を返します。
複合フィールドには複数の HTML 要素を含めることができます。フォーム上でフィールドを使用する組み込みメソッドがあるため、このメソッドは通常必要ありません。
このメソッドは、モバイルスクリプトまたは Service Portal スクリプトでは使用できません。
| 名前 | タイプ | 説明 |
|---|---|---|
| ID | 文字列 | フィールド ID。 |
| タイプ | 説明 |
|---|---|
| HTMLElement | フィールドの HTML 要素。 |
GlideForm - getFormElement()
フォームの HTML 要素を返します。
このメソッドは、モバイルスクリプトまたは Service Portal スクリプトでは使用できません。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| HTMLFormElement | フォームの HTML 要素。 |
GlideForm - getHelpTextControl(文字列 fieldName)
指定されたフィールドのヘルプテキストの HTML 要素を返します。
このメソッドはサービスカタログ変数にのみ適用されます。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドの名前 |
| タイプ | 説明 |
|---|---|
| HTMLElement | ヘルプテキストフィールドの HTML 要素。 |
GlideForm - getIntValue(文字列 fieldName)
フィールドの整数値を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールド名 |
| タイプ | 説明 |
|---|---|
| 数値 | フィールドの整数値。 |
GlideForm - getLabelOf(文字列 fieldName)
フィールドラベルのプレーンテキスト値を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールド名 |
| タイプ | 説明 |
|---|---|
| 文字列 | ラベルテキスト。 |
if (g_user.hasRole('itil')) {
var oldLabel = g_form.getLabelOf('comments');
g_form.setLabelOf('comments', oldLabel + ' (Customer visible)');
}
GlideForm - getOption(文字列 fieldName, 文字列 choiceValuel)
choiceValue がオプション値に一致する、選択された fieldName という名前のボックスのオプション要素を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドの名前 |
| choiceValue | 文字列 | オプションの値。 |
| タイプ | 説明 |
|---|---|
| HTMLElement | オプションの HTMLElement。フィールドまたはオプションが見つからない場合は null を返します。 |
次の例は、選択リスト値のラベルを取得する方法を示しています。
// Get the label for a choice list value
// fieldName is 'category'
function onChange(control, oldValue, newValue, isLoading) {
var choiceValue = g_form.getValue('category');
var choiceLabel = g_form.getOption('category', choiceValue).text;
}
GlideForm - getReference(文字列 fieldName, 関数 callBack)
指定されたフィールドの GlideRecord を返します。
コールバック関数が存在する場合、このルーチンは非同期で実行されます。ブラウザー (およびスクリプト) の処理はサーバーが参照値を返すまで続行され、その時点でコールバック関数が呼び出されます。コールバック関数が存在しない場合、このルーチンは同期的に実行され、サーバーの応答を待機している間は処理が停止します (ブラウザーがハングアップしているように見えます)。
ServiceCatalogForm.getReference のコールバック関数が利用可能です。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドの名前 |
| callBack | 関数 | コールバック関数の名前。 |
| タイプ | 説明 |
|---|---|
| GlideRecord | 指定されたフィールドの GlideRecord オブジェクト。 指定された参照が見つからない場合は、currentRow が -1 および rows.length が 0 の初期化された GlideRecord オブジェクトを返します。 |
function onChange(control, oldValue, newValue, isLoading) {
g_form.getReference('caller_id', doAlert); // doAlert is our callback function
}
function doAlert(caller) { // reference is passed into callback as first arguments
if (caller.getValue('vip') == 'true') {
alert('Caller is a VIP!');
}
}
GlideForm - getRelatedListNames()
現在のフォームから関連リスト名のアレイを返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| アレイ | 現在のフォームからの関連リスト名の文字列アレイ。関連リスト名はフォームに表示される順序で一覧表示されます。 |
var listNames = g_form.getRelatedListNames();
for (var i = 0; i < listNames.length; i++) {
this.showRelatedList(listNames[i]);
}
GlideForm - getSectionNames()
表示されるかどうかにかかわらず、すべてのセクション名を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| 文字列のアレイ | セクション名。 |
GlideForm - getSections()
フォームのセクションのアレイを返します。
このメソッドはモバイルプラットフォームでは利用できません。このメソッドがモバイルプラットフォームで実行されても、何も起こりません。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| HTML 要素のアレイ | フォームのセクション。 |
function onChange(control, oldValue, newValue, isLoading) {
//this example was run on a form divided into sections (Change form)
// and hid a section when the "state" field was changed
var sections = g_form.getSections();
if (newValue == '2') {
g_form.setSectionDisplay(sections[1], false);
} else {
g_form.setSectionDisplay(sections[1], true);
}
}
GlideForm - getTableName()
このレコードが属するテーブルの名前を返します。
サーバー側では、current.sys_class_name または current.getTableName() を使用して現在のレコードのテーブルを取得できます。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| 文字列 | テーブルの名前です。 |
function onLoad() {
if (g_form.isNewRecord()) {
var tableName = g_form.getTableName(); //Get the table name
}
}
GlideForm - getUniqueValue()
フォームに表示されているレコードの sys_id を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| 文字列 | レコードの sys_id。 |
function onLoad() {
var incSysid = g_form.getUniqueValue();
alert(incSysid);
}
GlideForm - getValue(文字列 fieldName)
指定されたフォームフィールドの値を返します。
このメソッドは、複数行の変数セット (MRVS) からの値の取得もサポートしています。MRVS 内のフィールドからデータを取得するには、最初に JSON.parse(getValue('<mrvs_field_name>') ||'[]') を使用して MRVS 配列を取得し、インデックスを使用して行オブジェクト内のフィールドにアクセスします。詳細については、以下のコード例を参照してください。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | 値を返すフィールドの名前。 |
| タイプ | 説明 |
|---|---|
| 文字列 | 指定されたフィールドの値。 |
次の例は、現在のフォームから簡単な説明を取得する方法を示しています。
function onChange(control, oldValue, newValue, isLoading) {
alert(g_form.getValue('short_description'));
}
次の例は、MRVS から値を取得する方法を示しています。この例では、給与は Service Catalog を介して管理されています。クライアントスクリプトは、MRVS 内のすべての行で ジョブタイトル に入力された値を検索し、MRVS 内の一致するエントリーを [給与 ] フィールドに入力された内容で更新します。MRVS には「variable_set_1」という名前が付けられ、各行オブジェクト内に従業員名 [employee_name]、ジョブタイトル [employee_job_title]、および給与 [employee_salary] のフィールドが含まれています。さらに、カタログアイテムには、ジョブタイトル [job_title] と給与 [salary] が含まれています。
function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}
// Get the MRVS
var vs1 = g_form.getValue('variable_set_1') || '[]';
var multiRowVariableSet = JSON.parse(vs1);
for (var i = 0; i < multiRowVariableSet.length; i++) {
// Check if the entered job title matches the title in the current MRVS row
if (multiRowVariableSet[i].employee_job_title == g_form.getValue("job_title")){
// Update the value of a matching field with the new salary
multiRowVariableSet[i].employee_salary = newValue;
}
}
// Update the MRVS
g_form.setValue('variable_set_1', JSON.stringify(multiRowVariableSet));
}
GlideForm - hideAllFieldMsgs()
すべてのフィールドメッセージを非表示にします。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - hideAllFieldMsgs(文字列 type)
指定されたタイプのすべてのフィールドメッセージを非表示にします。
| 名前 | タイプ | 説明 |
|---|---|---|
| type | 文字列 | メッセージのタイプ。 有効な値:
|
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - hideErrorBox(文字列 fieldName)
showErrorBox() によってされた配置エラーメッセージを非表示にします。
可能な限り、このメソッドではなく hideFieldMsg() を使用してください。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドまたはコントロールの名前。 |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - hideFieldMsg(文字列 fieldName, ブーリアン clearAll)
現在のフォームの指定されたフィールドに表示される最初のメッセージを非表示にします。
フォームにメッセージを表示するには、 GlideForm - showFieldMsg(文字列 field, 文字列 message, 文字列 type) メソッドまたは GlideForm - showFieldMsg(文字列 field, 文字列 message, 文字列 type, ブーリアン scrollForm) メソッドを使用します。
work_notes フィールドに 2 つのメッセージを表示し、最初のメッセージを非表示にする方法を示しています。 g_form.showFieldMsg('work_notes', 'First message', "error");
g_form.showFieldMsg('work_notes', 'Second message', "error");
g_form.hideFieldMsg('work_notes', false); // This call hides the 'First message'| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | メッセージを非表示にするフィールドの名前。 |
| clearAll | ブール | オプション。指定したフィールドのすべてのメッセージを非表示にするかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、指定したフォームフィールドのすべてのメッセージをクリアし、暗号化エラーメッセージを表示する方法を示しています。
function submitEncryptedInputs() {
return processEncryptedInputs(function(inputName, fieldName) {
if (!checkEncryptedFieldValue(fieldName)) {
g_form.hideFieldMsg(fieldName, true); // Hide all messages for the specified field
g_form.showFieldMsg(fieldName, "Your activity requires an encrypted input.", "error");
return false;
}
return true;
});
}
GlideForm - hideRelatedList(文字列 listTableName)
フォームの指定された関連リストを非表示にします。
このメソッドはモバイルプラットフォームでは利用できません。このメソッドがモバイルプラットフォームで実行されても、何も起こりません。
| 名前 | タイプ | 説明 |
|---|---|---|
| listTableName | 文字列 | 関連リストの名前。sys_id を使用し、関係を介してリストを非表示にします。 |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - hideRelatedLists()
フォーム上のすべての関連リストを非表示にします。
このメソッドはモバイルプラットフォームでは利用できません。このメソッドがモバイルプラットフォームで実行されても、何も起こりません。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - isLiveUpdating()
フォームに表示されているレコードのライブ更新中に true を返します。
これを onChange() クライアントスクリプトで使用して、レコードの変更が別のセッションからのライブ更新によるものかどうかを判断できます。その後、クライアントスクリプトは実行するアクションまたは実行しないアクションを決定できます。これは、ライブフォームが有効になっている コア UI を使用するシステムに適用されます。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| ブーリアン | フォームに表示されているレコードでライブ更新が行われている場合は true を返します。 |
GlideForm - isMandatory(文字列 fieldName)
フィールドが必須の場合は true を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドの名前 |
| タイプ | 説明 |
|---|---|
| ブーリアン | フィールドが必須の場合は true、そうでない場合は false。 |
GlideForm - isNewRecord()
レコードが一度も保存されていない場合は true を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| ブーリアン | レコードが保存されていない場合は true、それ以外の場合は false を返します。 |
function onLoad() {
if(g_form.isNewRecord()){
alert('New Record!');
}
}
GlideForm - isSectionVisible(文字列 sectionName)
セクションが表示されている場合は true を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| ブーリアン | セクションが表示されている場合は true、表示されていない場合は false を返します。 |
GlideForm - isVisible(文字列 fieldName)
渡されたフィールド名に関連付けられたフィールドを現在のフォーム上に表示するかどうかを決定します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | 現在のフォームに表示されるかどうかを確認するフィールドの名前。 |
| タイプ | 説明 |
|---|---|
| ブール | 指定したフィールドが現在のフォーム上に表示されるかどうかを示すフラグ。 有効な値:
|
次のコード例は、現在のフォームに [user_address ] フィールドが表示されているかどうかを確認する方法を示しています。
if(g_form.isVisible('user_address')) {
alert('is visible');
}
else {
alert('is hidden');
}
GlideForm - onUserChangeValue(関数 fn)
現在のフォーム内でいずれかのフィールドがユーザーによって変更されたことを検出するカスタムイベントリスナーを登録します。
フォームフィールドが変更されると、イベントリスナーはリスナーが最初に登録されたときに渡される関数を呼び出します。このリスナーは、ユーザーがフォームのフィールドを変更した場合にのみトリガーされます。クライアントスクリプト、UI ポリシー、またはその他のユーザー以外のインタラクションからの変更では、リスナーはトリガーされません。
| 名前 | タイプ | 説明 |
|---|---|---|
| fn | 関数 | ユーザーが現在のフォーム内のフィールドの値を変更したときに呼び出す関数。これは実際には単なる関数名ではなく、関数コードです。 この関数は、次の 3 つの引数を受け入れる必要があります。
|
| タイプ | 説明 |
|---|---|
| 関数 | onUserChangeValue イベントリスナーを登録解除するために呼び出す関数。 |
var handler = function(fieldname, originalValue, newValue) {
console.log('The field ('+ fieldname + ') has a new value of: ' + newValue); // function code
}
var unregister = g_form.onUserChangeValue(handler);
// To unregister the event listener
unregister();
GlideForm - refreshSlushbucket(文字列 fieldName)
リストコレクター変数を更新できます。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | スラッシュバケットの名前。 |
| タイプ | 説明 |
|---|---|
| なし |
g_form.refreshSlushbucket('bucket');
GlideForm - removeDecoration(文字列 fieldName, 文字列 icon, 文字列 title)
指定されたフィールドからアイコンとタイトルに一致するアイコンを削除します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールド名。 |
| アイコン | 文字列 | 削除するアイコンの名前。 |
| title | 文字列 | アイコンのテキストタイトル (名前)。 |
| タイプ | 説明 |
|---|---|
| なし |
function onChange(control, oldValue, newValue, isLoading) {
// if the caller_id field is not present, then we can't add an icon anywhere
if (!g_form.hasField('caller_id'))
return;
if (!newValue)
return;
g_form.getReference('caller_id', function(ref) {
g_form.removeDecoration('caller_id', 'icon-star', 'VIP');
if (ref.getValue('vip') == 'true')
g_form.addDecoration('caller_id', 'icon-star', 'VIP');
});
}
GlideForm - removeDecoration(文字列 fieldname, 文字列 icon, 文字列 title, 文字列 color)
指定されたフィールドから、アイコン、タイトル、カラーに一致するアイコンを削除します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールド名。 |
| アイコン | 文字列 | 削除するアイコンの名前。 |
| title | 文字列 | アイコンのテキストタイトル (名前)。 |
| 色 | 文字列 | CSS カラー |
| タイプ | 説明 |
|---|---|
| なし |
g_form.removeDecoration('caller_id', 'icon-star', 'VIP', 'blue');
GlideForm - removeOption(文字列 fieldName, 文字列 choiceValuel)
選択リストから指定されたオプションを削除します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドの名前 |
| choiceValue | 文字列 | データベースに格納されている値。これはラベルではありません。 |
| タイプ | 説明 |
|---|---|
| なし |
g_form.removeOption('priority', '1');
GlideForm - save()
移動せずにレコードを保存します (更新して留まる)。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - setMandatory(文字列 fieldName, ブーリアン mandatory)
指定されたフィールドを必須にします。
可能な限り、このメソッドでなく UI ポリシーを使用してください。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドの名前 |
| mandatory | ブーリアン | true の場合、フィールドは必須になります。false の場合、フィールドはオプションになります。 |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - setSectionDisplay(文字列 sectionName, ブーリアン display)
セクションを表示または非表示にします。
| 名前 | タイプ | 説明 |
|---|---|---|
| sectionName | 文字列 | セクション名は小文字で、名前の最初のスペースがアンダースコアで置き換えられ、残りのスペースは削除されます。たとえば、「Section Four is Here」は「section_fourishere」になります。アンパサンド (&) などの英数字以外の文字は削除されます。セクション名は、getSectionNames() メソッドを使用して見つけることができます。 |
| 表示 | ブーリアン | true の場合、セクションが表示されます。false の場合、セクションは非表示になります。 |
| タイプ | 説明 |
|---|---|
| ブーリアン | 成功した場合は true を返します。 |
GlideForm - setValue(文字列 fieldName, 文字列 value, 文字列 displayValue)
指定されたフォームフィールドの値を参照レコードの指定された表示値に設定します。
参照フィールドの値を設定するときに往復を防止してパフォーマンスを向上させるには、setValue(fieldName, value) ではなくこのメソッドを使用します。リストコレクターフィールドに複数の参照値を設定する場合は、value パラメーターおよび displayValue パラメーターでアレイを渡します。
setValue(shortDesc, newValue.toUpperCase()); を実行する前に、簡単な説明が大文字になっていないことを確認します。これにより、クライアントスクリプトが toUpperCase() を複数回適用することを防ぎます。| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | 更新するフォームフィールドの名前。 |
| value | 文字列またはアレイ | フィールドを更新するために使用する参照レコードの sys_id。 指定されたフィールドが GlideList の場合、このパラメーターには sys_id のアレイを含めることができます。この場合、メソッドはアレイ内で指定されたすべてのレコードのルックアップを実行し、それらの値を使用して指定されたフィールド (関連リスト) の内容を更新します。 注:
選択リストで値を定義するときは、ラベルではなく数値を使用してください。 |
| displayValue | 文字列またはアレイ | 指定されたフィールドを更新するために使用される、指定された参照レコード内のフィールド。たとえば、ユーザー [sys_user] テーブルでは userName になります。 指定されたフィールドが GlideList の場合、このパラメーターには表示値名のアレイを含めることができます。 表示値の詳細については、「 表示値」を参照してください。 |
| タイプ | 説明 |
|---|---|
| なし |
この例では、[assigned_to] フォームフィールドを更新するために使用する [userName] フィールドを含む参照レコードの sys_id を渡しています。
g_form.setValue('assigned_to', userSysID, userName);
この例では、GlideList の [glide-list_field_name] フォームフィールドを更新するために使用する、参照レコード sys_id のアレイと対応する表示値名のアレイを渡します。
g_form.setValue('glide-list_field_name', sysIDArray, displayNameArray);
GlideForm - showErrorBox(文字列 name, 文字列 message, ブーリアン scrollForm)
指定されたフォームフィールド (コントロールオブジェクトまたはフィールドの名前) の下にエラーメッセージを表示します。コントロールまたはフィールドが現在画面の外にあり、scrollForm パラメーターが true の場合、フォームはコントロールまたはフィールドまでスクロールします。
グローバルプロパティ (glide.ui.scroll_to_message_field) はフォームフィールドが画面外にある場合の自動メッセージのスクロール (フォームからコントロールまたはフィールドまでスクロール) を制御するために利用できます。showFieldMsg() メソッドは type パラメーターを必要とする同様のメソッドです。
| 名前 | タイプ | 説明 |
|---|---|---|
| name | 文字列 | フィールドまたはコントロールの名前。 |
| message | 文字列 | 表示するメッセージ。 |
| scrollForm | ブーリアン | true の場合、フォームをフィールドまでスクロールします。false の場合、フォームはフィールドまでスクロールしません。 |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - showFieldMsg(文字列 field, 文字列 message, 文字列 type)
指定されたフォームフィールド (コントロールオブジェクトまたはフィールドの名前) の下に情報またはエラーメッセージを表示します。コントロールまたはフィールドが画面の外にある場合、フォームはフィールドまでスクロールします。
グローバルプロパティ (glide.ui.scroll_to_message_field) はフォームフィールドが画面外にある場合の自動メッセージのスクロール (フォームからコントロールまたはフィールドまでスクロール) を制御するために利用できます。
showErrorBox() メソッドは type パラメーターを必要としない短縮形のメソッドです。
| 名前 | タイプ | 説明 |
|---|---|---|
| フィールド | 文字列 | フィールドまたはコントロールの名前。 |
| message | 文字列 | 表示するメッセージ。 |
| type | 文字列 | 「エラー」、「情報」、または「警告」。 |
| タイプ | 説明 |
|---|---|
| なし |
g_form.showFieldMsg('impact','Low impact response time can be one week','info');
GlideForm - showFieldMsg(文字列 field, 文字列 message, 文字列 type, ブーリアン scrollForm)
指定されたフォームフィールド (コントロールオブジェクトまたはフィールドの名前) の下に情報またはエラーメッセージを表示します。コントロールまたはフィールドが現在画面の外にあり、scrollForm が true の場合、フォームはフィールドまでスクロールします。
グローバルプロパティ (glide.ui.scroll_to_message_field) はフォームフィールドが画面外にある場合の自動メッセージのスクロール (フォームからコントロールまたはフィールドまでスクロール) を制御するために利用できます。
showErrorBox() メソッドは type パラメーターを必要としない短縮形のメソッドです。
| 名前 | タイプ | 説明 |
|---|---|---|
| フィールド | 文字列 | フィールドまたはコントロールの名前。 |
| message | 文字列 | 表示するメッセージ。 |
| type | 文字列 | 「エラー」、「情報」、または「警告」。 |
| scrollForm | ブーリアン | true の場合、フォームが画面の外にあると、そのフィールドまでスクロールします。false の場合、フォームはスクロールしません。 |
| タイプ | 説明 |
|---|---|
| なし |
g_form.showFieldMsg('impact','Low impact not allowed with High priority','error',false);
GlideForm - setDisabled(文字列 fieldName, ブーリアン disable)
指定されたフィールドを使用可能または使用不可にします。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドの名前 |
| disable | ブーリアン | true の場合、フィールドが無効になります。false の場合、フィールドが有効になります。 |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - setDisplay(文字列 fieldName, ブーリアン display)
フィールドを表示または非表示にします。
このメソッドで値のない必須フィールドを非表示にすることはできません。フィールドが非表示の場合、スペースは他のアイテムを表示するために使用されます。可能な限り、このメソッドの代わりに UI ポリシーを使用してください。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldname | 文字列 | フィールドの名前 |
| 表示 | ブーリアン | true の場合はフィールドが表示され、false の場合はフィールドが非表示になります。 |
| タイプ | 説明 |
|---|---|
| なし |
function onChange(control, oldValue, newValue, isLoading, isTemplate) {
//If the page isn't loading
if (!isLoading) {
//If the new value isn't blank
if (newValue != '') {
g_form.setDisplay('priority', false);
}
else
g_form.setDisplay('priority', true);
}
}
GlideForm - setLabelOf(文字列 fieldName, 文字列 label)
フィールドラベルのプレーンテキスト値を設定します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールド名 |
| label | 文字列 | フィールドのテキストラベル。 |
| タイプ | 説明 |
|---|---|
| なし |
if (g_user.hasRole('itil')) {
var oldLabel = g_form.getLabelOf('comments');
g_form.setLabelOf('comments', oldLabel + ' (Customer visible)');
}
GlideForm - setReadOnly(文字列 fieldName, ブーリアン readOnly)
指定されたフィールドを読み取り専用または編集可能にします。
可能な限り、このメソッドの代わりに UI ポリシーを使用してください。
必須フィールドを読み取り専用にするには、まず setMandatory() メソッドを使用してそのフィールドの必須要件を削除する必要があります。
フィールドを読み取り専用に設定すると、setValue() メソッドを使用してそのフィールドの値を更新することはできません。この方法で値を設定する必要がある場合は、readOnly 値を false に設定する必要があります。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールドの名前 |
| readOnly | ブーリアン | 関連するフィールドが編集可能か読み取り専用かを決定するフラグ。 可能な値:
|
| タイプ | 説明 |
|---|---|
| なし |
次の例は、変数エディターを読み取り専用に設定する方法を示しています。サービスカタログテーブルでこれを行うには、setVariablesReadOnly() を使用します。
// Create a Client Script on a table (e.g., incident) and paste this script
// Uncheck (set to false) the "isolate script" checkbox (not available by default)
// To add the isolate script checkbox to the form, configure form layout to add the checkbox
function onLoad() {
$("variable_map").querySelectorAll("item").forEach(function(item){
var variable = item.getAttribute("qname");
g_form.setReadOnly("variables."+ variable, true);
});
}
GlideForm - setValue(文字列 fieldName, 文字列 value)
指定されたフォームフィールドの値を、渡された値に設定します。
このメソッドは、複数行の変数セット (MRVS) への値の設定もサポートしています。最初に JSON.parse(getValue('<mrvs_field_name>')) を使用して MRVS アレイを取得し、インデックスを使用して行オブジェクト内のフィールドにアクセスします。MRVS ですべての値が更新されたら、setValue() メソッドを使用して更新された MRVS アレイを保存します。詳細については、以下のコード例を参照してください。
setValue(shortDesc, newValue.toUpperCase()); を実行する前に、簡単な説明が大文字になっていないことを確認します。これにより、クライアントスクリプトが toUpperCase() を複数回適用することを防ぎます。| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | 更新するフォームフィールドの名前。 |
| value | 文字列 | 指定されたフィールドに設定する文字列値。 注: 選択リストで値を定義するときは、ラベルではなく数値を使用してください。 |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、現在のフォームに簡単な説明を設定する方法を示しています。
g_form.setValue('short_description', 'replace this with appropriate text');
次の例は、MRVS で値を設定する方法を示しています。この例では、給与は Service Catalog を介して管理されています。クライアントスクリプトは、MRVS 内のすべての行で ジョブタイトル に入力された値を検索し、MRVS 内の一致するエントリーを [給与 ] フィールドに入力された内容で更新します。MRVS には「variable_set_1」という名前が付けられ、各行オブジェクト内に従業員名 [employee_name]、ジョブタイトル [employee_job_title]、および給与 [employee_salary] のフィールドが含まれています。さらに、カタログアイテムには、ジョブタイトル [job_title] と給与 [salary] が含まれています。
function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}
// Get the MRVS
var multiRowVariableSet = JSON.parse(g_form.getValue('variable_set_1'));
for (var i = 0; i < multiRowVariableSet.length; i++) {
// Check if the entered job title matches the title in the current MRVS row
if (multiRowVariableSet[i].employee_job_title == g_form.getValue("job_title")){
// Update the value of a matching field with the new salary
multiRowVariableSet[i].employee_salary = newValue;
}
}
// Update the MRVS
g_form.setValue('variable_set_1', JSON.stringify(multiRowVariableSet));
}
GlideForm - setVariablesReadOnly(ブーリアン isReadOnly)
サービスカタログ 変数エディターを読み込み専用にします。
メソッドは、要求アイテム [sc_req_item]、インシデント [incident] など、変数エディターが追加されるテーブルのクライアントスクリプトに配置する必要があります。他のテーブルで変数を読み取り専用に設定するには、 setReadOnly() メソッドを使用します。
関連項目: サービスカタログ変数エディター
| 名前 | タイプ | 説明 |
|---|---|---|
| isReadOnly | ブーリアン | 変数エディターが読み取り専用かどうかを決定するフラグ。 可能な値:
デフォルト値:false |
| タイプ | 説明 |
|---|---|
| なし |
次の行をクライアントスクリプトに追加すると、変数エディターが読み取り専用に設定されます。
g_form.setVariablesReadOnly(true);
GlideForm - setVisible(文字列 fieldName, ブーリアン display)
フィールドを表示または非表示にします。
デスクトップ UI では、非表示の場合は空白のままになります。モバイル UI または Service Portal UI では、非表示の場合は他のフィールドにスペースが入力されます。このメソッドで値のない必須フィールドを非表示にすることはできません。
可能な限り、このメソッドでなく UI ポリシーを使用してください。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldName | 文字列 | フィールド名 |
| 表示 | ブーリアン | true の場合、フィールドを表示します。false の場合、フィールドを非表示にします。 |
| タイプ | 説明 |
|---|---|
| なし |
function onChange(control, oldValue, newValue, isLoading, isTemplate) {
//If the page isn't loading
if (!isLoading) {
//If the new value isn't blank
if(newValue != '') {
g_form.setVisible('priority', false);
}
else
g_form.setVisible('priority', true);
}
}
GlideForm - showErrorBox(文字列 name, 文字列 message)
指定されたフォームフィールド (コントロールオブジェクトまたはフィールドの名前) の下にエラーメッセージを表示します。コントロールまたはフィールドが現在画面の外にある場合、フォームはコントロールまたはフィールドまでスクロールします。
グローバルプロパティ (glide.ui.scroll_to_message_field) はフォームフィールドが画面外にある場合の自動メッセージのスクロール (フォームからコントロールまたはフィールドまでスクロール) を制御するために利用できます。showFieldMsg() メソッドは type パラメーターを必要とする同様のメソッドです。
| 名前 | タイプ | 説明 |
|---|---|---|
| name | 文字列 | コントロールまたはフィールドの名前。 |
| message | 文字列 | 表示されるメッセージ。 |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - showRelatedList(文字列 listTableName)
指定された関連リストをフォームに表示します。
このメソッドはモバイルプラットフォームでは利用できません。このメソッドがモバイルプラットフォームで実行されても、何も起こりません。
| 名前 | タイプ | 説明 |
|---|---|---|
| listTableName | 文字列 | 関連リストの名前。 |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - showRelatedLists()
フォームの関連リストをすべて表示します。
このメソッドはモバイルプラットフォームでは利用できません。このメソッドがモバイルプラットフォームで実行されても、何も起こりません。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - submit()
レコードを保存します。
フォームから離れて元の場所に戻ります。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| なし |
GlideForm - submit(文字列 verb)
パラメーターで指定された UI アクションを実行します。
| 名前 | タイプ | 説明 |
|---|---|---|
| verb | 文字列 | sys_ui_action レコードからの action_name。アクション名は、表示されるフォームボタンを対象とする必要があります。 |
| タイプ | 説明 |
|---|---|
| なし |