134: l_custom_rec := BIS_PMV_PARAMETERS_PUB.INITIALIZE_QUERY_TYPE;
135: x_custom_output := BIS_QUERY_ATTRIBUTES_TBL();
136:
137: l_formula_sql :='CURR_PLANNED_QUANTITY OPI_MEASURE1,
138: PREV_PLANNED_STANDARD_VALUE OPI_MEASURE2,
139: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE3,
140: CURR_ACTUAL_QUANTITY OPI_MEASURE4,
141: PREV_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
142: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE6,
135: x_custom_output := BIS_QUERY_ATTRIBUTES_TBL();
136:
137: l_formula_sql :='CURR_PLANNED_QUANTITY OPI_MEASURE1,
138: PREV_PLANNED_STANDARD_VALUE OPI_MEASURE2,
139: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE3,
140: CURR_ACTUAL_QUANTITY OPI_MEASURE4,
141: PREV_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
142: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE6,
143: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
137: l_formula_sql :='CURR_PLANNED_QUANTITY OPI_MEASURE1,
138: PREV_PLANNED_STANDARD_VALUE OPI_MEASURE2,
139: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE3,
140: CURR_ACTUAL_QUANTITY OPI_MEASURE4,
141: PREV_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
142: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE6,
143: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
144: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE8,
145: (CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE) -
138: PREV_PLANNED_STANDARD_VALUE OPI_MEASURE2,
139: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE3,
140: CURR_ACTUAL_QUANTITY OPI_MEASURE4,
141: PREV_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
142: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE6,
143: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
144: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE8,
145: (CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE) -
146: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE))*100 OPI_MEASURE9,
139: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE3,
140: CURR_ACTUAL_QUANTITY OPI_MEASURE4,
141: PREV_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
142: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE6,
143: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
144: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE8,
145: (CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE) -
146: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE))*100 OPI_MEASURE9,
147: PREV_ACTUAL_VALUE OPI_MEASURE10,
140: CURR_ACTUAL_QUANTITY OPI_MEASURE4,
141: PREV_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
142: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE6,
143: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
144: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE8,
145: (CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE) -
146: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE))*100 OPI_MEASURE9,
147: PREV_ACTUAL_VALUE OPI_MEASURE10,
148: CURR_ACTUAL_VALUE OPI_MEASURE11,
141: PREV_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
142: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE6,
143: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
144: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE8,
145: (CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE) -
146: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE))*100 OPI_MEASURE9,
147: PREV_ACTUAL_VALUE OPI_MEASURE10,
148: CURR_ACTUAL_VALUE OPI_MEASURE11,
149: (CURR_ACTUAL_VALUE - PREV_ACTUAL_VALUE)/decode(PREV_ACTUAL_VALUE, 0, null, abs(PREV_ACTUAL_VALUE))*100 OPI_MEASURE13,
142: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE6,
143: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
144: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE8,
145: (CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE) -
146: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE))*100 OPI_MEASURE9,
147: PREV_ACTUAL_VALUE OPI_MEASURE10,
148: CURR_ACTUAL_VALUE OPI_MEASURE11,
149: (CURR_ACTUAL_VALUE - PREV_ACTUAL_VALUE)/decode(PREV_ACTUAL_VALUE, 0, null, abs(PREV_ACTUAL_VALUE))*100 OPI_MEASURE13,
150: SUM(CURR_PLANNED_STANDARD_VALUE) OVER () OPI_MEASURE14,
146: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE))*100 OPI_MEASURE9,
147: PREV_ACTUAL_VALUE OPI_MEASURE10,
148: CURR_ACTUAL_VALUE OPI_MEASURE11,
149: (CURR_ACTUAL_VALUE - PREV_ACTUAL_VALUE)/decode(PREV_ACTUAL_VALUE, 0, null, abs(PREV_ACTUAL_VALUE))*100 OPI_MEASURE13,
150: SUM(CURR_PLANNED_STANDARD_VALUE) OVER () OPI_MEASURE14,
151: SUM(CURR_ACTUAL_STANDARD_VALUE) OVER() OPI_MEASURE15,
152: SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ())*100 OPI_MEASURE16,
153: (SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ()) -
154: SUM(PREV_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(PREV_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(PREV_PLANNED_STANDARD_VALUE) OVER ()))*100 OPI_MEASURE17,
147: PREV_ACTUAL_VALUE OPI_MEASURE10,
148: CURR_ACTUAL_VALUE OPI_MEASURE11,
149: (CURR_ACTUAL_VALUE - PREV_ACTUAL_VALUE)/decode(PREV_ACTUAL_VALUE, 0, null, abs(PREV_ACTUAL_VALUE))*100 OPI_MEASURE13,
150: SUM(CURR_PLANNED_STANDARD_VALUE) OVER () OPI_MEASURE14,
151: SUM(CURR_ACTUAL_STANDARD_VALUE) OVER() OPI_MEASURE15,
152: SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ())*100 OPI_MEASURE16,
153: (SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ()) -
154: SUM(PREV_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(PREV_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(PREV_PLANNED_STANDARD_VALUE) OVER ()))*100 OPI_MEASURE17,
155: SUM(CURR_ACTUAL_VALUE) OVER () OPI_MEASURE18,
148: CURR_ACTUAL_VALUE OPI_MEASURE11,
149: (CURR_ACTUAL_VALUE - PREV_ACTUAL_VALUE)/decode(PREV_ACTUAL_VALUE, 0, null, abs(PREV_ACTUAL_VALUE))*100 OPI_MEASURE13,
150: SUM(CURR_PLANNED_STANDARD_VALUE) OVER () OPI_MEASURE14,
151: SUM(CURR_ACTUAL_STANDARD_VALUE) OVER() OPI_MEASURE15,
152: SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ())*100 OPI_MEASURE16,
153: (SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ()) -
154: SUM(PREV_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(PREV_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(PREV_PLANNED_STANDARD_VALUE) OVER ()))*100 OPI_MEASURE17,
155: SUM(CURR_ACTUAL_VALUE) OVER () OPI_MEASURE18,
156: (SUM(CURR_ACTUAL_VALUE) OVER () - SUM(PREV_ACTUAL_VALUE) OVER ())/decode(SUM(PREV_ACTUAL_VALUE) OVER (), 0, null, abs(SUM(PREV_ACTUAL_VALUE) OVER ()))*100 OPI_MEASURE19,
149: (CURR_ACTUAL_VALUE - PREV_ACTUAL_VALUE)/decode(PREV_ACTUAL_VALUE, 0, null, abs(PREV_ACTUAL_VALUE))*100 OPI_MEASURE13,
150: SUM(CURR_PLANNED_STANDARD_VALUE) OVER () OPI_MEASURE14,
151: SUM(CURR_ACTUAL_STANDARD_VALUE) OVER() OPI_MEASURE15,
152: SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ())*100 OPI_MEASURE16,
153: (SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ()) -
154: SUM(PREV_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(PREV_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(PREV_PLANNED_STANDARD_VALUE) OVER ()))*100 OPI_MEASURE17,
155: SUM(CURR_ACTUAL_VALUE) OVER () OPI_MEASURE18,
156: (SUM(CURR_ACTUAL_VALUE) OVER () - SUM(PREV_ACTUAL_VALUE) OVER ())/decode(SUM(PREV_ACTUAL_VALUE) OVER (), 0, null, abs(SUM(PREV_ACTUAL_VALUE) OVER ()))*100 OPI_MEASURE19,
157: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE20,
150: SUM(CURR_PLANNED_STANDARD_VALUE) OVER () OPI_MEASURE14,
151: SUM(CURR_ACTUAL_STANDARD_VALUE) OVER() OPI_MEASURE15,
152: SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ())*100 OPI_MEASURE16,
153: (SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ()) -
154: SUM(PREV_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(PREV_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(PREV_PLANNED_STANDARD_VALUE) OVER ()))*100 OPI_MEASURE17,
155: SUM(CURR_ACTUAL_VALUE) OVER () OPI_MEASURE18,
156: (SUM(CURR_ACTUAL_VALUE) OVER () - SUM(PREV_ACTUAL_VALUE) OVER ())/decode(SUM(PREV_ACTUAL_VALUE) OVER (), 0, null, abs(SUM(PREV_ACTUAL_VALUE) OVER ()))*100 OPI_MEASURE19,
157: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE20,
158: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE21,
153: (SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ()) -
154: SUM(PREV_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(PREV_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(PREV_PLANNED_STANDARD_VALUE) OVER ()))*100 OPI_MEASURE17,
155: SUM(CURR_ACTUAL_VALUE) OVER () OPI_MEASURE18,
156: (SUM(CURR_ACTUAL_VALUE) OVER () - SUM(PREV_ACTUAL_VALUE) OVER ())/decode(SUM(PREV_ACTUAL_VALUE) OVER (), 0, null, abs(SUM(PREV_ACTUAL_VALUE) OVER ()))*100 OPI_MEASURE19,
157: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE20,
158: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE21,
159: SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ())*100 OPI_MEASURE22,
160: SUM(PREV_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(PREV_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(PREV_PLANNED_STANDARD_VALUE) OVER ())*100 OPI_MEASURE23,
161: CURR_ACTUAL_VALUE OPI_MEASURE25,
154: SUM(PREV_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(PREV_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(PREV_PLANNED_STANDARD_VALUE) OVER ()))*100 OPI_MEASURE17,
155: SUM(CURR_ACTUAL_VALUE) OVER () OPI_MEASURE18,
156: (SUM(CURR_ACTUAL_VALUE) OVER () - SUM(PREV_ACTUAL_VALUE) OVER ())/decode(SUM(PREV_ACTUAL_VALUE) OVER (), 0, null, abs(SUM(PREV_ACTUAL_VALUE) OVER ()))*100 OPI_MEASURE19,
157: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE20,
158: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE21,
159: SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ())*100 OPI_MEASURE22,
160: SUM(PREV_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(PREV_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(PREV_PLANNED_STANDARD_VALUE) OVER ())*100 OPI_MEASURE23,
161: CURR_ACTUAL_VALUE OPI_MEASURE25,
162: PREV_ACTUAL_VALUE OPI_MEASURE26,
155: SUM(CURR_ACTUAL_VALUE) OVER () OPI_MEASURE18,
156: (SUM(CURR_ACTUAL_VALUE) OVER () - SUM(PREV_ACTUAL_VALUE) OVER ())/decode(SUM(PREV_ACTUAL_VALUE) OVER (), 0, null, abs(SUM(PREV_ACTUAL_VALUE) OVER ()))*100 OPI_MEASURE19,
157: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE20,
158: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE21,
159: SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ())*100 OPI_MEASURE22,
160: SUM(PREV_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(PREV_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(PREV_PLANNED_STANDARD_VALUE) OVER ())*100 OPI_MEASURE23,
161: CURR_ACTUAL_VALUE OPI_MEASURE25,
162: PREV_ACTUAL_VALUE OPI_MEASURE26,
163: SUM(CURR_ACTUAL_VALUE) OVER () OPI_MEASURE28,
156: (SUM(CURR_ACTUAL_VALUE) OVER () - SUM(PREV_ACTUAL_VALUE) OVER ())/decode(SUM(PREV_ACTUAL_VALUE) OVER (), 0, null, abs(SUM(PREV_ACTUAL_VALUE) OVER ()))*100 OPI_MEASURE19,
157: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0, null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE20,
158: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0, null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE21,
159: SUM(CURR_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(CURR_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(CURR_PLANNED_STANDARD_VALUE) OVER ())*100 OPI_MEASURE22,
160: SUM(PREV_ACTUAL_STANDARD_VALUE) OVER ()/decode(SUM(PREV_PLANNED_STANDARD_VALUE) OVER (), 0, null, SUM(PREV_PLANNED_STANDARD_VALUE) OVER ())*100 OPI_MEASURE23,
161: CURR_ACTUAL_VALUE OPI_MEASURE25,
162: PREV_ACTUAL_VALUE OPI_MEASURE26,
163: SUM(CURR_ACTUAL_VALUE) OVER () OPI_MEASURE28,
164: SUM(PREV_ACTUAL_VALUE) OVER () OPI_MEASURE29
165: ';
166:
167: l_inner_sql:='sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.PLANNED_QUANTITY, 0))) CURR_PLANNED_QUANTITY,
168: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.PLANNED_QUANTITY, 0))) PREV_PLANNED_QUANTITY,
169: sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.PLANNED_STANDARD_VALUE, 0))) CURR_PLANNED_STANDARD_VALUE,
170: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.PLANNED_STANDARD_VALUE, 0))) PREV_PLANNED_STANDARD_VALUE,
171: sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.ACTUAL_QUANTITY, 0))) CURR_ACTUAL_QUANTITY,
172: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.ACTUAL_QUANTITY, 0))) PREV_ACTUAL_QUANTITY,
173: sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.ACTUAL_STANDARD_VALUE, 0))) CURR_ACTUAL_STANDARD_VALUE,
166:
167: l_inner_sql:='sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.PLANNED_QUANTITY, 0))) CURR_PLANNED_QUANTITY,
168: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.PLANNED_QUANTITY, 0))) PREV_PLANNED_QUANTITY,
169: sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.PLANNED_STANDARD_VALUE, 0))) CURR_PLANNED_STANDARD_VALUE,
170: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.PLANNED_STANDARD_VALUE, 0))) PREV_PLANNED_STANDARD_VALUE,
171: sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.ACTUAL_QUANTITY, 0))) CURR_ACTUAL_QUANTITY,
172: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.ACTUAL_QUANTITY, 0))) PREV_ACTUAL_QUANTITY,
173: sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.ACTUAL_STANDARD_VALUE, 0))) CURR_ACTUAL_STANDARD_VALUE,
174: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.ACTUAL_STANDARD_VALUE, 0))) PREV_ACTUAL_STANDARD_VALUE,
169: sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.PLANNED_STANDARD_VALUE, 0))) CURR_PLANNED_STANDARD_VALUE,
170: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.PLANNED_STANDARD_VALUE, 0))) PREV_PLANNED_STANDARD_VALUE,
171: sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.ACTUAL_QUANTITY, 0))) CURR_ACTUAL_QUANTITY,
172: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.ACTUAL_QUANTITY, 0))) PREV_ACTUAL_QUANTITY,
173: sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.ACTUAL_STANDARD_VALUE, 0))) CURR_ACTUAL_STANDARD_VALUE,
174: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.ACTUAL_STANDARD_VALUE, 0))) PREV_ACTUAL_STANDARD_VALUE,
175: sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.ACTUAL_VALUE, 0))) CURR_ACTUAL_VALUE,
176: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.ACTUAL_VALUE, 0))) PREV_ACTUAL_VALUE
177: FROM
170: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.PLANNED_STANDARD_VALUE, 0))) PREV_PLANNED_STANDARD_VALUE,
171: sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.ACTUAL_QUANTITY, 0))) CURR_ACTUAL_QUANTITY,
172: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.ACTUAL_QUANTITY, 0))) PREV_ACTUAL_QUANTITY,
173: sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.ACTUAL_STANDARD_VALUE, 0))) CURR_ACTUAL_STANDARD_VALUE,
174: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.ACTUAL_STANDARD_VALUE, 0))) PREV_ACTUAL_STANDARD_VALUE,
175: sum(decode(sign(report_date - &BIS_CURRENT_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.curr_asof_date, f.ACTUAL_VALUE, 0))) CURR_ACTUAL_VALUE,
176: sum(decode(sign(report_date - &BIS_PREVIOUS_EFFECTIVE_START_DATE), -1, 0, decode(c.report_date, c.prev_asof_date, f.ACTUAL_VALUE, 0))) PREV_ACTUAL_VALUE
177: FROM
178: (select
184: f.TIME_ID,
185: f.PERIOD_TYPE_ID,
186: 0 ACTUAL_QUANTITY,
187: 0 ACTUAL_VALUE,
188: f.ACTUAL_STANDARD_VALUE_'||l_currency_code||' ACTUAL_STANDARD_VALUE,
189: f.PLANNED_QUANTITY,
190: f.PLANNED_STANDARD_VALUE_'||l_currency_code||' PLANNED_STANDARD_VALUE
191: from OPI_PTP_SUM_F_MV f
192: where
186: 0 ACTUAL_QUANTITY,
187: 0 ACTUAL_VALUE,
188: f.ACTUAL_STANDARD_VALUE_'||l_currency_code||' ACTUAL_STANDARD_VALUE,
189: f.PLANNED_QUANTITY,
190: f.PLANNED_STANDARD_VALUE_'||l_currency_code||' PLANNED_STANDARD_VALUE
191: from OPI_PTP_SUM_F_MV f
192: where
193: f.item_cat_flag = :OPI_ITEM_CAT_FLAG
194: '||l_inv_cat_where||l_item_where||
202: f.TIME_ID,
203: f.PERIOD_TYPE_ID,
204: 0 ACTUAL_QUANTITY,
205: 0 ACTUAL_VALUE,
206: 0 ACTUAL_STANDARD_VALUE,
207: f.PLANNED_QUANTITY,
208: f.PLANNED_STANDARD_VALUE_'||l_currency_code||' PLANNED_STANDARD_VALUE
209: from OPI_PTP_SUM_STG_MV f
210: where
204: 0 ACTUAL_QUANTITY,
205: 0 ACTUAL_VALUE,
206: 0 ACTUAL_STANDARD_VALUE,
207: f.PLANNED_QUANTITY,
208: f.PLANNED_STANDARD_VALUE_'||l_currency_code||' PLANNED_STANDARD_VALUE
209: from OPI_PTP_SUM_STG_MV f
210: where
211: f.item_cat_flag = :OPI_ITEM_CAT_FLAG
212: '||l_inv_cat_where||l_item_where||
220: f.TIME_ID,
221: f.PERIOD_TYPE_ID,
222: nvl(f.PRODUCTION_QTY, 0) - nvl(f.SCRAP_QTY, 0) ACTUAL_QUANTITY,
223: nvl(f.PRODUCTION_VAL_'||l_currency_code||', 0) - nvl(f.SCRAP_VAL_'||l_currency_code||', 0) ACTUAL_VALUE,
224: 0 ACTUAL_STANDARD_VALUE,
225: 0 PLANNED_QUANTITY,
226: 0 PLANNED_STANDARD_VALUE
227: from OPI_SCRAP_SUM_MV f
228: where
222: nvl(f.PRODUCTION_QTY, 0) - nvl(f.SCRAP_QTY, 0) ACTUAL_QUANTITY,
223: nvl(f.PRODUCTION_VAL_'||l_currency_code||', 0) - nvl(f.SCRAP_VAL_'||l_currency_code||', 0) ACTUAL_VALUE,
224: 0 ACTUAL_STANDARD_VALUE,
225: 0 PLANNED_QUANTITY,
226: 0 PLANNED_STANDARD_VALUE
227: from OPI_SCRAP_SUM_MV f
228: where
229: f.item_cat_flag = :OPI_ITEM_CAT_FLAG
230: '||l_inv_cat_where||l_item_where||
508: l_stmt :=
509: 'SELECT
510: fii.NAME VIEWBY,
511: fii.NAME OPI_ATTRIBUTE1,
512: PREV_PLANNED_STANDARD_VALUE OPI_MEASURE2,
513: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE3,
514: PREV_ACTUAL_STANDARD_VALUE OPI_MEASURE4,
515: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
516: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
509: 'SELECT
510: fii.NAME VIEWBY,
511: fii.NAME OPI_ATTRIBUTE1,
512: PREV_PLANNED_STANDARD_VALUE OPI_MEASURE2,
513: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE3,
514: PREV_ACTUAL_STANDARD_VALUE OPI_MEASURE4,
515: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
516: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
517: null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE6,
510: fii.NAME VIEWBY,
511: fii.NAME OPI_ATTRIBUTE1,
512: PREV_PLANNED_STANDARD_VALUE OPI_MEASURE2,
513: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE3,
514: PREV_ACTUAL_STANDARD_VALUE OPI_MEASURE4,
515: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
516: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
517: null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE6,
518: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
511: fii.NAME OPI_ATTRIBUTE1,
512: PREV_PLANNED_STANDARD_VALUE OPI_MEASURE2,
513: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE3,
514: PREV_ACTUAL_STANDARD_VALUE OPI_MEASURE4,
515: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
516: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
517: null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE6,
518: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
519: null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
512: PREV_PLANNED_STANDARD_VALUE OPI_MEASURE2,
513: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE3,
514: PREV_ACTUAL_STANDARD_VALUE OPI_MEASURE4,
515: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
516: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
517: null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE6,
518: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
519: null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
520: (CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
513: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE3,
514: PREV_ACTUAL_STANDARD_VALUE OPI_MEASURE4,
515: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
516: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
517: null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE6,
518: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
519: null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
520: (CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
521: null, CURR_PLANNED_STANDARD_VALUE) -
514: PREV_ACTUAL_STANDARD_VALUE OPI_MEASURE4,
515: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
516: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
517: null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE6,
518: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
519: null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
520: (CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
521: null, CURR_PLANNED_STANDARD_VALUE) -
522: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
515: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE5,
516: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
517: null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE6,
518: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
519: null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
520: (CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
521: null, CURR_PLANNED_STANDARD_VALUE) -
522: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
523: null, PREV_PLANNED_STANDARD_VALUE))*100 OPI_MEASURE8,
516: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
517: null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE6,
518: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
519: null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
520: (CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
521: null, CURR_PLANNED_STANDARD_VALUE) -
522: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
523: null, PREV_PLANNED_STANDARD_VALUE))*100 OPI_MEASURE8,
524: PREV_ACTUAL_VALUE OPI_MEASURE9,
517: null, PREV_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE6,
518: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
519: null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
520: (CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
521: null, CURR_PLANNED_STANDARD_VALUE) -
522: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
523: null, PREV_PLANNED_STANDARD_VALUE))*100 OPI_MEASURE8,
524: PREV_ACTUAL_VALUE OPI_MEASURE9,
525: CURR_ACTUAL_VALUE OPI_MEASURE10,
518: CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
519: null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
520: (CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
521: null, CURR_PLANNED_STANDARD_VALUE) -
522: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
523: null, PREV_PLANNED_STANDARD_VALUE))*100 OPI_MEASURE8,
524: PREV_ACTUAL_VALUE OPI_MEASURE9,
525: CURR_ACTUAL_VALUE OPI_MEASURE10,
526: (CURR_ACTUAL_VALUE - PREV_ACTUAL_VALUE)/
519: null, CURR_PLANNED_STANDARD_VALUE)*100 OPI_MEASURE7,
520: (CURR_ACTUAL_STANDARD_VALUE/decode(CURR_PLANNED_STANDARD_VALUE, 0,
521: null, CURR_PLANNED_STANDARD_VALUE) -
522: PREV_ACTUAL_STANDARD_VALUE/decode(PREV_PLANNED_STANDARD_VALUE, 0,
523: null, PREV_PLANNED_STANDARD_VALUE))*100 OPI_MEASURE8,
524: PREV_ACTUAL_VALUE OPI_MEASURE9,
525: CURR_ACTUAL_VALUE OPI_MEASURE10,
526: (CURR_ACTUAL_VALUE - PREV_ACTUAL_VALUE)/
527: decode(PREV_ACTUAL_VALUE, 0, null,
529: FROM (SELECT /*+ leading(cal) push_pred(fact) */
530: cal.start_date START_DATE,
531: sum(CASE WHEN cal.curr_day < bnd.DATA_CLEAN_DATE then
532: decode(cal.report_date, cal.curr_day,nvl(
533: fact.PLANNED_STANDARD_VALUE,0),0)
534: else 0
535: end) +
536: sum(CASE WHEN cal.curr_day = bnd.DATA_CLEAN_DATE then
537: decode(cal.report_date, cal.curr_day,nvl(
534: else 0
535: end) +
536: sum(CASE WHEN cal.curr_day = bnd.DATA_CLEAN_DATE then
537: decode(cal.report_date, cal.curr_day,nvl(
538: fact.PLANNED_STANDARD_VALUE,0)/2,0)
539: else 0
540: end) +
541: sum(CASE WHEN (cal.curr_day > bnd.DATA_CLEAN_DATE) and
542: (cal.start_date <= bnd.DATA_CLEAN_DATE) then
540: end) +
541: sum(CASE WHEN (cal.curr_day > bnd.DATA_CLEAN_DATE) and
542: (cal.start_date <= bnd.DATA_CLEAN_DATE) then
543: decode(cal.report_date, bnd.DATA_CLEAN_DATE,
544: nvl(fact.PLANNED_STANDARD_VALUE,0),0)
545: else 0
546: end) CURR_PLANNED_STANDARD_VALUE,
547: sum(decode(cal.report_date, cal.prev_day,
548: nvl(fact.PLANNED_STANDARD_VALUE,0), 0)) PREV_PLANNED_STANDARD_VALUE,
542: (cal.start_date <= bnd.DATA_CLEAN_DATE) then
543: decode(cal.report_date, bnd.DATA_CLEAN_DATE,
544: nvl(fact.PLANNED_STANDARD_VALUE,0),0)
545: else 0
546: end) CURR_PLANNED_STANDARD_VALUE,
547: sum(decode(cal.report_date, cal.prev_day,
548: nvl(fact.PLANNED_STANDARD_VALUE,0), 0)) PREV_PLANNED_STANDARD_VALUE,
549: sum(CASE WHEN cal.curr_day < bnd.DATA_CLEAN_DATE then
550: decode(cal.report_date, cal.curr_day,nvl(
544: nvl(fact.PLANNED_STANDARD_VALUE,0),0)
545: else 0
546: end) CURR_PLANNED_STANDARD_VALUE,
547: sum(decode(cal.report_date, cal.prev_day,
548: nvl(fact.PLANNED_STANDARD_VALUE,0), 0)) PREV_PLANNED_STANDARD_VALUE,
549: sum(CASE WHEN cal.curr_day < bnd.DATA_CLEAN_DATE then
550: decode(cal.report_date, cal.curr_day,nvl(
551: fact.ACTUAL_STANDARD_VALUE,0),0)
552: else 0
547: sum(decode(cal.report_date, cal.prev_day,
548: nvl(fact.PLANNED_STANDARD_VALUE,0), 0)) PREV_PLANNED_STANDARD_VALUE,
549: sum(CASE WHEN cal.curr_day < bnd.DATA_CLEAN_DATE then
550: decode(cal.report_date, cal.curr_day,nvl(
551: fact.ACTUAL_STANDARD_VALUE,0),0)
552: else 0
553: end) +
554: sum(CASE WHEN cal.curr_day = bnd.DATA_CLEAN_DATE then
555: decode(cal.report_date, cal.curr_day,nvl(
552: else 0
553: end) +
554: sum(CASE WHEN cal.curr_day = bnd.DATA_CLEAN_DATE then
555: decode(cal.report_date, cal.curr_day,nvl(
556: fact.ACTUAL_STANDARD_VALUE,0)/2,0)
557: else 0
558: end) +
559: sum(CASE WHEN (cal.curr_day > bnd.DATA_CLEAN_DATE) and
560: (cal.start_date <= bnd.DATA_CLEAN_DATE) then
558: end) +
559: sum(CASE WHEN (cal.curr_day > bnd.DATA_CLEAN_DATE) and
560: (cal.start_date <= bnd.DATA_CLEAN_DATE) then
561: decode(cal.report_date, bnd.DATA_CLEAN_DATE,
562: nvl(fact.ACTUAL_STANDARD_VALUE,0),0)
563: else 0
564: end) CURR_ACTUAL_STANDARD_VALUE,
565: sum(decode(cal.report_date, cal.prev_day,
566: nvl(fact.ACTUAL_STANDARD_VALUE,0), 0)) PREV_ACTUAL_STANDARD_VALUE,
560: (cal.start_date <= bnd.DATA_CLEAN_DATE) then
561: decode(cal.report_date, bnd.DATA_CLEAN_DATE,
562: nvl(fact.ACTUAL_STANDARD_VALUE,0),0)
563: else 0
564: end) CURR_ACTUAL_STANDARD_VALUE,
565: sum(decode(cal.report_date, cal.prev_day,
566: nvl(fact.ACTUAL_STANDARD_VALUE,0), 0)) PREV_ACTUAL_STANDARD_VALUE,
567: sum(CASE WHEN cal.curr_day < bnd.DATA_CLEAN_DATE then
568: decode(cal.report_date, cal.curr_day,nvl(
562: nvl(fact.ACTUAL_STANDARD_VALUE,0),0)
563: else 0
564: end) CURR_ACTUAL_STANDARD_VALUE,
565: sum(decode(cal.report_date, cal.prev_day,
566: nvl(fact.ACTUAL_STANDARD_VALUE,0), 0)) PREV_ACTUAL_STANDARD_VALUE,
567: sum(CASE WHEN cal.curr_day < bnd.DATA_CLEAN_DATE then
568: decode(cal.report_date, cal.curr_day,nvl(
569: fact.ACTUAL_VALUE,0),0)
570: else 0
620: TIME_ID,
621: PERIOD_TYPE_ID,
622: ACTUAL_QUANTITY,
623: ACTUAL_VALUE,
624: ACTUAL_STANDARD_VALUE,
625: PLANNED_QUANTITY,
626: PLANNED_STANDARD_VALUE
627: from
628: (select
622: ACTUAL_QUANTITY,
623: ACTUAL_VALUE,
624: ACTUAL_STANDARD_VALUE,
625: PLANNED_QUANTITY,
626: PLANNED_STANDARD_VALUE
627: from
628: (select
629: f.ORGANIZATION_ID,
630: f.INVENTORY_ITEM_ID,
633: f.TIME_ID,
634: f.PERIOD_TYPE_ID,
635: 0 ACTUAL_QUANTITY,
636: 0 ACTUAL_VALUE,
637: f.ACTUAL_STANDARD_VALUE_'||l_currency_code||' ACTUAL_STANDARD_VALUE,
638: f.PLANNED_QUANTITY,
639: f.PLANNED_STANDARD_VALUE_'||l_currency_code||' PLANNED_STANDARD_VALUE
640: from OPI_PTP_SUM_F_MV f
641: where
635: 0 ACTUAL_QUANTITY,
636: 0 ACTUAL_VALUE,
637: f.ACTUAL_STANDARD_VALUE_'||l_currency_code||' ACTUAL_STANDARD_VALUE,
638: f.PLANNED_QUANTITY,
639: f.PLANNED_STANDARD_VALUE_'||l_currency_code||' PLANNED_STANDARD_VALUE
640: from OPI_PTP_SUM_F_MV f
641: where
642: f.item_cat_flag = :OPI_ITEM_CAT_FLAG
643: '||l_org_where||l_inv_cat_where||l_item_where||'
650: f.TIME_ID,
651: f.PERIOD_TYPE_ID,
652: 0 ACTUAL_QUANTITY,
653: 0 ACTUAL_VALUE,
654: 0 ACTUAL_STANDARD_VALUE,
655: f.PLANNED_QUANTITY,
656: f.PLANNED_STANDARD_VALUE_'||l_currency_code||' PLANNED_STANDARD_VALUE
657: from OPI_PTP_SUM_STG_MV f where
658: f.item_cat_flag = :OPI_ITEM_CAT_FLAG
652: 0 ACTUAL_QUANTITY,
653: 0 ACTUAL_VALUE,
654: 0 ACTUAL_STANDARD_VALUE,
655: f.PLANNED_QUANTITY,
656: f.PLANNED_STANDARD_VALUE_'||l_currency_code||' PLANNED_STANDARD_VALUE
657: from OPI_PTP_SUM_STG_MV f where
658: f.item_cat_flag = :OPI_ITEM_CAT_FLAG
659: '||l_org_where||l_inv_cat_where||l_item_where||'
660: union all
667: f.PERIOD_TYPE_ID,
668: nvl(f.PRODUCTION_QTY, 0) - nvl(f.SCRAP_QTY, 0) ACTUAL_QUANTITY,
669: nvl(f.PRODUCTION_VAL_'||l_currency_code||' , 0)
670: - nvl(f.SCRAP_VAL_'||l_currency_code||' , 0) ACTUAL_VALUE,
671: 0 ACTUAL_STANDARD_VALUE,
672: 0 PLANNED_QUANTITY,
673: 0 PLANNED_STANDARD_VALUE
674: from OPI_SCRAP_SUM_MV /*OPI_SCR_NEST_MV*/ f
675: where
669: nvl(f.PRODUCTION_VAL_'||l_currency_code||' , 0)
670: - nvl(f.SCRAP_VAL_'||l_currency_code||' , 0) ACTUAL_VALUE,
671: 0 ACTUAL_STANDARD_VALUE,
672: 0 PLANNED_QUANTITY,
673: 0 PLANNED_STANDARD_VALUE
674: from OPI_SCRAP_SUM_MV /*OPI_SCR_NEST_MV*/ f
675: where
676: f.item_cat_flag = :OPI_ITEM_CAT_FLAG
677: '||l_org_where||l_inv_cat_where||l_item_where||'
931: l_custom_rec := BIS_PMV_PARAMETERS_PUB.INITIALIZE_QUERY_TYPE;
932: x_custom_output := BIS_QUERY_ATTRIBUTES_TBL();
933:
934: l_stmt :='SELECT fact.name VIEWBY,
935: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE1,
936: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE2,
937: decode(sign(fact.start_date - &BIS_CURRENT_ASOF_DATE), 1, null, SUM(nvl(CURR_ACTUAL_STANDARD_VALUE, 0)) OVER (ORDER BY fact.start_date ASC ROWS UNBOUNDED PRECEDING)) AS OPI_MEASURE3,
938: SUM(nvl(CURR_PLANNED_STANDARD_VALUE, 0)) OVER (ORDER BY fact.start_date ASC ROWS UNBOUNDED PRECEDING) AS OPI_MEASURE4
939: FROM ( SELECT /*+ leading(c) push_pred(f) */
932: x_custom_output := BIS_QUERY_ATTRIBUTES_TBL();
933:
934: l_stmt :='SELECT fact.name VIEWBY,
935: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE1,
936: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE2,
937: decode(sign(fact.start_date - &BIS_CURRENT_ASOF_DATE), 1, null, SUM(nvl(CURR_ACTUAL_STANDARD_VALUE, 0)) OVER (ORDER BY fact.start_date ASC ROWS UNBOUNDED PRECEDING)) AS OPI_MEASURE3,
938: SUM(nvl(CURR_PLANNED_STANDARD_VALUE, 0)) OVER (ORDER BY fact.start_date ASC ROWS UNBOUNDED PRECEDING) AS OPI_MEASURE4
939: FROM ( SELECT /*+ leading(c) push_pred(f) */
940: c.start_date,
933:
934: l_stmt :='SELECT fact.name VIEWBY,
935: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE1,
936: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE2,
937: decode(sign(fact.start_date - &BIS_CURRENT_ASOF_DATE), 1, null, SUM(nvl(CURR_ACTUAL_STANDARD_VALUE, 0)) OVER (ORDER BY fact.start_date ASC ROWS UNBOUNDED PRECEDING)) AS OPI_MEASURE3,
938: SUM(nvl(CURR_PLANNED_STANDARD_VALUE, 0)) OVER (ORDER BY fact.start_date ASC ROWS UNBOUNDED PRECEDING) AS OPI_MEASURE4
939: FROM ( SELECT /*+ leading(c) push_pred(f) */
940: c.start_date,
941: c.name,
934: l_stmt :='SELECT fact.name VIEWBY,
935: CURR_ACTUAL_STANDARD_VALUE OPI_MEASURE1,
936: CURR_PLANNED_STANDARD_VALUE OPI_MEASURE2,
937: decode(sign(fact.start_date - &BIS_CURRENT_ASOF_DATE), 1, null, SUM(nvl(CURR_ACTUAL_STANDARD_VALUE, 0)) OVER (ORDER BY fact.start_date ASC ROWS UNBOUNDED PRECEDING)) AS OPI_MEASURE3,
938: SUM(nvl(CURR_PLANNED_STANDARD_VALUE, 0)) OVER (ORDER BY fact.start_date ASC ROWS UNBOUNDED PRECEDING) AS OPI_MEASURE4
939: FROM ( SELECT /*+ leading(c) push_pred(f) */
940: c.start_date,
941: c.name,
942: sum(decode(sign(&BIS_CURRENT_ASOF_DATE - c.start_date), -1, null, decode(sign(&BIS_CURRENT_ASOF_DATE - c.report_date), -1, 0, f.ACTUAL_STANDARD_VALUE))) CURR_ACTUAL_STANDARD_VALUE,
938: SUM(nvl(CURR_PLANNED_STANDARD_VALUE, 0)) OVER (ORDER BY fact.start_date ASC ROWS UNBOUNDED PRECEDING) AS OPI_MEASURE4
939: FROM ( SELECT /*+ leading(c) push_pred(f) */
940: c.start_date,
941: c.name,
942: sum(decode(sign(&BIS_CURRENT_ASOF_DATE - c.start_date), -1, null, decode(sign(&BIS_CURRENT_ASOF_DATE - c.report_date), -1, 0, f.ACTUAL_STANDARD_VALUE))) CURR_ACTUAL_STANDARD_VALUE,
943: sum(decode(c.report_date, c.end_date, f.PLANNED_STANDARD_VALUE, 0)) CURR_PLANNED_STANDARD_VALUE
944: FROM
945: (select ORGANIZATION_ID,
946: INVENTORY_ITEM_ID,
939: FROM ( SELECT /*+ leading(c) push_pred(f) */
940: c.start_date,
941: c.name,
942: sum(decode(sign(&BIS_CURRENT_ASOF_DATE - c.start_date), -1, null, decode(sign(&BIS_CURRENT_ASOF_DATE - c.report_date), -1, 0, f.ACTUAL_STANDARD_VALUE))) CURR_ACTUAL_STANDARD_VALUE,
943: sum(decode(c.report_date, c.end_date, f.PLANNED_STANDARD_VALUE, 0)) CURR_PLANNED_STANDARD_VALUE
944: FROM
945: (select ORGANIZATION_ID,
946: INVENTORY_ITEM_ID,
947: INV_CATEGORY_ID,
946: INVENTORY_ITEM_ID,
947: INV_CATEGORY_ID,
948: TIME_ID,
949: PERIOD_TYPE_ID,
950: ACTUAL_STANDARD_VALUE,
951: PLANNED_STANDARD_VALUE
952: from
953: (select
954: f.ORGANIZATION_ID,
947: INV_CATEGORY_ID,
948: TIME_ID,
949: PERIOD_TYPE_ID,
950: ACTUAL_STANDARD_VALUE,
951: PLANNED_STANDARD_VALUE
952: from
953: (select
954: f.ORGANIZATION_ID,
955: f.INVENTORY_ITEM_ID,
955: f.INVENTORY_ITEM_ID,
956: f.INV_CATEGORY_ID,
957: f.TIME_ID,
958: f.PERIOD_TYPE_ID,
959: f.ACTUAL_STANDARD_VALUE_'||l_currency_code||' ACTUAL_STANDARD_VALUE,
960: f.PLANNED_STANDARD_VALUE_'||l_currency_code||' PLANNED_STANDARD_VALUE
961: from OPI_PTP_SUM_F_MV f
962: where
963: f.item_cat_flag = :OPI_ITEM_CAT_FLAG
956: f.INV_CATEGORY_ID,
957: f.TIME_ID,
958: f.PERIOD_TYPE_ID,
959: f.ACTUAL_STANDARD_VALUE_'||l_currency_code||' ACTUAL_STANDARD_VALUE,
960: f.PLANNED_STANDARD_VALUE_'||l_currency_code||' PLANNED_STANDARD_VALUE
961: from OPI_PTP_SUM_F_MV f
962: where
963: f.item_cat_flag = :OPI_ITEM_CAT_FLAG
964: '||l_org_where||l_inv_cat_where||l_item_where||
968: f.INVENTORY_ITEM_ID,
969: f.INV_CATEGORY_ID,
970: f.TIME_ID,
971: f.PERIOD_TYPE_ID,
972: 0 ACTUAL_STANDARD_VALUE,
973: f.PLANNED_STANDARD_VALUE_'||l_currency_code||' PLANNED_STANDARD_VALUE
974: from OPI_PTP_SUM_STG_MV f
975: where
976: f.item_cat_flag = :OPI_ITEM_CAT_FLAG
969: f.INV_CATEGORY_ID,
970: f.TIME_ID,
971: f.PERIOD_TYPE_ID,
972: 0 ACTUAL_STANDARD_VALUE,
973: f.PLANNED_STANDARD_VALUE_'||l_currency_code||' PLANNED_STANDARD_VALUE
974: from OPI_PTP_SUM_STG_MV f
975: where
976: f.item_cat_flag = :OPI_ITEM_CAT_FLAG
977: '||l_org_where||l_inv_cat_where||l_item_where||