Ir para conteúdo
  • Cadastre-se

dev botao

Boleto Personalizado Com Descrição De Serviços


Ver Solução Respondido por Patrick Alves,
  • Este tópico foi criado há 1258 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Bom dia!

 

Estou necessitando desenvolver um relatorio de boleto personalizado que lista os serviços que compõem o valor do boleto no recibo do sacado e logo abaixo a ficha de compensação. Qual seria a melhor forma de estar implentando isso, sabendo que teria que adicionar mais um DataSet com essas informações. Alguem já implementou algo parecido e poderia me passar alguma orientação?

 

Desde já agradeço.

 

post-11399-0-95644800-1395501137_thumb.j

Postado

Bom  dia , não se entendi muito bem .

 

Poderia colocar : ClientDataSet ( utilizar em Memoria ). se você abrir o fonte do AcbrNFs-e (quickReport) la tem uma ideia que funciona para este caso !!!

 

Este Layout já esta no padrão do Acbr ? eu também preciso de um modelo deste para fazer a cobrança dos meus cliente !!!

 

***pode me mandar fonte dele , posso te ajudar tambem

 

Obrigado.

  • 1 mês depois ...
  • Solution
Postado

Opa!

 

Walter, desculpa a demora em responder, acabei me ocupando com outros projetos, porém esta semana peguei pra resolver esta situação. Bom, o que fiz foi criar uma classe para lista de serviços e outra para os serviços e adicionei uma propriedade para lista de serviços na classe dos títulos. Como utilizo o FastReport, em ACBrBoletoFCFR adicionei mais um clientdataset para os serviços e relacionei ao clientdataset de títulos. Por fim adaptei o relatório no fastreport para ficar parecido como na figura do post anterior.

 

Qualquer coisa estamos ai!!

  • 3 semanas depois ...
  • 1 mês depois ...
Postado (editado)

Patrick preciso fazer algo parecido com isso, teria como me mandar o ACBRBoletoFCFR que você alterou somente para eu ver, já que utilizo QuickReport.

[email protected]

 

Desde já agradeço a atenção! 

Editado por itepi
  • 2 semanas depois ...
Postado

Bom dia!

 

Amigos uso o AcbrMonitor.exe e precisava desta função colocando as relações de serviços em cima  e no final da página o boleto a ser pago, assim  como o colega postou no inicio. Uso o monitor por que não tenho e não conheço o Delphi, como faço para configurar o monitor para gerar a fatura (já tentei a opção fatura) que parece que usa a opçao "padrão", tentei colocar nas observações do boleto só que cabem apenas seis linhas (onde vai escrito para dar desconto, cobrar juros, etc...) e não deu certo.

 

A versão que uso AcbrMonitor 0.9.14 - Acbr 0.9.0a

 

Grato.

  • 4 semanas depois ...
Postado

Boa tarde!

 

Me desculpem pela demora em responder. Já até tinha me esquecido deste tópico por já estar finalizado.

Bom, pra quem quiser a alteração que fiz vou deixar no anexo. Estes arquivos são um pouco antigos, então não estão com as ultimas correções no componente.

 

 

Existe a propriedade 'TextoLivre' que pode ser usada no nosso caso, evitando assim uma grande alteração no componente que é bem especifica. Minha sugestão no caso seria incluir nessa propriedade os registros de serviço. Algo como segue abaixo: 

Titulo.TextoLivre := 'Serviço 1' + '|' + FormatFloat('#,##0.00',ValorServico1)  + sLineBreak;
Titulo.TextoLivre := 'Serviço 2' + '|' + FormatFloat('#,##0.00',ValorServico2);
E no arquivo do boleto (No meu caso FastReport) adicionaria dois memos, um para descrição e outro para o valor. E no evento BeforePrint do MasterData codificaria para incluir os serviços nos memos. 

procedure MDOnBeforePrint(Sender: TfrxComponent);
var
  lista: TStringList;
  i: Integer;                           
begin
  mmoHistorico.Lines.Clear;
  mmoValor.Lines.Clear;      
  lista := TStringList.Create;
  try
    lista.Text := <Titulo."TextoLivre">;
    for i := 0 to lista.Count - 1 do
    begin                
      mmoHistorico.Lines.Add(Copy(lista.Strings[i],1,Pos('|',lista.Strings[i]) - 1));
      mmoValor.Lines.Add(Copy(lista.Strings[i],Pos('|',
        lista.Strings[i]) + 1,Length(lista.Strings[i])));               
    end;                      
  finally
    lista.Free;
    lista := nil;                                  
  end;            
end;

O lado bom de fazer assim é que vc pode atualizar o componente normalmente pelo svn pois modificamos somente o arquivo do relatório.

 

 

