「ギャラリー」を追加
ラベルを追加し、Textプロパティに
「Text(Today(),"[$-ja-JP]mm/dd") & “の勤務状況"」
を設定します。
その下に、「従業員名」「勤務形態」「出勤時間」「退勤時間」の4つのラベルを並べます。
ラベルの下に「空の垂直ギャラリー」を追加し、以下のように設定します。
レイアウト:タイトルとサブタイトル
データソース:勤怠管理テーブルを設定し、
テキストラベルを2つ追加し、
タイトル/サブタイトル/テキストラベル1/テキストラベル2を横並びにしてフィールドをそれぞれ設定します。
出勤時間/退勤時間のTextプロパティにそれぞれ
「Text(ThisItem.出勤時間, “[$-ja-JP]hh:mm")」
「Text(ThisItem.退勤時間, “[$-ja-JP]hh:mm")」
を設定します。
今日の勤怠データのみを表示するために、
ギャラリーのItemsプロパティに
「Filter(勤怠管理テーブル, 日付=Today())」
を設定します。
+新しい画面 から「管理者_勤務状況一覧」画面を作成し、
>(右アイコン)のOnSelectプロパティに
「Set(SelectedUser,今日の勤務状況ギャラリー.Selected.Name );
Navigate(管理者_勤務状況一覧画面)」
を設定します。
「管理者_勤務状況一覧画面」にもラベルを追加します。
Textプロパティに
「Text(SelectedUser) & “の勤務状況"」
を設定します。
その下に、「日付」「勤務形態」「出勤時間」「退勤時間」「勤務時間」の5つのラベルを並べます。
「管理者_今日の勤務状況」画面同様、ラベルの下に「空の垂直ギャラリー」を追加し、
レイアウト:タイトルとサブタイトル
データソース:勤怠管理テーブル
を設定します。
さらにテキストラベルを3つ追加し、タイトル/サブタイトル/テキストラベル1/テキストラベル2/テキストラベル3を横並びにして
フィールドをそれぞれ設定します。
出勤時間/退勤時間のTextプロパティにそれぞれ
「Text(ThisItem.出勤時間, “[$-ja-JP]hh:mm")」
「Text(ThisItem.退勤時間, “[$-ja-JP]hh:mm")」
を設定します。
「管理者_今日の勤務状況」画面で選択したユーザーの、今月の勤怠データを表示するために、
ギャラリーのItemsプロパティに
「 Filter(勤怠管理テーブル,
日付 >= Date(Year(Today()), Month(Today()), 1) && 日付 <= Today(),
Name = SelectedUser) 」を設定します。
選択したユーザーの今月の出勤日数と合計勤務時間を表示するためのテキストラベルを追加します。
出勤日数を表示するテキストラベルのTextプロパティには、
「 Gallery1.AllItemsCount 」 を、
合計勤務時間を表示するテキストラベルのTextプロパティには、
「 Sum(Gallery1.AllItems,’Label-勤務時間’) 」
を設定します。
編集が完了したら、保存して公開します。
実際にアプリを動かしてみます。
出勤ボタンを押す前の画面では退勤ボタンは押せないようになっていますが、
出勤後の画面では出勤ボタンが押せなくなり二重送信がされないようになっています。
出勤後の「勤怠管理テーブル」を見てみると、出勤ボタンを押した時間が入っています。
「勤務時間ボタン」をクリックすると、自分の勤務時間一覧が見れます。
退勤時間横の>(右アイコン)をクリックすると、編集画面に遷移します。
編集画面で出勤時間を編集し保存すると、勤務時間一覧画面に反映されました。
「勤怠管理テーブル」にも編集された出勤時間が入っていることが確認できます。
トップ画面に戻り、「休暇申請ボタン」をクリックします。
休暇申請フォームから申請をすると、
「休暇申請テーブル」に申請内容が格納されているのが確認できます。
続いて、管理者のみに表示されている「管理者画面ボタン」をクリックします。
すると、出勤している社員の勤務状況が一覧で確認できます。
社員の勤務状況の一覧から>(右アイコン)をクリックすると、選択した社員の今月の勤務状況を確認することができます。
最後に退勤ボタンをクリックすると、退勤ボタンが無効化され、
「勤怠管理テーブル」に退勤時間が格納されます。
全6回にて、勤怠管理アプリは完成です。
最後までご精読いただき、ありがとうございました。