Ir para conteúdo
  • Cadastre-se

Luciano Rodrigues Pereira

Membros
  • Total de ítens

    214
  • Registro em

  • Última visita

Tudo que Luciano Rodrigues Pereira postou

  1. Estou tendo problemas direto com o RepublicaVirtual, está sempre fora do ar. Os outros que testei do componente, só pagando uma assinatura mensal. Aí não dá, sai muito caro. Existe outro grátis no componente? Se ao menos o Componente tivesse como tratar o erro de TimeOut, já resolveria minha vida, para eu dar uma mensagem ao usuário e dar a ele a opção de passar sem a consulta.
  2. Terminei agora o Sicoob no meu sistema. O Sicoob não tem homologação. Tem de testar já valendo. Fiz os testes gerando dois boletos de R$ 2.00, enviando remessa, pagando o boleto e processando o retorno, mas tudo valendo.
  3. Na verdade nem através do navegador está funcionando. Nem o link "oficial", que se clica no site do receita que levar para o "Não sou robô" que é o "solicitacao.asp" está funcionando. Em resumo, esse serviço do Governo assim como tudo nesse governo não está funcionando, um verdadeiro lixo. E agora estão querendo até vender consulta à Cnpj, um verdadeiro desespero. Mas acredito que essa consulta deva ser uma consulta mais rica, como se fosse um Serasa, a consulta simples de dados cadastrais deve permanecer aberta. Eu acho... Vai saber, esse governo está desesperado por dinheiro para continuar alimentando a corrupção. Acredito que essa consulta deva ser uma consulta mais rica, como se fosse um Serasa, com informações de divida pública, etc. A consulta simples de dados cadastrais deve permanecer aberta. Eu acho... Vai saber, esse governo está desesperado por dinheiro para continuar alimentando a corrupção.
  4. Na verdade os fontes do ACBr já estão assim, e comigo não está funcionando.
  5. Como está a situação? Aqui também não funciona mais já tem um tempo. Acho que vão usar o captcha do Google ou o "Não sou robô". Eles não vão deixar mais de uma opção.
  6. Acabei de atualizar a versão do ACBr e agora quando vou compilar minha aplicação me vem a mensagem "ACBrBoletoFCFR was compiled with a different version of ACBrBoleto.TACBrBoletoFCClass", como resolvo? Não estou conseguindo compilar minha aplicação mais!
  7. Acabei de atualizar a versão do ACBr e agora quando vou compilar minha aplicação me vem a mensagem "ACBrBoletoFCFR was compiled with a different version of ACBrBoleto.TACBrBoletoFCClass", como resolvo? Não estou conseguindo compilar minha aplicação mais!
  8. Estou fazendo tudo certo, mas na hora de fazer a consulta do CPF via ACBrConsultaCPF estou com a mensagem de erro "Erro Http: 404 not Found", conforme imagem em anexo. O componente está inclusive trazendo o captcha, tudo certo, mas na hora do comando ACBrConsultaCNPJ1.Consulta(edCpf_Cnpj.text, edtCaptcha.Text) me vem a mensagem de erro. Tudo indica que esse endereço para o qual o componente aponta está erro, entrando pelo navegador o site da receita é https://www.receita.fazenda.gov.br/Aplicacoes/SSL/ATCTA/CPF/ConsultaSituacao/ConsultaPublica.asp diferente do endereço do componente. Como corrigir?
  9. Eu sou cooperado Sicred, tenho talão de cheques Sicredi, emito boletos Sicred e posso te afirmar com absoluta certeza que você está equivocado, o Sicred é 748. Você pode inclusive verificar no site do banco central a relação dos bancos. Sicred não é banco, é uma cooperativa financeira, mas faz parte do sistema financeiro nacional. Isso não quer dizer que o código do ACBr não possa estar com algum problema, até pode, eu não baixei recentemente uma versão mais nova (não sei quando foi a última que baixei), mas a razão com certeza não é o código do banco.
  10. O BB envia 2 arquivos. Um é o relatório e o outro é o retorno.
  11. Não entendi Juliana. Continuo na dúvida de como proceder quando eu precisar alterar o valor do boleto. Mesmo eu informando a ocorrência toremessaalterarvalortitulo o ACBr não tem o tratamento desta ocorrência na classe e aí caí em "else ocorrencia = '01'" e vira toremessaregistrar e aí dá problema pro banco, pois não é um novo registro mas sim uma alteração, no caso alteração do valor do título. O ACBr devia tratar essa ocorrência, caso o banco tenha um código específico para essa ocorrência, informa esse código caso contrário informa o código de alteração de outros dados. Melhor que enviar como ocorrência 01 (toremessaregistrar). Juliana, você tem conhecimento de como o pessoal informa a alteração do valor do boleto? Se como alteração de vencimento ou alteração de outros dados? Porque o único banco que tem um código especifico para alteração de valor do título que eu vi nos manuais até agora foi o Itaú. Se for o caso vou fazer esse tratamento no ACBr nos bancos que trabalho. Desde já te agradeço pelo retorno.
  12. Bom dia. Estou tento problema ao tentar enviar alterações de valor do boleto na remessa. Percebi que o ACBr tem a OcorrenciaOriginal.Tipo 'toRemessaAlterarValorTitulo' mas não faz uso da mesma. Eu verifiquei nos bancos .pas de itaú, bradesco, bnb, brasil e outros. O ACBr só vem usando o toRemessaAlterarVencimento. Aí o que acontece é que cai em um 'else' e ele gera a remessa como ocorrência '01' que é 'registrar', aí dá erro porque o banco retorna com erro de nosso número já registrado (o bnb pelo menos está dando este erro). Como proceder quando eu precisar alterar o valor do boleto? Vi que a maioria dos bancos realmente não traz código de ocorrência para alteração de valores de títulos. O Itaú traz essa opção, mas diz que tem de ser uma linha a parte, só com a alteração do valor. Ou seja, se estivermos alterando o vencimento e o valor, serão duas linhas, uma para a alteração do vencimento e outra para a alteração do valor conforme informa o manual do banco "Os campos sem alteração devem ser preenchidos com zeros ou brancos, obedecendo a sua picture. A alteração do valor do boleto deverá ser feita isoladamente, sem nenhuma outra alteração no mesmo registro."
  13. E no FastReport houve também?
  14. Não tem nada de errado com o pas do ACBr. Eu trabalho com o bnb e tudo certo. Você está fazendo confusão com Carteira e Tipo de Operação. Isso é uma chatice mesmo no bnb. A carteira no caso é 4 e o Tipo de Operação é 21. É só você colocar no seu sistema carteira 4 que o ACBr faz o resto. Já na impressão do boleto, o boleto pede Carteira (que seria 4), mas o banco quer que imprima na verdade o Tipo de Operação (21), aí você edita o boleto que você trabalha. Cria uma função para converter a Carteira em Tipo de Operação e chama ela lá em before print do MasterData. Tipo assim: procedure MDOnBeforePrint(Sender: TfrxComponent); begin // Banco 004 (Banco do Nordeste) - Imprime o Tipo de Operação no lugar da Carteira TituloCarteira.Text := IIF(<Banco."Numero"> = '004', CarteiraToTipoOperacao(<Titulo."Carteira">), <Titulo."Carteira">); end; function CarteiraToTipoOperacao(const Carteira: string): String; begin if Carteira = '4' then Result:= '21' else if Carteira = '5' then Result:= '41' else if Carteira = '6' then Result:= '31' else if Carteira = 'I' then Result:= '51' else result:= Carteira end;
  15. Estou conseguindo enviar emails normalmente usando o ACBrMail. A única coisa que não está funcionando seria o evento OnMailException quando enviando para um endereço inexistente. Minha intenção é gerar um log com aqueles e-mails que não foram possível ser enviados. Tentei enviar para um endereço inexistente como por exemplo "[email protected]" e o evento OnMailException não foi disparado. Como posso distinguir os emails que foram enviados sem problema daqueles que não foram como neste exemplo ?
  16. É muito simples. Se você consegue trabalhar com o código no FastReport (a versão que vem no Delphi não permite), mas uma versão que você compra por aí (leia-se pi...), você trabalha com o código. Para mim mesmo seria impossível trabalhar no Fast sem o código, pois eu trabalho muito com os eventos do relatório. Então no Código do boleto você mesmo cria a função. Vou lhe dar mastigado. procedure MDOnBeforePrint(Sender: TfrxComponent); begin // Banco 004 (Banco do Nordeste) - Imprime o Tipo de Operação no lugar da Carteira TituloCarteira.Text := IIF(<Banco."Numero"> = '004', CarteiraToTipoOperacao(<Titulo."Carteira">), <Titulo."Carteira">); end; function CarteiraToTipoOperacao(const Carteira: string): String; begin if Carteira = '1' then Result:= '21' else if Carteira = '2' then Result:= '41' else if Carteira = '4' then Result:= '21' else if Carteira = '5' then Result:= '41' else if Carteira = '6' then Result:= '31' else if Carteira = 'I' then Result:= '51' else Result:= Carteira;
  17. O Banco do Nordeste é chato mesmo. Eles tem uma coisa chamada Carteira, que é só uma posição (1, 2, 4, 5 ou I) e tem o Tipo de Operação (21, 31, 41 ou 51). E na impressão do boleto onde se lê Carteira, eles querem que imprima o Tipo de Operação e não a carteira em si. Banco complicado. Muito fraco o pessoal de Ti deste banco. No seu sistema informe a carteira '4', o ACBr na hora de gerar o arquivo de remessa não vai levar a Carteira (4) mas sim o Tipo de Operação (21), o que está correto. Na impressão, no código do boleto do FastReport (ou outro) você faz a mesma coisa. Eu fiz assim...
  18. O ACBr já tem componentes para geração de arquivos de remessa e leitura de arquivos de retorno de agendamentos de pagamentos de títulos?
  19. Eu trabalho com boletos da Unicred e sou cooperado da Unicred e pelo ou menos até onde sei a Unicred diferentemente dos outros sistemas de cooperativas não tem um banco. O Sicred tem o Banco BanSicred e o Sicoob o Banco BanCoob. A Unicred faz seus serviços com o Bansicred portando o Banco é o 748. A não ser que sua Unicred faça seus serviços com o Bancoob (756). 090 seria a cooperativa Central das Unicreds. Mas cooperativas mesmo que centrais não são autorizadas a fazer esses serviços bancário como cobranças, precisam contratar um banco, por isso mesmo que os maiores sistemas cooperados, o Sicred e o Sicoob criaram seus próprios bancos. Eu trabalho com boletos da Unicred e sou cooperado da Unicred e pelo ou menos até onde sei a Unicred diferentemente dos outros sistemas de cooperativas não tem um banco. O Sicred tem o Banco BanSicred e o Sicoob o Banco BanCoob. A Unicred faz seus serviços com o Bansicred portando o Banco é o 748. A não ser que sua Unicred faça seus serviços com o Bancoob (756). 090 seria a cooperativa Central das Unicreds. Mas cooperativas mesmo que centrais não são autorizadas a fazer esses serviços bancário como cobranças, precisam contratar um banco, por isso mesmo que os maiores sistemas cooperados, o Sicred e o Sicoob criaram seus próprios bancos.
  20. Juliana, não sei se foram implementadas minhas alterações enviadas dia 20/12/2015. Elas resolvem todas essas reclamações acima. ex: Digito verificador do nosso número = 1 que o ACBr está transformando em 0, Moeda 1 quando o correto é 0 e as coluna de rejeição. Quanto à carteira, ela está sendo informada com 1 dígito pela alteração que vocês fizeram (ex: 4). Eu transforma o 4 para 21 no código no Fast Report. Mas acho que o ideal é deixar a carteira com 2 dígitos mesmo, como era antes (ex: 21), porque é esse código que deve ser impresso no boleto e transformar em 1 digito (ex: 4) apenas na geração da remessa. Assim não precisa de código algum no Fast Report. Se você quiser eu faço essa implementação e envio aqui.
  21. Fiz algumas modificação em cima das modificações que você fez: - DIGITO VERIFICADOR: Alterado CalcularDigitoVerificador - Removido a parte onde manda transformar digitofinal 1 p/ 0 Seu módulo continua transformando digitofinal 1 p/ 0. Isso não existe no manual e eu já mandei homologar um boleto que o ACBr transformou digito final 1 p/ 0 e não passou, só passou quando o digito correto era realmente 1. O manual diz que quando o resto da divisão (por 11) for 1 ou 0 aí o digito será 0, mas o resto da divisão, lembrando que ainda vamos subtrair de 11 o resto da divisão, portanto é para transformar o resto da divisão em 0 quando este for 1 ou 0 e não o próprio digito final encontrado. Por isso esta parte dever ser retirada ou comentada como à seguir. { if Modulo.DigitoFinal = 1 then Result:= '0' else } - MOTIVOS DE REJEIÇÃO: Em GerarRegistroTransacao400, alterada a posição 394 (código da moeda) estava '1' p/ '0', que é o código correto p/ R$ Onde está '991' o correto é '990'. Essa moeda com '1' também deu problema na homologação e o manual é claro quanto à ser 0 para R$ As rejeições estão nas colunas entre 280 a 356 mas no caso de toRetornoLiquidado as colunas 296 a 301 são reservadas para a data do crédito. Do jeito que você deixou, se a linha se tratar de um retorno de liquidação com data de crédito por exemplo 120115 o ACBr irá tratar as colunas da data com 1 como erros e não são, já fiz os testes, por isso o correto é: for i := 0 to 76 do begin if (copy(Linha,280+i,1)='1') then if ((i+280 < 296) or (i+280 > 301) or (OcorrenciaOriginal.Tipo <> toRetornoLiquidado)) then DescricaoMotivoRejeicaoComando.Add(MotivoRejeicaoColuna(280+i)); end; Não entendi a função CodMotivoRejeicaoToDescricao no Bnb, uma vez que no Bnb não tem código de erro, o erro é de acordo com a coluna. Você pode ver que esta sua função não é usada em parte nenhuma do módulo. Mas mantive assim mesmo. - CARTEIRA: Em GerarRegistroTransacao400 você colocou na posição da carteira a linha: IntToStr(StrToInt(Carteira)), mas como existe carteira alfanumerica como o 'I' não vamos usar strtoint ou inttostr, por isso alterei simplesmente para 'Carteira' Só lembrando que da forma que você deixou (fpTamanhoCarteira:= 1) eu devo usar na carteira (ex: 4), ao invés de 21. Dúvida: No boleto deve ser impresso o Tipo de Operação no lugar da carteira (ex: 21) ao invés de 4, como imprimir o CarteiraToTipoOperacao? Eu resolvi via código no próprio Fast Report, não sei se existe outra forma. ACBrBancoNordeste.pas
  22. Oi Juliana, eu refiz o módulo do banco do nordeste (.pas) por completo. Pelo que eu entendi, o módulo do projeto estava completamente baseado em outro banco e o banco do nordeste é muito diferente. então refiz muito coisa, haviam muitas posições erradas e muitos tratamentos errados, como o tratamento de erro do retorno. Segue um pequeno resumo do que alterei e os arquivos em anexo para sua avaliação. - Alterado CalcularDigitoVerificador - removido a parte onde manda transformar digitofinal 1 p/ 0 - corrigidos os códigos de tipos de inscrição. Onde tinha 11 pessoa física e 14 jurídica, acrescentado 01 física e 02 jurídica - criadas funções carteiratotipooperacao e tipooperacaotocarteira - alterada a posição 394 (código da moeda) do registro de transação da remessa que estava '1' p/ '0', que é o código correto p/ R$ - alterado o leretorno posições de agencia (linha/posição 1,26 p/ 0,27), conta (1,31 p/ 0,33) e digito da conta (1,37 p/ 0,40), que são as posições corretas - alterado o leretorno posições do nosso número, posição 71 p/ posição 63 - alterado leretorno (carteira) p/ TipoOperacaoToCarteira(copy(linha,108,1)) - removido ValorOutrosCreditos := StrToFloatDef(Copy(Linha,280,13),0)/100 - As colunas de 280 a 356 são reservadas p/ os erros - corrigido o bloco de erros (motivos de rejeição) - criada a função motivorejeicaocoluna Tudo conforme manual do banco, testado e aprovado com uma carteira com registro. ACBrBancoNordeste.pas PADRAO BNB - CNAB400.pdf A02501301120154000069206288000.RET.SAI cb271101.rem
×
×
  • 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.