Ver Mensaje Individual
  #6 (permalink)  
Antiguo 21/05/2014, 10:36
Avatar de Nova
Nova
 
Fecha de Ingreso: enero-2003
Ubicación: Hyo
Mensajes: 832
Antigüedad: 21 años, 3 meses
Puntos: 1
Respuesta: Como encontrar generadas Funciones del usuario?

Esto es lo que encontré en esa función, por favor abuso de tu confianza para saber donde se almacenan todas las funciones.
Gracias!!!
Código:
"FUNCTION TEF_SELECTION_VALUES ( FORMULARIO VARCHAR2, IDFIELD VARCHAR2, P_CODIGO NUMBER) RETURN varchar2 IS
"
"
"
"    XXXX                      VARCHAR2(90);
"
"    L_TEF_TAB_SELECT_VALUES   TEF_TAB_SELECT_VALUES:= TEF_TAB_SELECT_VALUES();
"
"    F_DATOS                   VARCHAR2(4000);
"
"    F_ELEMENTOS               NUMBER(15);
"
"    F_LONGUITUD               NUMBER(15);
"
"    L_LOCALE                  VARCHAR2(30);
"
"    L_VALUE                   VARCHAR2(255);
"
"    L_NUMBER                  NUMBER(15);
"
"    X                         NUMBER(15) :=0;
"
"    R                         NUMBER(15) :=0;
"
"    CURSOR C1 IS
"
"        SELECT DISTINCT
"
"                       TO_NUMBER(FUENTE.LONGUITUD, '999990') AS LONGUITUD,
"
"                       TO_NUMBER(SUBSTR(SUBSTR(FUENTE.CADENA, LENGTH(FUENTE.LONGUITUD)+2, LENGTH(FUENTE.CADENA)-LENGTH(FUENTE.LONGUITUD)+1), 1, INSTR(SUBSTR(FUENTE.CADENA, LENGTH(FUENTE.LONGUITUD)+2, LENGTH(FUENTE.CADENA)-LENGTH(FUENTE.LONGUITUD)+1), '\')-1), '999990') AS ELEMENTOS,
"
"                       SUBSTR(SUBSTR(SUBSTR(FUENTE.CADENA, LENGTH(FUENTE.LONGUITUD)+2, LENGTH(FUENTE.CADENA)-LENGTH(FUENTE.LONGUITUD)+1), INSTR(SUBSTR(FUENTE.CADENA, LENGTH(FUENTE.LONGUITUD)+2, LENGTH(FUENTE.CADENA)-LENGTH(FUENTE.LONGUITUD)+1), '\'), LENGTH(SUBSTR(FUENTE.CADENA, LENGTH(FUENTE.LONGUITUD)+2, LENGTH(FUENTE.CADENA)-LENGTH(FUENTE.LONGUITUD)+1))-INSTR(SUBSTR(FUENTE.CADENA, LENGTH(FUENTE.LONGUITUD)+2, LENGTH(FUENTE.CADENA)-LENGTH(FUENTE.LONGUITUD)), '\')), 1,  FUENTE.LONGUITUD) AS CADENA,
"
"                       FUENTE.LOCALE AS LOCALE
"
"        FROM
"
"        (SELECT SUBSTR(SUBSTR(NVL(PROPSHORT, PROPLONG), INSTR(NVL(PROPSHORT, PROPLONG), '\230\4\')+7, LENGTH(NVL(PROPSHORT, PROPLONG))-INSTR(NVL(PROPSHORT, PROPLONG), '\230\4\')), 1, INSTR(SUBSTR(NVL(PROPSHORT, PROPLONG), INSTR(NVL(PROPSHORT, PROPLONG), '\230\4\')+7, LENGTH(NVL(PROPSHORT, PROPLONG))-INSTR(NVL(PROPSHORT, PROPLONG), '\230\4\')), '\')-1) AS LONGUITUD,
"
"                SUBSTR(NVL(PROPSHORT, PROPLONG), INSTR(NVL(PROPSHORT, PROPLONG), '\230\4\')+7, LENGTH(NVL(PROPSHORT, PROPLONG))-INSTR(NVL(PROPSHORT, PROPLONG), '\230\4\')) AS CADENA,
"
"                D.LOCALE AS LOCALE
"
"         FROM   ARSCHEMA A, FIELD B, FIELD_DISPPROP C, VUI D
"
"         WHERE  A.SCHEMAID = B.SCHEMAID
"
"         AND    B.SCHEMAID = C.SCHEMAID
"
"         AND    A.SCHEMAID = D.SCHEMAID
"
"         AND    C.FIELDID  = B.FIELDID
"
"         AND    D.VUIID = C.VUIID
"
"         AND    D.LOCALE LIKE 'es%'
"
"         AND    B.FIELDID  = IDFIELD
"
"         AND    A.SCHEMAID = (SELECT SCHEMAID FROM ARSCHEMA WHERE NAME = FORMULARIO)) FUENTE;
"
"
"
"    BEGIN
"
"        OPEN C1;
"
"
"
"        FETCH C1 INTO F_LONGUITUD, F_ELEMENTOS, F_DATOS, L_LOCALE;
"
"
"
"        LOOP
"
"
"
"            IF F_DATOS IS NULL THEN EXIT; END IF;
"
"
"
"            --x :=0;
"
"            R :=0;
"
"
"
"            FOR R IN 1..F_ELEMENTOS LOOP
"
"
"
"                --dbms_output.PUT_LINE(f_datos);
"
"
"
"                SELECT REPLACE(SUBSTR(F_DATOS, 1, INSTR(F_DATOS, '\', 2)), '\', '') INTO L_NUMBER FROM DUAL;
"
"
"
"                --dbms_output.PUT_LINE(l_number);
"
"
"
"                SELECT '\' || REPLACE('@' || F_DATOS, '@' || SUBSTR(F_DATOS, 1, INSTR(F_DATOS, '\', 2)), '') INTO F_DATOS  FROM DUAL;
"
"
"
"                --dbms_output.PUT_LINE(f_datos);
"
"
"
"                SELECT REPLACE(SUBSTR(F_DATOS, 1, INSTR(F_DATOS, '\', 2)), '\', '') INTO L_VALUE FROM DUAL;
"
"
"
"                --dbms_output.PUT_LINE(l_value);
"
"
"
"                SELECT '\' || REPLACE('@' || F_DATOS, '@' || SUBSTR(F_DATOS, 1, INSTR(F_DATOS, '\', 2)), '') INTO F_DATOS FROM DUAL;
"
"
"
"                L_TEF_TAB_SELECT_VALUES.EXTEND;
"
"
"
"                L_TEF_TAB_SELECT_VALUES (X + 1) := TEF_OBJ_SELECT_VALUES(FORMULARIO, IDFIELD, L_NUMBER, L_VALUE, L_LOCALE);
"
"                XXXX:=L_VALUE;
"
"                EXIT WHEN L_NUMBER=P_CODIGO;
"
"                X := X + 1;
"
"
"
"            END LOOP;
"
"
"
"        FETCH C1 INTO F_LONGUITUD, F_ELEMENTOS, F_DATOS, L_LOCALE;
"
"
"
"        EXIT WHEN C1%NOTFOUND;
"
"
"
"    END LOOP;
"
"
"
"    CLOSE C1;
"
"
"
"    RETURN XXXX;
"
"
   END;
__________________
http://about.me/jemano