CREATE OR ALTER VIEW TBNFS_PARCELAMENTO(
    NF_NATUREZA,
    GC_WEB,
    CAIXA_ID,
    NFS_CONTROLE,
    PARCELA,
    VALOR,
    DATA_VENCIMENTO,
    DATA_FLUXO,
    CONTA_RECEBER_OPERACAO,
    CONTA_RECEBER_BANCO,
    CONTA_RECEBER_MODALIDADE,
    CONTA_RECEBER_POSICAO,
    CONTA_RECEBER_COBRANCA,
    ACEITE,
    ESTABELECIMENTO_CODIGO,
    NUMERO_NOTAFISCAL,
    DATA_EMISSAO,
    EMPRESA_CODIGO,
    SITUACAO,
    CONTROLE,
    VALOR_DESCONTO,
    VALOR_SALDO,
    REMESSA_ARQUIVO,
    REMESSA_DATA,
    REMESSA_NUMERO_BANCO,
    VIA_DUPLICATA,
    SERIE,
    PAGAMENTO_FORMA,
    AVULSO,
    CLASSIFICACAO_CONTABIL,
    CCUSTO,
    CLASSIFICACAO,
    OBSERVACAO,
    FLAG,
    NOTIFICADO_VENCIMENTO,
    REPRESENTANTE_COMISSAO,
    REPRESENTANTE_ID,
    VENDEDOR_ID,
    VENDEDOR_COMISSAO,
    FORMA_COMISSAO,
    DATAHORA,
    TIPO)
AS
select

      2 NF_NATUREZA
     ,1 GC_WEB
     ,0 CAIXA_ID
     ,row_number() over(order by f.data_vencimento, f.n_documento,f.desc_gerador, k.cod_filial, f.data_emissao) NFS_CONTROLE
     ,1 PARCELA
     ,(coalesce(f.valor_inicial,0)) + iif(coalesce(l.acres_decres,0) > 0, coalesce(l.acres_decres,0) , coalesce(l.acres_decres,0)) VALOR
     ,FORMATDATE(cast(f.data_vencimento as date))  DATA_VENCIMENTO
     ,FORMATDATE(cast(f.data_emissao as date)) DATA_FLUXO
     ,0 CONTA_RECEBER_OPERACAO
     ,0 CONTA_RECEBER_BANCO
     ,0 CONTA_RECEBER_MODALIDADE
     ,0 CONTA_RECEBER_POSICAO
     ,0 CONTA_RECEBER_COBRANCA
     ,'S' ACEITE
     ,coalesce(k.cod_filial,1) ESTABELECIMENTO_CODIGO
     ,0 NUMERO_NOTAFISCAL
     ,FORMATDATE(cast(f.data_emissao as date)) DATA_EMISSAO
     ,coalesce(iif(d.id > 0, d.id ,o.id),0) EMPRESA_CODIGO
     ,1 SITUACAO
     ,f.id CONTROLE
     ,iif(coalesce(l.acres_decres,0) > 0, 0, coalesce(l.acres_decres,0) * -1) VALOR_DESCONTO
     ,(coalesce(f.valor_inicial,0)) + iif(coalesce(l.acres_decres,0) > 0, coalesce(l.acres_decres,0), coalesce(l.acres_decres,0)) - (coalesce(f.valor_pago,0))  VALOR_SALDO
     ,null REMESSA_ARQUIVO
     ,null REMESSA_DATA
     ,null REMESSA_NUMERO_BANCO
     ,null VIA_DUPLICATA
     ,0 SERIE
     ,s.id PAGAMENTO_FORMA
     ,1 AVULSO
     ,'' CLASSIFICACAO_CONTABIL
     ,'' CCUSTO
     ,'' CLASSIFICACAO
     ,fn_elipses(f.n_documento,20) OBSERVACAO
     ,0 FLAG
     ,0 NOTIFICADO_VENCIMENTO
     ,0 REPRESENTANTE_COMISSAO
     ,0 REPRESENTANTE_ID
     ,0 VENDEDOR_ID
     ,0 VENDEDOR_COMISSAO
     ,0 FORMA_COMISSAO
     ,FORMATDATE(cast(f.data_emissao as date)) DATAHORA,
     1 TIPO

    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 clientes      o on o.cod_cliente= coalesce(trim(fn_array(f.desc_gerador, 1, ' ')),0)
    left join funcionarios  g on g.cod_funcionario = coalesce(trim(fn_array(f.desc_gerador, 1, ' ')),0)
    left join clientes      d on d.fantasia = 'FUNCIONARIA' and d.nome = g.nome

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

