質問編集履歴

3

進行状況の追加と、作成順序の追加

2021/07/19 05:56

投稿

kyousuke8957
kyousuke8957

スコア7

test CHANGED
File without changes
test CHANGED
@@ -62,15 +62,15 @@
62
62
 
63
63
  TRANSFORM Sum([T_実績.数量]) AS 数量の合計
64
64
 
65
- SELECT T_実績.売先_CD, T_得意先M.得意先名称, T_実績.仕入先_CD, T_仕入先M.仕入先名称, T_実績.品目_CD, T_品目M.品名, T_実績.規格
65
+ SELECT T_実績.売先_CD, T_得意先M.得意先名称, T_実績.仕入先_CD, T_仕入先M.仕入先名称, T_実績.品目_CD, T_品目M.品名, T_実績.規格, [売先_CD] & [仕入先_CD] & [品目_CD] & [規格] AS 判定コード
66
66
 
67
- FROM ((T_実績 INNER JOIN T_得意先M ON T_得意先M.得意先コード = T_実績.売先_CD) INNER JOIN T_仕入先M ON T_仕入先M.仕入先コード = T_実績.仕入先_CD) INNER JOIN T_品目M ON T_品目M.[コード] = T_実績.品目_CD
67
+ FROM ((T_実績 INNER JOIN T_得意先M ON T_実績.売先_CD = T_得意先M.得意先コード) INNER JOIN T_仕入先M ON T_実績.仕入先_CD = T_仕入先M.仕入先コード) INNER JOIN T_品目M ON T_実績.品目_CD = T_品目M.[コード]
68
68
 
69
- WHERE 売立_年 In (2020,2021) AND 売立_月=6
69
+ WHERE (((T_実績.売立_年) In (2020,2021)) AND ((T_実績.売立_月)=6))
70
70
 
71
- GROUP BY T_実績.売先_CD, T_得意先M.得意先名称, T_実績.仕入先_CD, T_仕入先M.仕入先名称, T_実績.品目_CD, T_品目M.品名, T_実績.規格
71
+ GROUP BY T_実績.売先_CD, T_得意先M.得意先名称, T_実績.仕入先_CD, T_仕入先M.仕入先名称, T_実績.品目_CD, T_品目M.品名, T_実績.規格, [売先_CD] & [仕入先_CD] & [品目_CD] & [規格]
72
72
 
73
- PIVOT IIf(T_実績.売立_年=2021,"当年","昨年") & DateDiff("ww",DateSerial(T_実績.売立_年,T_実績.売立_月,1),[売立日])+1 & "週" in(当年1週,当年2週,当年3週,当年4週,当年5週,当年6週,昨年1週,昨年2週,昨年3週,昨年4週,昨年5週,昨年6週);
73
+ PIVOT IIf(T_実績.売立_年=2021,"当年","昨年") & DateDiff("ww",DateSerial(T_実績.売立_年,T_実績.売立_月,1),[売立日])+1 & "週(数量)" In ("当年1週(数量)","当年2週(数量)","当年3週(数量)","当年4週(数量)","当年5週(数量)","当年6週(数量)","昨年1週(数量)","昨年2週(数量)","昨年3週(数量)","昨年4週(数量)","昨年5週(数量)","昨年6週(数量)");
74
74
 
75
75
 
76
76
 
@@ -84,15 +84,15 @@
84
84
 
85
85
  TRANSFORM Sum([T_実績.数量]*[T_実績.売り_単価]) AS 金額の合計
86
86
 
87
- SELECT T_実績.売先_CD, T_得意先M.得意先名称, T_実績.仕入先_CD, T_仕入先M.仕入先名称, T_実績.品目_CD, T_品目M.品名, T_実績.規格
87
+ SELECT T_実績.売先_CD, T_得意先M.得意先名称, T_実績.仕入先_CD, T_仕入先M.仕入先名称, T_実績.品目_CD, T_品目M.品名, T_実績.規格, [売先_CD] & [仕入先_CD] & [品目_CD] & [規格] AS 判定コード
88
88
 
89
89
  FROM ((T_実績 INNER JOIN T_得意先M ON T_実績.売先_CD = T_得意先M.得意先コード) INNER JOIN T_仕入先M ON T_実績.仕入先_CD = T_仕入先M.仕入先コード) INNER JOIN T_品目M ON T_実績.品目_CD = T_品目M.[コード]
