RLMemo Fortes Report.
Bom Dia, Não estou conseguindo usar o componente RLMemo do Fortes Report.
Tenho um campo na minha base do Tipo blob.
Mas no relatório não está quebrando a linha...
Tentei fazer desse modo
Mesmo assim não quebra a linha (Vai tudo para o lado).
Fico no Aguardo
Obrigado
Tenho um campo na minha base do Tipo blob.
Mas no relatório não está quebrando a linha...
Tentei fazer desse modo
mmObservacao.Lines.Text:= FieldByname(´OBSERVACAO´).AsString;
Mesmo assim não quebra a linha (Vai tudo para o lado).
Fico no Aguardo
Obrigado
Lynx
Curtidas 0
Respostas
Lynx
13/08/2005
sobe
GOSTEI 0
Lynx
13/08/2005
Tentei com Assign, tentei mudar várias propriedades, mas não vai!
vai tudo para o lado direito e não pula de linha...
:cry:
vai tudo para o lado direito e não pula de linha...
:cry:
GOSTEI 0
Sremulador
13/08/2005
bem amigo na versão 3.10e tinha uns bugs que inclusive foi eu quem informou ao grupo fortes quando o arquivo e carregado pelo rlmemo ele não consegue identificar a quebra de linha, para contornar esta situação você pode mudar para a versão 3.23 (mas que contem bugs ao imprimir para matricial) que vai corrigi caso contrário ao quebrar a linha de um espaço que resolve...
GOSTEI 0
Lynx
13/08/2005
mudei na própria base, só para fazer um teste...
Dei um espaço e não é que quebrou a linha .. :lol:
Não sei se estou enganado, mas acho que baixei a última versão...
Vou entrar no site e baixar novamente..
Muito Obrigado
Dei um espaço e não é que quebrou a linha .. :lol:
Não sei se estou enganado, mas acho que baixei a última versão...
Vou entrar no site e baixar novamente..
Muito Obrigado
GOSTEI 0
Lynx
13/08/2005
realmente é a ultima versao.
Eu adicionei uma impressora epson, na verdade nem impressora eu tenho aqui, só adicionei para fazer o relatório...
Agora, como posso contornar essa situação, de uma forma limpa...
Vou analizar aqui, todos os lugares que tem memo, e alterar no cadastro..
Eu adicionei uma impressora epson, na verdade nem impressora eu tenho aqui, só adicionei para fazer o relatório...
Agora, como posso contornar essa situação, de uma forma limpa...
Vou analizar aqui, todos os lugares que tem memo, e alterar no cadastro..
GOSTEI 0
Lynx
13/08/2005
é, complicou...
Realmente é um bug do fortes, não sei o que fazer...
Só vai funcionar com ´gambiarra´.
Realmente é um bug do fortes, não sei o que fazer...
Só vai funcionar com ´gambiarra´.
GOSTEI 0
Lynx
13/08/2005
Será que alguém poderia me dar uma opinião ?
Estou doido agora com esse erro no memo, do fortes report...
Não entendo um erro desses, como vou inserir espaço no memo do cadastro ?
Se o cara sair digitando sem bater enter, no relatorio vai estourar os caracteres para direita (Não vai quebrar).
Estou um bom tempo, nesse problema... Quase pensando em trocar para outra ferramenta :cry:
Já tentei de tudo, mas nada funciona...
Estou doido agora com esse erro no memo, do fortes report...
Não entendo um erro desses, como vou inserir espaço no memo do cadastro ?
Se o cara sair digitando sem bater enter, no relatorio vai estourar os caracteres para direita (Não vai quebrar).
Estou um bom tempo, nesse problema... Quase pensando em trocar para outra ferramenta :cry:
Já tentei de tudo, mas nada funciona...
GOSTEI 0
Cesarpir
13/08/2005
Amigo eu não sei direito o layout do seu relatório, mas eu utilizo fortes só que uso o rldbmemo, geralmente os relatórios que tive de fazer colocava uma band só para o rldbmemo e a propriedade autosize = true, e tb ele ocupa em termos de comprimento o mesmo da band, ou seja o mesmo width da band, ok !
Agora se ainda sim precisa usar o rlmemo teste assim:
rlMemo.Lines.Add(´aqui o texto´);
Cada add gera uma nova linha, mas lembre-se do autosize = true
Espero que te ajude
César
Agora se ainda sim precisa usar o rlmemo teste assim:
rlMemo.Lines.Add(´aqui o texto´);
Cada add gera uma nova linha, mas lembre-se do autosize = true
Espero que te ajude
César
GOSTEI 0
Lynx
13/08/2005
mas eu preciso passar o campo blob, da minha base...
Ou seja ele vai variar, 1 , 2 ou 5 linhas...
postei outro tópico mostrando passo a passo o que estou fazendo...
Obrigado
Ou seja ele vai variar, 1 , 2 ou 5 linhas...
postei outro tópico mostrando passo a passo o que estou fazendo...
Obrigado
GOSTEI 0
Sistemald
13/08/2005
só uma coisa, em que momento você carrega o texto no RLmemo.
Beforeprint, ou antes de chamar o preview?
Beforeprint, ou antes de chamar o preview?
GOSTEI 0
Cesarpir
13/08/2005
Eu carrego no before print...
César
César
GOSTEI 0
Sistemald
13/08/2005
Bem, pode ser isso, tente carrega-lo antes de chamar o preview, caso você não utilize o preview, ou seja faça impressão direta, carregue o arquivo antes da chamar o PRINT.
GOSTEI 0
Lynx
13/08/2005
já faço isso, todos os campos funcionam, ele carrega... Só estoura as linhas para direita..
Criei um tópico mostrando passo a passo abaixo...
Já estou doido com isso...
Criei um tópico mostrando passo a passo abaixo...
Já estou doido com isso...
GOSTEI 0
Cesarpir
13/08/2005
I bloquearam vc no outro tópico...
Bom seguindo o assunto :
lynx acabei de fazer um teste bem babaca aqui só para ver, bom vou explicar como fiz, se tiver falando besteira peço desculpa antecipadamente!
1) Criei um form com um memo para digitação e um botão para imprimir;
2) Criei um segundo form nele coloquei o o rlreport, uma band detail e um rlmemo;
3) Coloquei um datasource name = ´DS´ e um clientdataset name = ´CQ´, criei dois fields:
COD - ITENGER
DES - STRING - 40 E OK
Cliquei com o botão direito no clientedataset e createdatset;
Tabela na memória ok.
´Gambiarra para imprimir, pois não estava utilizando banco nenhum´
4) Voltei ao form e fiz assim o codigo do botão imprimir:
try
form2 := TForm2.Create(Self);
form2.CQ.Close;
form2.CQ.CreateDataset;
form2.CQ.Open;
form2.CQCod.asInteger := 1;
form2.CQDes.asString : =´TESTE´;
form2.CQ.Post;
form2.rlMemo1.lines.Add(memo1.Lines.text);
form2.rlreport1.previewModal;
finally
form2.free;
end;
================
Bom eu não envio direto para a impressora, será que é este o problema, espero que entenda o que eu disse acima, digitei textos enormes no memo sem pressionar enter em momento algum.
Não comentei acima mas fiz as ligações básicas como datasource do rlreport ligado ao DS, e assim vai, isso acredito que vc já sabe né!
Espero que ajude.
César
Bom seguindo o assunto :
lynx acabei de fazer um teste bem babaca aqui só para ver, bom vou explicar como fiz, se tiver falando besteira peço desculpa antecipadamente!
1) Criei um form com um memo para digitação e um botão para imprimir;
2) Criei um segundo form nele coloquei o o rlreport, uma band detail e um rlmemo;
3) Coloquei um datasource name = ´DS´ e um clientdataset name = ´CQ´, criei dois fields:
COD - ITENGER
DES - STRING - 40 E OK
Cliquei com o botão direito no clientedataset e createdatset;
Tabela na memória ok.
´Gambiarra para imprimir, pois não estava utilizando banco nenhum´
4) Voltei ao form e fiz assim o codigo do botão imprimir:
try
form2 := TForm2.Create(Self);
form2.CQ.Close;
form2.CQ.CreateDataset;
form2.CQ.Open;
form2.CQCod.asInteger := 1;
form2.CQDes.asString : =´TESTE´;
form2.CQ.Post;
form2.rlMemo1.lines.Add(memo1.Lines.text);
form2.rlreport1.previewModal;
finally
form2.free;
end;
================
Bom eu não envio direto para a impressora, será que é este o problema, espero que entenda o que eu disse acima, digitei textos enormes no memo sem pressionar enter em momento algum.
Não comentei acima mas fiz as ligações básicas como datasource do rlreport ligado ao DS, e assim vai, isso acredito que vc já sabe né!
Espero que ajude.
César
GOSTEI 0
Lynx
13/08/2005
Ola Obrigado por sua resposta, eu estou fazendo direto com uma só query...
fiz dessa maneira, tudo funciona só acontece isso com o memo
procedure TfrpPedido.rlPedidoBeforePrint(Sender: TObject;
var PrintIt: Boolean);
begin
with qryRelPedido do
begin
Close;
SQL.Clear;
SQL.Add(´select * from PEDIDOS where IDPEDIDO = :IDPEDIDO´);
ParamByName(´IDPEDIDO´).AsInteger:= frmCadPedidos.idpedido;
Open;
idformapagamento:= FieldByname(´IDFORMAPAGAMENTO´).AsInteger;
idcaminhao:= FieldByname(´IDCAMINHAO´).AsInteger;
idcliente:= FieldByname(´IDCLIENTE´).AsInteger;
{Data e Número do Pedido}
lblData.Caption:= ´Data: ´+FieldByname(´DATA´).AsString;
lblPedido.Caption:= ´Pedido Nº ´+FieldByname(´CODPEDIDO´).AsString;
{Observação,Previsão de Entrega,ICMS,IPI}
mmObservacao.Lines.Text:= FieldByname(´OBSERVACAO´).AsString;
Mais umas 30 linhas pra baixo....
A Observação é este campo acima;
fiz dessa maneira, tudo funciona só acontece isso com o memo
GOSTEI 0
Lynx
13/08/2005
o problema é pegar da base... (Campo Blob)...
Se eu pegar direto de um memo até pode ir...
Meu relatório tudo funciona perfeito, mostra os códigos dos produtos, nome tudo.
Só a observacao acontece isso.
Mas se eu pegar uma string ´AAAAAAAAAAAAAAAAAA´ e deixar assim ´AAAAAAAA AAAAAA´ (Com um espaço), a linha quebra.
Se eu pegar direto de um memo até pode ir...
Meu relatório tudo funciona perfeito, mostra os códigos dos produtos, nome tudo.
Só a observacao acontece isso.
Mas se eu pegar uma string ´AAAAAAAAAAAAAAAAAA´ e deixar assim ´AAAAAAAA AAAAAA´ (Com um espaço), a linha quebra.
GOSTEI 0
Lynx
13/08/2005
resolvido, precisa ter pelo menos um espaço, se digitar direto os caracteres 100 seguidos, da isso em qualquer relatorio.
GOSTEI 0