viernes, 28 de febrero de 2020

Formularios y Reportes en Oracle Apex 19.1 ejecutando sobre Oracle Database XE (Parte 2)

En esta segunda parte, se entrará en detalles de como se enlazan la pantalla de formulario y la de Reporte, para comprender como funciona este mecanismo en un entorno declarativo(con apenas una línea de código).

1) Entrar las credenciales para acceder al espacio de trabajo asociado al esquema HR.



2) Click en Application Builder.


3) Click en la aplicación creada (RECURSOS HUMANOS 2020 o similar).


4) Click en el enlace de reporte EMPLEADOS.



5) Click  con botón secundario sobre la región del Reporte(Employees) y hacer click sobre Crear Elemento de Página.


En la Vista de Componentes ubicado en la región central de la página de Diseño, se agrega un nuevo elemento de página  con nombre por defecto P2_NEW.





6) En el panel Elementos de Página en el grupo Identificación cambiar el nombre del ítem por P2_DEPARTAMENTO_ID y Tipo establecer a Oculto.


7) En el Panel Región, grupo Origen, agregar la siguiente condicón en la Cláusula WHERE:

          DEPARTMENT_ID=:P2_DEPARTAMENTO_ID


8) Click en el botón Guardar.


9) Seleccionar la página 4.



 
10) Click sobre la región Departamentos.


11) Seleccionar la columna Department_Name.



12) En la propiedad Tipo seleccionar Enlace.



13)  Realizar lo siguiente:

 a) Buscar Enlace y 
 b) hacer click en el botón de la propiedad Destino.



14) Configurar la página de Destino del Enlace.


 a) Seleccionar Página 2.



 b) Seleccionar el elemento P2_DEPARTAMENTO_ID.


c) Seleccionar DEPARTMENT_ID.
 

 15)  Click en el botón Aceptar.



16) Click en Guardar.



17) Click en Ejecutar.


Al hacer click sobre culaquier valor del campo DEPARTMENT_NAME se visualizará la página de Reportes de Empleados filtrados por el Departamento escojido.




Conclusión

Las aplicaciones desarrolladas en Apex pueden ser modificadas para adaptarse a las necesidades de los usuarios. La vinculación de reportes con formularios para editar los valores de un registro, es sumamente sencilla de aplicar, así como también los filtros desde un reporte a otro.



miércoles, 19 de febrero de 2020

Formularios y Reportes en Oracle Apex 19.1 ejecutando sobre Oracle Database XE (Parte 1)

Oracle Apex es un framework nativo embebido como esquema en la base de datos Oracle compatible con todas sus ediciones. Oracle APEX es una herramienta de poco código que permite crear de forma rápida aplicaciones web de acceso a datos con poco o ningún conocimiento de programación.

En este post, se instruirá como crear una aplicación con formularios  para ingresar y editar datos, a su vez, se generan informes con registros que se enlazan a esos formularios para su  respectiva edición.

Como requisitos se precisa tener instalado Oracle Apex 18/19 y un espacio de trabajo asociado al esquema HR.

1) Ingresar las credenciales para iniciar sesión en Oracle Apex:
  

2)Click en Creador de Aplicaciones.



3)Click en Crear.



4) Seleccionar Nueva Aplicación.



5)Ingresar el nombre de la aplicación.

6) Definir el tipo de interface.



 7) Definir la forma en que se visualiza el menú.


 8)Seleccionar el botón Agregar Página.

 9)Seleccionar el tipo de Página(Form).



10) Modificar las propiedades siguientes:
  A) Ingresar el nombre de la página (Empleados) en la propiedad
       Page Name.
  B) Click en Set Icon.
  C) Seleccionar el nombre de la tabla EMPLOYEES.
  D) Activar la casilla Include Report. 
  E) Click en Add Page.


                                                                   B) Seleccionar ícono




                                                C) Seleccionar la tabla EMPLOYEES                                                 


11) Repetir las instrucciones 8 a 11 para agregar un formulario por cada una de las tablas siguientes: DEPARTMENTS y JOBS. 




12) Click en Crear Aplicación.




13) A continuación se hace visible la lista de páginas agregadas y las opciones para ejecución, importación  entre otras.




14) Click en Run Application para ejecutar la aplicación.


15) Llenar los campos usuario y contraseña.



 16) Se visualiza la página principal que contiene la barra de menú lateral izquierda con todas las opciones y las opciones principales a modo de bloques.


 17) Hacer click en la opción Empleados para visualizar el reporte.



18) Hacer click en el enlace del reporte con figura de lápiz para abrir el cuadro modal que contiene los datos del empleado  seleccionado .




Conclusión:

Oracle Apex es una herramienta de bajo código que resulta muy útil al momento de crear rápidamente aplicaciones profesionales teniendo o no conocimientos básicos de programación y bases de datos. 




 

jueves, 21 de noviembre de 2019

Oracle 19c XE o XE 20c?

Ha transcurrido más de un año desde la liberación de Oracle XE 18c (20 de octubre de 2018) y de acuerdo a las afirmaciones(2018) de Gerald Venzl(Product Manager de XE) se debería disponer de Oracle XE 19c uno o dos meses después de liberar las ediciones Empresarial y Standard, cosa que no ha sucedido aún.

Sin embargo, hoy 21 de noviembre de 2019 a través de un hilo del Foro para la Comunidad de usuarios de XE,

Se está trabajando para lanzar 20c XE dentro de las 2 
semanas posteriores al lanzamiento local.
 

