CREATE OR ALTER VIEW TBNFE_PARCELAMENTO(
    NFE_CONTROLE,
    PARCELA,
    ESTABELECIMENTO_CODIGO,
    DATA_VENCIMENTO,
    EMPRESA_CODIGO,
    NUMERO_NOTAFISCAL,
    DATA_FLUXO,
    VALOR,
    CONTA_PAGAR_OPERACAO,
    ACEITE,
    MOVIMENTO,
    DATA_ENTRADA,
    SITUACAO,
    CONTROLE,
    VALOR_DESCONTO,
    VALOR_SALDO,
    SERIE,
    PAGAMENTO_FORMA,
    AVULSO,
    CLASSIFICACAO_CONTABIL,
    CCUSTO,
    OBSERVACAO,
    FLAG,
    REMESSA,
    DATAHORA,
    CLASSIFICACAO,
    GC_WEB,
    NF_SITUACAO,
    NF_NATUREZA)
AS
select
        row_number() over(order by f.data_vencimento, f.n_documento,f.desc_gerador, k.cod_filial, f.data_emissao) NFE_CONTROLE
        --, row_number() over(partition by f.desc_gerador, f.n_documento, k.cod_filial, f.data_emissao order by f.data_vencimento, f.n_documento,f.desc_gerador, k.cod_filial, f.data_emissao) PARCELA
        , 1 PARCELA
        , k.cod_filial ESTABELECIMENTO_CODIGO
        , FORMATDATE(cast(f.data_vencimento as date)) DATA_VENCIMENTO
        , iif(o.id > 0, o.id, j.id + 20000) EMPRESA_CODIGO
        , 0 NUMERO_NOTAFISCAL
        , FORMATDATE(cast(f.data_emissao as date)) DATA_FLUXO
        , ( -1 * coalesce(f.valor_inicial,0)) + iif(coalesce(l.acres_decres,0) > 0, coalesce(l.acres_decres,0) , coalesce(l.acres_decres,0)) VALOR
        , '1' CONTA_PAGAR_OPERACAO
        , 'S' ACEITE 
        , 'N' MOVIMENTO
        , FORMATDATE(cast(f.data_emissao as date)) DATA_ENTRADA
        , 1 SITUACAO
        , f.id CONTROLE
        , iif(coalesce(l.acres_decres,0) > 0, 0, coalesce(l.acres_decres,0) * -1) VALOR_DESCONTO
        , ( -1 * coalesce(f.valor_inicial,0)) + iif(coalesce(l.acres_decres,0) > 0, coalesce(l.acres_decres,0), coalesce(l.acres_decres,0)) - (-1 * coalesce(f.valor_pago,0)) VALOR_SALDO
        , 0 SERIE
        , s.id PAGAMENTO_FORMA
        , 1 AVULSO
        , '' CLASSIFICACAO_CONTABIL
        , '' CCUSTO
        , fn_elipses(f.n_documento,20) OBSERVACAO
        , 0 FLAG
        , 0 REMESSA
        , FORMATDATE(cast(f.data_emissao as date))  DATAHORA
        , '' CLASSIFICACAO
        , 1 GC_WEB
        , 0 NF_SITUACAO
        , 2 NF_NATUREZA
    
    from LANCAMENTOS f
    left join TITULOS_PAGOS l on l.lancamento     = f.lancamento
    left join tipos_pgtos   s on f.tipo_pgto      = s.tipo_pgto
    left join IFILIAIS      k on k.filial         = f.filial
    left join fornecedores  j on j.cod_fornecedor = coalesce(fn_array(f.desc_gerador, 1, ' '),0)
    left join CLIENTES      o on o.cpfcnpj        = j.cpfcnpj and o.cpfcnpj is not null

    where f.tipo = 'P'
    and f.efetuado = 'F'
    and f.gerador = 'F'
    and f.previsao = 'F'
    and l.lancamento is null
    and ( -1 * coalesce(f.valor_inicial,0)) + iif(coalesce(l.acres_decres,0) > 0, coalesce(l.acres_decres,0), coalesce(l.acres_decres,0)) - (-1 * coalesce(f.valor_pago,0)) > 0
    order by f.data_vencimento, f.n_documento,f.desc_gerador, k.cod_filial, f.data_emissao
;

