目次へ   図書管理  P.21

貸出と返却業務

「一覧表」ボタンと「検索」ボタンの追加

これから貸出と返却の処理をするための入力システムを作ります。

図書貸出ファイルで新規カードを作って、いざ登録という段になると「すでに登録してあります」といわれるとムッとしてしまいます。書籍コードを入力したときに、すぐに「重複してます」と知らせてくれるならまだロスが少なくてすむのですが。(ザカードでそんなふうにできただろうか)

しかし、登録済みカードをすぐに見つけることができれば問題ないわけで、見つからない場合に新規登録すればいいわけです。ここでは<一覧表>フォームによるカード選択の手順を説明します。

「図書貸出」カード・フォームを整形する
「図書貸出」ファイルを開きます。
〈レイアウトモード〉にして以下のように項目の配置を直します。
しかし、これは実際使っているうちに手直しが必要です。

<1段階>
@項目名の領域を一番長いものに合わせます。(この場合「書籍コード」)
A項目名の幅が縮んだ分、項目領域を左に移動します。
B「貸出期間」項目名と項目領域を書籍コードの横に持っていきます。


<2段階>
@「書名」「著者名」「発行所」「ジャンル」を項目名とともにもう少し左に詰めます。
Aこれに合わせて「貸出期間」を左に詰めます。
B「終了」ボタンを右上に持っていきます。
Cサブフォーム領域を最大に広げます。
※サブフォーム領域を大きくしないと入力作業の見通しが悪くなります。


<3段階>
@「NO」項目の枠線を取り除き、もう少し左に詰めます。
※この項目はカードの連番なので書籍データとは直接関係ありません。
Aフォームに「図書貸出カード」というタイトルをつけます。

「一覧表」ボタンの作成とコマンド設定
続いてボタンを追加します。
すでにできている「終了」ボタンからあと2つ複製します。


3つのボタンを等間隔に配置します。


2番目のボタンの名前を「一覧表」とし、右クリックして〈コマンド〉を選びます。


ボタンをコピーしたため、すでに入っているコマンド設定をすべて削除します。
新たに〈カテゴリ〉から〈検索〉を選び、
〈コマンド一覧〉から〈検索結果を連結〉を選びます。
〈検索結果を連結〉のチェックをはずします。
〈次行〉ボタンをクリックします。


〈カテゴリ〉から〈フォーム〉を選び、
〈コマンド一覧〉から〈カレントフォームの指定〉を選び、
〈フォーム〉から(一覧表)を選びます。
〈次行〉ボタンをクリックします。


〈カテゴリ〉から〈検索〉を選び、
〈コマンド一覧〉から〈検索解除〉を選び、
〈次行〉ボタンをクリックします。


〈カテゴリ〉から〈検索〉を選び、
〈コマンド一覧〉から〈マーク検索〉を選び、
〈次行〉ボタンをクリックします。


〈カテゴリ〉から〈検索〉を選び、
〈コマンド一覧〉から〈検索結果反転〉を選び、
最後に〈OK〉ボタンをクリックします。

「選択」ボタンの作成
「図書貸出」一覧表から目的のカードを見つけたら○(マーク)をつけます。
そのマークのカードだけを(カード)フォームに表示する「選択」ボタンを作ります。
「一覧表」ボタンの複製を作ります。
その複製されたボタンに「選択」と名前を付け
「一覧表」ボタンの右に配置します。(ボタン名のフォントを小さくして収まるようにします)
※画面は〈入力モード〉で表示しています。


〈レイアウトモード〉で〈選択〉ボタンを右クリックして〈コマンド〉を選びます。
〈カテゴリ〉から〈フォーム〉を選び、
〈コマンド一覧〉から〈カレントフォームの指定〉を選び、
〈フォーム〉から(一覧表)を選び、
〈次行〉ボタンをクリックします。


〈カテゴリ〉から〈検索〉を選び、
〈コマンド一覧〉から〈マーク検索〉を選び、
〈次行〉ボタンをクリックします。


〈カテゴリ〉から〈検索〉を選び、
〈コマンド一覧〉から〈検索結果を連結〉を選び、(〈検索結果を連結〉にチェックがついていることを確認)
〈次行〉ボタンをクリックします。


〈カテゴリ〉から〈検索〉を選び、
〈コマンド一覧〉から〈全フォームの連結更新〉を選び、
〈次行〉ボタンをクリックします。
追加された1行(2001.12.13追加)
「図書貸出」一覧表フォームはマーク検索後、閉じておかないといつまでも画面に残ってしまいます。
〈カテゴリ〉から〈フォーム〉を選び、〈コマンド一覧〉から〈フォームを閉じる〉を選びます。
〈カテゴリ〉から〈フォーム〉を選び、
〈コマンド一覧〉から〈カレントフォームの指定〉を選び、
〈データベース〉「図書貸出」ファイルを選び、〈フォーム〉から(カード)を選びます。
〈ラベル〉名として 中止 と入力します。
最後に〈OK〉ボタンをクリックします。

「検索」ボタンについては後述
(ボタン名も誤解を避けるために「終了」のままにしておきます)

「図書貸出」(一覧表)フォームの整形
〈入力モード〉にしてボタンを試してみます。
@〈一覧表〉ボタンをクリックします。
A「図書貸出」(一覧表)が表示されます。
※(一覧表)表示は〈サブフォームのコントロールを表示〉にしたほうが使いやすいと思います。表示されない部分をスクロールバーで表示できますから。
(表示される場所が適当でない場合は位置や大きさを直します)
大切なことはレイアウトを修正したらウィンドウの右上にある×ボタンでいったんウィンドウを閉じることです。
すると下のようなメッセージが出ますから〈はい〉をクリックします。


(一覧表)で、表示の必要がない項目は列のコントロールを右クリックして列削除できます。(表示されないだけで項目が削除されたわけではありません)
後ろに移動したい項目はドラッグします。
B選択するカードにマークをつけます。
C「選択」ボタンをクリックします。
Dマークのついたカードが表示されます。
※「図書貸出」(一覧表)は(カード)の陰に隠れてしまいます。
※再び「一覧表」ボタンをクリックすると(一覧表)が×マーク付で表示されます。

「選択」ボタンのコマンド修正
(一覧表)のマークはいくつでもつけられますが、複数個マークをつけると「貸出カード」へ生徒データを正しく書き込みできなくなります。(書き込みカードを特定できないため)
そのため、マークを2個以上つけた場合は「選択」ボタンの処理を無視(中止)するように設定します。
「図書貸出」ファイルを開きます。
(カード)フォームを〈レイアウトモード〉にします。
「選択」ボタンを右クリックしてコマンドを選びます。
〈コマンド設定〉の3行目〈検索結果を連結〉をクリックし〈挿入〉ボタンをクリックします。
以下は下図のとおりです。
〈カテゴリ〉から〈条件分岐〉を選び、〈コマンド一覧〉からも〈条件分岐〉を選びます。
〈検索件数〉のラジオボタンがオンになっていることを確認して
▼リストボタンから > を選びます。
値は 1 と入力します。
※つまり2個以上の検索結果があった場合、という意味です。
〈成立時のジャンプ先〉として 中止 と入力します。
次に、〈コマンド設定〉から最後の行〈カレントフォームの指定〉を選び、
〈ラベル〉として 中止 と入力します。
最後に〈OK〉ボタンをクリックします。