目次へ   図書管理  P.44

貸出・返却業務

マーク検索用「貸出」ボタンのコマンド設定の修正
修正前のコマンド行(左・P.38およびP.41修正)と再修正後のコマンド行(右)ではかなり違います。(点線部分が違っているところです)
それで、これからの説明は追加された行だけでなく、すべての行を説明します。
「図書貸出」ファイルを(カード)マーク・フォームで開きます。
〈レイアウトモード〉にして「貸出」ボタンを右クリックして〈コマンド〉を選びます。
で囲まれた部分は以前から入っているコマンドです。

〈コマンド設定〉1行目
〈カテゴリ〉から〈フォーム〉を選び〈コマンド一覧〉から〈カレントフォームの指定〉
〈データベース〉は「生徒名簿」、〈フォーム〉は(一覧表)です。
作業ファイルを「生徒名簿」ファイルに切り替えます。

〈コマンド設定〉2行目
〈カテゴリ〉から〈検索〉を選び〈コマンド一覧〉から〈マーク検索〉を選びます。
マークが付けられたカードの検索を実行します。
〈コマンド設定〉3行目
〈カテゴリ〉から〈条件分岐〉を選び〈コマンド一覧〉からも〈条件分岐〉を選びます。
〈値〉は > 5  です。
〈成立時のジャンプ先〉は「終了」です。
5つ以上のマークをつけると処理を中断して終了します。「貸し出し」ボタンを数回押したときに全ての生徒データが書き込まれる誤動作を防止しています。
〈コマンド設定〉4行目
〈カテゴリ〉から〈一括〉を選び〈コマンド一覧〉から〈一括訂正〉
〈手順書〉は「貸出に○記入」です。
マーク検索で該当するカードの「貸出」項目に○印をつけます。
〈コマンド設定〉5行目
〈カテゴリ〉から〈フォーム〉を選び〈コマンド一覧〉から〈カレントフォームの指定〉
〈データベース〉「図書貸出」を選び、〈フォーム〉は(カード)マークを選びます。

〈コマンド設定〉6行目
〈カテゴリ〉から〈一括〉を選び〈コマンド一覧〉から〈一括転記〉
〈手順書〉から「生徒名簿へ書籍コード転記」を選びます。
〈コマンド設定〉7行目
〈カテゴリ〉から〈一括〉を選び〈コマンド一覧〉から〈一括訂正〉を選びます。
〈手順書〉は「貸出×」を選びます。
現在表示されている「図書貸出」カードに印をつけるためのコマンドです。「図書貸出」ファイルの「貸出」項目には全てのカードに規定値として○が入っていますが、表示のカードだけ値を×にします。
次の行のコマンドでカード内の表組の値を検索する際に検索値が0の場合(つまり、新規カードの場合)表示カードが画面から消えてしまうので、もう一度表示させるための印(×)を付けます。

〈コマンド設定〉8行目
〈カテゴリ〉から〈検索〉を選び〈コマンド一覧〉から〈ダイアログ検索〉
〈手順書〉は「表NO−2」を選びます。
〈コマンド設定〉9行目
〈カテゴリ〉から〈条件分岐〉を選び〈コマンド一覧〉からも〈条件分岐〉
〈値〉として = 0 と入力します。
〈成立時のジャンプ先〉として 新規カード と入力、 〈不成立時のジャンプ先〉として 該当カード と入力します。
〈コマンド設定〉10行目
〈カテゴリ〉から〈フォーム〉を選び〈コマンド一覧〉から〈カレントフォームの指定〉
〈データベース〉「生徒名簿」を選び〈フォーム〉は(一覧表)です。
〈ラベル〉名として 該当カード と入力します。
〈コマンド設定〉11行目
〈カテゴリ〉から〈ファイル〉を選び〈コマンド一覧〉から〈書き出しデータベース追加〉
〈手順書〉として「図書貸出へ生徒データ」を選びます。
「生徒名簿」ファイルの「貸出」項目に○印の付いたカードから生徒データを「図書貸出」の表組欄に書き出します。
〈コマンド設定〉12行目
〈カテゴリ〉から〈一括〉を選び〈コマンド一覧〉から〈一括訂正〉
〈手順書〉として「貸出臨時書籍コードクリア」を選びます。
○印の付いた「生徒名簿」カードの「貸出」項目の○印と「臨時書籍コード」項目の「図書貸出」への書き込み用書籍コードを削除します。これを残しておくと次回の貸出ボタンの実行に差し支えますから。
〈コマンド設定〉13行目
〈カテゴリ〉から〈ジャンプ〉を選び〈コマンド一覧〉からも〈ジャンプ〉を選びます。
〈ラベル〉名として 終了 と入力します。
該当カードに生徒データを追加するコマンドはここまでですので、後は終了にジャンプします。
このジャンプコマンドがないと新規図書カードの処理コマンドに入ってしまいますね。

