QReport...

Delphi

08/04/2003

Boa tarde, preciso muito da ajuda de vocês. Se alguém puder me ajduar?!

Tenho uma tabela no meu banco chamada Carta, onde existe os seguintes campos (TIPOCARTA, REFERENCIA, TEXTO). No campo TEXTO, o usuário irá criar o texto desejado para a carta, e no meio desse texto, terá campos de outras tabelas, por exemplo, NOMECLIENTE e NROPROCESSO da tb_Cliente.
Como eu tenho que colocar essa referência, pra quando eu for imprimir um relatório, onde estiver NOMECLIENTE, apareça o Nome do Cliente da minha query?

Por exemplo:

´Declaro para todos os fins que <NOMECLIENTE>, <NROPORCESSO>, está apto a desenvolver quaisquer atividades.´

Onde eu seleciono o Tipo da Carta que desejo, passando os clientes desejado (<NOMECLIENTE> e <NROPROCESSO>).

Alguém pode me ajudar?


Jussara

Jussara

Curtidas 0

Respostas

Anonymous

Anonymous

08/04/2003

Sugestão:

Use um Memo em um form tipo dialog ou use uma stringList com o texto padrão que vc quer imprimir. Então, use a função abaixo, de busca e substituição de string em campo memo, fazendo as alterações cabíveis.

No quickReport, use um componente QRMemo ou QRRichEdit. Antes de Imprimir/Visualizar o relatório, acrescente o conteudo do memo do form para o memo do QuickReport.

//FUNÇÃO DE BUSCA E SUBSTITUIÇÃO
[b:45e3ae5736]
094 - Procura e substituição de string num campo memo
Procedure TForm1.Button1Click (Sender: TObject);
Begin
FindReplace(Edit1.Text,Edit2.Text, Memo1);
end;

Procedure FindReplace (const Enc, subs: String; Var Texto: TMemo);
Var
i, Posicao: Integer;
Linha: string;
Begin
For i:= 0 to Texto.Lines.count - 1 do
begin
Linha := Texto. Lines[i];
Repeat
Posicao:=Pos(Enc,Linha);
If Posicao > 0 then
Begin
Delete(Linha,Posicao,Length(Enc));
Insert(Subs,Linha,Posicao);
Texto.Lines[i]:=Linha;
end;
until Posicao = 0;
end;
end;
[/b:45e3ae5736]


GOSTEI 0
Jussara

Jussara

08/04/2003

Não funcionou!!! :(

Já estou entrando em desespero!!!


GOSTEI 0
POSTAR