この特集のトップページへ
Chapter 6:ビジネスロジックの設計

6.2.1 新規顧客の登録
●Visual Basicにおける実際の操作
 では実際に,Visual Basicを使ってList 6-2ならびにList 6-3を入力する方法について説明する。

 まず,Visual Basicの[ファイル]メニューから[新しいプロジェクト]を選択し,プロジェクトの種類として[ActiveX DLL]を選択する(Fig.6-4)。この操作によって,新しいプロジェクトが作られ,COMコンポーネントを実装することができるようになる。

Fig.6-4 ActiveX DLLプロジェクトの作成
fig6_04

 List 6-2は,DataObj.Customerコンポーネントに実装するプログラムである。そこで,[プロジェクト]メニューから[プロジェクトのプロパティ]を選択し,プロジェクト名を“DataObj”に変更する(Fig.6-5)。その結果,このプロジェクトで実装するCOMコンポーネントには,“DataObj.クラス名”というプログラムIDが振られる。

Fig.6-5 プロジェクト名の変更
fig6_05

 さらに,Customerという名前のクラスモジュールを追加する。クラスモジュールを追加するには,プロジェクトエクスプローラの[クラスモジュール]の部分を右クリックし,表示されるメニューから[追加]−[クラスモジュール]を選択すればよい(Fig.6-6)。

Fig.6-6 クラスモジュールの追加
fig6_06

 そして,追加したクラスモジュールの名前を“Customer”に変更する。また,このCOMコンポーネントのデフォルトのトランザクションの設定を[トランザクションが必要]にするため,MTSTransactionModeプロパティを“RequiresTransaction”に変更する(Fig.6-7)。

Fig.6-7 クラスモジュールのプロパティの変更
fig6_07

 クラスモジュールの設定が終わったらならば,参照設定をしておく。DataObjプロジェクト内では,ADOを使ってデータベースにアクセスするために[Microsoft ActiveX Data Objects 2.5 Library]の参照設定と,COM+の機能を使うために[COM+ Services Type Library]の参照設定が必要になる(Fig.6-8)。

Fig.6-8 参照設定
fig6_08

 以上でプロジェクトの設定は完了する。あとは,追加したCustomerクラスモジュールにList 6-2に示したプログラムを入力してゆけばよい(Fig.6-9)。

Fig.6-9 CustomerクラスモジュールにList 6-2のプログラムを入力する
fig6_09

 次に,List 6-3Errorcode列挙型を書くわけだが,Visual BasicにおいてはPublic宣言した列挙型は,どのクラスモジュール内に記述しても同じものとして扱われるため,どこのクラスモジュール内に記述してもかまわない。そこでここでは,Customerクラスモジュールの冒頭にそのまま記載してしまうことにする。


One Point! Visual Basicの文法上の問題から,列挙型は,クラスモジュール内のメソッドなどを実装するよりもまえの段階で記述しなければならない(そのため,上の説明では「クラスモジュールの冒頭に」とした)。そうしないと,コンパイルエラーが発生する。

One Point!Public宣言した列挙型は,必ずクラスモジュールに記載しなければならない。標準モジュールなどに記載した場合は,参照設定したときに,その列挙型をCOMクライアント側で参照できない。

 以下,説明の重複を避けるため,プログラムを開発するたびにクラスモジュールを追加する方法などを説明しないことにする。本章の最後には,本章で作成したCOMコンポーネントのソースプログラムを一括ダウンロードできるようにポインタを用意するので,より詳細な部分については,実際のソースプログラムを参照していただきたい。

prevpg.gif Chapter 6 8/92 nextpg.gif