【ServiceNow】App Engine Studio「休暇テンプレート」

## 概要
ServiceNowではApp Engine Studioを利用して、ノーコード・ローコードでアプリケーションを開発することが可能です。
App Engine Studioではいくつかのアプリケーションのテンプレートが用意されています。
テンプレートのテーブル構成などをまとめた公式のドキュメントはありますが、実際の利用イメージが見当たらなかったので、PDIでアプリを作成してどのような形で利用できるのか簡単にですが試してみました。
今回は「休暇テンプレート」アプリをまとめました。

### 環境
PDIで作成しています。
バージョンはVancouverです。
System Administrator（admin）で操作しています。

### アプリケーションメニューとモジュール
「休暇テンプレート」でアプリケーションを作成するとメニューに以下のようなアプリ・モジュールが追加されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1984141/c2979001-915e-f55b-0da2-3452c84ff793.png)

### Time Off Portal
まず、Time Offポータルを開いてみます。
自身の休暇申請の数など確認ができるみたいです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1984141/1ec64775-e265-34dc-9c31-622df0096295.png)
「休暇を要求」ボタンをクリックすると、以下のようなページに遷移しました。
休暇の期間と理由を入力できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1984141/7e38baf4-b59c-1cd2-a5ef-b9bdad17dd90.png)
仕方ないですがタイトルくらいしか日本語訳されていないので、日本語環境で利用したい場合は、翻訳を作成する必要がありますね。

日付と理由を入力して「Save Draft」ボタンをクリックしてみます。
するとDraft Saveの画面に遷移しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1984141/49ab5c32-7938-0b2c-37eb-0162e025fbce.png)
「ビュー」ボタンをクリックしてみると、以下のような画面が表示されました。
チケット的な画面で、コメントを追加することもできるようです。
まだ送信もしていない休暇申請なので、送信するべく「編集」ボタンで戻ります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1984141/0d42c199-06b7-5a0e-eab6-34570251cfe8.png)

「送信」ボタンをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1984141/565c53c4-e01d-21d3-8456-bbff705d135e.png)
休暇申請が送信されました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1984141/204ee14d-e49c-1ae1-8051-df3c2de93cba.png)
「Return home」でホーム画面に戻ると、承認待ちのリクエストカウントが増えており、Recent RequestとAll Requestにカードが追加されていました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1984141/eb0f67c6-63af-c67b-9592-1e973eaf18dd.png)
カードをクリックすると、先ほどのビューで表示された画面に遷移しました。
Requestがドラフト状態になったアクティビティも追加されています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1984141/0e8fef1e-a793-7941-8dc6-acf21ab11750.png)

以上がポータルのイメージになります。

また、テンプレート適用しただけではテーブルへのメニューやモジュールは表示されませんでしたが、
作成されたテーブル「x_●●●●●●_time_off_request」へアクセスしてみると、以下のようにレコードが追加されていました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1984141/a290402c-0022-3f55-0447-4886887ff4df.png)
フォームで開くとこのような形になります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1984141/8f74df5d-97a0-6f10-2566-43e9b9e2df61.png)
ユーザーに設定されているマネージャーへ承認依頼が行くのかと思いきや、テンプレートで追加されたフローを見る限り、通知のフローばかりで承認のフローは含まれていないようでした。
なので承認フローは新規で作成する必要がありそうです。

### Time Off Workspace
休暇管理用のワークスペースも用意されておりますが、テンプレートを適用しただけだと、ACLが存在しておらず、adminも誰も表示ができないようになっておりました。
ACLを追加するところから対応が必要です。

ワークスペースには以下のような二つのダッシュボードが含まれておりました。
自身の休暇申請状況を管理するものと
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1984141/31af7942-b4d0-c6b1-8d62-c8d403268ce8.png)
従業員またはチーム全体の申請を年別などで管理できるようです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1984141/26b6f08d-0704-becb-c2da-6b766eecf8e6.png)

## 参考
以下休暇テンプレートの公式ドキュメントです。テーブルやエクスペリエンス、フローなどの詳細を確認することができます。
[休暇テンプレート](https://docs.servicenow.com/ja-JP/bundle/utah-application-development/page/build/app-engine-studio/concept/time-off-requests-template.html)