Boa tarde, sou novo na area do ireport e tenho uma duvida, fiz um relatorio e se eu coloco somente a data sem a hr da um resultado e se eu colocar a data e hr da o valor correto, tem algum modo de fazer sem usar a hr no irepot, somente a data no paramentro passado e de o mesmo valor?
Coloque seu código aqui, para que possamos ver a forma que esta enviando data.
Os campos de data pra mim sempre foram bastante custosos mesmo, tem varias formas de trabalhar com data.
SELECT MBC.CODCTABCOINT As “Cod. Conta_1”,
TO_CHAR(MBC.DTLANC,‘DD/MM/YYYY’) As “Dt Lancto”,
MBC.NUMDOC As “Num. Docto_1”,
MBC.HISTORICO As “Historico_1”,
DECODE(MBC.RECDESP, -1, VLRLANC, 0) As “Debito_1”,
DECODE(MBC.RECDESP, 1, VLRLANC, 0) As “Credito_1”,
MBC.CODCTABCOINT AS CTASALDOI,MBC.DTLANC-1 As “Saldo Real”,
MBC.CODCTABCOINT AS CTASALDO, MBC.DTLANC-1 AS DTSALDO, (MBC.VLRLANC * MBC.RECDESP) As “Saldo Real Acum.”,
CTA.DESCRICAO As “Descricao_1”, MBC.NUBCO As "Numero_1"
FROM TGFMBC MBC , TSICTA CTA
WHERE MBC.CODCTABCOINT = CTA.CODCTABCOINT AND (( MBC.CODCTABCOINT IN (19,24)) AND ( MBC.DTLANC >= $P{P0} ) AND ( MBC.DTLANC <= $P{P1}))
Na pesquisa direto no oracle se eu coloco
TO_CHAR(MBC.DTLANC,‘DD/MM/YYYY’) =P{P0} and TO_CHAR(MBC.DTLANC,‘DD/MM/YYYY’)<=P{P1}
funciona normalmente mas se faço isso no iReport não retorna nenhum dado.
Tenta assim:
between to_date($P{dataInicial},'DD/MM/YYYY') and to_date($P{dataFinal},'DD/MM/YYYY')
Bom dia amigo.
SELECT
MBC.CODCTABCOINT As “Cod. Conta_1”,
TO_CHAR(MBC.DTLANC,‘DD/MM/YYYY’) As “Dt Lancto”,
MBC.NUMDOC As “Num. Docto_1”,
MBC.HISTORICO As “Historico_1”,
DECODE(MBC.RECDESP, -1, VLRLANC, 0) As “Debito_1”,
DECODE(MBC.RECDESP, 1, VLRLANC, 0) As “Credito_1”,
MBC.CODCTABCOINT AS CTASALDOI,
MBC.DTLANC-1 As “Saldo Real”,
MBC.CODCTABCOINT AS CTASALDO,
MBC.DTLANC-1 AS DTSALDO,
(MBC.VLRLANC * MBC.RECDESP) As “Saldo Real Acum.”,
CTA.DESCRICAO As “Descricao_1”,
MBC.NUBCO As "Numero_1"
FROM
TGFMBC MBC,
TSICTA CTA
WHERE
MBC.CODCTABCOINT = CTA.CODCTABCOINT AND
(( MBC.CODCTABCOINT IN (19,24)) AND
CAST(TO_CHAR(MBC.DTLANC, 'DD/MM/YYYY') AS DATE) BETWEEN CAST($P{P0} AS DATE) AND CAST($P{P1} AS DATE)
Tenta assim e depois conta pra gente.
Deu certinho desse jeito, muito obrigado.