90
90
 
91
- WHERE (((T_実績.[売立_年]) In (2020,2021)) AND ((T_実績.[売立_月])=6))
91
+ WHERE (((T_実績.売立_年) In (2020,2021)) AND ((T_実績.売立_月)=6))
92
92
 
93
- GROUP BY T_実績.売先_CD, T_得意先M.得意先名称, T_実績.仕入先_CD, T_仕入先M.仕入先名称, T_実績.品目_CD, T_品目M.品名, T_実績.規格
93
+ GROUP BY T_実績.売先_CD, T_得意先M.得意先名称, T_実績.仕入先_CD, T_仕入先M.仕入先名称, T_実績.品目_CD, T_品目M.品名, T_実績.規格, [売先_CD] & [仕入先_CD] & [品目_CD] & [規格]
94
94
 
95
- PIVOT IIf(T_実績.売立_年=2021,"当年","昨年") & DateDiff("ww",DateSerial(T_実績.売立_年,T_実績.売立_月,1),[売立日])+1 & "週" In (当年1週,当年2週,当年3週,当年4週,当年5週,当年6週,昨年1週,昨年2週,昨年3週,昨年4週,昨年5週,昨年6週);
95
+ PIVOT IIf(T_実績.売立_年=2021,"当年","昨年") & DateDiff("ww",DateSerial(T_実績.売立_年,T_実績.売立_月,1),[売立日])+1 & "週(金額)" In ("当年1週(金額)","当年2週(金額)","当年3週(金額)","当年4週(金額)","当年5週(金額)","当年6週(金額)","昨年1週(金額)","昨年2週(金額)","昨年3週(金額)","昨年4週(金額)","昨年5週(金額)","昨年6週(金額)");
96
96
 
97
97
 
98
98
 
@@ -135,3 +135,7 @@
135
135
 
136
136
 
137
137
  まず、数量と金額の表示をさせれる用になった後に合計や目標の値を表示させれる用になりたいです。
138
+
139
+
140
+
141
+ とりあえず、今は数量と金額のクエリをさらに判定コードを作成して二個を1個にまとめています。

2

進行状況の追加と、作成順序の追加

2021/07/19 05:56

投稿

kyousuke8957
kyousuke8957

スコア7

test CHANGED
File without changes
test CHANGED
@@ -60,17 +60,17 @@
60
60
 
61
61
  ```ここに言語を入力
62
62
 
63
- TRANSFORM Sum([T_週間予定.数量]) AS 数量の合計
63
+ TRANSFORM Sum([T_実績.数量]) AS 数量の合計
64
64
 
65
- SELECT T_週間予定.売先_CD, T_得意先M.得意先名称, T_週間予定.仕入先_CD, T_仕入先M.仕入先名称, T_週間予定.品目_CD, T_品目M.品名, T_週間予定.規格
65
+ SELECT T_実績.売先_CD, T_得意先M.得意先名称, T_実績.仕入先_CD, T_仕入先M.仕入先名称, T_実績.品目_CD, T_品目M.品名, T_実績.規格
66
66
 
67
- FROM ((T_週間予定 INNER JOIN T_得意先M ON T_得意先M.得意先コード = T_週間予定.売先_CD) INNER JOIN T_仕入先M ON T_仕入先M.仕入先コード = T_週間予定.仕入先_CD) INNER JOIN T_品目M ON T_品目M.[コード] = T_週間予定.品目_CD
67
+ FROM ((T_実績 INNER JOIN T_得意先M ON T_得意先M.得意先コード = T_実績.売先_CD) INNER JOIN T_仕入先M ON T_仕入先M.仕入先コード = T_実績.仕入先_CD) INNER JOIN T_品目M ON T_品目M.[コード] = T_実績.品目_CD
68
68
 
69
69
  WHERE 売立_年 In (2020,2021) AND 売立_月=6
70
70
 
71
- GROUP BY T_週間予定.売先_CD, T_得意先M.得意先名称, T_週間予定.仕入先_CD, T_仕入先M.仕入先名称, T_週間予定.品目_CD, T_品目M.品名, T_週間予定.規格
71
+ GROUP BY T_実績.売先_CD, T_得意先M.得意先名称, T_実績.仕入先_CD, T_仕入先M.仕入先名称, T_実績.品目_CD, T_品目M.品名, T_実績.規格
72
72
 
73
- PIVOT IIf(T_週間予定.売立_年=2021,"当年","昨年") & DateDiff("ww",DateSerial(T_週間予定.売立_年,T_週間予定.売立_月,1),[売立日])+1 & "週" in(当年1週,当年2週,当年3週,当年4週,当年5週,当年6週,昨年1週,昨年2週,昨年3週,昨年4週,昨年5週,昨年6週);
73
+ PIVOT IIf(T_実績.売立_年=2021,"当年","昨年") & DateDiff("ww",DateSerial(T_実績.売立_年,T_実績.売立_月,1),[売立日])+1 & "週" in(当年1週,当年2週,当年3週,当年4週,当年5週,当年6週,昨年1週,昨年2週,昨年3週,昨年4週,昨年5週,昨年6週);
74
74
 
75
75
 
76
76
 
@@ -82,17 +82,17 @@
82
82
 
83
83
  ```ここに言語を入力
