<第8回>

データ入力ビューのデザイン

兵庫県立西宮香風高等学校 松本吉生

ymatsumoto@hyogo-c.ed.jp

 
<<前のページへ
 
フォームテンプレートを「デザインモード」で開く
   
 

既に保存されたフォームテンプレートを「デザインビュー」で開き、作業ウィンドウを「データソース」に切り替える。データソースには、設定されたSQL Serverのテーブルへの接続が「myFields」と表示されており、データの問い合わせに使う「queryFields」とデータの入力に使う「dataFields」に分かれている。フォームはまだデザインしていないので、真っ白なままである。

   
   
データソースから「コントロール付きセクション」を作る
   
  作業ウィンドウのデータソースから「dataFields」をフォームにドラッグする。マウスのボタンを離すと、「コントロール付きセクション」と「セクション」とを選べるようになる。ここでは「コントロール付きセクション」を選択する。
   
   
  データベースのフィールドが配置された「繰り返しセクション」ができた。「コントロール付きセクション」の「コントロール」とは、テーブルの各フィールドと接続された「テキストフィールド」のことを指し、「セクション」とはデータをまとめる枠組みを指すのだ。
   
   
ボタンを配置する
   
 

作業ウィンドウを「データソース」から「コントロール」に切り替える。「コントロールの挿入」項目を下にスクロールダウンしていくと、「ボタン」コントロールがある。

フォームではセクションの次の行にカーソルがあるはずだ。その状態で「ボタン」コントロールをクリックすると、フォームにボタンが作られる。3回クリックして3つのボタンを挿入しよう。

   
   
ボタンのプロパティで「操作」を「新しいレコード」にする
   
 

ボタンにデータを操作する機能を設定するために、「ボタンのプロパティ」を編集する。ボタンを右クリックして「ボタンのプロパティ」を選択してもいいし、ボタンを選択して「書式」メニューから「ボタンのプロパティ」をクリックしてもいい。

   
   
  「ボタンのプロパティ」ウィンドウが表示された。「操作」の項目を「新しいレコード」に変更しよう。
   
 
 
   
 

「新しいレコード」の操作は、フォームを使って新規データを入力する際に行う操作となる。

   
 
   
  「新しいレコード」の操作を行うボタンができた。
   
   
ボタンのプロパティで「操作」を「送信」にする
   
 

次に2つ目のボタンのプロパティを開く。

   
   
 

「ボタンのプロパティ」ウィンドウで「操作」を「送信」にする。

このとき「操作」のドロップダウンリストに「送信」の項目がない場合は、接続先のデータベースのテーブルに「主キー」がないなどの場合が考えられる。

   
 
   
  「フォームの送信」ウィンドウが開くので、「送信を許可する」のラジオボタンが選択され、送信先が「データベースに送信」となっていることを確認する。
   
 
   
  「フォームの送信」ウィンドウの設定を確認し「OK」ボタンを押すと、再び「ボタンのプロパティ」のウィンドウに戻るので、「OK」をクリックする。
   
 
 
  「送信」の操作を行うボタンができた。
   
   
ボタンのプロパティで「操作」を「クエリの実行」にする
   
 

最後に3つ目のボタンのプロパティを開く。

 
   
 

「ボタンのプロパティ」ウィンドウで「操作」を「クエリの実行」にする。「クエリの実行」の操作は、データベースに問い合わせを行い、データを表示する操作である。

   
 
 
   
 

「クエリの実行」の操作を行うボタンができた。

「新しいレコード」、「送信」、「クエリの実行」の3つのボタンで、このフォームからデータベースに対してデータの入力と問い合わせの基本的な操作ができることになる。

   
   
フォームをプレビューする
   
 

作ったフォームをプレビューする。フォームをプレビューする、ということは「データ入力」モードでフォームを開くということでもある。

フォームをプレビューするには、「フォームのプレビュー」ボタンをクリックするか、「ファイル」メニューの「フォームのプレビュー」から「既定」をクリックする。

   
   
クエリを実行する
   
 

フォームをプレビューすると、次のような画面になる。データベースのテーブルにはまだデータを一件も登録していないので、ここで表示された画面は「新しいレコード」の入力画面である。

「Seito_Cd」と「Kamoku_Cd」のテキストボックスには赤い下線が表示されている。これは必須入力項目であることを示している。SQL Serverでテーブルのフィールドを設定したとき、「NULLを許容しない」設定にしたためだ。データを送信する際に、この項目が空欄だとエラーになって送信が中断される。「NULLを許容する」設定のフィールドは空欄でも送信時にエラーにならない。

「Data_Id」のテキストボックスには赤い下線が表示されない。このフィールドは「主キー」であり「NULLを許容しない」設定であったが、SQL Server側で「IDENTITY」プロパティを設定し、自動的にインクリメントする数値が登録されるようにしたからだ。なお、下の画面では「Data_Id」のテキストボックスに入力のフォーカスが当たっているので青色の枠線になっている。

   
   
  「クエリの実行」ボタンをクリックすると、フォームがデータベースに問い合わせを行う。しかし一件もデータがないので、「指定されたクエリからデータは返されませんでした。」のダイアログが表示されるだろう。
   
 
   
 

「OK」をクリックするとフォームに戻るが、データがないので空白のフォームに3つのボタンだけが並んだ状態になる。

   
   
このページのまとめ
   
 

このページではデータソースからフォーム上に「コントロール付きセクション」を作り、データを操作する基本的なボタンを配置して操作のプロパティを設定した。次はこのフォームを使ってデータを登録し、クエリで呼び出して確認する。またデータ削除を行ってみる。

なお、このページでは、特に断りのない限り、サーバはWindows 2000 Server と SQL Server 2000、クライアントはWindows XP Professional と Info Path 2003、を使って説明していく。筆者のメールアドレスはymatsumoto@hyogo-c.ed.jpだ。

       
  mailto:ymatsumoto@hyogo-c.ed.jp :←ここをクリックして筆者にメールを送る
       
 
matsumotoyoshio.com 2004/03/03