〈コマンド設定〉14行目
〈カテゴリ〉から〈フォーム〉を選び〈コマンド一覧〉から〈カレントフォームの指定〉を選びます。
〈データベース〉は「生徒名簿」を選び、〈フォーム〉として(一覧表)を選びます。
〈ラベル〉名として 新規カード と入力します。
○印のついた「生徒名簿」カードから生徒データを「図書貸出」ファイルの表組行に入力する準備として処理中のファイルを切り替えます。
〈コマンド設定〉15行目
〈カテゴリ〉から〈一括〉を選び〈コマンド一覧〉から〈一括番号記入〉を選びます。
〈手順書〉として「表NO連番」を選びます。
「図書貸出」ファイルの表組項目の一行目から生徒データを書き込むための準備として「生徒名簿」の「表NO」項目に1から始まる連番を記入します。
〈コマンド設定〉16行目
〈カテゴリ〉から〈ファイル〉を選び〈コマンド一覧〉から〈書き出しデータベース追加〉を選びます。
〈手順書〉として「図書貸出へ生徒データ新規」を選びます。
「生徒名簿」カードの「貸出」項目に○印がついた生徒データを「臨時書籍コード」と「表NO」を頼りに該当する書籍コードを持つ「図書貸出」のカードに書き込みます。「表NO」の値により「図書貸出」のカード表組には1行目から生徒データが入ります。
〈コマンド設定〉17行目
〈カテゴリ〉から〈一括〉を選び〈コマンド一覧〉からも〈一括訂正〉を選びます。
〈手順書〉として「貸出臨時書籍コードクリア」を選びます。
コマンド行12行目と同様、○印の付いた「生徒名簿」カードの「貸出」項目の○印と「臨時書籍コード」項目の「図書貸出」への書き込み用書籍コードを削除します。これを残しておくと次回の貸出ボタンの実行に差し支えますから。
〈コマンド設定〉18行目
〈カテゴリ〉から〈フォーム〉を選び〈コマンド一覧〉から〈カレントフォームの指定〉を選びます。
〈データベース〉「図書貸出」を選び、〈フォーム〉は(カード)マークを選びます。
〈ラベル〉名として 終了 と入力します。
カレントファイルを「図書貸出」に戻し、コマンド7行目で「貸出」項目に値×を入力したカードを表示させる準備をします。
〈コマンド設定〉19行目
〈カテゴリ〉から〈検索〉を選び〈コマンド一覧〉から〈ダイアログ検索〉を選びます。
〈手順書〉として「×カード」を選びます。
コマンド7行目で「貸出」項目に値×を入力したカードを表示させます。
〈コマンド設定〉20行目
〈カテゴリ〉から〈一括〉を選び〈コマンド一覧〉から〈一括訂正〉を選びます。
〈手順書〉として「貸出○」を選びます。
コマンド7行目で「貸出」項目に入力した値×を値○に変えます。これを残しておくと次回の貸出ボタンの実行に差し支えますから。
〈コマンド設定〉21行目
〈カテゴリ〉から〈フォーム〉を選び〈コマンド一覧〉から〈カレントフォームの指定〉を選びます。
〈データベース〉「生徒名簿」を選び〈フォーム〉は(一覧表)を選びます。
再び「生徒名簿」から生徒データを選択できる状態に戻し終了します。

図書カードが選ばれてないのに
貸出ボタンを押すとデータのない新規カードが作成され
生徒データが登録されてしまう問題

追加コマンド
「図書貸出」ファイルを開きます。
メニュー〈検索〉→〈ダイアログ検索〉
〈検索の種類〉は〈絞り込み〉
〈検索項目〉は「NO〉を選びます。
〈範囲による指定〉に  を入力し、▼(リストボタン)から〈を超える〉を選びます。
〈手順書〉名として カード有り を入力して〈登録〉ボタンをクリックします。
マーク検索用「貸出」ボタンのコマンドの最初に以下の2行を追加します。

<追加された1行目>
〈カテゴリ〉から〈検索〉を選び、〈コマンド一覧〉から〈ダイアログ検索〉を選びます。
〈手順書〉として「カード有り」を選びます。
<追加された2行目>
〈カテゴリ〉から〈条件分岐〉を選び、〈コマンド一覧〉からも〈条件分岐〉を選びます。
値は >  0  です。
〈不成立時のジャンプ先〉として 終了 と入力します。


以下のコマンド行は変わりありません。