kurtslucas
Membros-
Total de ítens
35 -
Registro em
-
Última visita
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Tudo que kurtslucas postou
-
Boa tarde. Eu tive o mesmo problema para homologar o arquivo de remessa BB no layout 240. A posição 106 do Segmento P atualmente é passada como '0', porém o suporte do banco pede que seja passado em branco. Para conseguir homologar o arquivo eu fiz a mesma coisa que o Camargu, troquei por um espaço em branco o último zero da linha 495 do arquivo ACBrBancoBrasil.pas (atualizado hoje, 20/02/2015, pelo Tortoise). Teria como analisar esta situação para atualizar os fontes no SVN? Atenciosamente.
-
Boa tarde. Muito obrigado Juliana pela sua atenção e ajuda na solução da minha situação. Att.
-
Boa tarde. Fiz a atualização dos fontes do AcBr. As alterações com relação ao tipo de carteira estão funcionando corretamente, fiz alguns testes aqui. Porém, ainda tem duas alterações que eu tive que fazer no processo de homologação do arquivo de remessa que não estão no SVN. Vocês podem dar uma olhada nelas? A primeira eu fiz na função local MontarInstrucoes1. Antes, com os dados do meu cliente, me retornava uma string com 120 caracteres, o que acabava ultrapassando os 240 do layout. Com a alteração que fiz resolveu essa situação. Essa alteração está na linha 255 do arquivo anexo atualizado. A segunda alteração, é referente ao "Valor/Percentual a ser aplicado". Atualmente essa informação está sendo passada de maneira estática com uma sequência de 15 zeros. Fiz uma alteração pegando o valor do documento multiplicado pelo percentual de multa. Obs. Já está sendo considerado os dois caracteres decimais. Essa alteração encontra-se na linha 575 do arquivo anexo. ACBrBancoSantander.pas Atenciosamente.
-
Bom dia pessoal. Juliana, ainda não tive respostas do suporte do banco com relação à sua pergunta. Porém, observando a solução proposta pelo Jéter, creio que atenda o dinamismo necessário para essa situação sem que atrapalhe ninguém.
-
Bom dia Juliana. Mandei um e-mail ao suporte do banco Santander com a sua pergunta. Assim que tiver algum retorno eu posto aqui. Obrigado.
-
Olá Juliana, boa tarde e obrigado pelo retorno. Com relação à posição 59 do segmento P, talvez possa ser criado uma variável para ser controlada conforme o valor da variável sTipoCobranca. Esta última, é alimentada num case na linha 345 no procedimento GerarRegistroTransacao240. No caso do meu cliente o ACBrBoleto.Cedente.CaracTitulo é tcVinculada, ou seja, a variável sTipoCobranca receberá o valor '5' {Cobrança Simples (Rápida com Registro)}. Com relação à informação passada nas posições 226-227 do segmento P, quando eu fiz a depuração, notei que a variável Instrucao2, que alimenta a posição 224 deste segmento {224 / Código para Baixa/Devolução}, estava vazia quando entrava no if que eu mencionei, e com isso era atribuído o valor '1'. Segundo o suporte do banco, seria necessário informar a quantidade de dias para baixa/devolução, pois estava sendo informado o valor '1' na posição 224. Como a quantidade de dias estava estática, eu pensei em adicionar a informação de sDiasProtesto, mas confesso que não foi bem pensado, mesmo tendo sido homologado pelo banco. Nosso sistema não está alimentando a propriedade Instrucao2, provavelmente seja este o motivo pelo qual o suporte pediu o número de dias. Se alimentarmos com o valor '2', essa alteração não seria solicitada. Contudo, ainda sim vou solicitar maiores detalhes ao suporte do banco Santander com relação à essas duas informações, para que possam ser feitas verificações para processar melhor as informações. Obrigado.
-
Olá pessoal. Não quero parecer inconveniente, mas eu queria saber se alguém pode analisar as alterações que eu fiz no arquivo ACBrBancoSantander.pas para que o arquivo de remessa fosse homologado pelo Banco Santander. Vale lembar que as alterações são referentes ao layout 240 da remessa do Banco Santander. O anexo do arquivo ".pas" eu postei no 5º post deste tópico, contudo vou anexar novamente para facilitar o acesso ao mesmo. Agradeceria muito se essas alterações, depois de analisadas, fossem atualizadas no SVN. Abraços. ACBrBancoSantander.pas
-
Olá pessoal, bom dia. Sobre a remessa do Banco Santander no layout 240, eu gerei uma remessa com as alteações que citei nos dois posts anteriores, o suporte do banco me deu um retorno dizendo que o arquivo foi homologado com sucesso. Se possível, analisem o arquivo que anexei no post #5 deste tópico e adicionem as alterações ao repositório. Com relação às informações que são passadas de maneira estática, eu as alterei de acordo com as necessidades do meu cliente. O problema é que poderemos ter outros clientes com necessidades diferentes. Se for possível dinamizar essas informações iria ser muito útil. Abraços.
-
Olá pessoal. Eu gerei uma remessa com as alterações que citei no post anterior e mandei para a análise do suporte Santander, dessa vez só me retornou um erro, segue abaixo o mesmo: REGISTRO DETALHE - SEGMENTO R REMESSAREGISTRO DETALHE - SEGMENTO R REMESSA 066 - 066 Código da multa N 1 1- Valor fixo, 2- Percentual Se o valor da multa foi expresso em percentual no arquivo de remessa deve informar aqui o código 2 (Percentual). Código 1 é para valor de multa pelo atraso e no caso e fica divergente ao informado no boleto em PDF. No post anterior eu fiz uma alteração da seguinte forma: "IntToStrZero(round(PercentualMulta * 100), 15)". Este erro que o suporte retornou foi porque eu passei o valor percentual da multa mas o caracter '1' na posição 66 indica que o valor da multa seria passado em R$, para passar o percentual eu deveria informar o caracter '2'. Apenas converti o valor percentual em R$. Segue abaixo a alteração realizada: IntToStrZero(round(ValorDocumento * PercentualMulta), 15) Vou anexar o arquivo ACBrBancoSantander.pas para vocês testarem melhor estas alterações. Lembrando que algumas informações ainda estão estáticas.
-
Olá pessoal, estamos tentando homologar o arquivo de remessa para o Banco Santander com o Layout de 240. Após ser analisado o arquivo que geramos através do AcBrBoleto, recebemos via e-mail algumas correções para serem efetuadas, dentre estas, algumas correções não puderam ser feitas, porque no código do AcBr, onde gera o arquivo de remessa, estão sendo passadas estaticamente. Vou listar estas correções abaixo: REGISTRO DETALHE - SEGMENTO P REMESSA 059 - 059 Forma de Cadastramento N 1 6 . . . FORMA DE CADASTRAMENTO INCORRETA. ALTERAR PARA 1 Neste caso, o AcBr passa por padrão o caracter '2'. Portanto, para corrigir eu teria que de alguma forma informar o carcter '1'. No comentário desta linha pode-se ler: "Forma de Cadastramento = 1 Registrada / 2 Sem Registro". Teria alguma forma de passarmos essa informação de forma que não fique estática? REGISTRO DETALHE - SEGMENTO P REMESSA 226 - 227 Número de dias para Baixa/Devolução N 2 . . SE CAMPO 224 INFORMAR BAIXA/DEVOLUÇÃO, ESTE CAMPO DEVE INFORMAR QUANTIDADE DE DIAS, LINHA 3 Neste caso, notei que o caracter 224 ao qual a observação se refere é alimentado pela propriedade Instrucao2 do TAcBrTitulo. Fiz uma depuração para ver quando ela é alimentada e conforme os dados do meu cliente ela entre nesta condição <if (DataProtesto <> 0) and (DataProtesto > Vencimento) then> onde recebe o valor 1 = Protestar Dias Corridos. Ou seja, pelo visto eu teria que informar a quantidade de dias nos caracteres 226 e 227, porém, estes caracteres estão sendo passados de forma estática com o valor '00'. Não sei se resolveria, mas fiz uma alteração informando a variável sDiasProtesto no lugar dos dois zeros. REGISTRO DETALHE - SEGMENTO R REMESSA 075 - 089 Valor/Percentual a ser aplicado N 15 2 decimais sem separador 18 No boleto em PDF informa multa e na remessa não. Informações entre remessa e boletos em PDF devem ser iguais. Neste caso, o boleto possui a informação de multa, mas na linha onde deveria ser informado o percentual da multa está sendo passado estaticamente uma string com 15 zeros. Fiz também uma alteração nesta linha passando da seguinte forma: IntToStrZero(round(PercentualMulta * 100), 15). REGISTRO DETALHE - SEGMENTO R REMESSA 180 - 240 Reservado A 61 Brancos LINHAS DEVEM CONTER 240 POSIÇÕES, LINHA 5. Neste caso, notei que o segmento estava sendo escrito com 40 caracteres a mais, ou seja, somando o total de 280. Ao fazer a depuração notei que estes caracteres a mais estavam sendo gerados dentro da função interna MontarInstrucoes1. Nesta função primeiro testa se o AcBrTitulo não possui nenhuma mensagem, sendo assim, retorna uma string com 80 espaços em branco. Num segundo caso verifica se tem uma ou mais mensagens, onde adiciona ao Result uma string de 40 posicoes com a mensagem[0] mais espaços para completar as posições [no meu caso entra nesta condição]. Numa terceira condição verifica se o ACBrTitulo possui 2 ou mais mensagens, o que não é o meu caso. Mas essa última condição tem um ELSE, que atribui ao Result o seguinte trecho <Result := Result + padL('', 80, ' '); // 2 registros>. Ou seja, como no meu caso já havia adicionado uma mensagem de 40 posições, ao entrar na segunda mensagem, somou mais 80 posições. Eu fiz uma correção dentro deste Else, não sei se ajudaria, mas no meu teste resolveu. O Segmento R foi gerado com 240 posições. Segue abaixo a correção sugerida: if Mensagem.Count >= 2 then begin Result := Result + Copy(padL(Mensagem[1], 40, ' '), 1, 40) end else begin if Length(Result) > 0 then Result := Result + padL('', 40, ' ') // 1 registro else Result := Result + padL('', 80, ' '); // 2 registros Exit; end; Espero que possam me ajudar com estes problemas. Preciso mandar um novo arquivo de remessa para ser homologado. Abraços.