ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Variável do delphi no FastReport

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
seymon
Novato
Novato


Registrado: Domingo, 21 de Fevereiro de 2010
Mensagens: 71

MensagemEnviada: Qui Fev 25, 2010 1:19 am    Assunto: Variável do delphi no FastReport Responder com Citação

Como faço para exibir uma variável declarada no delphi 7 no FastReport 4?
Alguém pode me ajudar?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
seymon
Novato
Novato


Registrado: Domingo, 21 de Fevereiro de 2010
Mensagens: 71

MensagemEnviada: Qui Fev 25, 2010 10:11 pm    Assunto: Responder com Citação

E aí pessoal, alguém pode me ajudar? Por favor.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
joemil
Moderador
Moderador


Registrado: Quinta-Feira, 25 de Março de 2004
Mensagens: 9100
Localização: Sinop-MT

MensagemEnviada: Sex Fev 26, 2010 11:18 am    Assunto: Responder com Citação

la no design do fastreport, crie uma variavel

(menu Relatorio / Variaveis)

no delphi:

frxReport1.Variables['nome_da_variavel'].Value := Conteudo;
_________________
<b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
Enviar imagens: http://tinypic.com/
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
seymon
Novato
Novato


Registrado: Domingo, 21 de Fevereiro de 2010
Mensagens: 71

MensagemEnviada: Sex Fev 26, 2010 10:01 pm    Assunto: Responder com Citação

no Fast eu crio a variável como se fosse no delphi, tipo eu clico em code e depois crio;

var

variavel : string;

é isso?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
seymon
Novato
Novato


Registrado: Domingo, 21 de Fevereiro de 2010
Mensagens: 71

MensagemEnviada: Sex Fev 26, 2010 10:27 pm    Assunto: Responder com Citação

E como eu coloco ele no relatório, quero colocá-lo no Memo2 do ReportTitle?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
joemil
Moderador
Moderador


Registrado: Quinta-Feira, 25 de Março de 2004
Mensagens: 9100
Localização: Sinop-MT

MensagemEnviada: Seg Mar 01, 2010 10:46 am    Assunto: Responder com Citação

no evento beforeprint da banda, coloque:

Memo2.Text := variavel;
_________________
<b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
Enviar imagens: http://tinypic.com/
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
seymon
Novato
Novato


Registrado: Domingo, 21 de Fevereiro de 2010
Mensagens: 71

MensagemEnviada: Ter Mar 02, 2010 2:01 am    Assunto: Responder com Citação

Fiz exatamente isso.
No delphi, no btn imprimir

DM.frxprod_adq.variables['Titulo'].value := label1.caption;
DM.frxprod_adq.ShowReport;

No Fast, no OnBeforePrint
var
Titulo : string;
procedure ReportTitle1OnBeforePrint(Sender: TfrxComponent);
begin
Memo2.text := Titulo;
end;

Ele compila mas quando clico noa botão imprimir da´o seguinte erro 'Invalid variant Operation' e aponta para a seguinte linha linha;
DM.frxprod_adq.variables['Titulo'].value := label1.caption;

O que faço agora?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
juniormiranda
Experiente
Experiente


Registrado: Segunda-Feira, 13 de Fevereiro de 2006
Mensagens: 413

MensagemEnviada: Ter Mar 02, 2010 9:52 am    Assunto: Responder com Citação

Façamos um teste...

1) No TFrxReport coloque um TFrxMemoView;
2) Dê um duplo clique neste Memo. Na janela que se abrirá, vá até a aba Text e coloque [Teste];
3) No TFrxReport, vá até o evento onGetValue e coloque:

Código:

//-setando a variável para impressão
  if VarName = 'Teste' then
    value := label1.caption;


Roda e dá um post.

[]'s
_________________
Júnior Miranda
Analista de Sistemas.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
seymon
Novato
Novato


Registrado: Domingo, 21 de Fevereiro de 2010
Mensagens: 71

MensagemEnviada: Ter Mar 02, 2010 5:11 pm    Assunto: Responder com Citação

No TFrxReport, eu não encontrei o evento onGetValue, nem no TFrxMemoView.

