-- View: public.view_vnd_padrao_ficha_tecnica_embalagem DROP VIEW public.view_vnd_padrao_ficha_tecnica_embalagem; CREATE OR REPLACE VIEW public.view_vnd_padrao_ficha_tecnica_embalagem AS SELECT tabaux.faturado_sn, tabaux.filial, tabaux.ano, tabaux.mes, tabaux.pedido, tabaux.sequencia, tabaux.nota, tabaux.ficha_tecnica, tabaux.data_faturamento, tabaux.data_previsao, tabaux.cliente, tabaux.fornecedor, tabaux.vendedor, tabaux.materia_prima, tabaux.produto_acabado, tabaux.faturado_tot_peso_kg, tabaux.faturado_vlr_total, tabaux.faturado_qtd_item, tabaux.faturado_med_preco_kg, tabaux.faturar_tot_peso_kg, tabaux.faturar_vlr_total, tabaux.faturar_qtd_item, tabaux.faturar_med_preco_kg, tabaux.tipo, tabaux.fechamento, tabaux.capa, tabaux.onda, tabaux.coluna FROM ( SELECT 'S'::text AS faturado_sn, view_vnd_padrao.filial_orc AS filial, to_char(view_vnd_padrao.data_passou_cx::timestamp with time zone, 'YYYY'::text)::integer AS ano, to_char(view_vnd_padrao.data_passou_cx::timestamp with time zone, 'mm'::text)::integer AS mes, view_vnd_padrao.orcamento AS pedido, view_vnd_padrao.sequencia, view_vnd_padrao.nota, COALESCE(vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica, 0) AS ficha_tecnica, view_vnd_padrao.data_passou_cx AS data_faturamento, vnd_orcamento_item_entrega.data_previsao_entrega AS data_previsao, view_vnd_padrao.cliente, view_vnd_padrao.fornecedor, view_vnd_padrao.vendedor, COALESCE(vnd_orcamento_item_ficha_tecnica_embalagem.materia_prima, 0) AS materia_prima, prod_acabado.codigo AS produto_acabado, COALESCE(( SELECT sum(vnd_orcamento_item_ficha_tecnica_embalagem_1.total_peso_kg) AS sum FROM vnd_orcamento_item_ficha_tecnica_embalagem vnd_orcamento_item_ficha_tecnica_embalagem_1 WHERE vnd_orcamento_item_ficha_tecnica_embalagem_1.filial_orc = view_vnd_padrao.filial_orc AND vnd_orcamento_item_ficha_tecnica_embalagem_1.orcamento = view_vnd_padrao.orcamento AND vnd_orcamento_item_ficha_tecnica_embalagem_1.orcamento_seq = view_vnd_padrao.sequencia AND vnd_orcamento_item_ficha_tecnica_embalagem_1.ficha_tecnica = vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica AND vnd_orcamento_item_ficha_tecnica_embalagem_1.ficha_tecnica_seq = vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica_seq), 0.000000) AS faturado_tot_peso_kg, CASE WHEN vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica IS NULL THEN view_vnd_padrao.vlr_tot_liquido ELSE vnd_orcamento_item_ficha_tecnica_embalagem.venda_total END AS faturado_vlr_total, CASE WHEN vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica IS NULL THEN view_vnd_padrao.qtd_tot_liquido ELSE (trunc(vnd_orcamento_item_ficha_tecnica_embalagem.qtd_pedido * vnd_orcamento_item_ficha_tecnica_embalagem.qtd_mix, 6)) END AS faturado_qtd_item, CASE WHEN vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica IS NULL THEN 0 ELSE (round(vnd_orcamento_item_ficha_tecnica_embalagem.venda_total / COALESCE(( SELECT sum(vnd_orcamento_item_ficha_tecnica_embalagem_1.total_peso_kg) AS sum FROM vnd_orcamento_item_ficha_tecnica_embalagem vnd_orcamento_item_ficha_tecnica_embalagem_1 WHERE vnd_orcamento_item_ficha_tecnica_embalagem_1.filial_orc = view_vnd_padrao.filial_orc AND vnd_orcamento_item_ficha_tecnica_embalagem_1.orcamento = view_vnd_padrao.orcamento AND vnd_orcamento_item_ficha_tecnica_embalagem_1.orcamento_seq = view_vnd_padrao.sequencia AND vnd_orcamento_item_ficha_tecnica_embalagem_1.ficha_tecnica = vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica AND vnd_orcamento_item_ficha_tecnica_embalagem_1.ficha_tecnica_seq = vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica_seq), 0.000000), 6)) END AS faturado_med_preco_kg, 0.000000 AS faturar_tot_peso_kg, 0.000000 AS faturar_vlr_total, 0.000000 AS faturar_qtd_item, 0.000000 AS faturar_med_preco_kg, COALESCE(vnd_orcamento_item_ficha_tecnica_embalagem.tipo, 0) AS tipo, COALESCE(vnd_orcamento_item_ficha_tecnica_embalagem.fechamento, 0) AS fechamento, COALESCE(vnd_orcamento_item_ficha_tecnica_embalagem.capa, 0) AS capa, COALESCE(vnd_orcamento_item_ficha_tecnica_embalagem.onda, 0) AS onda, COALESCE(vnd_orcamento_item_ficha_tecnica_embalagem.coluna, 0::numeric) AS coluna FROM view_vnd_padrao LEFT JOIN pro_produto prod_acabado ON prod_acabado.filial_pro = view_vnd_padrao.filial_orc AND prod_acabado.codigo = view_vnd_padrao.produto LEFT JOIN vnd_orcamento_item_entrega ON vnd_orcamento_item_entrega.filial_orc = view_vnd_padrao.filial_orc AND vnd_orcamento_item_entrega.orcamento = view_vnd_padrao.orcamento AND vnd_orcamento_item_entrega.produto = view_vnd_padrao.produto AND vnd_orcamento_item_entrega.sequencia = view_vnd_padrao.sequencia LEFT JOIN vnd_orcamento_item_ficha_tecnica_embalagem ON vnd_orcamento_item_ficha_tecnica_embalagem.filial_orc = view_vnd_padrao.filial_orc AND vnd_orcamento_item_ficha_tecnica_embalagem.orcamento = view_vnd_padrao.orcamento AND vnd_orcamento_item_ficha_tecnica_embalagem.orcamento_seq = view_vnd_padrao.sequencia UNION ALL SELECT 'N'::text AS faturado_sn, vnd_orcamento_item.filial_orc AS filial, to_char(vnd_orcamento_item_entrega.data_previsao_entrega::timestamp with time zone, 'YYYY'::text)::integer AS ano, to_char(vnd_orcamento_item_entrega.data_previsao_entrega::timestamp with time zone, 'mm'::text)::integer AS mes, vnd_orcamento_item.orcamento AS pedido, vnd_orcamento_item.sequencia, 0 AS nota, COALESCE(vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica, 0) AS ficha_tecnica, vnd_orcamento_item_entrega.data_previsao_entrega AS data_faturamento, vnd_orcamento_item_entrega.data_previsao_entrega AS data_previsao, vnd_orcamento.cliente, prod_acabado.fornecedor, vnd_orcamento_item.vendedor, COALESCE(vnd_orcamento_item_ficha_tecnica_embalagem.materia_prima, 0) AS materia_prima, prod_acabado.codigo AS produto_acabado, 0.000000 AS faturado_tot_peso_kg, 0.000000 AS faturado_vlr_total, 0.000000 AS faturado_qtd_item, 0.000000 AS faturado_med_preco_kg, COALESCE(( SELECT sum(vnd_orcamento_item_ficha_tecnica_embalagem_1.total_peso_kg) AS sum FROM vnd_orcamento_item_ficha_tecnica_embalagem vnd_orcamento_item_ficha_tecnica_embalagem_1 WHERE vnd_orcamento_item_ficha_tecnica_embalagem_1.filial_orc = vnd_orcamento_item.filial_orc AND vnd_orcamento_item_ficha_tecnica_embalagem_1.orcamento = vnd_orcamento_item.orcamento AND vnd_orcamento_item_ficha_tecnica_embalagem_1.orcamento_seq = vnd_orcamento_item.sequencia AND vnd_orcamento_item_ficha_tecnica_embalagem_1.ficha_tecnica = vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica AND vnd_orcamento_item_ficha_tecnica_embalagem_1.ficha_tecnica_seq = vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica_seq), 0.000000) AS faturar_tot_peso_kg, CASE WHEN vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica IS NULL THEN vnd_orcamento_item.vlr_total ELSE vnd_orcamento_item_ficha_tecnica_embalagem.venda_total END AS faturar_vlr_total, CASE WHEN vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica IS NULL THEN vnd_orcamento_item.quantidade ELSE (trunc(vnd_orcamento_item_ficha_tecnica_embalagem.qtd_pedido * vnd_orcamento_item_ficha_tecnica_embalagem.qtd_mix, 6)) END AS faturar_qtd_item, CASE WHEN vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica IS NULL THEN vnd_orcamento_item.quantidade ELSE (round(vnd_orcamento_item_ficha_tecnica_embalagem.venda_total / COALESCE(( SELECT sum(vnd_orcamento_item_ficha_tecnica_embalagem_1.total_peso_kg) AS sum FROM vnd_orcamento_item_ficha_tecnica_embalagem vnd_orcamento_item_ficha_tecnica_embalagem_1 WHERE vnd_orcamento_item_ficha_tecnica_embalagem_1.filial_orc = vnd_orcamento_item.filial_orc AND vnd_orcamento_item_ficha_tecnica_embalagem_1.orcamento = vnd_orcamento_item.orcamento AND vnd_orcamento_item_ficha_tecnica_embalagem_1.orcamento_seq = vnd_orcamento_item.sequencia AND vnd_orcamento_item_ficha_tecnica_embalagem_1.ficha_tecnica = vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica AND vnd_orcamento_item_ficha_tecnica_embalagem_1.ficha_tecnica_seq = vnd_orcamento_item_ficha_tecnica_embalagem.ficha_tecnica_seq), 0.000000), 6)) END AS faturar_med_preco_kg, COALESCE(vnd_orcamento_item_ficha_tecnica_embalagem.tipo, 0) AS tipo, COALESCE(vnd_orcamento_item_ficha_tecnica_embalagem.fechamento, 0) AS fechamento, COALESCE(vnd_orcamento_item_ficha_tecnica_embalagem.capa, 0) AS capa, COALESCE(vnd_orcamento_item_ficha_tecnica_embalagem.onda, 0) AS onda, COALESCE(vnd_orcamento_item_ficha_tecnica_embalagem.coluna, 0::numeric) AS coluna FROM vnd_orcamento LEFT JOIN vnd_orcamento_item ON vnd_orcamento_item.filial_orc = vnd_orcamento.filial_orc AND vnd_orcamento_item.orcamento = vnd_orcamento.orcamento LEFT JOIN pro_produto prod_acabado ON prod_acabado.filial_pro = vnd_orcamento_item.filial_orc AND prod_acabado.codigo = vnd_orcamento_item.produto LEFT JOIN vnd_orcamento_item_entrega ON vnd_orcamento_item_entrega.filial_orc = vnd_orcamento_item.filial_orc AND vnd_orcamento_item_entrega.orcamento = vnd_orcamento_item.orcamento AND vnd_orcamento_item_entrega.produto = vnd_orcamento_item.produto AND vnd_orcamento_item_entrega.sequencia = vnd_orcamento_item.sequencia LEFT JOIN vnd_orcamento_item_ficha_tecnica_embalagem ON vnd_orcamento_item_ficha_tecnica_embalagem.filial_orc = vnd_orcamento_item.filial_orc AND vnd_orcamento_item_ficha_tecnica_embalagem.orcamento = vnd_orcamento_item.orcamento AND vnd_orcamento_item_ficha_tecnica_embalagem.orcamento_seq = vnd_orcamento_item.sequencia WHERE vnd_orcamento.situacao::text <> 'C'::text AND vnd_orcamento.gerou_nf_caixa::text = 'N'::text AND vnd_orcamento.tipo::text <> 'O'::text ) tabaux ; ALTER TABLE public.view_vnd_padrao_ficha_tecnica_embalagem OWNER TO postgres; COMMENT ON VIEW public.view_vnd_padrao_ficha_tecnica_embalagem IS 'View Padrão de Vendas / Ficha Técnica - Embalagem';