BoletoServicos.rar

  • 6 anos depois...
Postado
Em 26/08/2014 at 17:40, Patrick Alves disse:

Boa tarde!

 

Me desculpem pela demora em responder. Já até tinha me esquecido deste tópico por já estar finalizado.

Bom, pra quem quiser a alteração que fiz vou deixar no anexo. Estes arquivos são um pouco antigos, então não estão com as ultimas correções no componente.

 

 

Existe a propriedade 'TextoLivre' que pode ser usada no nosso caso, evitando assim uma grande alteração no componente que é bem especifica. Minha sugestão no caso seria incluir nessa propriedade os registros de serviço. Algo como segue abaixo: 


Titulo.TextoLivre := 'Serviço 1' + '|' + FormatFloat('#,##0.00',ValorServico1)  + sLineBreak;
Titulo.TextoLivre := 'Serviço 2' + '|' + FormatFloat('#,##0.00',ValorServico2);
E no arquivo do boleto (No meu caso FastReport) adicionaria dois memos, um para descrição e outro para o valor. E no evento BeforePrint do MasterData codificaria para incluir os serviços nos memos. 
 

procedure MDOnBeforePrint(Sender: TfrxComponent);
var
  lista: TStringList;
  i: Integer;                           
begin
  mmoHistorico.Lines.Clear;
  mmoValor.Lines.Clear;      
  lista := TStringList.Create;
  try
    lista.Text := <Titulo."TextoLivre">;
    for i := 0 to lista.Count - 1 do
    begin                
      mmoHistorico.Lines.Add(Copy(lista.Strings[i],1,Pos('|',lista.Strings[i]) - 1));
      mmoValor.Lines.Add(Copy(lista.Strings[i],Pos('|',
        lista.Strings[i]) + 1,Length(lista.Strings[i])));               
    end;                      
  finally
    lista.Free;
    lista := nil;                                  
  end;            
end;

O lado bom de fazer assim é que vc pode atualizar o componente normalmente pelo svn pois modificamos somente o arquivo do relatório.

 

 

BoletoServicos.rar

 

Em 26/08/2014 at 17:40, Patrick Alves disse:

Boa tarde!

 

Me desculpem pela demora em responder. Já até tinha me esquecido deste tópico por já estar finalizado.

Bom, pra quem quiser a alteração que fiz vou deixar no anexo. Estes arquivos são um pouco antigos, então não estão com as ultimas correções no componente.

 

 

Existe a propriedade 'TextoLivre' que pode ser usada no nosso caso, evitando assim uma grande alteração no componente que é bem especifica. Minha sugestão no caso seria incluir nessa propriedade os registros de serviço. Algo como segue abaixo: 


Titulo.TextoLivre := 'Serviço 1' + '|' + FormatFloat('#,##0.00',ValorServico1)  + sLineBreak;
Titulo.TextoLivre := 'Serviço 2' + '|' + FormatFloat('#,##0.00',ValorServico2);
E no arquivo do boleto (No meu caso FastReport) adicionaria dois memos, um para descrição e outro para o valor. E no evento BeforePrint do MasterData codificaria para incluir os serviços nos memos. 
 

procedure MDOnBeforePrint(Sender: TfrxComponent);
var
  lista: TStringList;
  i: Integer;                           
begin
  mmoHistorico.Lines.Clear;
  mmoValor.Lines.Clear;      
  lista := TStringList.Create;
  try
    lista.Text := <Titulo."TextoLivre">;
    for i := 0 to lista.Count - 1 do
    begin                
      mmoHistorico.Lines.Add(Copy(lista.Strings[i],1,Pos('|',lista.Strings[i]) - 1));
      mmoValor.Lines.Add(Copy(lista.Strings[i],Pos('|',
        lista.Strings[i]) + 1,Length(lista.Strings[i])));               
    end;                      
  finally
    lista.Free;
    lista := nil;                                  
  end;            
end;

O lado bom de fazer assim é que vc pode atualizar o componente normalmente pelo svn pois modificamos somente o arquivo do relatório.

 

 

BoletoServicos.rar

Boa tarde, sei que e antigo mas... como eu faria para acrescentar mais 2 linhas 

      mmoDemostrativo.Lines.add(Copy(lista.Strings[i],1,Pos('|',lista.Strings[i]) - 1));
      mmoQtde.Lines.add(Copy(lista.Strings[i],Pos('|',lista.Strings[i]) + 1,Length(lista.Strings[i])));

     mmoValorUn.Lines.add()
     mmoValoTotal.Lines.add()

  • Este tópico foi criado há 1258 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.