FM15 不在届1 申請画面作成

今回からは年休や代休などの電子申請化を行います。
書類の電子申請を進めることでデータの蓄積や参照が容易になります。
また管理職の事務作業量を削減することができます

大まかな流れは次の4つです。
1.個人ごとのアカウントを作成
2.不在の申請画面を作成
3.年休の合計数や使用限度の表示
4.承認画面の作成

今回は1と2を行います。

1.個人アカウント作成

FileMakerではアカウントごとにアクセス権を設定することができます。
「一般教員」というアクセス権セットを作成します。

メニュー左端のファイル>管理>セキュリティを開きます。

画像1

「アクセス権セット」のタブを開き、「新規」をクリックします。
「アクセス権セットの名前」を「一般教員」にし、データアクセスとデザインを設定します。
レコードへは「カスタムアクセス権」を設定します。
一般教員に編集させるテーブルなのかを設定します。

画像2

画像3

次にアカウントをスクリプトで作成します。

画像4

このスクリプトをレイアウト「単独_基本_教員」で実行します。
パスワードが伏せ字になっていますが、「単独_基本_教員::教員ID」が指定されています。
これにより、教員IDがアカウント名と仮パスワードとして設定されます。
初期ログイン時に新しいパスワードの設定を行います。

作成ができたことを確認しましょう。

画像5

管理者用のアカウントとして「FM00000」パスワード「pass」を別途作成しました。

ファイルオプションの「次のアカウントを使用してログイン」のチェックを外しておきます。

画像6

これでファイルを開いたときにログイン画面が表示されます。

画像7

2.テーブルとテーブルオカレンスを作成

次に「不在届」用のテーブルとテーブルオカレンスを作成します。

画像8

画像9

テーブルの「申請日」と「申請者」は作成後のフィールドをダブルクリックして「フィールドオプション」を開き「作成情報」にチェックを入れます。
これにより自動的に日付や作成したアカウント名が入力されます。

画像10

3.レイアウト作成

画像11

ヘッダーに「新規不在届作成」ボタンを作ります。
ボディには「不在の種類」「不在の日時」「不在の事由」をそれぞれ作成します。
「不在の種類」はラジオボタンセットで選べるようにします。

「不在の種類」を選択することなく日時を記入されることを防ぐために、「不在の種類」が選択されてはじめて下の項目が表示されるようにします。
表示を隠すフィールドを選択し「次の場合にオブジェクトを隠す」をクリックします。

画像12

種別が空欄なら隠すように指定します。

画像13

時刻の項目は年休では不要ですので、時刻の隠す条件を「種別が空欄または種別が年休である」にします。

画像14

画面上では下のようになります。

画像15

代休では事由に出勤した理由を記入、その他では事由に不在となる理由を記入するように促すようにします。
「事由」のフィールドを選択し、右メニューにある「プレースホルダテキスト」をクリックします。
フィールドが空欄のときに薄く文字を表示する機能です。

画像16

画像17

画面では下のように表示されます。

画像18

4.申請

申請ボタンを作成します。
申請ボタンには申請用のスクリプトを設定します。

申請スクリプト
申請の種別、日付、事由に空欄があればダイアログを表示する。
この内容でいいかの確認ダイアログを表示する。
よければ、フィールド「申請」に「申請」と入力する。

画像19

申請ボタンが押されたあとに変更ができないようにします。
種別、日時、事由のフィールドを選択し、スクリプトトリガーを設定します。

画像20

スクリプトトリガーの内容は
フィールド「申請」が「申請」になっているとき
変更ができないという旨のダイアログを表示する。
レコードの内容を復帰し確定させる。

画像21

※ レコードを確定させるだけのスクリプトだとラジオボタンである種別の部分が変更できてしまうため、「復帰」を入れています。

これにより、申請後の変更ができなくなりました。

5.不在届申請画面へ

最後に、トップページから今回作成した不在届申請画面へのボタンを作成します。

画像22

不在届申請へのスクリプト
レイアウト切り替え(不在届申請へ)
申請者を現在のアカウント名で検索
申請日順にソート

画像23

これで他人の申請を見ることができなくなります。

今回は以上です。
次回は年休の上限の設定や年休の累計使用数の計算を行います。

<FM14 出席簿6 出力機能  FM16 不在届2 年休時休のカウント>

いいなと思ったら応援しよう!

mei
最後までお読みいただきありがとうございます。「スキ」をしていただけるととても励みになります。