Os eventos que eu encontrei no TFrxReport foram:

OnReportPrint
OnRunDialogs
OnStartReport
OnStopReport
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Russão
Aprendiz
Aprendiz


Registrado: Quarta-Feira, 3 de Novembro de 2004
Mensagens: 211

MensagemEnviada: Ter Mar 02, 2010 10:20 pm    Assunto: Responder com Citação

Boa noite,

Não precisa de especificar .VALUE não. Ficaria assim:

FrxRelatorio.variables['Titulo'] := QuotedStr(Variavel do Delphi ou Edit);
FrxRelatorio.ShowReport;

Outra coisa,

Abra o Fast Report

Vai no Menu Report
Escolha Variables...
Assim que abrir a janela, clique no botão Category (Nova Categoria)
Vai ser criado um categoria nova. Renomeia como quiser.
Depois vc vai criar as variáveis. Clique no botão com a imagem ABC - Nova Variável.
De um nome para sua variável.

Feito isso, vc vai reparar que nas abas Datas/Variables/Functions quando vc clicar em Variables vai ter a categoria que vc criou e sua variável.
Arraste-a para o formulário e depois no delphi vc faz a referência a ela.

FrxReport.Variables[MinhaVariável] := QuotedStr(Edit.Text ou Variável Delphi);
FrxReport.ShowReport;

Vlw

Qualquer dúvida

meu msn: rubinho_anjos@Hotmail.com
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
seymon
Novato
Novato


Registrado: Domingo, 21 de Fevereiro de 2010
Mensagens: 71

MensagemEnviada: Qua Mar 03, 2010 1:27 am    Assunto: Responder com Citação

Deu certo, RESOLVIDO.

Obrigado Russão, PlenusJunior e joemil pela força, fiz assim no delphi:

DM.frxprod_adq.variables['Titulo1'] := QuotedStr(label1.caption);
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
informacaoweed
Aprendiz
Aprendiz


Registrado: Terça-Feira, 1 de Outubro de 2013
Mensagens: 268
Localização: Porto Alegre / RS

MensagemEnviada: Sex Set 18, 2015 10:34 am    Assunto: Responder com Citação

Oi galera to tendo problema com isso.

Fiz desse jeito mas olha só, não quero exibir esses campos nas páginas, eu quero variáveis para trabalhar internamente

Na verdade tenho clientes e fornecedores cadastrados na mesma tabela, sendo o valor de um campo que os diferencia os 2 tipos de registros.

Por isso uso o mesmo relatório.

Apenas quero adaptar as labels para exibir 'Cliente' ou 'Fornecedor'

Já tentei Pegar o campo através de
Código:
MemoNome := TfrxMemoView(frxReport1.FindObject('Memo_Nome'));

Mas não consegui, sempre vem nil.. Tentei pôr este código em tudo que é evento do Report e não consegui.

Então achei essa dica de usar variáveis internas e defini-las por report.variable

Criei as variaveis como dito. mas não quero exibi-las na impressão então deini elas como visible (notei que ao arrastar elas pro relatorio são criadas TfrxMemoView), tbm tentei arrastá-las para o código e são criadas ddeclarações de seus nomes entre <> mas dá erro de compilação ao menos que eu coloque-as entre um bengin end;

Mas de modo algum eu não consigo fazer o que preciso

como posso fazer isto funcionar?
_________________
Aguarde... nossa Evolução está sendo processada.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
informacaoweed
Aprendiz
Aprendiz


Registrado: Terça-Feira, 1 de Outubro de 2013
Mensagens: 268
Localização: Porto Alegre / RS

MensagemEnviada: Sex Set 18, 2015 11:31 am    Assunto: Responder com Citação

Fiz dessa forma:

Código:
procedure TFrRelClienteF.ReportBeforePrint(Sender: TfrxReportComponent);
begin
  inherited;
  if (Sender.Name = 'Memo_Nome') then
    (Sender as TfrxMemoView).Lines.Text := TipoCadastro;
end;


Resolveu
_________________
Aguarde... nossa Evolução está sendo processada.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB