データベース千夜一夜第16回

プログラミングとSQL(4)
~販売データの入力処理(前編)
長谷川裕行
有限会社 手國堂

フォームのデザイン

フォームは、先に紹介した画面1のようなデザインとします。各コントロールの名前(Nameプロパティの値)は図2のとおりです。


- サンプルのためのデザイン -

こういったシステムの画面デザインには、いく通りかのパターンがあります。ユーザーがキーボードからデータを入力するタイプ――比較的件数の少ない作業――では、顧客の特定と販売情報の入力とを、異なるウィンドウに分けてデザインする場合が多いでしょう。顧客を特定したら受注情報を入力するウィンドウが開く……といった形です。

一方、通信販売や商品の卸業など取り扱い件数の多い業務では、OCR式の注文用紙やXMLによる一括処理が中心となるため、ウィンドウに表示される情報は単なる確認用となります。あるいは、ウィンドウを用いず、すべて内部のバッチ処理とする場合もあります。

今回のサンプルは、両者の折衷的なインターフェイスとしてあります。お客様IDや商品IDの入力ミスや入力取り消しは基本的に発生しないものとし、細かなエラー処理は省略しました。この部分は一括処理を前提としています。

しかし、入力結果が見えなくてはサンプルの意味がないので、入力はキーボードから行い、その結果を画面に表示するようにしています。



- データベース制御はすべてソースコードで -

今回作成するサンプルは、これまでのものに比べるとやや大がかりになります。アプリケーションからSQLを扱う実例を見ていただくことが目的なので、プログラミング言語や開発環境(Visual Basic .NETと使用するコンポーネント)の細かな扱いについては省略し、アプリケーションの仕様に沿って先頭から順にソースコードの説明をしていきます。

SELECTやINSERTなどのSQL構文については既に解説済みなので、詳しくは触れません。ソースコード中でのSQLの扱いやADO.NETによるデータベース操作を確認してください。

なお、冒頭で触れたようにコントロールを貼り付ければソースはもっとシンプルになります。しかし、サンプルではデータベースの制御をすべてソースコードで記述しているため、冗長になっています。ソースをよく見れば、似たような(あるいは、ほとんど同じ)コードが重複していることに気付かれるでしょう。本来なら、これらは1つの下請けプロシージャに括ってしまった方が合理的です。

しかし、そうするとさらにソースの複雑さが増すため、敢えて同じコード(データベース制御関係)を繰り返しています。ご了承ください。

では、ソースを順に見ながら解説していきましょう。



トップページ
全体の仕様を把握する
フォームのデザイン
サンプルのためのデザイン
データベース制御はすべてソースコードで
データの準備
下請け処理~コントロールと変数の初期化
伝票番号の生成
顧客情報と伝票番号の表示
レコードの追加~AddHeader
あとがき
Copyright © MESCIUS inc. All rights reserved.