ServiceNow 認定 CAD の頻出用語をフラッシュ暗記で。スクリプトAPIからサーバ/クライアント・スコープ・UI・連携まで横断。
ServiceNow CAD 用語ドリルに収録している語をレベル別に掲載します。ドリルでは以下の語を4択形式で出題し、正解後に意味・補足を表示します。全72語のうち代表的なものを抜粋しました。
スクリプトAPI・サーバ/クライアント処理・データモデル・スコープ・UI・セキュリティ・デプロイ・連携のCAD頻出用語。 ※ 収録52語のうち24語を抜粋して掲載しています。
| QUESTION | 意味 | ポイント |
|---|---|---|
| GlideRecordGlideRecordSCRIPT | テーブルのレコードを操作するサーバ側API | query()で取得しnext()で走査、insert/update/deleteForで更新する。サーバ側で動く点と、addQueryで条件を足す基本形がCAD最頻出。 |
| GlideForm(g_form)GlideFormSCRIPT | クライアント側でフォームを操作するAPI | setValue/getValue/setMandatory/setDisplayなどでフィールドを動的制御する。クライアントスクリプト内で使い、サーバのGlideRecordと混同しない。 |
| GlideAjaxGlideAjaxSCRIPT | クライアントからサーバ処理を呼ぶ | client callableなScript Includeを非同期で呼び結果を受け取る。クライアントからDB値が必要な時の正攻法で、同期呼び出しは非推奨。 |
| Script IncludeScript IncludeSERVER | 再利用可能なサーバ側スクリプト | 関数やクラスをまとめ、Business RuleやGlideAjaxから呼び出す。client callableにするとクライアントから利用でき、再利用設計の中核。 |
| Scheduled Script ExecutionScheduled ScriptSERVER | 定期実行するサーバスクリプト | 日次・週次など周期でスクリプトを走らせる。バッチ的なデータ整備や通知送信の自動化に使う。 |
| Client ScriptClient ScriptCLIENT | ブラウザ側でフォームを制御する | onLoad/onChange/onSubmit/onCellEditの4種で動く。サーバのBusiness Ruleと役割を分け、画面操作の即時反応を担う。 |
| g_scratchpadg_scratchpadCLIENT | サーバからクライアントへ値を渡す入れ物 | display Business Ruleで詰めた値をクライアントスクリプトで参照する。フォーム表示時にサーバ値を持ち込む定番手段。 |
| Reference QualifierReference QualifierDATA | 参照フィールドの候補を絞る | 参照先リストを条件で限定し、選べるレコードを制御する。動的(スクリプト)指定もでき、入力品質を高める。 |
| Data LookupData LookupDATA | 条件から値を自動設定する | 例えば優先度を影響度×緊急度から自動セットする。スクリプトを書かずルールベースで項目を補完する仕組み。 |
| クロススコープアクセスCross Scope AccessSCOPE | スコープ間の利用を許可する | 別スコープのテーブルやScript Includeを使うには明示的な許可が要る。既定で保護される仕組みを理解するのが要点。 |
| API NameAPI NameSCOPE | スコープを含む内部名 | テーブルやフィールドの内部識別子で、スコープ接頭辞が付く。表示ラベルではなくこのAPI名でスクリプト参照する。 |
| UI ページUI PageUI | 独自のHTML/Jelly画面 | 標準フォーム外のカスタム画面を作る。Jellyとクライアントスクリプトで構成し、特殊なUI要件に使う。 |
| ACL(アクセス制御)Access ControlSECURITY | レコード/フィールドの権限を判定する | operation(read/write/create/delete)ごとにロール+条件+スクリプトで評価する。CADでは条件やスクリプトの書き方まで問われる。 |
| ロールRoleSECURITY | 権限の集合 | ACLと結びつき何ができるかを決める。入れ子(包含)でき、スコープアプリ専用ロールを定義することもある。 |
| 更新セット(Update Set)Update SetDEPLOY | 構成変更をまとめて移送する | 開発環境の構成変更を記録し別環境へ反映する。データではなく構成の移送で、競合(collision)の扱いが論点。 |
| ソース管理(Git)Source ControlDEPLOY | アプリをGitで版管理する | スコープアプリをGitリポジトリに連携しコミット/ブランチ管理する。チーム開発と変更履歴の管理に使う。 |
| REST APIREST APIINTEGRATE | HTTPでデータをやり取りする | Table APIなどで外部とレコードを送受信する。認証やエンドポイントの基本を理解し、連携の入口として問われる。 |
| IntegrationHubIntegrationHubINTEGRATE | ノーコードで外部連携する | Flow Designerのアクション(スポーク)で外部サービスを呼ぶ。スクリプトを書かずに連携を組む現行の主流。 |
| アクションActionAUTO | フローの処理ステップ | レコード作成や通知などの再利用可能な処理単位。入力/出力を持ち、サブフローやスポークから呼べる。 |
| スポークSpokeAUTO | 外部サービス連携のアクション群 | SlackやJiraなど特定サービス向けにまとめられたアクション集。IntegrationHubで外部連携を素早く組める。 |
| アプリケーションファイルApplication FileSCOPE | アプリを構成する成果物 | テーブル・スクリプト・UI等の各メタデータがアプリに属する。スコープアプリの境界を成す構成要素として扱う。 |
| プラグインPluginDEPLOY | 機能を追加するパッケージ | ITSMやFlow等の機能群を有効化する単位。開発時に必要なプラグインを有効化してから機能を使う点を押さえる。 |
| addInfoMessage(クライアント)addInfoMessageCLIENT | フォームにメッセージを出す | g_form.addInfoMessage等で情報/エラーを表示する。入力検証のフィードバックに使う。 |
| フロー変数Flow VariableAUTO | (フロー全体で使う)自前の変数を定義・更新する | フロー全体で使う変数を定義し各ステップで参照・更新する。状態の受け渡しに使う。 |
スクリプト・連携の発展用語。 ※ 収録20語のうち20語を抜粋して掲載しています。
| QUESTION | 意味 | ポイント |
|---|---|---|
| GlideAggregateGlideAggregateSCRIPT | 集計クエリを行うサーバ側API | COUNTやSUMなどを効率的に集計する。1件ずつGlideRecordで数えるより高速で、大量データの集計で推奨される。 |
| GlideElementGlideElementSCRIPT | レコードの1フィールドを表すオブジェクト | getDisplayValue()で表示値、changes()で変更有無を判定する。参照フィールドの実値と表示値の違いを扱う場面で重要。 |
| Async Business RuleAsync Business RuleSERVER | 非同期で後から走るBR | トランザクション完了後にバックグラウンドで実行され、画面の応答を遅らせない。重い処理をafterではなくasyncにする判断が問われる。 |
| Many to ManyMany to ManyDATA | 多対多の関連を表す中間テーブル | 2テーブルを多対多で結ぶための関連テーブルを定義する。グループとユーザーのような関係のモデリングで使う。 |
| Calculated FieldCalculated FieldDATA | 他項目から値を算出するフィールド | 保存時や表示時にスクリプトで値を計算する。保存値を持つか都度計算かの違いを理解して使い分ける。 |
| フォーマッタFormatterUI | フォームに特殊表示を埋め込む | アクティビティストリームや関係図などをフォームに表示する。通常フィールドでは出せない情報の埋め込みに使う。 |
| UI BuilderUI BuilderUI | コンポーネントで画面を組む | Now Experience UIをノーコードで構築する新しいビルダー。従来のUI PageやService Portalとの位置づけの違いが問われる。 |
| Transform MapTransform MapINTEGRATE | 取込データを対象表に対応づける | インポートセットの列を対象テーブルへマッピングする。coalesceで新規作成か更新かを判定する点が論点。 |
| Web Service ImportWeb Service ImportINTEGRATE | (Webサービスで受け付ける)専用のインポートセット表 | 外部からインポートセットへレコードを送り込む仕組み。定期取込や他システム連携のデータ受け口に使う。 |
| GlideQueryGlideQuerySCRIPT | 型安全な新しいクエリAPI | GlideRecordより安全・簡潔にレコードを操作する新API。null安全で可読性が高い。 |
| setWorkflowsetWorkflowSCRIPT | BR等の連鎖実行を制御する | gr.setWorkflow(false)でビジネスルールや通知を抑止して更新する。一括処理で副作用を防ぐ。 |
| クエリ演算子Query OperatorsSERVER | addQueryの条件演算子 | =,!=,IN,STARTSWITH,CONTAINS等で条件を指定する。addEncodedQueryでまとめて渡せる。 |
| current と previouscurrent/previousSERVER | BR内の現在値と変更前値 | Business Ruleでcurrentは現行、previousは変更前のレコードを指す。変更検知に使う。 |
| eventQueueeventQueueSERVER | イベントを発火する | gs.eventQueueでイベントを登録し通知やスクリプトを起動する。非同期処理の起点になる。 |
| UIポリシー(CAD)UI PolicyUI | 条件で項目表示を制御する | クライアント側で必須/非表示/読取を切り替える。簡単な制御はクライアントスクリプトより推奨。 |
| カタログクライアントスクリプトCatalog Client ScriptUI | カタログ項目を制御する | サービスカタログのフォームで変数を動的に制御する。通常スクリプトのカタログ版。 |
| RESTMessageV2RESTMessageV2INTEGRATE | スクリプトでRESTを呼ぶAPI | エンドポイント・認証・本文を設定し外部APIを実行する。連携スクリプトの中核クラス。 |
| Import Set APIImport Set APIINTEGRATE | (/api/now/import の)インポートセット向けREST API | 外部からインポートセットへ送り変換マップで取り込む。バルク連携に使う。 |
| Glide ListGlide ListDATA | 複数値を持つ参照型 | カンマ区切りで複数のsys_idを保持する参照フィールド型。多対多の簡易表現に使う。 |
| テーブルAPI名Table API NameDATA | テーブルの内部名 | スコープ接頭辞付きの内部識別子。スクリプトやURLでこの名前を使う。 |
上記は収録内容の抜粋です。全72語はドリルを開始すると順に出題されます。
ServiceNow の開発者資格 Certified Application Developer(CAD) で問われる頻出用語を、スクリプトAPI・サーバー/クライアント処理・データモデル・アプリケーションスコープ・UI・セキュリティ・デプロイ・連携の分野からまとめています。CSA の次に進む開発寄りの用語基盤づくりと、実機演習の合間の復習補助を想定しています。
ServiceNow開発者は国内で需要が供給を上回る希少職です。CADは「作れる」を示す一段上の証明になり、案件単価や転職で評価されます。日本語教材が少ない分、用語の即答化が学習効率を大きく左右します。
CADはアプリケーション開発者レベルの認定です。スクリプトAPI(GlideRecord/GlideSystem/GlideForm/GlideAjax)、サーバー側(Script Include/Business Rule)とクライアント側(Client Script)の使い分け、アプリケーションスコープ、UI構築、ACL、更新セット/ソース管理、REST連携などを問います。CSAの管理知識に「書く力」を重ねる位置づけです。
本ドリルで用語を地固めしつつ、PDIでGlideRecordによるクエリと更新、gs.のログ出力を手で書いて確認します。
Business Rule・Script Include・Client Script・GlideAjaxの連携、アプリケーションスコープとクロススコープアクセス、ACLを実機で確認します。
UIアクション・Service Portalウィジェット・REST連携・更新セットを触り、公式トレーニングや模試で出題形式に慣れて受験します。
用語の土台ができたら、CADはPDIでスクリプトを書きながら仕上げる段階です。
GlideRecordやGlideAjaxの書き方は、コードを打ちながら解説する講座が理解を早めます。日本語教材がほぼ無い領域なので、講座と模試で出題形式に慣れておくと安全です。Udemyは年に何度もセールを開催しており、セール中は多くの講座が数千円台になります。
Udemyで講座・模試を見る →Certified Application Developer(CAD)は、ServiceNow上でのアプリ開発を問います。サーバ側とクライアント側のスクリプトの違い、スコープの考え方など、実装の作法が中心です。
GlideRecord(サーバ)とGlideAjax(クライアント連携)、サーバスクリプトとクライアントスクリプト、スコープドアプリとグローバル、Flow Designerとスクリプト。
CSAがプラットフォームを管理する資格なら、CADはその上にカスタムアプリケーションを開発する資格です。試験の軸はスコープ付きアプリケーション:グローバルスコープとの違い、他アプリからのアクセス制御、更新セットとソース管理の使い分けが繰り返し問われます。管理者経験だけで挑むと、この「スコープ」概念の細部で失点しがちです。
開発者試験らしく、GlideRecord(サーバ側のデータ操作)、GlideAjax(クライアントからサーバ呼び出し)、g_form(フォーム操作)といったGlide系APIの使い分けが頻出です。「クライアントスクリプトから直接GlideRecordを使うべきでない理由」のようなベストプラクティス問題も定番。APIの名前・実行場所(サーバかクライアントか)・用途の3点セットで暗記すると、選択肢の判別が一瞬になります。
近年のServiceNowはFlow DesignerやApp Engine Studioといったローコード開発を推しており、CADでも「スクリプトを書くべき場面」と「フローで済ませる場面」の判断が問われます。自動化=ビジネスルール、と即答する癖がある人は要注意。機能名と適用場面を対で覚え直すことが、現行試験への最短の適応です。