sql >> Base de Datos >  >> RDS >> Oracle

Diseño de informe Birt en eclipse con filtro de subinforme

Una opción es usar un WITH cláusula para asignar sus parámetros a una tabla ficticia.

WITH tmp_parms AS (
    SELECT ? as fr_dt, ? as to_dt, ? as p_comp_code,
        ? as fr_cat, ? as to_cat, ? as p_sub_code
    FROM dual
)
SELECT C.COMP_CODE,C.MATCODE, ... etc
FROM tmp_parms tp,
        (
        SELECT A.COMP_CODE,A.MATCODE, ... etc

O si prefiere otra vista en línea:

SELECT C.COMP_CODE,C.MATCODE, ... etc
FROM (
    SELECT ? as fr_dt, ? as to_dt, ? as p_comp_code,
        ? as fr_cat, ? as to_cat, ? as p_sub_code
    FROM dual
) tp,
        (
        SELECT A.COMP_CODE,A.MATCODE, ... etc

Y luego reemplace todas las variables de vinculación existentes con referencias a la columna equivalente de la tabla de parámetros temporales, es decir, cambie esto:

                                b.grn_date<=:TO_DT)

a esto:

                                b.grn_date<=tp.to_dt)