薬剤師とAccessと個人データ管理
さてここからが問題です。
この出来上がったボタンですが、押してもなにも起こりません。あたりまえですね。何をするのか指定していません ので。
ではこの追加ボタンを押したら何をしましょう?追加ボタン押したら・・・
1、この画面をそのまま入力画面として利用。ボタンを押したら追加可能な状態にする。
2、データ入力用の画面を別に作成し、ボタンを押すとその画面が開き、登録ボタンみたいなのを押すとその入力用画面に入力したものが追加される。
この2つのパターンが考えられます。
Accessをさわり始めたころは「1」の方法を使っていました。新たにフォームを作る必要もないので楽です。
最近は「2」の方法ばかりです。理由は色々あるのですが、追加や修正途中に「やっぱりやめた」とか、カルテ番号の重複登録を防ぐために先にデータベースに登録されてないか検索する仕組みを組み込んだりと、ネットワークで利用する場合は何かとこちらの方がよかったからです。
1つのテーブルに対して閲覧用、入力用、修正用の3つ(入力用と修正用を1つにしてしまってもOK)作成する必要があるので少し面倒ですが、ここでは「2」の方法で作成してみたいと思います。
ただ初めに言っておきますが、そうでなくてはいけないというわけではないです。結果が満足できるものならなんでもいいです。
ただし、今からいろいろコマンドボタンを作成していくわけなのですが、
追加ボタンだけはホームヘッダー(もしくはフッター)に配置しましょう。
なぜ詳細部分ではだめかといいますと、レコードが1件も登録されていない場合、詳細部分は表示されません 。つまり1件目のデータを入力しようとしても、追加ボタンが押せないのでデータが登録できないわけです。
まあ初めから何かデータが登録された状態で使い始める場合はかまいませんが。
![](https://www.google.com/images/icons/product/drive-32.png)
では入力画面を作成していこうと思いますが、せっかく今フォームを作りましたのでこれを利用しましょう 。
一度現在作成中のフォームを閉じ、データベースウィンドウを開きます。
次に今作成したKDを右クリックしてコピー、貼り付けをしてみましょう。
これで新たに一つフォームが出来上がりました 。
デザインビューで開いてみましょう。
このままでは見分けがつきませんのでちょっと手直しして見分けがつくようにしてあげましょう。
一度に囲めば複数のコントロールを選択できますが、Shiftキーを押しながら選択しても複数のコントロールを同時に設定できます。
うまく使ってください 。
まあ、背景色変えただけですけどね。
このままフォーム全体のプロパティを表示→レコードソース部分を削除し、コントロール一つ一つのソースも削除します。
非連結と表示されたらOKです。
チェックボックスのソースも消し忘れないようにしましょう。
そういえば、今度はデータが登録できなくてはいけませんので更新と追加の許可は「はい」に変更しておきましょう 。
さらにコントロールソースを失ったことで、生年月日、入所日、退所日の書式が変わっています。日付に変更しておきましょう。
入院チェック部分に規定値としてチェックを入れておきたい場合は規定値部分に
「-1」
を入れておきます。
さて、この画面、不必要な項目がありますよねえ?
そうです。「個人ID」部分です。
個人IDはオートナンバーなのでこの画面でデータの入力は必要ありません。
ただ、今回は消すのではなく使用不可にしておきます。(別に消してもいいです。追加画面と修正画面を1つで済ませたい場合はあった方がいいかもしれません。)
入力画面で試すとわかりますが、コントロールが移動するたびに入力モードを切り替えて・・・という作業が出てくる場合があります。実際運用する場合は、そういったわずらわしいことが起こらないようにしておくと非常に使いやすいソフトになりますので指定しておきましょう。
性別は2つ(もしくは不明を入れるなら3つ)しかありません。
このように選択肢が少ない場合はコントロールをコンボボックスに変更し、コントロールソースに
「"男";"女"」
としておきます。
あとは見た目を自分の好みに修正し、ポップアップやレコードセレクタの有無などを指定して出来上がりです。
ここで1つ
コンボボックスは選択肢が多い場合は使わない方がいいかと・・・
これから先、薬剤(商品)を選択する場合等、コンボボックスを使えばよさそうなところが多々出てくると思います。
しかしこのコンボボックス、選択肢が無限に増えていく可能性のある場合には不向きだと思います。(あくまで個人的に)
私が初めて作成したソフトは薬剤の選択部分がまさにコンボボックスになっていました。
なんでやめた方がいいかと言うと、なかなか説明し難いところもあるのですが、興味ある方は試しに使って作ってみてください。
決して使えないわけではないです。ちゃんと採用薬だけ表示させるとかもできます。もしかしたら良いものができるかもしれません。
でもやめた方がいいと思います。
私が使わない理由の一つとして、選択ミスを起こしやすいというのがあり、
例えば、ガスターDの10mgと20mgが採用になっているとした場合、
「ガスタ」
と3文字位入力すると、まず選択肢の上にある10mg錠が自動的に選択されます。
この「自動的に」というのが厄介で、事故のもとになるわけです。
まあそれだけではないのですが。
とりあえず間に合わせという場合でなければ、選択肢が性別や病棟のように、ある程度固定されたものだけにしておきましょう。
出来上がった画面をさらにコピーして修正用の画面も作っておきます。