Membros Pro Desenvolvimento Eagle Postado Segunda as 21:06 Membros Pro Postado Segunda as 21:06 Novo tópico aberto em solicitação ao que foi pedido no fórum:Alterações boleto híbrido PenseBank e Sicoob Alterações geração de boletos (implementado na revisão - 36438) ACBrBoleto.pas: Método GerarMensagemPadraoDataLimitePagamento: complementadas (e pontuadas) as mensagens padrões do campo Data Limite de Pagamento: De “Não Receber após <<dias limite>> dias.” para “Não Receber após <<dias limite>> dias do vencimento.“. De “Não Receber após o Vencimento” para “Não Receber após o Vencimento.“ (acrescentado o ponto final). Método CalcularPercentualValor: Corrigido o cálculo do valor de desconto (conforme o tópico Dúvida sobre cálculo de desconto no ACBrBoleto). Está correção já está no SVN. ACBrBancoPenseBank.pas: Removido o método FormataNossoNumero. No caso do Pense Bank, o cliente não envia o nosso número no momento da geração do boleto, ele apenas o recebe já formatado, no retorno da geração ou no retorno da consulta. Assim, o número não pode ser formatado novamente, caso contrário o código de barras ficará incorreto. Sobrescritos os métodos EhObrigatorioNomeBeneficiario, EhObrigatorioAgencia, EhObrigatorioAgenciaDV, EhObrigatorioConta e EhObrigatorioContaDV, apenas para tirar a obrigatoriedade desses campos, pois eles não são obrigatórios para a geração do boleto, apenas necessários para a impressão. Sobrescrito o método MontarCampoCarteira, que serve para definir como o campo carteira é exibido na impressão do boleto. No BB, era exibido no formato <<número carteira>> / <<modalidade carteira>>, mas como esse dado não existe para o Pense Bank, era exibido o valor "1" para a modalidade (17/1, por exemplo). Como na impressão do próprio Pense Bank é exibido apenas o número da carteira, o método foi sobrescrito para fazer o mesmo. Alterado o método MontarCampoCodigoCedente para retornar no formato <<número agência>>/<<número conta>>, removendo zeros à esquerda da agência (mesmo padrão do Pense Bank). Alterado o método CalcularTamMaximoNossoNumero para retornar o próprio tamanho do nosso número (pois como dito anteriormente, o nosso número já é retornado formatado e no tamanho correto pelo Pense Bank). No método MontarCodigoBarras: Removida a formatação no Nosso Número. Removidos os zeros à esquerda do nosso número antes de realizar o cálculo do tamanho máximo. Isso foi feito por que, por padrão, o Pense Bank retorna o nosso número com 20 caracteres, sendo que os três primeiros dígitos são zeros. Contudo, o valor 20 não é uma das opções válidas de tamanho máximo do nosso número para o BB (10, 17, 7, 5 e 11); por isso, é feita a remoção dos zeros a esquerda. ACBrBoletoW_PenseBank_API.pas: Alterado para configurar Timeout da requisição. Removido campos que não existem em requisições Pense Bank. Corrigido envio da data da multa. Implementadas novas URLs: Rota de consulta detalhada por IdExterno. Rotas de Negativação. ACBrBoletoRet_PenseBank_API.pas: Ajustados e adicionados novos tratamentos para retornos de erros. Incluído retorno de consulta detalhada. Alterações na impressão padrão e carnê (implementado na revisão - 36438) Alterada a fonte das instruções da impressão carnê para ficar igual à fonte das instruções da impressão padrão. Impressão boleto padrão: Impressão Carnê (antes): Impressão Carnê (depois): Na impressão padrão, nos campos do Pagador e do Beneficiário Final: Alinhados os campos nome e endereço. Adicionado ":" a frente da palavra "Pagador". Padronizado o tamanho das fontes (alguns campos tinham fontes maiores que os outros). Antes: Depois: Também na impressão padrão, alinhado o label "Valor" com os demais da mesma linha. Antes: Depois: Na impressão carnê, nos campos do Pagador e do Beneficiário Final: Alinhados os campos nome e endereço. Adicionado ":" a frente da palavra "Pagador". Padronizado o tamanho das fontes (alguns campos tinham fontes maiores que os outros). Separado o label "Beneficiário Final" em dois, para simular quebra de linha. Antes: Depois: Também no carnê, removido um "x" que aparecia acima do QRCode (era um label separado que aparentemente não era usado). Antes: Depois: Um outro problema que identifiquei na impressão do carnê (e também em alguns campos da impressão padrão) é que em alguns campos o texto está “saindo fora” do espaço devido. Eu tentei inicialmente verificar se é possível configurar o componente para não crescer mais que o tamanho dele, mas não consegui. A propriedade AutoSize, que deveria servir justamente para isso, já estava desabilitada então isto nem deveria estar acontecendo. Dessa forma, a forma que encontrei para tratar esse problema foi implementar o evento OnBeforePrint dos campos com problema, e implementar para ser adicionado reticências (“…”) caso o texto exceda um tamanho específico. Antes (campos txtLocal e SwHouseCarne): Antes (apenas campo beneficiário): Depois: O campo beneficiário do boleto comum também tem o mesmo problema: Quanto a este problema, se vocês puderem analisar outra forma de corrigi-lo, pois talvez vocês conheçam uma correção mais simples para situação. 1
Consultores antonio.carlos Postado Segunda as 21:27 Consultores Postado Segunda as 21:27 Tópico movido para a área do ACBr Pro, para que o SLA de respostas seja considerado Criada uma #TK-6424 para analise.
Recommended Posts