Webアプリ開発事始 第6回

WebアプリケーションとHTML(2)
~Accessのデータアクセスページを使う
長谷川裕行
有限会社 手國堂

追加・削除のできる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:プロパティを変更したデータアクセスページのデザイン画面


- 目次 -
トップページ
Accessで作れるWebアプリケーション
追加・削除のできるWebアプリを作る(1)
~データベースのデザイン
追加・削除のできるWebアプリを作る(2)
~ページの作成と保存
基本のページを作る
リレーションを設定する
細かな手直し
データアクセスページの保存
ファイルの保存場所に注意
クライアントのセキュリティ設定
あとがき

Copyright © MESCIUS inc. All rights reserved.