Variáveis de substituição em geradores de relatórios

Delphi

27/09/2006

Colegas


Uma vez eu vi um texto numa revista tipo assim:


Acordamos que a [pessoa.nome] portadora do [pessoa.cpf] doravante denominada tão somente de contratante .....

Me lembro vagamente que de alguma forma o conteúdo das tags era substituido de forma automática pelo conteúdo de campos do banco de dados.

Gostaria de saber se isto é possível mesmo, em qual gerador isto é possível? Se isto existe mesmo gostaria que me explicassem como se dá a atribuição ou substituição destas tags ou me passasem algum link onde eu possa ler sobre o assunto ou me indiquem alguma revista que trata do assunto.

Qualquer ajuda será bem vinda

Delmar


Delmar

Delmar

Curtidas 0

Respostas

Delmar

Delmar

27/09/2006

sobe


GOSTEI 0
Mahdak

Mahdak

27/09/2006

http://forum.clubedelphi.net/viewtopic.php?t=26984&highlight=word2k

http://forum.clubedelphi.net/viewtopic.php?t=80265&highlight=

Obs: eu crio meus relatorios em html utilizando tags html assim:

procedure TPrincipal.Button1Click(Sender: TObject);
var
  htmlfile: TextFile;
const
  wrap=#13+10; {estamos declarando esta constante com o valor da tecla enter ...}
