Relatório acessando mais de uma tabela

4 respostas
C

Olá pessoal!

Tenho novas dúvidas em relação a relatórios.
:lol:

Então…

Eu tenho um relátorio que chama Fluxo de Caixa que ele pega valores da tabela Contas a Pagar e Contas a Receber…

tb_cap, como os atributos:

docPag: nome do documento
valor: valor do documento

tb_car, como os atributos:

docRec: nome do documento
valor: valor do documento

E quero que meu relátorio fique da seguinte forma:

Nome do documento || Débito || Crédito
Contas a Pagar _____ 100,00
Contas a Receber _____________ 200,00
Contas a Receber _____________ 200,00

________________Saldo Total: R$ 300,00

Como faço isso no IReport se no Nome do documento tenho docPag como DocRec???

4 Respostas

P

Olá,

Uma das maneiras é essa:

Altere sua string de seleção para algo parecido com isso:

SELECT 0 as CP, Valor_Conta_Receber AS CR FROM tabela_conta_receber
UNION
SELECT Valor_Conta_Pagar AS CP, 0 AS CR FROM tabela_conta_pagar

Depois utilize a funcionalidade do campo “Print When Expression” nas propriedades do componente, inserindo algo do tipo:

$F{CP} > 0 para exibir em uma coluna OU $F{CR} > 0 para exibir na outra coluna

Falow

C

Muito obrigada!

C

Eu testei o Print When Expression e ele continua imprimindo sempre 0.0 ao invés de ficar em branco…

($F{CP} == new Double(0) ? new Boolean(false) : new Boolean(true))
($F{CR} == new Double(0) ? new Boolean(false) : new Boolean(true))
P

Olá,

Vc está instanciando outro Double nesse código, e a comparação entre as variáveis de referência sempre será diferente.

Aqui utilizo a versão 0.4 do iReport e não preciso utilizar Wrappers, faço sempre assim:

$F{CP} > 0
Criado 25 de agosto de 2006
Ultima resposta 26 de ago. de 2006
Respostas 4
Participantes 2