Saltar al contenido
Codifíca.me | Desarrollo web | Programación

Select para recuperar los parámetros de una función o procedimiento

22 septiembre, 2010

 

Si queremos saber los parámetros de entrada o salida de una función o procedimiento, basta con ejecutar esta select:

SELECT
obj.name package_or_procedure,
arg.procedure$ procedure,
arg.argument,
arg.pls_type,
arg.position#,
arg.sequence#,
decode(arg.in_out, null,’IN’, 1,’OUT’, 2,’IN/OUT’, ‘Desconocido’) in_out

FROM
sys.argument$ arg,
sys.obj$ obj

WHERE
obj.obj# = arg.obj#
AND obj.name = ‘DIAS_EFEC_JORNADA_MES’ 
ORDER BY 1, 2, 5, 6;

Esto nos devolverá un registro por cada parámetro, comenzando por el de salida, con el tipo de variable que es, la posición y si es IN, OUT o IN/OUT:

DIAS_EFEC_JORNADA_MES      NUMBER       0                            1 OUT

DIAS_EFEC_JORNADA_MES      P_CH_HABIL   VARCHAR2       1                2 IN

DIAS_EFEC_JORNADA_MES     SALIDA VARCHAR2       2                3  IN/OUT