Commit 2381d47d authored by dasharatha.vamshi's avatar dasharatha.vamshi

Add new file

parent bd1dff31
SELECT bd.project_id,
bd.master_product_id,
bd.process_stage_id,
(((((
CASE
WHEN (floor((round((min(bd.batch_cycle_time))::numeric, 2) / (((365 * 24) * 60))::numeric)) > (0)::numeric) THEN concat((floor((round((min(bd.batch_cycle_time))::numeric, 2) / (((365 * 24) * 60))::numeric)))::text, 'y ')
ELSE ''::text
END ||
CASE
WHEN ((floor(((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) / (((30 * 24) * 60))::numeric)) > (0)::numeric) AND (floor(((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) / (((30 * 24) * 60))::numeric)) < (12)::numeric)) THEN concat((floor(((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) / (((30 * 24) * 60))::numeric)))::text, 'mon ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) / (((7 * 24) * 60))::numeric)) > (0)::numeric) AND (floor((((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) / (((7 * 24) * 60))::numeric)) < (4)::numeric)) THEN concat((floor((((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) / (((7 * 24) * 60))::numeric)))::text, 'w ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) / ((24 * 60))::numeric) / (1)::numeric)) > (0)::numeric) AND (floor((((((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) / ((24 * 60))::numeric) / (1)::numeric)) < (7)::numeric)) THEN concat((floor((((((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) / ((24 * 60))::numeric) / (1)::numeric)))::text, 'd ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) / (60)::numeric)) > (0)::numeric) AND (floor((((((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) / (60)::numeric)) < (24)::numeric)) THEN concat((floor((((((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) / (60)::numeric)))::text, 'h ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) % (60)::numeric)) > (0)::numeric) AND (floor((((((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) % (60)::numeric)) < (60)::numeric)) THEN concat((floor((((((round((min(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) % (60)::numeric)))::text, 'm')
ELSE ''::text
END) AS min_bct,
(((((
CASE
WHEN (floor((round((avg(bd.batch_cycle_time))::numeric, 2) / (((365 * 24) * 60))::numeric)) > (0)::numeric) THEN concat((floor((round((avg(bd.batch_cycle_time))::numeric, 2) / (((365 * 24) * 60))::numeric)))::text, 'y ')
ELSE ''::text
END ||
CASE
WHEN ((floor(((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) / (((30 * 24) * 60))::numeric)) > (0)::numeric) AND (floor(((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) / (((30 * 24) * 60))::numeric)) < (12)::numeric)) THEN concat((floor(((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) / (((30 * 24) * 60))::numeric)))::text, 'mon ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) / (((7 * 24) * 60))::numeric)) > (0)::numeric) AND (floor((((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) / (((7 * 24) * 60))::numeric)) < (4)::numeric)) THEN concat((floor((((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) / (((7 * 24) * 60))::numeric)))::text, 'w ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) / ((24 * 60))::numeric) / (1)::numeric)) > (0)::numeric) AND (floor((((((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) / ((24 * 60))::numeric) / (1)::numeric)) < (7)::numeric)) THEN concat((floor((((((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) / ((24 * 60))::numeric) / (1)::numeric)))::text, 'd ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) / (60)::numeric)) > (0)::numeric) AND (floor((((((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) / (60)::numeric)) < (24)::numeric)) THEN concat((floor((((((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) / (60)::numeric)))::text, 'h ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) % (60)::numeric)) > (0)::numeric) AND (floor((((((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) % (60)::numeric)) < (60)::numeric)) THEN concat((floor((((((round((avg(bd.batch_cycle_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) % (60)::numeric)))::text, 'm')
ELSE ''::text
END) AS avg_bct,
(((((
CASE
WHEN (floor((round((max(b.golde_batch_time))::numeric, 2) / (((365 * 24) * 60))::numeric)) > (0)::numeric) THEN concat((floor((round((max(b.golde_batch_time))::numeric, 2) / (((365 * 24) * 60))::numeric)))::text, 'y ')
ELSE ''::text
END ||
CASE
WHEN ((floor(((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) / (((30 * 24) * 60))::numeric)) > (0)::numeric) AND (floor(((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) / (((30 * 24) * 60))::numeric)) < (12)::numeric)) THEN concat((floor(((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) / (((30 * 24) * 60))::numeric)))::text, 'mon ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) / (((7 * 24) * 60))::numeric)) > (0)::numeric) AND (floor((((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) / (((7 * 24) * 60))::numeric)) < (4)::numeric)) THEN concat((floor((((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) / (((7 * 24) * 60))::numeric)))::text, 'w ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) / ((24 * 60))::numeric) / (1)::numeric)) > (0)::numeric) AND (floor((((((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) / ((24 * 60))::numeric) / (1)::numeric)) < (7)::numeric)) THEN concat((floor((((((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) / ((24 * 60))::numeric) / (1)::numeric)))::text, 'd ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) / (60)::numeric)) > (0)::numeric) AND (floor((((((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) / (60)::numeric)) < (24)::numeric)) THEN concat((floor((((((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) / (60)::numeric)))::text, 'h ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) % (60)::numeric)) > (0)::numeric) AND (floor((((((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) % (60)::numeric)) < (60)::numeric)) THEN concat((floor((((((round((max(b.golde_batch_time))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) % (60)::numeric)))::text, 'm')
ELSE ''::text
END) AS golden_bct,
(((((
CASE
WHEN (floor((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) / (((365 * 24) * 60))::numeric)) > (0)::numeric) THEN concat((floor((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) / (((365 * 24) * 60))::numeric)))::text, 'y ')
ELSE ''::text
END ||
CASE
WHEN ((floor(((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) / (((30 * 24) * 60))::numeric)) > (0)::numeric) AND (floor(((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) / (((30 * 24) * 60))::numeric)) < (12)::numeric)) THEN concat((floor(((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) / (((30 * 24) * 60))::numeric)))::text, 'mon ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) / (((7 * 24) * 60))::numeric)) > (0)::numeric) AND (floor((((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) / (((7 * 24) * 60))::numeric)) < (4)::numeric)) THEN concat((floor((((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) / (((7 * 24) * 60))::numeric)))::text, 'w ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) / ((24 * 60))::numeric) / (1)::numeric)) > (0)::numeric) AND (floor((((((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) / ((24 * 60))::numeric) / (1)::numeric)) < (7)::numeric)) THEN concat((floor((((((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) / ((24 * 60))::numeric) / (1)::numeric)))::text, 'd ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) / (60)::numeric)) > (0)::numeric) AND (floor((((((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) / (60)::numeric)) < (24)::numeric)) THEN concat((floor((((((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) / (60)::numeric)))::text, 'h ')
ELSE ''::text
END) ||
CASE
WHEN ((floor((((((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) % (60)::numeric)) > (0)::numeric) AND (floor((((((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) % (60)::numeric)) < (60)::numeric)) THEN concat((floor((((((round(((max(t.ideal_batch_cycle_time) * (60)::double precision))::numeric, 2) % (((365 * 24) * 60))::numeric) % (((30 * 24) * 60))::numeric) % (((7 * 24) * 60))::numeric) % ((24 * 60))::numeric) % (60)::numeric)))::text, 'm')
ELSE ''::text
END) AS ideal_bct,
round((max(f.avg_quality))::numeric, 2) AS avg_quality,
round((max(f.ideal_quality))::numeric, 2) AS ideal_quality,
round((max(j.kpi_value))::numeric, 2) AS golden_batch_quality
FROM ((((batch_details bd
LEFT JOIN ( SELECT bd_1.batch_cycle_time AS golde_batch_time,
bd_1.batch_no,
bd_1.project_id,
bd_1.master_product_id,
bd_1.process_stage_id
FROM (golden_batch gb
LEFT JOIN batch_details bd_1 ON ((((bd_1.batch_no)::text = (gb.batch_no)::text) AND ((bd_1.project_id)::text = (gb.project_id)::text) AND ((bd_1.master_product_id)::text = (gb.master_product_id)::text) AND ((bd_1.process_stage_id)::text = (gb.process_stage_id)::text))))) b ON ((((b.project_id)::text = (bd.project_id)::text) AND ((b.process_stage_id)::text = (bd.process_stage_id)::text) AND ((b.master_product_id)::text = (bd.master_product_id)::text))))
LEFT JOIN ( SELECT DISTINCT bd_1.process_stage_id,
bd_1.master_product_id,
bd_1.ideal_batch_cycle_time,
bd_1.project_id
FROM batch_details bd_1
WHERE (bd_1.ideal_batch_cycle_time IS NOT NULL)) t ON ((((t.project_id)::text = (bd.project_id)::text) AND ((t.process_stage_id)::text = (bd.process_stage_id)::text) AND ((t.master_product_id)::text = (bd.master_product_id)::text))))
LEFT JOIN ( SELECT bq2.process_stage_id,
bq2.kpi_name,
avg(bq2.kpi_value) AS avg_quality,
avg(bq2.kpi_value) AS ideal_quality,
bq2.project_id
FROM batch_quality bq2
WHERE (bq2.critical_parameter IS TRUE)
GROUP BY bq2.process_stage_id, bq2.kpi_name, bq2.project_id) f ON ((((f.project_id)::text = (bd.project_id)::text) AND ((f.process_stage_id)::text = (bd.process_stage_id)::text))))
LEFT JOIN ( SELECT bq.batch_no,
bq.process_stage_id,
bq.kpi_name,
bq.kpi_value,
bq.project_id
FROM batch_quality bq
WHERE (bq.critical_parameter IS TRUE)) j ON ((((j.project_id)::text = (b.project_id)::text) AND ((j.batch_no)::text = (b.batch_no)::text) AND ((j.process_stage_id)::text = (b.process_stage_id)::text))))
WHERE ((bd.batch_start > (now() - '6 mons'::interval)) AND ((bd.batch_status)::text = 'completed'::text))
GROUP BY bd.project_id, bd.master_product_id, bd.process_stage_id;
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment