Estimados tengo una duda. Quiero hacer una query con Placeholders para reportes pero me sale este problema “‘Alertas recibidas’ (OAIB)” . Esta es la query en la que me sale el problema, cabe resaltar que cuando le quito los “[%]” si funciona correctamente.
WITH QUERY AS (
WITH USUARIO AS (
SELECT
UR."USER_CODE",
UR."U_NAME",
UR."USERID"
FROM
B1H_ICAFALFLESAN."OUSR" UR
)
SELECT
T1."WddCode" AS "Numero_Solicitud",
T2."USER_CODE" AS "Solicitante_Codigo",
T2."U_NAME" AS "Solicitante_Nombre",
CASE
WHEN T1."ProcesStat" = 'C' THEN 'CANCELADO'
WHEN T1."ProcesStat" = 'N' THEN 'RECHAZADO'
WHEN T1."ProcesStat" = 'P' THEN 'CREADO'
WHEN T1."ProcesStat" = 'W' THEN 'PENDIENTE'
WHEN T1."ProcesStat" = 'Y' THEN 'AUTORIZADO'
ELSE 'idk'
END AS "Estado_Borrador_Inicial",
T4."DocEntry" AS "#Codigo_Borrador",
T1."CreateDate" AS "Fecha_Creacion",
T4."DocNum" AS "#Numero_Borrador",
CASE
T1."ObjType"
WHEN '13' THEN 'Factura de Venta'
WHEN '14' THEN 'Nota de Crédito de Venta'
WHEN '15' THEN 'Entrega'
WHEN '17' THEN 'Orden de venta'
WHEN '18' THEN 'Factura de A/P'
WHEN '19' THEN 'Nota de crédito de cuentas por pagar'
WHEN '20' THEN 'Entrada de Mercancía'
WHEN '21' THEN 'Devolución de Mercancía'
WHEN '22' THEN 'Orden de compra'
WHEN '23' THEN 'Cotización de venta'
WHEN '24' THEN 'Pago Entrante'
WHEN '30' THEN 'Entrada de diario'
WHEN '163' THEN 'Factura de corrección de cuentas por pagar'
WHEN '204' THEN 'Pago inicial de A/P'
ELSE 'Documento Desconocido'
END AS "Tipo_Documento",
CASE
WHEN T1."Status" = 'C' THEN 'CANCELADO'
WHEN T1."Status" = 'N' THEN 'RECHAZADO'
WHEN T1."Status" = 'P' THEN 'CREADO'
WHEN T1."Status" = 'W' THEN 'PENDIENTE'
WHEN T1."Status" = 'Y' THEN 'AUTORIZADO'
ELSE 'idk'
END AS "Estado_Borrador_Final",
T5."DocNum" AS "#Documento_creado",
T0."UserID" AS "Aprobador_ID",
T3."USER_CODE" AS "Aprobador_Codigo",
T3."U_NAME" AS "Aprobador_Nombre"
FROM
B1H_ICAFALFLESAN."WDD1" T0
LEFT JOIN
B1H_ICAFALFLESAN."OWDD" T1 ON T1."WddCode" = T0."WddCode"
LEFT JOIN
USUARIO T2 ON T2."USERID" = T1."OwnerID"
LEFT JOIN
USUARIO T3 ON T3."USERID" = T0."UserID"
LEFT JOIN
ODRF T4 ON T4."DocEntry" = T1."DraftEntry"
LEFT JOIN
OPOR T5 ON T5."DocEntry" = COALESCE(T1."DocEntry", 0)
)
SELECT *
FROM QUERY Q
WHERE
Q."Fecha_Creacion" BETWEEN '[%0]' AND '[%1]'
AND Q."Aprobador_Codigo" = '[%2]'