Seleccionar página

¿Qué usuario está conectado a mi aplicación Apex?

Escrito por: Eddie Molina

Oracle ACE Pro. Oracle APEX Cloud Developer Certified Professional. Presidente de ORAUGCRC (Grupo de Usuarios Oracle de Costa Rica). Miembro de líderes de LAOUC. Conferencista, consultor, desarrollador y capacitador en tecnologías Oracle, especialmente Oracle Application Express con más de 30 años de experiencia.

11/06/2009

En muchas ocasiones, en las tablas que utilizamos para almacenar datos, debemos guardar el usuario que realizó una tarea específica, tal como, incluir un nuevo registro, o modificar alguno de los datos existentes.

Tradicionalmente, estamos acostumbrados a utilizar el valor de la variable Oracle USER, sin embargo, si hacemos uso de esta variable en una aplicación Apex, siempre vamos a registrar el mismo valor, sin importar cual usuario estemos utilizando, este valor es “APEX_PUBLIC_USER”.

Ahora bien, cuando definimos estructuras y código, no lo hacemos pensando solo en utilizarlos dentro de Apex, podemos también querer usarlos por ejemplo en Sql*plus, Forms, funciones, procedimientos, paquetes, o cualquier otro lugar, por lo que también podemos necesitar el valor de la variable USER.

Para definir una sentencia que siempre nos funcione y guarde el usuario correcto, debemos utilizar el siguiente código:

  • nvl(htmldb_application.g_user,user)

Con lo anterior, nos aseguramos de que si estamos realizando una tarea dentro de Apex, vamos a registrar el valor de la variable global htmldb_application.g_user, y si estamos utilizando el código fuera de Apex, entonces registraremos en valor de la variable USER.

Espero que este tip, les sea de utilidad.

Los espero en la próxima entrega.

También te puede gustar…

Share This