Ir para conteúdo
  • Cadastre-se

renato.pavan

Membros
  • Total de ítens

    84
  • Registro em

  • Última visita

Tudo que renato.pavan postou

  1. Segundo manual anexo, página 9, campo 9 do registro de transação 400 bytes, no ACBr havia um campo com 30 espaçoes, alteramos esse campo para 14 espaços, incluímos um novo campo para data mora juros, se informado combrança de juros diário no boleto, é obrigatório informar a data inicio da cobrança do juros no formato DDMMYY que tem que ser maior que a data do vencimento e incluímos mais um campo com 10 espaços para fechar a conta com os 30 espaços que havia ali. Deixo anexo a unit alterada e o manual do banco. Layout_de_Arquivo_Cobranca_400.pdf ACBrBancoSafra.pas
  2. Bom dia! Segue a unit corrigida para leitura do arquivo retorno. Obrigado. ACBrBancoOriginal.pas
  3. Bom dia! Você só altera o tamanho máximo do nosso número para 10, 11 é com o DV eu tinha alterado pra testar e acabei me esquecendo de voltar, com 11 da erro no calculo do nosso número. Obrigado.
  4. Implementei os motivos da rejeição no retorno em caso de algum título ser rejeitado, gravar o motivo e a descrição da rejeição. Esqueci de mencionar, unit implementada e testada em Delphi 7. Anexo a unit alterada. ACBrBancoOriginal.pas
  5. Bom dia! Acabamos de homologar o CNAB 400 do Banco Original para um cliente nosso. Anexo as units que escrfevi e alterei e também os manuais utilizados no processo. 212-Original.zip
  6. Encontrei um ponto de memory leak, fiz a correção, segue a unit para avaliação. ACBrPagForConfiguracoes.pas
  7. Bom dia! Me surgiu a necessidade de salvar o PDF do DANFE FR em strem, eu implementei essa funcionalidade para meu uso, se acharem pertinente e quiserem adicionoar ao projeto oficial, em anexo segue as units que alterei. ACBrNFeDANFEFR.pas ACBrNFeDANFEFRDM.pas
  8. Daniel, Me enganei, ele apagou a primeira nota do lote, desta forma não da certo, preciso daquela propriedade que criei, justamente porque não tenho o N que você passou como sugestão. No validar eu atribuo o valor de I pra esta nova propriedade, Obrigado.
  9. Obrigado Daniel, Eu fiz como você disse: dmPrincipal.NFe.NotasFiscais.Delete(dmPrincipal.NFe.NotasFiscais.Items[0].Index); Eu imaginava que desta forma iria apagar a primeira nota do lote, devido ao Items[0], mas não, apagou exatamente a Nfe que simulei o erro. Daniel, Me enganei, ele apagou a primeira nota do lote, desta forma não da certo, preciso daquela propriedade que criei, justamente porque não tenho o N que você passou como sugestão. No validar eu atribuo o valor de I pra esta nova propriedade, Obrigado.
  10. Boa tarde a todos! Gero um lote com várias NFe no componente ACBRNFe, após carregar todas as propriedades do componente com várias notas, chamo os métodos conforme abaixo: dmPrincipal.NFe.NotasFiscais.GerarNFe; try dmPrincipal.NFe.NotasFiscais.Assinar; except end; try dmPrincipal.NFe.NotasFiscais.Validar; except //dmPrincipal.NFe.NotasFiscais.ItemIndex propriedade nova que eu criei dmPrincipal.NFe.NotasFiscais.Delete(dmPrincipal.NFe.NotasFiscais.ItemIndex); end; Criei esta propriedade ItemIndex porque se alguma nota do lote esta com problema, removo ela do lote e prossigo com as que estão corretas. Vocês acham viável a inclusão dessa propriedade no componente oficial, talvez com outro nome, uma vez que uso ela apenas no método validar. Em anexo a unit alterada. ACBrNFeNotasFiscais.pas
  11. Obrigado Daniel, Tudo certo! []'s
  12. Bom dia, Fiz a correção no código a ACBrMAil, segue anexo. Além dessa alteração, alterei também o código para salvar o MIMe do email, pois da forma que estava, estava sendo executado depois do clear e o savtofile original salvava o arquivo vazio. Outra alteração que fiz foi pra salvar o nome de quem estava enviando email, pois na exibição aparecia assim: Renato Pavan <[email protected]> ao invés de aparecer apenas Renato Pavan Para corrigir isto, apenas alterei a ordem da aps dupla no fonte conforme abaixo: De: fMIMEMess.Header.From := '"' + fFromName + ' <' + From + '>"' Para: fMIMEMess.Header.From := '"' + fFromName + '" <' + From + '>' []'s ACBrMail.pas
  13. Bom dia, Descobri quando ocorre de não aparecer a imagem que o email contem anexo, se você enviar apenas o XML anexado por stream, não aparece, se enviar o XMl anexado por Stream e o Danfe, ai aparece o clip. Vou tentar ver no código fonte se consigo ver porque isto ocorre, se conseguir corrigir posto aqui.
  14. Boa tarde, Junto com esta alteração, foi feito também uma alteração do sacador avalista na linha 526, arquivo de remessa, campo 17.3Q, Sac. / Aval. Segundo o manual, ele só deve ser preenchido quando não for o cedente original do título, neste caso deveríamos mandar 0 e com a alteração, esta preenchendo sempre com 1. Texto retirado da página 16 do manual: Sacador Avalista - Dados sobre o cedente original do título Observações: 17.3Q à 19.3Q Estes campos deverão estar preenchidos quando não for o Cedente original do título. Fizemos uma alteração no fonte para poder homologar a cobrança com a caixa, segue alteração: {Dados do sacador/avalista} IfThen(EstaVazio(Sacado.SacadoAvalista.NomeAValista), '0', IfThen(Sacado.SacadoAvalista.Pessoa = pJuridica, '2', '1' ) ) + // 154 a 157 - Tipo de Inscrição Mandei também em anexo a unit alterada. Obrigado, ACBrBancoCaixa.pas
  15. Seguindo sua sugestão, fiz uma instalação usando a opção de limpar arquivos antigo da unidade, ainda sim, fiz uma busca pelos diretórios e nada encontrei, continua o erro de violação, se volto apenas a pasta do danfe Fortes para a revisão 10526, consigo visualizar o danfe normal e cancelado sem problema algum. Segue um print do erro, debugando vi que o erro ocorre na chamada do método PrintDetails dentro da procedure Prepare.
  16. Bom dia! O fr3 não seria só para o Fast Report? Optei pelo Fortes Report, pois o PDF do danfe exportado fica bem menor. Att.
  17. Boa noite, ao gerar o danfe, tanto pelo meu sistema, quanto pelo demo do acbr, tenho um erro de violação de acesso na rotina de preparação do relatório, estou usando o fortes report atualizado, ultima revisão do SVN. Voltei a pasta do danfe fortes para a revisa 10558, consigo imprimir um danfe normal, se seto a propriedade NFeCancelado em True, nesta revisão, da o erro de violação de acesso também, para testar voltei a pasta do danfe fortes para a revisão 10500, consigo imprimir a danfe normal e cancelada, Mais alguém passou por isto? Desde ja agradeço,
  18. Obrigado Leonardo, Eu até havia carregado o arquivo no frxReport, só não havia marcado todos os datasets, feito isto, deu tudo certo. Mais uma vez, obrigado.
  19. Bom dia Juliomar, o brigado pela resposta, faço uso do midaslib no DPR do meu projeto, será que eu teria que tirar do uses e testar com alguma outra versão do midas? Obrigado.
  20. Bom dia, estou usando o trunk2, usava RaveCB para impressão do danfe, com a descontinuação, gostaria de usar o Danfe do Fast Report, uso delphi 7 e tenho instalado o Fast na versão 4, completo, Seguindo orientação do documento readme que tem na pasta dos relatórios, tentei usar o DanfeRetrato.fr3 Porém ao gerar o relatório tanto pelo demo que acompanha o ACBr ou pelo meu sistema aparece a mseguinte mensagem de erro: Pesquisando pelo erro aqui no forum, encontrei um post sobre o danfe da NFCe, com o mesmo problema e o Regys respondeu que teria que o relatório teria que ser gerado na versão 4 do fast, pois havia sido gerado na versão 5, será que o problema do DAnfe da NFe é o mesmo? Consigo gerar o relatório usando o Danfe.fr3 porém estou com receio de usar pelo que consta no documento readme.txt Tentei carregar o relatório no frxReport da minha versão do delphi, salvar como, porém ai apresenta outras mensagens de erro. Alguém ja passou por isto, poderia me auxiliar? Obrigado,
  21. Boa tarde, Emitimos boletos deste banco com a opção onde o Banco envia o boleto para o cliente, na geração da remessa, procedure: procedure TACBrBancoSantander.GerarRegistroTransacao400(ACBrTitulo :TACBrTitulo; aRemessa: TStringList); Fiz uma alteração para nos atender: De: if aCarteira = 101 then aCarteira:= 5 Para: if aCarteira = 101 then begin case ACBrTitulo.ACBrBoleto.Cedente.ResponEmissao of tbBancoEmite: aCarteira := 1; tbCliEmite: aCarteira:= 5; end; Conforme instrução da empresa que faz a homologação dos boletos, segue trecho da página 8 do manual: 108 108 9(001) Código da carteira 1 = ELETRÔNICA COM REGISTRO 3 = CAUCIONADA ELETRÔNICA 4 = COBRANÇA SEM REGISTRO 5 = RÁPIDA COM REGISTRO (BLOQUETE EMITIDO PELO CLIENTE) 6 = CAUCIONADA RAPIDA 7 = DESCONTADA ELETRÔNICA Outra alteração que a empresa me passou foi com relação a agência cobradora quando carteira = 5, alterei De: if aCarteira = 5 then aAgencia := padR(OnlyNumber(ACBrTitulo.ACBrBoleto.Cedente.Agencia) + ACBrTitulo.ACBrBoleto.Cedente.AgenciaDigito,5,'0') else aAgencia:= '00000'; Para: if aCarteira = 5 then aAgencia := padR(OnlyNumber(ACBrTitulo.ACBrBoleto.Cedente.Agencia),5,'0') else aAgencia:= '00000'; Pois conforme orientação da empresa que faz a homologação, a agência deve ir sem o dígito. Caso estejam de acordo, favor subir as alterações para o SVN. Obrigado.
  22. Só complementando a dica, este mesmo email pode ser reenviado apenas carregando o arquivo no objeto fMIMEMess: fMIMEMess.Lines.LoadFromFile('caminho_do_arquivo'); Nos testes que fiz, ele mantem todos os destinatários, anexo, tudo como o email original. Att.
  23. Boa tarde, Li no forum a pergunta de algum colega ao Jean se era possível salvar os emails enviado pelo ACBrMail. Fiz uns testes aqui e salvei em formato eml que no meu caso abri com o Outlook 2010. Na procedure SendMail, Logo abaixo da instrução: fMIMEMess.EncodeMessage; Coloquei o seguinte código: fMIMEMess.Lines.SaveToFile('c:\' + fSubject + '.eml'); Deixei fixo o caminho porque foi só um teste, mas pode ser criado uma propriedade boleana para informar se deseja salvar e, em caso afirmativo um caminho para ser salvo a cópia ou até mesmo um stream para ser salvo em um blob no banco de dados. Att.
×
×
  • 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.