Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Bom dia, identifiquei hoje que a impressão do FastReport utilizando os arquivos BoletoFr.fr3 no campo de agencia/codigo do beneficiário ta saindo duplicado os dados da agencia.

Fiz a atualização no svn dos arquivos fr3 mas não houve alteração. Procurei algum lugar no meu software que estivesse incluindo o agencia mais só há ai nessa função.

Utilizo a seguinte função para configurar os dados:

 

procedure TfrmContasReceber.configuracedente;
var cSqlBancos:string;
begin

     cSqlBancos:='SELECT * FROM banco WHERE ban_padrao = TRUE';
     sqlBancos.Close;
     sqlBancos.SQL.Clear;
     sqlBancos.SQL.Add(cSqlBancos);
     sqlBancos.Open;

     if sqlBancos.recordcount>1 then
     begin
       showmessage('Verifique as configurações de banco pos existe mais de um banco marcado como padrão');
       exit;
     end;

     if not ValidaCPF(Trim(sqlBancosBAN_CPF_CNPJ_CEDENTE.AsString)) then begin
         ACBrBoleto1.Cedente.TipoInscricao:=pJuridica;
     end else
         ACBrBoleto1.Cedente.TipoInscricao:=pFisica;


    if (sqlBancosBAN_LAYOUTIMPRESS.AsInteger=0) then begin
      ACBrBoletoFR1.LayOut:=lCarne;
      ACBrBoletoFR1.FastReportFile := ExtractFilePath(Application.ExeName)+'\..\Reports\BoletoCarne.fr3';
    end;
    if (sqlBancosBAN_LAYOUTIMPRESS.AsInteger=1) then begin
      ACBrBoletoFR1.LayOut:=lFatura;
      ACBrBoletoFR1.FastReportFile := ExtractFilePath(Application.ExeName)+'\..\Reports\BoletoFatura.fr3';
    end;
    if (sqlBancosBAN_LAYOUTIMPRESS.AsInteger=2) then begin
      ACBrBoletoFR1.LayOut:=lPadrao;
      ACBrBoletoFR1.FastReportFile := ExtractFilePath(Application.ExeName)+'\..\Reports\BoletoFr.fr3';
    end;
    if (sqlBancosBAN_LAYOUTIMPRESS.AsInteger=3) then begin
      ACBrBoletoFR1.LayOut:=lPadraoEntrega;
      ACBrBoletoFR1.FastReportFile := ExtractFilePath(Application.ExeName)+'\..\Reports\BoletoFr.fr3';
    end;


     if sqlBancosBAN_NR.AsInteger=341 then
     ACBrBoleto1.Banco.TipoCobranca:=cobItau;
     if sqlBancosBAN_NR.AsInteger=104 then
     ACBrBoleto1.Banco.TipoCobranca:=cobCaixaEconomica;
     if sqlBancosBAN_NR.AsInteger=237 then
     ACBrBoleto1.Banco.TipoCobranca:=cobBradesco;
     if sqlBancosBAN_NR.AsInteger=001 then
     ACBrBoleto1.Banco.TipoCobranca:=cobBancoDoBrasil;


     ACBrBoleto1.Cedente.Nome:=sqlBancosBAN_NOME_CEDENTE.AsString;
     ACBrBoleto1.Cedente.TipoCarteira:=tctSimples;
     ACBrBoleto1.Cedente.CodigoCedente:=sqlBancosBAN_CODIGO_CEDENTE.AsString;
     ACBrBoleto1.Cedente.Agencia:=sqlBancosBAN_AGENCIA.AsString;
     ACBrBoleto1.Cedente.AgenciaDigito:=sqlBancosBAN_AGENCIA_DIGITO.AsString;
     ACBrBoleto1.Cedente.Conta:=sqlBancosBAN_CONTA.AsString;
     ACBrBoleto1.Cedente.ContaDigito:=sqlBancosBAN_DIGITO_CONTA.AsString;
     ACBrBoleto1.Cedente.CNPJCPF:=Trim(sqlBancosBAN_CPF_CNPJ_CEDENTE.AsString);
     ACBrBoleto1.Cedente.Logradouro:= dm.sqlEmpresaEMP_ENDERECO.AsString;
     ACBrBoleto1.Cedente.NumeroRes:= dm.sqlEmpresaEMP_NUMERO.AsString;
     ACBrBoleto1.Cedente.Complemento:= dm.sqlEmpresaEMP_COMPLEMENTO.AsString;
     ACBrBoleto1.Cedente.Bairro:= dm.sqlEmpresaEMP_BAIRRO.AsString;
     ACBrBoleto1.Cedente.Cidade:= dm.sqlEmpresaEMP_CIDADE.AsString;

