いつもお世話になっております。
入力した品番でソートし、在庫数を表示する"F_入出庫履歴"というフォームがあります。
以下が主な要素です。
入庫フォームの入庫数の合計"txb_合計入庫数"
出庫フォームの出庫数の合計"txb_合計出庫数"
txb_合計入庫数からtxb_出庫数を引いた"txb_在庫数"
また受注品の在庫が無い時に作成指示をかけるための"F_受注品作成依頼"というフォームがあります。
以下が主な要素です。
受注品の納品番号バーコードを読み取る"txb_納品番号"(非連結)
読み取った納品番号から受注品の品番を特定し、その品物の現在庫数を表示する"txb_現在庫数"(非連結)
"T_発注"に作成指示用のレコードを追加する"btn_作成手配"
この現在庫数を表示する際、F_入出庫履歴をacHiddenで開き、txb_在庫数の値を取得してtxb_現在庫数に代入する
という方法を採っています。
問題はここからです。
btn_作成手配で使用する"Q_作成手配分追加"という追加クエリで
"T_作成"の現在庫数フィールドに追加するのを"式1: [Forms]![F_受注品作成依頼]![txb_現在庫数]"
とした時、現在庫数の値がクエリに表示されません。
クエリを実行すると、現在庫数にちゃんと値が入っているので実害はないのですが、理由がよくわからず困っています。
説明がわかりにくくて申し訳ありませんが、こういった事象が起きる理由が分かる方が
いらっしゃれば教えて頂きたいです。
「値がクエリに表示されない」というのが良く分かりません。
「txb_現在庫数"(非連結)」に反映されない、というのであれば分かるのですが。
もし上記が正の場合、画面をリフレッシュすればいいのではないでしょうか(違っていたらすみません)
クエリをデータシートビューで見るとこれから追加する値が表示されると思うのですが、それの現在庫数フィールドの値が表示されない、ということです。
「btn_作成手配」ボタンのクリック時で"Q_作成手配分追加"クエリを実行するようになっているということですか。
このクエリは"Q_作成手配分追加"のことですか。
このクエリをデザインビュー(あるいはSQLビュー)で開いてから、データシートビューで表示させるという操作をしているとうことですか。
はい、ボタンを押すと、入力項目が不足していないか等のif文を通り、問題なければElseに分岐してDocmdでクエリが実行されます。
クエリはQ_作成手配分追加のことです。
このクエリが正しく作れているかの確認のため、クエリのデータシートビューを見たところ、フォーム上ではテキストボックスに値が正しく入っている(仮に「1000」と入力していたとします)が、データシートビューでは値が入っていませんでした。その状態でクエリを実行すると、きちんとT_作成の現在庫数フィールドに値(1000)が入っています。
デザインビューからデータシートビューを表示させる操作をしたということですか。
そのとき、
式1: [Forms]![F_受注品作成依頼]![txb_現在庫数]
と設定したフィールドに値が表示されていないということですが。上記の認識で間違いないなら下記のことを確認してください。
その時に、「F_受注品作成依頼」フォームは開いている状態ですか。
また、「txb_現在庫数」に入力したあと、Enterキー(Tabキー)を押下する、あるいは他のコントロールをクリックするなどして、フォーカス移動をしてますか。
はい、デザインビューからデータシートビューに切り替えた際、値が表示されませんでした。
はい、当該のフォームは開いた状態で、txb_現在庫数から他のボタンへフォーカスを移動させてみても、データシートビューに値が出ませんでした。
フォーカスを移動させてからクエリーを開いても表示されませんか?
ちょっと原因は分からないのですが、実行したら値がきちんと入るのなら問題はないのでは?
フォーカスを移動させて値が保存されたらデータシートビューで値が表示される、という認識でしたので、移動させても値が表示されないのはおかしいなあと思って質問させて頂いた次第です。実行するとちゃんと在庫数に入力した数が追加されているので問題はないのですが。原因が気になったもので。。
とりあえず動いているのでよしとします、お手数をお掛け致しました。