追加・削除のできるWebアプリを作る(2) ~ページの作成と保存 |
ここで作る出勤簿の処理構造は、データベースの構造を見ればすぐにお分かりいただけるでしょう。
日付ごとに職員番号を入力して氏名と単価を確認し、その非常勤職員の出社時刻と退社時刻を入力します。あとは、演算フィールドによって職員の勤務時間と日給が表示され、テーブル“t_出勤簿”にレコードが追加されます。
出勤簿のデータアクセスページを作る手順を、以下に紹介します。
- 基本のページを作る -
(1) |
データベースウィンドウの「オブジェクト」から「ページ」を選択します
|
(2) |
「ウィザードを使用してページを作成する」をダブルクリックします ページウィザードが起動します。 |
画面4:ページウィザードでテーブルとフィールドを選択する
(3) |
「テーブル/クエリ」のリストから“t_出勤簿”を選択します 「選択可能なフィールド(A)」に選択したテーブルのフィールドが表示されます。
|
(4) |
[>>]ボタンをクリックします すべてのフィールドが「選択したフィールド(S)」に移動します。
|
(5) |
[次へ >]をクリックします グループレベルを指定する画面になります。グループレベルとは、レコードの集計などを行う際に複数のレコードをとりまとめることで、これを使用すると指定したフィールドを基準にレコードがグループ化されます。レコードをグループ化してしまうとレコードセットを変更できなくなるので、新規入力などは行えません。ここではグループレベルを指定しないようにします。
|
(6) |
[<]をクリックします 「職員番号」がグループレベルとして選択されているはずなので、[<]をクリックしてグループレベルの設定を解除します。「職員番号」フィールドが、他のフィールドと同じ左側のリストに戻されます。 |
画面5:グループレベルを解除する
(7) |
[次へ >]をクリックします レコードの並べ替えを指定する画面になります。ここでは、「勤務ID」を基準にレコードを並べ替えるようにしましょう。
|
(8) |
一番上のドロップダウンリストで「勤務ID」を選択して、 [次へ >]をクリックします |
画面6:並べ替えの基準とするフィールドを指定する
最後の画面でページの名前を入力し、「ページのデザインを編集する(M)」のオプションボタンをONにして[完了]ボタンをクリックします。
- リレーションを設定する -
これで、画面7のようなデータアクセスページのデザイン画面が表示されます。ここまでの段階で、テーブル“t_出勤簿”を元にしたシンプルなページが作成できました。この段階では、テーブル“t_非常勤職員”と連携させていません。
画面7:生成されたデータアクセスページを編集する
(9) |
メニューから「表示(V)」→「フィールドリスト(L)」を選択します
フィールドリストが表示されます。フィールドリストには、データベース中のテーブルと選択クエリが表示され、さらにそれらの[+]をクリックすると、フィールドが展開されます。 |
画面8:テーブルとクエリ、その中のフィールドが表示されたフィールドリスト
(10) |
「ヘッダー:t_出勤簿」と書かれた下の余白部分をクリックし、ハンドルをドラッグして下に広げます
|
(11) |
フィールドリストの「クエリ」――「q_出勤簿」――「氏名」をドラッグし、広げた余白部分へドロップします
「レイアウトウィザード」が起動し、ドロップしたフィールドをどのような形でページ上に展開するかを尋ねてきます。
|
(12) |
「個々のコントロール(I)」をONにして[OK]をクリックします
ドロップしたフィールドの値をピボット(表の中心軸)として分析表などを表示する場合は、「ピボットテーブルリスト(P)」をONにします。
「新規リレーションシップ」ダイアログボックスがオープンします。ここで、ページの元になったテーブル“t_出勤簿”と、ドロップしたフィールドの所属するテーブル“t_非常勤職員”とのリレーションを設定します。
双方が同じフィールド名で同じデータ型なら、自動的に関連付けが行われます。ここでは、自動的に関連付けられた内容のままで構いません。フィールド名やデータ型が異なる場合は、ここでフィールド同士の関連付けを行います。1対他のリレーションシップ設定は、下部のオプションボタンで指定します。ここでは「'q_出勤簿' の1つのレコードを、 't_非常勤職員' の複数のレコードに関連付ける(一対多)(O)」をONにします。
なお、ここで設定するリレーションはデータアクセスページのためのリレーションで、Accessのリレーションシップでの設定とは無関係です。
|
(13) |
[OK]をクリックします
|
(14) |
同じ要領で“q_出勤簿”から「単価」「勤務時間」「日給」の各フィールドをページにドロップして貼り付けます
この段階では既にすべてのフィールドの関連付けを設定しているため、これらのフィールドを貼り付けても(12)のときのような「新規リレーションシップ」ダイアログボックスはオープンしません。 |
画面10は、テキストボックスなどのプロパティを変更したデータアクセスページのデザイン画面です。
画面9:「新規リレーションシップ」のダイアログボックス
画面10:プロパティを変更したデータアクセスページのデザイン画面
|
|
|