Estimados, tengo la siguiente consulta en ORACLE:
Código SQL:
Ver originalSELECT DISTINCT ir.id_llamada_mac ,ei.ID_ORDEN
FROM PO_call@dbl_po pc,
INSERTA_RECLAMO ir,
po_simple_area@dbl_po psa,
po_order@dbl_po PO,
etr_incidencia ei
WHERE ir.ID_LLAMADA = PC.id
AND ei.NUMERO_ORDEN = numero_orden
AND ir.NUMERO_CONTACTO != '0'
AND PO.SIMPLE_AREA_ID = PSA.ID
AND PO.incident_id = PC.incident_id
AND ei.ID_ORDEN = PO.ID;
Esta consulta recibe el valor de numero_orden por teclado, el problema es que necesito por requerimiento usar esta consulta en un SP:
Código SQL:
Ver originalDROP PROCEDURE MAC.SPA_OBT_NUM_LLAMADAS;
CREATE OR REPLACE PROCEDURE SPA_OBT_NUM_LLAMADAS
(
numero_orden NUMBER,
p_cursor OUT SYS_REFCURSOR
)
IS
BEGIN
OPEN p_cursor FOR
SELECT DISTINCT ir.id_llamada_mac ,ei.ID_ORDEN
FROM PO_call@dbl_po pc,
INSERTA_RECLAMO ir,
po_simple_area@dbl_po psa,
po_order@dbl_po PO,
etr_incidencia ei
WHERE ir.ID_LLAMADA = PC.id
AND ei.NUMERO_ORDEN = numero_orden
AND ir.NUMERO_CONTACTO != '0'
AND PO.SIMPLE_AREA_ID = PSA.ID
AND PO.incident_id = PC.incident_id
AND ei.ID_ORDEN = PO.ID;
CLOSE p_cursor;
END SPA_OBT_NUM_LLAMADAS;
Pero el resultado no es el mismo, cuando realizo la consulta fuera del sp con numero orden como '1287571-1', me trae 6 datos (que son los que debería traer), pero si lo hago con el sp, me trae todos los datos como, como si no tomara la condición del WHERE.
Por que puede ser? espero que pueda ayudarme...saludos