En nuestra aplicación en APEX generalmente usamos los elementos a nivel página y no a nivel aplicación. Los elementos que son a nivel de aplicación lo usamos para mantener el estado de la sesión. Estos elementos se pueden definir mediante cálculos o procesos, o bien transfiriendo valores en una dirección URL.

La diferencia que existe entre ambos ámbitos es que el elemento de tipo página está asociada a una página determinada, en cambio cuando el elemento es a nivel aplicación dicho elemento no está asociado a una página determinada sino que se utiliza para toda la aplicación.

Por ejemplo podemos usar un elemento de aplicación para mostrar en el Menú de Navegación la cantidad de Empleados y Departamentos que tenemos cargados en nuestra base de datos.

Para ello vamos a crear una aplicación demo de escritorio con un Informe Interactivo de la tabla EMPLOYEES y otra página con un Informe Interactivo de la tabla DEPARTMENTS.

Para contabilizar los registros de cada tabla necesitamos crear un Cálculo de Aplicación para cada tabla, ya que necesitamos contar cuantos empleados hay y cuantos departamentos hay para mostrarlo en el Menú de Navegación. Para ello en primer lugar vamos a crear dos elementos de Aplicación, uno para albergar el cálculo del total de Empleados y otro para albergar el total de Departamentos.

Nos dirigimos a Componentes Compartidos de la aplicación y en la sección Lógica de Aplicación seleccionamos “Application Items”.

Hacemos clic en el botón Create >

  • Nombre: Emp
  • Ámbito: Aplicación

En Ámbito tenemos dos opciones: Global y de Aplicación, especificaremos Global si la sesión de Application Express se comparte entre más de una aplicación y el valor del elemento debe ser el mismo para todas las aplicaciones. De lo contrario, especificaremos de Aplicación (éste es el valor por defecto), en nuestro caso será de Aplicación.

Nota: Las aplicaciones pueden compartir la misma sesión si sus autenticaciones tienen los mismos atributos de cookies de sesión. El atributo Ámbito de los elementos de las aplicaciones debe ser el mismo en dichas aplicaciones.

Los demás atributos aceptamos los valores por defecto.

Creamos el segundo elemento de aplicación que lo llamaremos DEPT.

Ahora vamos a crear los cálculos para estos elementos de aplicación.

Nos dirigimos a Componentes Compartidos de la aplicación y en la sección Lógica de Aplicación seleccionamos “Application Computations”.

Crear Cálculo para Elemento de Aplicación EMP

Hacemos clic en el botón Crear

Elemento — Elemento de Cálculo: EMP

Frecuencia — Punto de Cálculo: Antes de Cabecera

Cálculo — Tipo de Cálculo: Consulta SQL (devolver valor único)

Cálculo: select count(*) from employees

Hacemos clic en el botón Crear Cálculo

Crear Cálculo para Elemento de Aplicación DEPT

Hacemos clic en el botón Crear

Elemento — Elemento de Cálculo: DEPT

Frecuencia — Punto de Cálculo: Antes de Cabecera

Cálculo —  Tipo de Cálculo: Consulta SQL (devolver valor único)

Cálculo: select count(*) from departments

Hacemos clic en el botón Crear Cálculo

Disponemos de los elementos de aplicación y los cálculos para cada elemento. Ahora vamos al Menú de Navegación para poder mostrar el valor resultante de los cálculos.

Personalizar Menú de Navegación

Nos dirigimos a Componentes Compartidos de la aplicación y en la sección Navegación seleccionamos “Navigation Menu”.

Seleccionamos “Desktop Navigation Menu” y allí se va a mostrar las entradas del menú de navegación: Home, Employees y Departments.

Hacemos clic en el enlace Emloyees para editarlo.

  • En Imagen/Clase ingresamos un icono de “Font Awesome” por ejemplo podemos usar fa-users.
  • En Etiqueta de Entrada de Lista: Empleados [&EMP.]
  • Borrar Cache: RIR

Y guardamos los cambios.

De igual modo seleccionamos la entrada del menú de navegación Departments para editarlo.

  • En Imagen/Clase: fa-building-o
  • En Etiqueta de Entrada de Lista: Departamentos [&DEPT.]
  • Borrar Cache: RIR

Regresamos a la aplicación y la ejecutamos:

Cómo podemos ver ahora en el menú de navegación podemos visualizar la cantidad de registros que tenemos en las tablas EMPLOYEES y DEPARTMENTS.

De esta forma podemos realizar cálculos y/o procesos que se muestren en toda nuestra aplicación de manera muy sencilla usando los elementos de Aplicación.

Será hasta el próximo artículo!