• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:チェックボックスの値で単価を変更したい)

チェックボックスで単価を変更したい

このQ&Aのポイント
  • 商品管理DBにおいて、チェックボックスの値で受注入力時の単価を変更したいと考えています。商品ごとに複数の卸値が存在し、チェックボックスを利用して該当する単価を割り当てたいと思っています。現在は商品マスタに卸値1と卸値2が設定されており、また納品明細には卸値2を示すフィールドも設けられています。今後はチェックボックスにチェックが入っている場合は卸値2を使用した計算を行いたいです。
  • また、レポート出力の際には実際に使用した1種類の単価のみ表示したいと考えています。現在はテーブルやクエリ、フォーム上で卸値1と卸値2が表示されていますが、表示させたいのは選択された単価のみです。正しい方法があれば教えていただきたいです。
  • 以上が質問の内容です。もし間違ったアプローチである場合や、より良い方法があれば教えていただけると助かります。お手数ですが、ご教示いただけますと幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.1

MSAccessだと思いますが、DBシステム名を記述すべきです。 詳しい事情が分からないので何ですが、直感的に設計が 宜しくない気がします。商品に卸値が複数あることはよくある 話なので、卸値テーブルを別途設けるべきでしょう。 卸値テーブルは商品コードと卸値コードをキーにし、卸値と 有効期間(適用開始日、適用終了日)などを置きます。 納品明細には新しく卸値コードを追加し、卸値テーブルと結合 させれば、目的の値がとれるはずです。こうすれば、卸値の 推移も把握できますし、過去の収益も計算可能です。また、 卸値が増えてもレコードを追加するだけで、テーブルレイアウトの 変更が不要です。 現行の設計のままやろうとすると以下のようになります。 SELECT IIf(T納品明細.卸値2,商品マスタ.卸値1,商品マスタ.卸値2) As 卸値

kkmmkkmmm
質問者

お礼

ありがとうございます! Accessを使い始めたばかりで視野が本当に狭くてお恥ずかしいばかりです。 教えていただいたように、卸値テーブルを設けてみます。 また具体的にわからないことがあれば質問させていただきます。 よろしくお願いします。

関連するQ&A