| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
seymon Novato

Registrado: Domingo, 21 de Fevereiro de 2010 Mensagens: 71
|
Enviada: Qui Fev 25, 2010 1:19 am Assunto: Variável do delphi no FastReport |
|
|
Como faço para exibir uma variável declarada no delphi 7 no FastReport 4?
Alguém pode me ajudar? |
|
| Voltar ao Topo |
|
 |
seymon Novato

Registrado: Domingo, 21 de Fevereiro de 2010 Mensagens: 71
|
Enviada: Qui Fev 25, 2010 10:11 pm Assunto: |
|
|
| E aí pessoal, alguém pode me ajudar? Por favor. |
|
| Voltar ao Topo |
|
 |
joemil Moderador

Registrado: Quinta-Feira, 25 de Março de 2004 Mensagens: 9100 Localização: Sinop-MT
|
Enviada: Sex Fev 26, 2010 11:18 am Assunto: |
|
|
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 |
|
 |
seymon Novato

Registrado: Domingo, 21 de Fevereiro de 2010 Mensagens: 71
|
Enviada: Sex Fev 26, 2010 10:01 pm Assunto: |
|
|
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 |
|
 |
seymon Novato

Registrado: Domingo, 21 de Fevereiro de 2010 Mensagens: 71
|
Enviada: Sex Fev 26, 2010 10:27 pm Assunto: |
|
|
| E como eu coloco ele no relatório, quero colocá-lo no Memo2 do ReportTitle? |
|
| Voltar ao Topo |
|
 |
joemil Moderador

Registrado: Quinta-Feira, 25 de Março de 2004 Mensagens: 9100 Localização: Sinop-MT
|
Enviada: Seg Mar 01, 2010 10:46 am Assunto: |
|
|
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 |
|
 |
seymon Novato

Registrado: Domingo, 21 de Fevereiro de 2010 Mensagens: 71
|
Enviada: Ter Mar 02, 2010 2:01 am Assunto: |
|
|
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 |
|
 |
juniormiranda Experiente


Registrado: Segunda-Feira, 13 de Fevereiro de 2006 Mensagens: 413
|
Enviada: Ter Mar 02, 2010 9:52 am Assunto: |
|
|
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 |
|
 |
seymon Novato

Registrado: Domingo, 21 de Fevereiro de 2010 Mensagens: 71
|
Enviada: Ter Mar 02, 2010 5:11 pm Assunto: |
|
|
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 |
|
 |
Russão Aprendiz

Registrado: Quarta-Feira, 3 de Novembro de 2004 Mensagens: 211
|
Enviada: Ter Mar 02, 2010 10:20 pm Assunto: |
|
|
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 |
|
 |
seymon Novato

Registrado: Domingo, 21 de Fevereiro de 2010 Mensagens: 71
|
Enviada: Qua Mar 03, 2010 1:27 am Assunto: |
|
|
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 |
|
 |
informacaoweed Aprendiz


Registrado: Terça-Feira, 1 de Outubro de 2013 Mensagens: 268 Localização: Porto Alegre / RS
|
Enviada: Sex Set 18, 2015 10:34 am Assunto: |
|
|
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 |
|
 |
informacaoweed Aprendiz


Registrado: Terça-Feira, 1 de Outubro de 2013 Mensagens: 268 Localização: Porto Alegre / RS
|
Enviada: Sex Set 18, 2015 11:31 am Assunto: |
|
|
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 |
|
 |
|