Estou com problema na subtração de dois valores que são retornados dos subrelatório para o relatório mestre no iReports.
A subtração está me retornando valor NULL.
Alguém já fez subtração do tipo ou poderia me ajudar?
Melhor utilizar BigDecimal ou Double?
Coloca um controle pra caso for null retornar 0
Mas você tem um sub relatório só pra fazer a subtração?
(lembrando que 5 - null = null)[/quote]
Como faço esse controle?
Então, meu relatório mestre possui dois subrelatórios, cada subrelatório retorna um total para o mestre. Esse retorno está acontecendo corretamente.
Dentro do mestre tenho uma variavel que faz o seguinte:
Mesmo invertendo a ordem das variaveis ainda continua null.
SELECT
descricao_cliente as Descricao,
nascimento_cliente as Idade,
(
SELECT sum(valor_compras)
FROM compras
WHERE compras.cod_cliente = clientes.cod_cliente
) as Total_Compras
FROM clientes
WHERE nascimento_cliente > 19920211;
Mas pra te ajudar melhor você precisa me passar quais são as contas e baseadas em que elas são feitas…
Resumindo, me explica melhor o que o teu relatório vai fazer
SELECT
descricao_cliente as Descricao,
nascimento_cliente as Idade,
(
SELECT sum(valor_compras)
FROM compras
WHERE compras.cod_cliente = clientes.cod_cliente
) as Total_Compras
FROM clientes
WHERE nascimento_cliente > 19920211;
Mas pra te ajudar melhor você precisa me passar quais são as contas e baseadas em que elas são feitas…
Resumindo, me explica melhor o que o teu relatório vai fazer[/quote]
Uhm, intendi, mas vou te explicar mesmo assim como tudo funciona.
Tenho um relatório mestre onde exibo informações a respeito de um contrato com o cliente, o usuário fornece o número do contrato e as informações são acessadas, passo portanto esse parâmetros para os subrelatórios.
Dentro desse relatório mestre tenho 2 subrelatórios, um de faturamento e um de custos. Tenho uma variavel em cada um deles que efetua um total (total de custos, total de faturamento), esse total é exibido no fim de cada subrelatório.
Após calculados esses totais eles retornam cada um em uma variavel no relatório mestre, uma terceira variavel é utilizada para armazenar o resultado da subtração e é ai que está o problema está variavel está ficando null.
Entendi, tem certeza que o retorno ta vindo corretamente?
Tente também dar uma olhada nos Reset/Increment type, lembre-se que você só pode usar a variável (a terceira) depois que o sub report retornar o valor hahaha