<HOME  <お願い事項   <Access2002 TOP   <Access97 TOP   <サイト内検索
 MS-Access2000超入門部屋--見積書を作る
   1 > 2 > 3 > 4 > 5 > 6 > 7 > 8 > 9 > 10 > 11 > 12 > 13 > 14 > 15 > 16 



ビットマップがこれじゃわかりにくいなぁと思ったら、ボタンのプロパティの「ピクチャ」ってところを変更してください。
もちろん、文字にすることもできますから、わかりやすい標題に変更なさるとよいでしょう。

わたしは、プリンタの絵に変更しました。ついでに横におんなじような感じのボタンをひとつ作りました。
こちらのボタンでは、Wのテーブルからリンクしているテーブルの方へレコードを移すための、あのマクロを動かそうと思います。
クリック時のイベントにマクロを選んでくださいね。

ついでに、各ボタンの「ヒントテキスト」っていうプロパティを使うと、マウスポインタ近づけたときにちらっとガイドを表示させることができますよ。


んじゃ、改めて、フォームを保存しフォームビューに切り替えて・・・。
入力した見積、まだ表示されてますよね。では、「マクロ」の方のボタンをクリックし・・・。
ギャー、なにこれ、#Deleteってなに????????

落ち着いて。ああ、取り乱しているのはあたしか。
これはですね。フォームって基本的に「開いたときの状態」を保持ずるわけですよね。だから、表示してるレコードが大元のテーブルから削除されると、こうして「このレコードは削除されておる」という意味合いで#Deleteって出します。残像みたいなものですね。
気持ち悪い、ということなら・・・。

このマクロの中で、「再クエリ」をしましょうか。

じゃあ、改めて何か入力してみましょう。
これなら・・・。

#Deleteってならないですよね。
さてさて、そしたら、Wじゃなくて、リンクした方の[見積明細テーブル]を見てみましょうか。


このまま追加していくと、レコードがあってもなくても、1回の見積ごとに15件ずつ明細が入ってくることになりますね。
まあ・・・1日に1万件も2万件も見積が発生するような場合は、レコード件数って気をつけないといけないですが・・・。
レコード件数自体は、そんなに神経質になる必要はないと思います。
でも・・・このレコードって、はっきり言って無駄ですよね。もう印刷しないのなら、ほんとに必要なレコードだけこっちのテーブルに移ってくればいいと思います。

そしたらですね・・・。明細テーブルへWテーブルからレコードを追加する追加クエリで、「商品番号に何か入力のあるレコードだけ追加」という意味合いで、抽出条件欄にNot Nullって入力してみてください。Is Not Nullでもよいです。


後で、見積の内容を照会するようなことがありますかねぇ。ではでは、ちょっとした一覧画面を作りましょう。

今までは、入力用の画面とかでしたので、Wの方のテーブルを使いましたけれど、今度は「今までに入力した見積」を見るので、Wじゃないテーブルを使わないといけないですね。[見積テーブル]と[顧客マスタ]を組み合わせてクエリを作ってみましょう。

もし、「総額いくらの見積だったか」という情報までほしいのであれば・・・。

「テーブルの表示」ツールボタンをクリックして、[見積明細テーブル]も加え、ツールバーのΣボタンをクリックして集計クエリにします。
で、フィールドグリッドで、金額を計算し、値引額を引いて、1.05かけて、見積合計金額を出します。レポートやフォーム内の計算式とおなじですね。