84
84
 
85
- TRANSFORM Sum([T_週間予定.数量]*[T_週間予定.売り_単価]) AS 金額の合計
85
+ TRANSFORM Sum([T_実績.数量]*[T_実績.売り_単価]) AS 金額の合計
86
86
 
87
- SELECT T_週間予定.売先_CD, T_得意先M.得意先名称, T_週間予定.仕入先_CD, T_仕入先M.仕入先名称, T_週間予定.品目_CD, T_品目M.品名, T_週間予定.規格
87
+ SELECT T_実績.売先_CD, T_得意先M.得意先名称, T_実績.仕入先_CD, T_仕入先M.仕入先名称, T_実績.品目_CD, T_品目M.品名, T_実績.規格
88
88
 
89
- FROM ((T_週間予定 INNER JOIN T_得意先M ON T_週間予定.売先_CD = T_得意先M.得意先コード) INNER JOIN T_仕入先M ON T_週間予定.仕入先_CD = T_仕入先M.仕入先コード) INNER JOIN T_品目M ON T_週間予定.品目_CD = T_品目M.[コード]
89
+ FROM ((T_実績 INNER JOIN T_得意先M ON T_実績.売先_CD = T_得意先M.得意先コード) INNER JOIN T_仕入先M ON T_実績.仕入先_CD = T_仕入先M.仕入先コード) INNER JOIN T_品目M ON T_実績.品目_CD = T_品目M.[コード]
90
90
 
91
- WHERE (((T_週間予定.[売立_年]) In (2020,2021)) AND ((T_週間予定.[売立_月])=6))
91
+ WHERE (((T_実績.[売立_年]) In (2020,2021)) AND ((T_実績.[売立_月])=6))
92
92
 
93
- GROUP BY T_週間予定.売先_CD, T_得意先M.得意先名称, T_週間予定.仕入先_CD, T_仕入先M.仕入先名称, T_週間予定.品目_CD, T_品目M.品名, T_週間予定.規格
93
+ GROUP BY T_実績.売先_CD, T_得意先M.得意先名称, T_実績.仕入先_CD, T_仕入先M.仕入先名称, T_実績.品目_CD, T_品目M.品名, T_実績.規格
94
94
 
95
- PIVOT IIf(T_週間予定.売立_年=2021,"当年","昨年") & DateDiff("ww",DateSerial(T_週間予定.売立_年,T_週間予定.売立_月,1),[売立日])+1 & "週" In (当年1週,当年2週,当年3週,当年4週,当年5週,当年6週,昨年1週,昨年2週,昨年3週,昨年4週,昨年5週,昨年6週);
95
+ PIVOT IIf(T_実績.売立_年=2021,"当年","昨年") & DateDiff("ww",DateSerial(T_実績.売立_年,T_実績.売立_月,1),[売立日])+1 & "週" In (当年1週,当年2週,当年3週,当年4週,当年5週,当年6週,昨年1週,昨年2週,昨年3週,昨年4週,昨年5週,昨年6週);
96
96
 
97
97
 
98
98
 
