CREATE OR REPLACE VIEW public.js_purchases AS SELECT vnd_orcamento.orcamento::character varying AS number_identifier, ((vnd_orcamento.data_emissao || ' '::text) || vnd_orcamento.hora_emissao)::timestamp without time zone AS purchase_date, (vnd_orcamento_item.vlr_pago - sum(COALESCE(gar_troca_devoluc_item.preco_total, 0::numeric)))::numeric(18,4) AS total_price, bas_filial.cnpj::character varying AS store_cnpj, ''::character varying AS operator_identifier, ''::character varying AS operator_cpf, "substring"((bas_vend.codigo || ' - '::text) || bas_vend.nome::text, 1, 20)::character varying AS seller_identifier, COALESCE(NULLIF(TRIM(BOTH FROM bas_vend.cpf), ''::text), NULLIF(TRIM(BOTH FROM bas_vend.cnpj), ''::text), ''::text)::character varying AS seller_cpf, "substring"( CASE WHEN cli_cliente.codigo = par_faturamento.cliente_padrao_venda THEN NULL::text ELSE (cli_cliente.codigo || ' - '::text) || cli_cliente.nome::text END, 1, 20)::character varying AS professional_identifier, CASE WHEN cli_cliente.codigo = par_faturamento.cliente_padrao_venda THEN NULL::character varying ELSE COALESCE(NULLIF(TRIM(BOTH FROM cli_cliente.cpf), ''::text), NULLIF(TRIM(BOTH FROM cli_cliente.cnpj), ''::text), ''::text)::character varying(14) END AS professional_cpf, "substring"((pro_produto.codigo || ' - '::text) || TRIM(BOTH FROM pro_produto.descricao), 1, 60)::character varying AS description, (vnd_orcamento_item.quantidade - sum(COALESCE(gar_troca_devoluc_item.quantidade, 0::numeric)))::numeric(18,2) AS quantity, fnc_arredonda_regra_abnt((vnd_orcamento_item.vlr_pago - sum(COALESCE(gar_troca_devoluc_item.preco_total, 0::numeric))) / COALESCE(NULLIF(vnd_orcamento_item.quantidade - sum(COALESCE(gar_troca_devoluc_item.quantidade, 0::numeric)), 0::numeric), 1::numeric), 2)::numeric(18,4) AS unit_price, 0::numeric AS points, for_fornecedor.fantasia::character varying AS ad_supplier, ''::character varying AS ad_seller_identifier, ''::character varying AS ad_seller_cpf FROM vnd_orcamento JOIN vnd_orcamento_item ON vnd_orcamento_item.filial_orc = vnd_orcamento.filial_orc AND vnd_orcamento_item.orcamento = vnd_orcamento.orcamento JOIN pro_produto ON pro_produto.filial_pro = vnd_orcamento_item.filial_pro AND pro_produto.codigo = vnd_orcamento_item.produto JOIN for_fornecedor ON for_fornecedor.filial = pro_produto.filial_for AND for_fornecedor.codigo = pro_produto.fornecedor JOIN cli_cliente ON cli_cliente.filial = vnd_orcamento.filial_cli AND cli_cliente.codigo = vnd_orcamento.cliente JOIN bas_vendedor bas_vend ON bas_vend.filial = vnd_orcamento.filial_ven AND bas_vend.codigo = vnd_orcamento.vendedor LEFT JOIN gar_troca_devoluc ON gar_troca_devoluc.filial_orc = vnd_orcamento_item.filial_orc AND gar_troca_devoluc.orcamento = vnd_orcamento_item.orcamento AND gar_troca_devoluc.situacao::text <> 'C'::text LEFT JOIN gar_troca_devoluc_item ON gar_troca_devoluc_item.filial = gar_troca_devoluc.filial AND gar_troca_devoluc_item.sequencia = gar_troca_devoluc.sequencia AND gar_troca_devoluc_item.sequencia_item_pedido = vnd_orcamento_item.sequencia JOIN bas_filial ON bas_filial.codigo = vnd_orcamento.filial_orc JOIN par_faturamento ON par_faturamento.filial_par = vnd_orcamento.filial_orc AND par_faturamento.codigo = 1 WHERE vnd_orcamento.filial_orc = 1 AND vnd_orcamento.gerou_nf_caixa::text = 'S'::text AND vnd_orcamento.tipo::text <> 'O'::text AND vnd_orcamento.situacao::text = 'A'::text AND vnd_orcamento.data_emissao >= (CURRENT_DATE - 60) GROUP BY vnd_orcamento.orcamento, vnd_orcamento.data_emissao, vnd_orcamento.hora_emissao, vnd_orcamento_item.sequencia, vnd_orcamento_item.quantidade, vnd_orcamento_item.vlr_pago, bas_filial.cnpj, bas_vend.codigo, bas_vend.nome, bas_vend.cpf, bas_vend.cnpj, cli_cliente.codigo, cli_cliente.nome, cli_cliente.cpf, cli_cliente.cnpj, pro_produto.codigo, pro_produto.descricao, for_fornecedor.nome, for_fornecedor.fantasia, par_faturamento.cliente_padrao_venda HAVING (vnd_orcamento_item.quantidade - sum(COALESCE(gar_troca_devoluc_item.quantidade, 0::numeric))) > 0::numeric ORDER BY vnd_orcamento.data_emissao DESC, vnd_orcamento.hora_emissao DESC, vnd_orcamento.orcamento DESC, vnd_orcamento_item.sequencia; ALTER TABLE public.js_purchases OWNER TO postgres;