Ir para conteúdo
  • Cadastre-se

  • Este tópico foi criado há 1476 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Consultores
Postado

Olá pessoal,

O componente ACBrPagFor passou por um Refactoring.

A motivação para esse Refactoring é tornar o componente mais fácil e prático no que se refere a implementar novos bancos bem como realizar manutenção no código sem correr o risco de gerar um efeito colateral nos bancos já implementados.

Antes tínhamos apenas uma unit responsável por gerar o arquivo txt de remessa para todos os bancos. Isso gerava riscos na implementação e manutenção dos bancos existentes.

Agora temos uma unit que gera o arquivo segundo o layout estabelecido pela Febraban e units separadas para cada banco. Assim, podemos alterar a procedure do registro ou do segmento que não segue a risca o layout da Febraban de um banco específico sem afetar outros.

Desta forma dezenas de IF e CASE utilizados para identificar o banco em questão e gerar o txt corretamente, agora não existem mais. Desta forma temos um código muito mais limpo de ser lido e compreendido.

Além disso foram removidas as propriedades de configuração: CNPJ e VersaoLayout que se encontravam em Configuracoes.Geral, pois estavam sem nenhuma utilidade.

Agora no lugar delas temos as propriedades de configuração: Empresa e UsarDadosConfig.

 

Novas Propriedades de Configuração:

Propriedade Tipo Valor Padrão Descrição
Empresa Grupo   Dados da Empresa
  TipoInscricao TTipoInscricao tiIsento Determina o tipo de Inscrição da Empresa que pode ser: tiIsento, tiCPF, tiCNPJ, tiPISPASEP ou tiOutros.
  NumeroInscricao string   Numero da Inscrição da Empresa conforme o tipo.
  Convenio string   Numero do Convenio da Empresa estabelecido com o Banco.
  Nome string   Razão Social da Empresa.
  Conta Grupo   Dados da Conta
    AgenciaCodigo Integer 0 Numero da Agencia que a Empresa tem Conta.
    AgenciaDV string   Digito Verificador da Agencia.
    ContaNumero Int64 0 Numero da Conta.
    ContaDV string   Digito Verificado da Conta
    DV string   Digito Verificado geral utilizado por alguns bancos.
    TipoConta Integer 0 Tipo de Conta, utilizado por alguns bancos.
  Endereco Grupo   Dados do Endereço
    Logradouro string   Nome do Logradouro do Endereço da Empresa.
    Numero string   Numero ou código do Logradouro (veja a "obs." abaixo)
    Complemento string   Complemento do Endereço.
    Cidade string   Nome da Cidade.
    CEP Integer   CEP do Endereço da Empresa.
    Estado string   Sigla do Estado.
UsarDadosConfig Boolean False Se True o componente vai utilizar as informações de configuração para serem utilizadas ao gerar o arquivo de remessa, caso contrario o desenvolvedor terá que alimentar diretamente os campos do componente.

Observação: o tipo do campo Numero do logradouro do Endereço foi alterado de Integer para string pois a cidade de Bauru utiliza o formato xx-yy onde xx se refere ao numero da quadra em que a rua se encontra e o yy o numero do imóvel.

 

Pasta dos fontes:

Outro ponto importante é a localização das Units que compõe o componente:

Pasta Descrição
ACBrPagFor Pasta raiz dos fontes do componente.
  Bancos Pasta que contem as units dos bancos: (PagFor.NomeBanco.GravarTxtRemessa, PagFor.NomeBanco.LerTxtRetorno, PagFor.NomeBanco.Provider).
  Base Pasta que contem as units de classes, conversão e parâmetros. 
    Provider Pasta que contem as units bases de geração e leitura do arquivo txt bem como a interface com as units de cada banco.
  Modelos Pasta que contem as units que podemos utilizada como modelo para quando for implementar um novo banco: (PagFor.Modelo.GravarTxtRemessa, PagFor.Modelo.LerTxtRetorno, PagFor.Modelo.Provider).

 

Situação atual:

Hoje o componente já conta com os seguintes bancos implementados: BancoCECRED, Banco do Brasil, Bradesco, HSBC, Itaú, Safra, Santander e Sicredi.

 

Desafios a frente:

  • Implementar e testar novos bancos
  • melhorar a leitura do arquivo de retorno e extrair as ocorrências para que sejam apresentadas de forma clara e objetiva para que o desenvolvedor possa realizar os ajustes necessários

Para que isso ocorra, contamos com a colaboração de todos.

  • Curtir 9
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...