codigo duplicado.png

  • Curtir 1
Postado (editado)

ACBrBoletoFCFR -> function PrepareBoletos

Está da seguinte forma no svn:

...
      with DmBoleto.cdsCedente do
      begin
         Append;
         FieldByName('Nome').AsString              := Cedente.Nome;
         FieldByName('CodigoCedente').AsString     := Banco.MontarCampoCodigoCedente(Titulo); //Cedente.CodigoCedente;
         FieldByName('CodigoTransmissao').AsString := Cedente.CodigoTransmissao;
         FieldByName('Agencia').AsString           := Cedente.Agencia;
         FieldByName('AgenciaDigito').AsString     := Cedente.AgenciaDigito;

....

 

Pelo que vi, essa alteração é recente (29/02), porém, no layout de impressão do boleto, o campo Agência/Código Beneficiário é preenchido com a Agencia e o Código do Cedente.

Em alguns bancos, na função MontarCampoCodigoCedente o campo Agência é informado, então o mesmo acaba sendo repetido no boleto impresso.

Utilizei da forma antiga (FieldByName('CodigoCedente').AsString     := Cedente.CodigoCedente;) e o campo foi impresso corretamente.

 

Editado por SaraHidalgo
  • Administradores
Postado

Boa noite.

Em qual banco você estava tendo este problema?

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 !!

  • Administradores
Postado

Bom dia.

Seus fontes estão atualizados? Observe que a função MontarCodigoCedente() atual não montaria este campo da forma descrita por você.

Result := ACBrTitulo.ACBrBoleto.Cedente.Agencia  +'/'+
              ACBrTitulo.ACBrBoleto.Cedente.Conta    +'-'+
              ACBrTitulo.ACBrBoleto.Cedente.ContaDigito;     

 

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 !!

Postado
Em 09/05/2016 at 07:28, Juliana Tamizou disse:

Bom dia.

Seus fontes estão atualizados? Observe que a função MontarCodigoCedente() atual não montaria este campo da forma descrita por você.

Result := ACBrTitulo.ACBrBoleto.Cedente.Agencia  +'/'+
              ACBrTitulo.ACBrBoleto.Cedente.Conta    +'-'+
              ACBrTitulo.ACBrBoleto.Cedente.ContaDigito;     

 

Att.

Atualizei o componente a dois dias, removi tudo e reinstalei tudo.

  • Administradores
Postado

Bom dia.

11 horas atrás, FabioMachado disse:

Atualizei o componente a dois dias, removi tudo e reinstalei tudo.

E o código está da forma que citei em meu comentário anterior? Seu problema foi resolvido?

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 !!

  • 3 semanas depois ...
Postado
Em 13/05/2016 at 07:22, Juliana Tamizou disse:

Bom dia.

E o código está da forma que citei em meu comentário anterior? Seu problema foi resolvido?

Att.

Então, eu fiz o mesmo que a SaraHidalgo e ta funcionando.

  • Administradores
Postado

Bom dia.

Em 28/05/2016 at 19:10, FabioMachado disse:

Então, eu fiz o mesmo que a SaraHidalgo e ta funcionando.

Conforme citei em meu comentário anterior, este problema não deve ocorrer em fontes atualizados.

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 !!

Postado

Boa tarde!

 

Estou com os fontes atualizados, onde o código do cedente é gerado pela função MontarCampoCodigoCedente.

Para resolver este problema, alterei o report de impressão do boleto (já utilizo um diferente do "oficial" disponibilizado no SVN) onde, antigamente, o campo do código do beneficiário era composto pela agência + código do cedente e, após alteração para utilização da função MontarCampoCodigoCedente a agência ficou "duplicada". Removi então o campo agência do report, mantendo somente o campo código do cedente.

 

Espero ter ajudado.

  • 2 meses depois ...
  • Este tópico foi criado há 3038 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.