@@ -106,7 +106,7 @@
106
106
 
107
107
  ```ここに言語を入力
108
108
 
109
- TRANSFORM (Sum([T_週間予定.数量]) AS 数量の合計,Sum([T_週間予定.数量]*[T_週間予定.売り_単価]) AS 金額の合計)
109
+ TRANSFORM (Sum([T_実績.数量]) AS 数量の合計,Sum([T_実績.数量]*[T_実績.売り_単価]) AS 金額の合計)
110
110
 
111
111
  ```
112
112
 
@@ -114,7 +114,7 @@
114
114
 
115
115
  ```ここに言語を入力
116
116
 
117
- TRANSFORM IN(Sum([T_週間予定.数量]) AS 数量の合計,Sum([T_週間予定.数量]*[T_週間予定.売り_単価]) AS 金額の合計)
117
+ TRANSFORM IN(Sum([T_実績.数量]) AS 数量の合計,Sum([T_実績.数量]*[T_実績.売り_単価]) AS 金額の合計)
118
118
 
119
119
  ```
120
120
 
@@ -126,7 +126,7 @@
126
126
 
127
127
  ```ここに言語を入力
128
128
 
129
- PIVOT IIf(T_週間予定.売立_年=2021,"当年","昨年") & DateDiff("ww",DateSerial(T_週間予定.売立_年,T_週間予定.売立_月,1),[売立日])+1 & "週" In (当年1週(数量),当年2週(数量),当年3週(数量),当年4週(数量),当年5週(数量),当年6週(数量),昨年1週(数量),昨年2週(数量),昨年3週(数量),昨年4週(数量),昨年5週(数量),昨年6週(数量),当年1週(金額),当年2週(金額),当年3週(金額),当年4週(金額),当年5週(金額),当年6週(金額),昨年1週(金額),昨年2週(金額),昨年3週(金額),昨年4週(金額),昨年5週(金額),昨年6週(金額));
129
+ PIVOT IIf(T_実績.売立_年=2021,"当年","昨年") & DateDiff("ww",DateSerial(T_実績.売立_年,T_実績.売立_月,1),[売立日])+1 & "週" In (当年1週(数量),当年2週(数量),当年3週(数量),当年4週(数量),当年5週(数量),当年6週(数量),昨年1週(数量),昨年2週(数量),昨年3週(数量),昨年4週(数量),昨年5週(数量),昨年6週(数量),当年1週(金額),当年2週(金額),当年3週(金額),当年4週(金額),当年5週(金額),当年6週(金額),昨年1週(金額),昨年2週(金額),昨年3週(金額),昨年4週(金額),昨年5週(金額),昨年6週(金額));
130
130
 
131
131
  ```
132
132
 

1

進行状況の追加と、作成順序の追加

2021/07/19 05:50

投稿

kyousuke8957
kyousuke8957

スコア7

test CHANGED
File without changes
test CHANGED
@@ -47,3 +47,91 @@
47
47
  またレポートは画像のように、連続して同じCDや名称時は表示させない用にしたいです。
48
48
 
49
49
  売先が変わる毎に、最終行に合計を表示させたいです。
