3: --
4: --
5: procedure BUILD_ICX_CST_MARGIN_TABLE AS
6: records_processed number;
7: sum_margin cst_margin_temp.margin%TYPE;
8: CURSOR wkly_amt_cursor IS
9: SELECT
10: cmt.build_id,
11: cmt.customer_id,
16: cmt.sold_to_customer_name,
17: sum(invoiced_amount) sum_inv_amt,
18: sum(cogs_amount) sum_cogs_amt
19: FROM
20: CST_MARGIN_TEMP cmt,
21: CST_MARGIN_BUILD cmb
22: WHERE
23: cmt.build_id = cmb.build_id AND
24: cmt.gl_date >= cmb.to_date - 7 AND
21: CST_MARGIN_BUILD cmb
22: WHERE
23: cmt.build_id = cmb.build_id AND
24: cmt.gl_date >= cmb.to_date - 7 AND
25: cmt.build_id = (select max(build_id) from cst_margin_temp)
26: GROUP BY
27: cmt.build_id,
28: cmt.customer_id,
29: cmt.primary_salesrep_id,
43: cmt.sold_to_customer_name,
44: sum(invoiced_amount) sum_inv_amt,
45: sum(cogs_amount) sum_cogs_amt
46: FROM
47: CST_MARGIN_TEMP cmt,
48: CST_MARGIN_BUILD cmb
49: WHERE
50: cmt.build_id = cmb.build_id AND
51: cmt.gl_date >= cmb.to_date - 30 AND
48: CST_MARGIN_BUILD cmb
49: WHERE
50: cmt.build_id = cmb.build_id AND
51: cmt.gl_date >= cmb.to_date - 30 AND
52: cmt.build_id = (select max(build_id) from cst_margin_temp)
53: GROUP BY
54: cmt.build_id,
55: cmt.customer_id,
56: cmt.primary_salesrep_id,
70: cmt.sold_to_customer_name,
71: sum(invoiced_amount) sum_inv_amt,
72: sum(cogs_amount) sum_cogs_amt
73: FROM
74: CST_MARGIN_TEMP cmt,
75: CST_MARGIN_BUILD cmb
76: WHERE
77: cmt.build_id = cmb.build_id AND
78: cmt.gl_date >= cmb.to_date - 90 AND
75: CST_MARGIN_BUILD cmb
76: WHERE
77: cmt.build_id = cmb.build_id AND
78: cmt.gl_date >= cmb.to_date - 90 AND
79: cmt.build_id = (select max(build_id) from cst_margin_temp)
80: GROUP BY
81: cmt.build_id,
82: cmt.customer_id,
83: cmt.primary_salesrep_id,
97: records_processed := 0;
98: FOR wkly_amt_rec IN wkly_amt_cursor LOOP
99: --
100: declare
101: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
102: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
103: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
104: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
105: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
98: FOR wkly_amt_rec IN wkly_amt_cursor LOOP
99: --
100: declare
101: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
102: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
103: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
104: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
105: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
106: --
99: --
100: declare
101: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
102: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
103: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
104: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
105: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
106: --
107: begin
100: declare
101: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
102: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
103: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
104: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
105: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
106: --
107: begin
108: tmp_build_id := wkly_amt_rec.build_id;
101: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
102: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
103: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
104: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
105: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
106: --
107: begin
108: tmp_build_id := wkly_amt_rec.build_id;
109: tmp_customer_id := wkly_amt_rec.customer_id;
203: records_processed := 0;
204: FOR mnthly_amt_rec IN mnthly_amt_cursor LOOP
205: --
206: declare
207: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
208: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
209: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
210: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
211: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
204: FOR mnthly_amt_rec IN mnthly_amt_cursor LOOP
205: --
206: declare
207: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
208: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
209: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
210: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
211: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
212: --
205: --
206: declare
207: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
208: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
209: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
210: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
211: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
212: --
213: begin
206: declare
207: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
208: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
209: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
210: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
211: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
212: --
213: begin
214: tmp_build_id := mnthly_amt_rec.build_id;
207: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
208: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
209: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
210: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
211: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
212: --
213: begin
214: tmp_build_id := mnthly_amt_rec.build_id;
215: tmp_customer_id := mnthly_amt_rec.customer_id;
309: records_processed := 0;
310: FOR qrtrly_amt_rec IN qrtrly_amt_cursor LOOP
311: --
312: declare
313: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
314: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
315: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
316: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
317: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
310: FOR qrtrly_amt_rec IN qrtrly_amt_cursor LOOP
311: --
312: declare
313: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
314: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
315: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
316: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
317: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
318: --
311: --
312: declare
313: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
314: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
315: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
316: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
317: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
318: --
319: begin
312: declare
313: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
314: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
315: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
316: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
317: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
318: --
319: begin
320: tmp_build_id := qrtrly_amt_rec.build_id;
313: tmp_build_id CST_MARGIN_TEMP.build_id%TYPE;
314: tmp_customer_id CST_MARGIN_TEMP.customer_id%TYPE;
315: tmp_pri_salesrep_id CST_MARGIN_TEMP.primary_salesrep_id%TYPE;
316: tmp_territory_id CST_MARGIN_TEMP.territory_id%TYPE;
317: tmp_inv_item_id CST_MARGIN_TEMP.inventory_item_id%TYPE;
318: --
319: begin
320: tmp_build_id := qrtrly_amt_rec.build_id;
321: tmp_customer_id := qrtrly_amt_rec.customer_id;