Expressão no FastReport

Delphi

25/07/2014

Boa noite, pessoal!

Minha versão do FastReport(Embarcadero Edition) não permite usar a aba Events, como estou iniciando com o esse gerador de relatórios agora(antes usava o Quick) estou com dificuldades. Minha dúvida é esta:

Tenho um campo chamado TP_CX e outro VL_CX, e quero que se o campo TP_CX for igual a C, seja impresso o valor do campo VL_CX na coluna de Créditos, mas se o campo TP_CX for igual 'D', o valor do campo VL_CX seja impresso na coluna de Débitos.
Assim:[img]http://arquivo.devmedia.com.br/forum/imagem/251007-20140725-192820.png[/img]

O mais próximo que cheguei, foi usando expressões, mas ao invés de imprimir o valor do campo, está imprimindo o resultado da expresão (True ou False)
[img]http://arquivo.devmedia.com.br/forum/imagem/251007-20140725-193451.png[/img]

Estou usando a seguinte expressão:
[<frxDBDataset1."TP_CX">='C']


Poderiam me ajudar a montar essa expressão?
Obrigado
Rafael Mota

Rafael Mota

Curtidas 0

Melhor post

Eduardo Barros

Eduardo Barros

04/08/2017

É possível clicando duas vezes no usando a função IIF, onde ele faz o papel de se e senão como por exemplo
[IIF(<frxDBDataset1."NUM_EXEMPLAR">='','','Ex.'+<frxDBDataset1."NUM_EXEMPLAR">)]
se o campo num_exemplar for vazio ele coloca vazio se não ele coloca EX e o valor do campo data NUM_exemplar.
GOSTEI 1

Mais Respostas

Rafael Mota

Rafael Mota

25/07/2014

Boa noite, pessoal!

Minha versão do FastReport(Embarcadero Edition) não permite usar a aba Events, como estou iniciando com o esse gerador de relatórios agora(antes usava o Quick) estou com dificuldades. Minha dúvida é esta:

Tenho um campo chamado TP_CX e outro VL_CX, e quero que se o campo TP_CX for igual a C, seja impresso o valor do campo VL_CX na coluna de Créditos, mas se o campo TP_CX for igual 'D', o valor do campo VL_CX seja impresso na coluna de Débitos.
Assim:[img]http://arquivo.devmedia.com.br/forum/imagem/251007-20140725-192820.png[/img]

O mais próximo que cheguei, foi usando expressões, mas ao invés de imprimir o valor do campo, está imprimindo o resultado da expresão (True ou False)
[img]http://arquivo.devmedia.com.br/forum/imagem/251007-20140725-193451.png[/img]

Estou usando a seguinte expressão:
[<frxDBDataset1."TP_CX">='C']


Poderiam me ajudar a montar essa expressão?
Obrigado


Esclarecendo um pouco a pergunta. Na versão pro do Fast, tenho acesso a aba eventos e consigo digitar o seguinte código:
if (<frxDBDataset1."TIPO_CXA"> = 'C') then                                
  MemoCredito.Text := FormatFloat('#####0.00',<frxDBDataset1."VL_CX">)
else
  MemoDebito.Text := FormatFloat('#####0.00',<frxDBDataset1."VL_CX">);


Mas na versão Embarcadero Edition, a aba eventos não é liberada. É possível montar uma expressão para substituir o código acima?
Por enquanto, tive que criar no banco um campo VLCREDITO_CX e outro VLDEBITO_CX. Mas não acho viável.
Abaços
GOSTEI 0
POSTAR