Tras esta revelación se puede deducir o especular que no habrá Oracle XE 19c, lo cierto es que el próximo año se contará con Oracle XE 20c en menor tiempo que sus liberaciones antecesoras, espero que así sea; así mismo, sería ideal contar con más relajamiento de sus límites de recursos (4 a 8 GB. de RAM y 20GB de almacenamiento). 

Por ahora, hay que seguir aprendiendo, desarrollando y desplegando con Oracle 18c XE, sin dudas, un excelente  SGBD para desarrollo y producción tanto en línea como en entornos locales.

Comparto el hilo del foro, fuente de esta temática:



miércoles, 20 de noviembre de 2019

Cambio de contraseña en usuario System en Oracle 18c XE

El usuario SYSTEM permite realizar tareas de administración de la base de datos como exportar, importar, crear usuarios, entre otras actividades propias de un DBA. En un entorno Multitenant, SYSTEM(al igual que SYS) es un usuario común de Oracle Database, considerando esto, cómo se procede a cambiar la contraseña de SYSTEM en una  PDB? La respuesta es: cambiar la contraseña desde el contenedor, el cómo hacerlo se detalla a continuación:


1) Ejecutar SQLPLUS.

2) Conectarse como SYSTEM a la base de datos:


 3) Submitir la sentencia alter user siguiente:



4)  Conectarse como SYSTEM a XEPDB1.




Como se puede apreciar, el cambio de contraseña realizado en SYSTEM desde el contenedor, afecta a todas las PDB's, es decir, la contraseña de SYSTEM será la misma para cada PDB creada.

Intentar lo anterior pero desde una PDB como XEPDB1 produce el error ORA-65066: Los cambios especificados deben aplicarse a todos los contenedores.



Nota: Los usuarios de Oracle 10g/11g XE , solo deben ejecutar las instrucciones 1,2,3.

Espero este artículo sirva de ayuda.

 Saludos.

domingo, 15 de septiembre de 2019

Como retornar resultados implícitamente de un SELECT usando procedimientos almacenados

Oracle desde la versión 11g permite retornar un conjunto resultado de una sentencia SELECT de modo implícito (sin usar una variable de tipo sys_refcursor como parámetro de salida) invocando a la función RETURN_RESULT del paquete DBMS_SQL.

SYS_REFCURSOR es un tipo de datos que representa un cursor o área de memoria donde se almacena temporalmente un conjunto resultado permitiendo recuperar una a una cada fila.
 
A continuación se presenta un ejemplo que recupera filas de la tabla empleados:

create or replace procedure select_employees as

  rf_cursor_employees SYS_REFCURSOR;
begin
 
  open rf_cursor_employees for
    SELECT employee_id,first_name,last_name,salary,email,phone_number
      FROM HR.employees
    ORDER BY last_name,first_name;
   
    dbms_sql.return_result(rf_cursor_employees);
   
end select_employees;

Compilar  con Oracle SQL Developer o SQL*Plus:



Para su ejecución, se invoca al procedimiento SELECT_EMPLOYEES:

exec select_employees; 


Se puede recuperar más de un conjunto resultado al igual que se lo hace con la forma tradicional empleando variables de tipo  sys_refcursor en lugar de parámetros como se ilustra en el siguiente caso :

create or replace procedure select_multiples_resultados as
 rf_cursor_departments SYS_REFCURSOR;
 rf_cursor_employees SYS_REFCURSOR;

begin
  open rf_cursor_departments for
     SELECT
         department_id,department_name
     FROM HR.departments
     ORDER BY department_name;
    
    dbms_sql.return_result(rf_cursor_departments);

  open rf_cursor_employees for
    SELECT employee_id,first_name,last_name,salary,email,phone_number
    FROM HR.employees
    ORDER BY last_name,first_name;
   
    dbms_sql.return_result(rf_cursor_employees);
   
end select_multiples_resultados;
 
Compilar con SQL Developer o SQL*PLus.

Ejecutar el procedimiento:

exec select_multiples_resultados;



Conclusión:

Por medio de la función RETURN_RESULT se puede obtener uno o varios conjuntos resultado sin declarar parámetros de tipo SYS_REFCURSOR en los  procedimientos, sino, como variables locales del mismo facilitando el trabajo de codificación.
 
Nota:




domingo, 1 de septiembre de 2019

Cómo desbloquear una cuenta de usuario en Oracle XE 18c usando SQL Developer

Para poder desbloquear una cuenta de usuario Oracle empleando SQL Developer, se debe crear una conexión basada en un usuario con privilegios DBA como SYS o SYSTEM.

En este post  se usa una conexión basada en el usuario SYSTEM de la base de datos XEPDB1 instalada por defecto y que contiene al esquema HR(la base de datos contenedora de nombre XE y referida como CDB$ROOT no contiene HR).

1) Abrir la conexión basada en SYSTEM seleccionándola y haciendo click con botón secundario.



2) Ingresar la contraseña y hacer click en Ok.


 

3) Seleccionar Otros usuarios.



4) En el cuadro de diálogo Editar usuario, deseleccionar la casilla de comprobación Bloquedo haciendo click sobre ella.



5) Click sobre el botón Aplicar.


6) Click en Ok.




Entrada destacada

Cómo instalar Oracle Database 18c Express Edition para Windows

Oracle Database 18c XE ya está disponible para Windows 64bit, en este post se enseñará como instalar y configurar esta nueva versión en W...