Access (一般機能)

Accessの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 7 Professional : Access 2007)
多対多のレポート
投稿日時: 18/03/08 07:19:34
投稿者: ゴマゴマ

お世話になります。
例)2つ(以上)の受注に対し材料を2つ(以上)使って加工する。その場合レポートを使っての加工指示書には下記のように表示したい。
 
1)加工指示書
材料
 受注
-----------
AAAAAA
BBBBBB
 -----------
 XXXXXXXX
  YYYYYYYY
 
2)現状のテーブルの作り
T_材料
材料名 材料受注共通コード
AAAAAA   001
BBBBBB   001
 
T_受注
受注内容 材料受注共通コード
XXXXXXXX   001
YYYYYYYY   001
 
3)クエリで次のようにつなぎました。
T_材料         T_受注
材料名         受注内容
材料受注共通コード-------材料受注共通コード
 
4)そうしたところ下記のレポート表示になってしまいました。
材料
 受注
-----------
AAAAAA
 XXXXXXXX
  YYYYYYYY
-----------
BBBBBB
 XXXXXXXX
  YYYYYYYY
 -----------
 
5)材料テーブルと受注にテーブルには共通コードが必要と思い2)のテーブル構造しましたが、思い違いのようです。1)のようにするにはテーブル、クエリをどのようにしたらよいかご教示願います。
 
以上
 
 
 
 

回答
投稿日時: 18/03/08 10:03:52
投稿者: hatena
投稿者のウェブサイトに移動

2つの方法を提案します。
 
方法1
 
受注テーブルよりクエリを作成して、材料受注共通コード を表示させて、クエリプロパティの「固有の値」を「はい」に設定。
新規にクエリを作成して、上記のクエリと受注テーブルと材料テーブルを追加して、上記クエリとテーブルを材料受注共通コードで結合する。
これをレポートのレコードソースとする。
 
方法2
 
受注テーブルをソースとするレポートを作成する。
詳細セクションにフィールドを配置する。
材料受注共通コードでグループ化してグループフッターを表示させる。
そこに材料テーブルから作成したレポートをサブレポートとして配置する。
リンク親フィールド、リンク子フィールドは「材料受注共通コード」と設定する。

投稿日時: 18/03/08 16:47:34
投稿者: ゴマゴマ

hatena様
 
お世話様です。
早速にご回答ありがとうございます。
方法2をやってみましたところ理想どおりできました。
大変感謝しております。
ありとうございました。