Ir para conteúdo
  • Cadastre-se

dev botao

Campo Valor Desconto Na Remessa Bradesco


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

Recommended Posts

Senhores essa linha do programa da unit do bradesco estava dando um problema pra mim já que ele manda o desconto em 2 campos que não tem o mesmo sentido.

O primeiro campo valor desconto da posição 83 é pra antecipação ou seja, se eu der 1% de desconto em um boleto de 100 reais, e eu pago com 2 dias de antecipação vai me cobrar apenas 98 reais.

O outro campo desconto não tem o mesmo sentido é ele vai sempre cobrar aquele valor independente dos dias.

Isso da problema pra mim imagina essa situação eu pago com 2 dias de antecedência, vai me dar um valor de 97 reais o que é errado no meu contexto.

 

No caso teria que criar outra variavel pra desconto ou seja algo mais complexo, ou um tipo de desconto e ele se virar ali.

 

Alguem ja passou por isso ou teria que corrigir mesmo no componente?

 

 

 

 

 wLinha:= '1'                                                     +  // ID Registro
                  StringOfChar( '0', 19)                                  +  // Dados p/ Débito Automático
                  '0'+ aCarteira                                          +
                  aAgencia                                                +
                  aConta                                                  +
                  Cedente.ContaDigito                                     +
                  padL( SeuNumero,25,' ') +'000'                          +  // Numero de Controle do Participante
                  IfThen( PercentualMulta > 0, '2', '0')                  +  // Indica se exite Multa ou não
                  IntToStrZero( round( PercentualMulta * 100 ), 4)        +  // Percentual de Multa formatado com 2 casas decimais
                  NossoNumero + DigitoNossoNumero                         +
                  IntToStrZero( round( ValorDesconto * 100), 10)          +
                  TipoBoleto + 'N' + Space(10)                            +  // Tipo Boleto(Quem emite) + 'N'= Nao registrar p/ Débito automático
                  ' ' + '0' + '  ' + Ocorrencia                           +  // Ind. Rateio de Credito + Aviso de Debito Aut. + Ocorrência
                  padL( NumeroDocumento,  10)                             +
                  FormatDateTime( 'ddmmyy', Vencimento)                   +
                  IntToStrZero( Round( ValorDocumento * 100 ), 13)        +
                  StringOfChar('0',8) + padl(aEspecie,2) + 'N'            +  // Zeros + Especie do documento + Idntificação(valor fixo N)
                  FormatDateTime( 'ddmmyy', DataDocumento )               +  // Data de Emissão
                  Protesto                                                +
                  IntToStrZero( round(ValorMoraJuros * 100 ), 13)         +
                  IfThen(DataDesconto < EncodeDate(2000,01,01),'000000',
                         FormatDateTime( 'ddmmyy', DataDesconto))         +
                  IntToStrZero( round( 0 * 100 ), 13)         +
                  IntToStrZero( round( ValorIOF * 100 ), 13)              +
                  IntToStrZero( round( ValorAbatimento * 100 ), 13)       +
                  TipoSacado + padR(OnlyNumber(Sacado.CNPJCPF),14,'0')    +
                  padL( Sacado.NomeSacado, 40, ' ')                       +
                  padL( Sacado.Logradouro + Sacado.Numero                 +
                           Sacado.Bairro + Sacado.Cidade + Sacado.UF, 40) +
                  space(12) + padL( Sacado.CEP, 8 )                       +
                  padl( MensagemCedente, 60 );
 

 

Link para o comentário
Compartilhar em outros sites

  • Administradores

Bom dia.

 

Correção disponível no svn.

 

Att.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

Obrigado amigo, mais uma coisa que tiver que mecher na minha unit do bradesco aqui é a posição da conta no arquivo

está

 

 rAgencia := trim(Copy(ARetorno[1], 26, ACBrBanco.TamanhoAgencia));

 rConta   := trim(Copy(ARetorno[1], 31, ACBrBanco.TamanhoConta));

 

Mais a posição aqui está 30 eu mudei aqui funcionou perfeitamente.

 

Não sei se a questão é que está sendo tratado o numero da conta no meu caso tem 5 digitos

   

O arquivo veio assim onde está AAAA é a minha agencia e CCCCC é o numero da minha conta.

 

 

 

1000000000000000000000090AAAA00CCCCC0

 

  

 

 

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
  • Administradores

Bom dia.

 

Realmente a rotina estava errada, correção disponível no svn.

 

Att.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

  • 2 meses depois ...

 rConta   := trim(Copy(ARetorno[1], 31, ACBrBanco.TamanhoConta));

 

Beleza e agora para de funcionar todos que usavam posicao 31 porque mudaram para 30.

 

if (not LeCedenteRetorno) and ((rAgencia <> OnlyNumber(Cedente.Agencia)) or

         (rConta <> RightStr(OnlyNumber(Cedente.Conta),Length(rConta)))) then
         raise Exception.Create(ACBrStr('Agencia\Conta do arquivo inválido')); 
 
Antes passava com o digito a  aconta e agora é sem, po fica dificil acompanhar!
Link para o comentário
Compartilhar em outros sites

  • Administradores

Bom dia Kiko.

 

Como você poderá observar no manual do banco, realmente estava incorreto a leitura começar no campo 31.

 

021 a 037 - Identificação da Empresa Cedente no Banco. Deverá ser preenchido (esquerda para direita), da seguinte maneira:
 
21 a 21 - Zero
22 a 24 - código da carteira
25 a 29 - código da Agência Cedente, sem o dígito
30 a 36 - Conta Corrente
37 a 37 - dígito da Conta
 
Att.
Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

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

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.