begin

    AssignFile(HtmlFile, ExtractFilePath(Application.ExeName)+´relat\relatorio_´+FormatDateTime(´dd"_"mm"_"yyy´,Date)+´.htm´);
    Rewrite(HtmlFile);

    writeln(htmlfile, ´<html><head>´ + wrap + {estamos gerando o inicio do arquivo html}
        ´<title>SIGA X</title><base target="_self" /><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><link href="css/bdshome.css" type="text/css" rel="stylesheet" />´ + ´</title>´ +
        wrap + ´<style type="text/css">´+
        wrap + ´<!--´+
        wrap + ´body,td,th {´+
        wrap + ´font-family: arial;´+
        wrap + ´font-size: 12px;´+
        wrap + ´}´+
        wrap + ´a:link {´+
        wrap + ´text-decoration: none;´+
        wrap + ´}´+
        wrap + ´a:visited {´+
        wrap + ´text-decoration: none;´+
        wrap + ´}´+
        wrap + ´a:hover {´+
        wrap + ´text-decoration: underline;´+
        wrap + ´}´+
        wrap + ´a:active {´+
        wrap + ´text-decoration: none;´+
        wrap + ´}´+
        wrap + ´.style1 {´+
        wrap + ´font-size: x-small;´+
        wrap + ´color: #003366;´+
        wrap + ´font-weight: bold;´+
        wrap + ´-->´+
        wrap + ´</style>´+
    ´</head>´ + wrap + ´<body>´ +
    {Nesse ponto iremos gerar a tabela html}
    wrap + ´<table class="noBorders" cellpadding="0" cellspacing="0">´+
    wrap + ´<tr>´+
    wrap + ´<td colspan="4">´+
    wrap + ´<div class="toolBar style1" id="toolBar">Meu Sistema de Relatório </div>´+
    wrap + ´<span id="dateInfo" class="infoTextRight"></span></td>´+
    wrap + ´</tr>´+
    wrap + ´<tr>´+
    wrap + ´<td colspan="4" class="groupHeading">Agenda Completa </td>´+
    wrap + ´</tr>´+
    wrap + ´<tr>´+
    wrap + ´<td width="12¬" class="darkRow"><strong class="projectHintId">Data</strong></td>´+
    wrap + ´<td width="9¬" class="darkRow"><strong>Hora</strong></td>´+
    wrap + ´<td width="38¬" class="darkRow"><strong>Local</strong></td>´+
    wrap + ´<td width="41¬" class="darkRow"><strong>Assunto</strong></td>´+
    wrap + ´</tr>´+
    wrap + ´<tr>´+
    wrap + ´<td colspan="4">&nbsp;</td>´+
    wrap + ´</tr>´+
    wrap + ´<tr>´+ wrap);

    ClientDataSet1.Close;
    ClientDataSet1.CommandText := ´SELECT * FROM Agenda ORDER BY DATA´;
    ClientDataSet1.Open;

    ClientDataSet1.first;

    While not ClientDataSet1.Eof do
    begin
        writeln(htmlfile, ´<tr><td>´ + ClientDataSet1DATA.AsString + ´</td>´ + wrap);
        next;

        writeln(htmlfile, ´<td>´ + ClientDataSet1HORA.AsString + ´</td>´ + wrap);
        next;

        writeln(htmlfile, ´<td>´ + ClientDataSet1LOCAL.AsString + ´</td>´ + wrap);
        next;

        writeln(htmlfile, ´<td>´ + ClientDataSet1ASSUNTO.AsString + ´</td></tr>´ + wrap);
        next;

        ClientDataSet1.Next;
    end;

    writeln(htmlfile, ´</tr></table></body></html>´); {Finaliza o arquivo html}
    CloseFile(htmlfile);

    Relatorio.WebBrowser1.Navigate(ExtractFilePath(Application.ExeName)+´relat\relatorio_´+FormatDateTime(´dd"_"mm"_"yyy´,Date)+´.htm´);
    Relatorio.show;

end;



GOSTEI 0
Delmar

Delmar

27/09/2006

Eu já tinha encontrado estes tópicos.

Mas mesmo assim eu postei pq achei interessante na epóca que li o assunto que me refiro e estava pensando e tenho a vaga impressão que eu li isto numa revista do clubedelphi, que tem uma matéria de capa sobre rave reports e a capa é me parece ser roxa ou lilas.


Se alguém tiver esta revista favor dá uma olhada pra ver se estou correto ou minha memória ta maluquinha.


GOSTEI 0
Kaciorrm

Kaciorrm

27/09/2006

Sobe


GOSTEI 0
Delmar

Delmar

27/09/2006

sobe


GOSTEI 0
Titanius

Titanius

27/09/2006

[b:0079e5f51a]mahdak[/b:0079e5f51a].... só entrando no assunto um pouquinho..

Como vcê consegue controlar pra ir pra próxima página?

Pois preciso de um sistema, que eu monte meu relatório vindo de algumas tabelas, até aí tudo bem, porém.... tem alguns registros que deverá ficar sozinho em uma folha.... tens idéia de como faço isso?


Está tudo gravado na tabela, quais registros devem ficar numa folha só e etc... o que falta mesmo é montar o relatório...


[]s


GOSTEI 0
Delmar

Delmar

27/09/2006

sobe


GOSTEI 0
Delmar

Delmar

27/09/2006

Eu já tinha encontrado estes tópicos. Mas mesmo assim eu postei pq achei interessante na epóca que li o assunto que me refiro e estava pensando e tenho a vaga impressão que eu li isto numa revista do clubedelphi, que tem uma matéria de capa sobre rave reports e a capa é me parece ser roxa ou lilas. Se alguém tiver esta revista favor dá uma olhada pra ver se estou correto ou minha memória ta maluquinha.


Depois retorna aqui pra dizer se tem ou não tem um tópico que aborda sobre esse tema


GOSTEI 0
Delmar

Delmar

27/09/2006

sobe


GOSTEI 0
Delmar

Delmar

27/09/2006

SOBE.

Alguém viu/tem a citada revista?


GOSTEI 0
Sremulador

Sremulador

27/09/2006

amigo o fastreport faz isso sem grandes complicações e bem simples...


GOSTEI 0
Delmar

Delmar

27/09/2006

amigo o fastreport faz isso sem grandes complicações e bem simples...


Teria algum link no forum onde já foi tratado isto em fast report, ou se vc tiver algum exemplo pequeno de como fazer e desejar compartilhar pode mandar para delmar@deltacorp.com.br

Agradeço


GOSTEI 0
Delmar

Delmar

27/09/2006

sobe


GOSTEI 0
Delmar

Delmar

27/09/2006

subir


GOSTEI 0
Delmar

Delmar

27/09/2006

subir


GOSTEI 0
Mahdak

Mahdak

27/09/2006

[b:f40cafe1c1]mahdak[/b:f40cafe1c1].... só entrando no assunto um pouquinho.. Como vcê consegue controlar pra ir pra próxima página? Pois preciso de um sistema, que eu monte meu relatório vindo de algumas tabelas, até aí tudo bem, porém.... tem alguns registros que deverá ficar sozinho em uma folha.... tens idéia de como faço isso? Está tudo gravado na tabela, quais registros devem ficar numa folha só e etc... o que falta mesmo é montar o relatório... []s


olá titanius, desculpe reviver esse tópico, mas só fui descobrir que voce tinha feito uma pergunta a mim por causa de outro tópico que citou esse....

na verdade, meus relatórios nao tem paginação, é um arquivo corrido mesmo, porem essa é uma idéia relevante a se discutir, bom, nao sei se teria como, mas se desse de incorporar a linguagem asp dentro do do relató daria de criar uma paginação , porem creio que isso não seja possivel fazer, é um tema a ser estudado...

se voce ja conseguiu fazer isso, ou mesmo alguem tenha conseguido, que poste aqui a solução para os amigos. do contrário assim que eu tiver um tempinho vou dar uma boa pesquisada para tentar achar uma solução para isso....

um forte abraço!


GOSTEI 0
Delmar

Delmar

27/09/2006

subir


GOSTEI 0
Delmar

Delmar

27/09/2006

Tenho a impresso de que a implementação que eu vi era feita em Rave Reports

Temos uma resposta, que o fast report faz isso sem complicações

Mais algum gerador faz isto?


GOSTEI 0
POSTAR