CREATE OR REPLACE FUNCTION fn_Primer_Nombre
(
   i_Nombre IN Char
)
RETURN CHAR
IS
   w_Pos1    Integer;
   w_Pos2    Integer;
   w_Pos3    Integer;
   w_Cad     VarChar(20);
BEGIN
   w_Pos1 := InStr(i_Nombre, '/');
   w_Pos2 := InStr(SubStr(i_Nombre,w_Pos1+1,Length(i_Nombre)-w_Pos1), '/') + w_Pos1;
   w_Pos3 := InStr(SubStr(i_Nombre,w_Pos2+1,Length(i_Nombre)-w_Pos2), ' ') + w_Pos2;
   If w_Pos3 = w_Pos2 Then
      w_Pos3 := Length(i_Nombre);
   End If;
   SELECT Decode(w_Pos3, w_Pos2+1, ' ', RTrim(SubStr(i_Nombre,w_Pos2+1,w_Pos3-w_Pos2)))
   INTO w_Cad
   FROM DUAL;
   RETURN(w_Cad);
END;
/
CREATE PUBLIC SYNONYM fn_Primer_Nombre FOR ADAM.fn_Primer_Nombre;
GRANT ALL ON fn_Primer_Nombre TO ADAMA;