50
+
51
+
52
+
53
+ 2021/7/19追記
54
+
55
+ まず、当年の数量と金額の表示をさせようとしました。
56
+
57
+
58
+
59
+ 数量のSQLを
60
+
61
+ ```ここに言語を入力
62
+
63
+ TRANSFORM Sum([T_週間予定.数量]) AS 数量の合計
64
+
65
+ SELECT T_週間予定.売先_CD, T_得意先M.得意先名称, T_週間予定.仕入先_CD, T_仕入先M.仕入先名称, T_週間予定.品目_CD, T_品目M.品名, T_週間予定.規格
66
+
67
+ FROM ((T_週間予定 INNER JOIN T_得意先M ON T_得意先M.得意先コード = T_週間予定.売先_CD) INNER JOIN T_仕入先M ON T_仕入先M.仕入先コード = T_週間予定.仕入先_CD) INNER JOIN T_品目M ON T_品目M.[コード] = T_週間予定.品目_CD
68
+
69
+ WHERE 売立_年 In (2020,2021) AND 売立_月=6
70
+
71
+ GROUP BY T_週間予定.売先_CD, T_得意先M.得意先名称, T_週間予定.仕入先_CD, T_仕入先M.仕入先名称, T_週間予定.品目_CD, T_品目M.品名, T_週間予定.規格
72
+
73
+ PIVOT IIf(T_週間予定.売立_年=2021,"当年","昨年") & DateDiff("ww",DateSerial(T_週間予定.売立_年,T_週間予定.売立_月,1),[売立日])+1 & "週" in(当年1週,当年2週,当年3週,当年4週,当年5週,当年6週,昨年1週,昨年2週,昨年3週,昨年4週,昨年5週,昨年6週);
74
+
75
+
76
+
77
+ ```
78
+
79
+
80
+
81
+ 金額のSQLを
82
+
83
+ ```ここに言語を入力
84
+
85
+ TRANSFORM Sum([T_週間予定.数量]*[T_週間予定.売り_単価]) AS 金額の合計
86
+
87
+ SELECT T_週間予定.売先_CD, T_得意先M.得意先名称, T_週間予定.仕入先_CD, T_仕入先M.仕入先名称, T_週間予定.品目_CD, T_品目M.品名, T_週間予定.規格
88
+
89
+ FROM ((T_週間予定 INNER JOIN T_得意先M ON T_週間予定.売先_CD = T_得意先M.得意先コード) INNER JOIN T_仕入先M ON T_週間予定.仕入先_CD = T_仕入先M.仕入先コード) INNER JOIN T_品目M ON T_週間予定.品目_CD = T_品目M.[コード]
90
+
91
+ WHERE (((T_週間予定.[売立_年]) In (2020,2021)) AND ((T_週間予定.[売立_月])=6))
92
+
93
+ GROUP BY T_週間予定.売先_CD, T_得意先M.得意先名称, T_週間予定.仕入先_CD, T_仕入先M.仕入先名称, T_週間予定.品目_CD, T_品目M.品名, T_週間予定.規格
94
+
95
+ PIVOT IIf(T_週間予定.売立_年=2021,"当年","昨年") & DateDiff("ww",DateSerial(T_週間予定.売立_年,T_週間予定.売立_月,1),[売立日])+1 & "週" In (当年1週,当年2週,当年3週,当年4週,当年5週,当年6週,昨年1週,昨年2週,昨年3週,昨年4週,昨年5週,昨年6週);
96
+
97
+
98
+
99
+ ```
100
+
101
+
102
+
103
+ としました。
104
+
105
+ 次に別々に作成したSQLを一つにするために
106
+
107
+ ```ここに言語を入力
108
+
109
+ TRANSFORM (Sum([T_週間予定.数量]) AS 数量の合計,Sum([T_週間予定.数量]*[T_週間予定.売り_単価]) AS 金額の合計)
110
+
111
+ ```
112
+
113
+
114
+
115
+ ```ここに言語を入力
116
+
117
+ TRANSFORM IN(Sum([T_週間予定.数量]) AS 数量の合計,Sum([T_週間予定.数量]*[T_週間予定.売り_単価]) AS 金額の合計)
118
+
119
+ ```
120
+
121
+ を試しましたが、エラーとなりました。
122
+
123
+
124
+
125
+ また、PIVOTは
126
+
127
+ ```ここに言語を入力
128
+
129
+ PIVOT IIf(T_週間予定.売立_年=2021,"当年","昨年") & DateDiff("ww",DateSerial(T_週間予定.売立_年,T_週間予定.売立_月,1),[売立日])+1 & "週" In (当年1週(数量),当年2週(数量),当年3週(数量),当年4週(数量),当年5週(数量),当年6週(数量),昨年1週(数量),昨年2週(数量),昨年3週(数量),昨年4週(数量),昨年5週(数量),昨年6週(数量),当年1週(金額),当年2週(金額),当年3週(金額),当年4週(金額),当年5週(金額),当年6週(金額),昨年1週(金額),昨年2週(金額),昨年3週(金額),昨年4週(金額),昨年5週(金額),昨年6週(金額));
130
+
131
+ ```
132
+
133
+ としています。
134
+
135
+
136
+
137
+ まず、数量と金額の表示をさせれる用になった後に合計や目標の値を表示させれる用になりたいです。