MIGRACIÓN WEB

50
MIGRACIÓN A WEB

Transcript of MIGRACIÓN WEB

Page 1: MIGRACIÓN WEB

MIGRACIÓN A WEB

Page 2: MIGRACIÓN WEB

WILSON ESTRADA BERNAL

Ingeniero de sistemas, especialista en Ingeniería del Software de la Universidad del Norte.

Arquitecto de TIC

Migración de forms6i a forms10G

Desarrollo de sistema de información Sophia (Oracle): nómina, contratación, selección, bienestar, recursos humanos

Desarrollo del sistema de información Servicio al Cliente

Migración WEB

Page 3: MIGRACIÓN WEB

CONTENIDO ARQUITECTURA WEB

ADAPTAR APLICACIONES A WEB

USO DE WEBUTIL

TIPS MIGRACIÓN GECELCA

TECNOLOGÍA WEB CON FORMS

INTEGRANDO FORMS Y REPORTS

MANEJO DE REPORTS10G

Migración WEB

Page 4: MIGRACIÓN WEB

LOGISTICA

20 HORAS: 4 SABADOS DE 8:00 AM – 1:00 PM

DESCANSO DE 15 MINUTOS

Migración WEB

Page 5: MIGRACIÓN WEB

ARQUITECTURA WEB

Migración WEB

Page 6: MIGRACIÓN WEB

SITUACIÓN ACTUAL

Migración WEB

Oracle Developer, versiones 3.0, 4.5, 6, 6i, 9i

Arquitectura C/S o Forms&Reports standalone

Page 7: MIGRACIÓN WEB

ARQUITECTURA CLIENTE/SERVIDOR

Migración WEB

En vez de mantener múltiples instalaciones en cada PC

Oracle Forms runtime + Oracle Forms compiled files

Page 8: MIGRACIÓN WEB

ARQUITECTURA FORMS SERVICES

Migración WEB

Es mas fácil administrar una sola instancia Oracle AS10g Forms Services

Page 9: MIGRACIÓN WEB

ORACLE FORMS SERVICES

Es un componente de OAS (Oracle Application Server) que permite al usuario enviar aplicaciones desde Oracle Forms Developer a Internet a través de servicios built-in y optimización. utiliza una arquitectura de tres niveles para desarrollar aplicaciones de bases de datos.

La capa cliente contiene el web browser (navegador) donde se muestran y usan las aplicaciones.

La capa intermedia es el servidor de aplicaciones donde residen la lógica de la aplicación y el software.

El nivel de BD es el servidor de base de datos donde son almacenados los registros

Migración WEB

Page 10: MIGRACIÓN WEB

ARQUITECTURA FORMS SERVICES

Migración WEB

Page 11: MIGRACIÓN WEB

ARQUITECTURA FORMS SERVICES

Migración WEB

Page 12: MIGRACIÓN WEB

SUN JAVA PLUG-IN

Es un plug-in que provee Oracle, en plataforma Windows, que proporciona un alternativo JRE (Java Runtime Environment) capaz de correr un Applet Forms. Este Applet es descargado en la máquina del cliente cuando éste inicia sesión, si aun no se ha hecho.

Migración WEB

Page 13: MIGRACIÓN WEB

BENEFICIOS

Incrementalmente descarga los archivos Java ARchive (JAR files) necesarios para la forma del Cliente, proporcionando un arranque más rápido de la aplicación.

Almacena en caché localmente los archivos JAR, de manera que no necesitan ser descargados de nuevo.

Optimiza el rendimiento de las aplicaciones dentro de una sesión, ya que almacena la información en caché.

Migración WEB

Page 14: MIGRACIÓN WEB

OC4J

OC4J (Oracle Application Server Containers for J2EE) es un ordenador J2EE (Java2 Enterprise Edition) de Oracle, que se ejecuta sobre cualquier Máquina Virtual de Java (JVM), el cual es un intérprete de Java que provee soporte total para aplicaciones J2EE, incluyendo Servlet, Enterprise JavaBeans y Java Server Pages.

Permite probar las aplicaciones en la misma máquina donde se ejecuta Forms Builder, y así no se necesita instalar OAS para realizar esta tarea

Migración WEB

Page 15: MIGRACIÓN WEB

PASOS PROCESO DE EJECUCIÓN

Migración WEB

1. El usuario accesa a la URL donde se encuentra la aplicación de Forms a ejecutar.

2. El servidor HTTP de Oracle ó OC4J recibe una solicitud HTTP desde el navegador del cliente y contacta a Forms Servlet.

3. Forms Servlet crea dinámicamente una página HTML que contiene toda la información para iniciar una sesión de Forms.

4. El servidor HTTP de Oracle ó OC4J descarga un applet genérico para el cliente. El cliente almacena en caché este applet de manera que pueda ejecutar futuras aplicaciones Forms sin volver a descargarlo

Page 16: MIGRACIÓN WEB

PASOS PROCESO DE EJECUCIÓN

Migración WEB

5. El applet del cliente se conecta con Forms Listener Servlet para iniciar la sesión. Forms Listener Servlet inicia una instancia de Forms Runtime Engine en la capa intermedia de Forms Server, y además se encarga de pasar los parámetros que sean incluidos en el archivo HTML.

6. Forms Listener Servlet establece una conexión con Runtime Engine, el cual se conecta con la base de datos, si es necesario, y carga los archivos ejecutables de la aplicación.

Page 17: MIGRACIÓN WEB

PASOS PROCESO DE EJECUCIÓN

Migración WEB

7. El applet de Forms muestra la interfaz de usuario de la aplicación en la ventana principal del navegador web del usuario. Forms Listener Servlet trabajando a través del OC4J o el Servidor HTTP, administra la comunicación entre el applet de Forms y Runtime Engine

Page 18: MIGRACIÓN WEB

POR QUE FORMS & REPORTS SERVICES

Migración WEB

AccesibilidadAccesibilidad

Fácil de mantener

Fácil de mantener

Funciona en internet

Funciona en internet

Llamadas a web Services

Llamadas a web Services

Integración con Java

Integración con Java

Single Sign-On

Single Sign-On

Page 19: MIGRACIÓN WEB

BENEFICIOS DE MIGRAR A 10G

Migración WEB

Integración Posibilidad de integrar todas las aplicaciones en una única infraestructura

Costos Las tareas de administración y mantenimiento del software se realiza en un solo punto y no en cada uno de los clientes. Además reduce drásticamente el trafico de la red.

Productividad Un entorno más amigable para los usuarios y el uso de nuevas funcionalidades

Integración Posibilidad de integración con portales corporativos

Accesibilidad Único requisito para acceso, disponibilidad de un browser en internet

Nuevas características WEB

Arquitectura de Servlet y JSP, llamadas a Web Services, uso de XML, integración con JDeveloper

Page 20: MIGRACIÓN WEB

CONSIDERACIONES

Desarrollo en versiones anteriores a 6i deben ser migrados primero a 6i (ultimo parche)

Desaparece completamente la arquitectura Cliente/Servidor

Interacción con motor de base de datos 8.1.7.4 o superior

Dimensionamiento de los servidores y de las PC de los usuarios

Migración WEB

Page 21: MIGRACIÓN WEB

AMBIENTE LOCAL

Migración WEB

Máquina virtual con la base de datos

Máquina virtual con el cliente

Page 22: MIGRACIÓN WEB

ADAPTAR APLICACIONES A

WEB

Migración WEB

Page 23: MIGRACIÓN WEB

COMO CORRER UNA FORMA

Migración WEB

El usuario ingresa a la URL que apunta a la aplicación desde su navegador

Forms Services genera un archivo HTML que descarga un applet Java (Jinitiator) en la máquina del cliente. Este pequeño applet es capaz de mostrar la interfaz de usuario de cualquier forma, mientras la lógica de la aplicación se ejecuta en la capa intermedia

Page 24: MIGRACIÓN WEB

COMPONENTES DE LA URL

Migración WEB

Protocolo: http Dominio: nombre del pc Puerto para el servidor HTTP o OC4J: 8889 (default

para OC4J). Forms Servlet Alias ó archivo html estático:

/forms/frmservlet Parámetros: esta sección empieza con "?"; los

parámetros se separan con "&". Estos pueden ser especificados en la URL

Page 25: MIGRACIÓN WEB

OPCIONES DE MIGRACIÓN

Migración WEB

Forms Builder

Forms Compiler

Forms Migration Assistant

Page 26: MIGRACIÓN WEB

FORMS BUILDER

Migración WEB

Abrir Forms Compilar el módulo Guardar el módulo Resultado de la compilación instantáneo Es un método lento No detecta características obsoletas, ni

efectúa modificaciones Es uno a uno

Page 27: MIGRACIÓN WEB

FORMS COMPILER

Migración WEB

Este método consiste en crear un archivo

batch o un shell script que ejecute el Forms

Compiler (frmcmp) con el parámetro

upgrade=yes

El resultado de la compilación queda en un fichero de log

Es en forma masiva No detecta características obsoletas, ni

efectúa modificaciones

Page 28: MIGRACIÓN WEB

FORMS COMPILER

Migración WEB

FOR %%f in ( *.fmb ) do frmcmp

userid=dbasf/dbasf@minerva

module=%%f batch=yes module_type=form

compile_all=yes window_state=minimize

FOR %%f in ( *.err ) do if EXIST %%~nf.fmx del %%f

ECHO FINISHED COMPILING

Page 29: MIGRACIÓN WEB

FORMS MIGRATION ASSISTANT

Migración WEB

Cuenta con un asistente gráfico que alerta de las características obsoletas

Realiza los cambios cuando es posible Guarda los FMB en el nuevo formato Interface de línea de comandos

(ifplsqlconv.exe) Se usa antes de compilar en batch o con

Forms Builder, de otra forma no se corregirán las características no soportadas

Page 30: MIGRACIÓN WEB

Adjusting Fonts· Key Mapping· Integrating Oracle Graphics· Calling Reports from Forms· Displaying Images· Displaying Icons

Page 31: MIGRACIÓN WEB

USO DE

WEBUTIL

Migración WEB

Page 32: MIGRACIÓN WEB

Es una utilidad de Oracle Forms que proporciona parte de la funcionalidad del

lado del cliente, utilizando una serie de Java Beans y una API para realizar dichas funciones.

Consta de los siguientes componentes:

Java class (webutil.jar) Forms objects (webutil.obj) PL/SQL library (webutil.pll)

Migración WEB

WEBUTIL

Page 33: MIGRACIÓN WEB

Copiar el archivo create_webutil_db.sql. Conectarse con USUARIO a la Base de Datos y ejecutarlo para crear el paquete WEBUTIL_DB.

Editar el archivo webutil.cfg que se encuentra en el directorio ORACLE_HOME\forms\server

Buscar en el archivo webutil.cfg la definición del parámetro transfer.database.enabled y colocar TRUE. Y el parámetro transfer.appsrv.enabled y colocar TRUE

transfer.database.enabled=TRUE

transfer.appsrv.enabled=TRUE

Migración WEB

CONFIGURACION WEBUTIL EN LA BASE DE DATOS

Page 34: MIGRACIÓN WEB

Salvar el archivo webutil.cfg.

Editar el archivo formsweb.cfg que se encuentra en el directorio ORACLE_HOME\forms\server

  Buscar en el archivo formsweb.cfg la definición de la

variable WebUtilErrorMode y cambiar el valor de Alerta por Console, colocando lo siguiente:

WebUtilErrorMode=Console

  Para que los mensajes de error, no salgan como alertas, sino que aparezcan en la consola de java en ejecución.

Salvar el archivo formsweb.cfg.

Migración WEB

CONFIGURACION WEBUTIL EN LA BASE DE DATOS

Page 35: MIGRACIÓN WEB

Copiar el archivo create_webutil_db.sql. Conectarse con baninst1 a la Base de Datos y ejecutarlo para crear el paquete WEBUTIL_DB.

 Editar el archivo webutil.cfg que se encuentra en el directorio ORACLE_HOME\forms\server

Buscar en el archivo webutil.cfg la definición del parámetro transfer.database.enabled y colocar TRUE. Y el parámetro transfer.appsrv.enabled y colocar TRUE  

transfer.database.enabled=TRUE

transfer.appsrv.enabled=TRUE

Salvar el archivo webutil.cfg.

Migración WEB

CONFIGURACION WEBUTIL EN PC DE DESARROLLO

Page 36: MIGRACIÓN WEB

Editar el archivo formsweb.cfg que se encuentra en el directorio ORACLE_HOME\forms\server

Buscar en el archivo formsweb.cfg la definición de la variable WebUtilErrorMode y cambiar el valor de Alerta por Console, colocando lo siguiente:

WebUtilErrorMode=Console

Para que los mensajes de error, no salgan como alertas, sino que aparezcan en la consola de java en ejecución.

Salvar el archivo formsweb.cfg.

Migración WEB

CONFIGURACION WEBUTIL EN PC DE DESARROLLO

Page 37: MIGRACIÓN WEB

Copiar los archivos webutil.olb, webutil.pll, jacob.dll en el directorio ORACLE_HOME\forms\webutil

Desde Forms Builder 10g, compilar la webutil.pll y generar el ejecutable: webutil.plx 

Copiar los archivos jacob.jar y jacob.dll en el directorio ORACLE_HOME\forms\java

 En el regedit, en el FORMS_BUILDER_CLASSPATH, agregar la ruta y librerías: ORACLE_HOME\forms\java\jacob.jar y ORACLE_HOME\forms\java\frmwebutil.jar

Migración WEB

CONFIGURACION WEBUTIL EN PC DE DESARROLLO

Page 38: MIGRACIÓN WEB

Ejecutar el Oracle Forms 10g Configurar el Aplication Server URL,

escogiendo en el menú Edit, la opción de Preferences; ir a la pestaña Runtime y colocar en el Aplication Server URL lo siguiente:

http://[nombre_del_equipo]:[puerto]/forms/frmservlet?config=webutil

Ejemplo: http://023864-admin-O:8889/forms/frmservlet?config=webutil 

Migración WEB

CONFIGURACION WEBUTIL EN LAS FORMAS

Page 39: MIGRACIÓN WEB

Abrir la forma que utilizará la webutil

Agregue la librería webutil.pll a la Forma

Migración WEB

CONFIGURACION WEBUTIL EN LAS FORMAS

Page 40: MIGRACIÓN WEB

Migración WEB

CONFIGURACION WEBUTIL EN LAS FORMAS

Abrir desde Forms Builder la webutil.olb para arrastrar el objeto WEBUTIL a la forma

Hacer dobleclick para ver los WebUtil Objects

Page 41: MIGRACIÓN WEB

Migración WEB

CONFIGURACION WEBUTIL EN LAS FORMAS

Arrastrar el objeto WEBUTIL a la Forma y hacer click en el botón Copy

Page 42: MIGRACIÓN WEB

Migración WEB

CONFIGURACION WEBUTIL EN LAS FORMAS

Se copian en la forma los componentes del objeto webutil

Page 43: MIGRACIÓN WEB

Migración WEB

INTERACTUANDO CON EL CLIENTE

Forms Built-ins and

Packages

GET_FILE_NAME

READ_IMAGE_FILE

WRITE_IMAGE_FILE

TEXT_IO

HOST

OLE2

TOOL_ENV

WebUtil Equivalents

CLIENT_GET_FILE_NAME

CLIENT_IMAGE.READ

(WRITE)_IMAGE_FILE

CLIENT_TEXT_IO

CLIENT_HOST

CLIENT_OLE2

CLIENT_TOOL_ENV

Page 44: MIGRACIÓN WEB

Migración WEB

CLIENT_GET_FILE_NAME

DECLARE filename VARCHAR2(500);

BEGIN filename := CLIENT_GET_FILE_NAME('C:\Hoja de Vida\Fotos', :criterio.nombfoto, 'JPG Archivos (*.JPG)|*.JPG| Todos Archivos (*.*) |*.*|', 'Archivo de Factura', OPEN_FILE);

Page 45: MIGRACIÓN WEB

Migración WEB

CLIENT_IMAGEN.READ

PROCEDURE GUARDAR_IMAGEN IS

BEGIN CLIENT_IMAGE.READ_IMAGE_FILE(:criterio.nombfoto , 'JPG', 'sagh001t.fotoempl');

END;

Page 46: MIGRACIÓN WEB

Migración WEB

CLIENT_TEXT_IO

CLIENT_TEXT_IO.FILE_TYPE

CLIENT_TEXT_IO.FOPEN

CLIENT_TEXT_IO.PUT_LINE

CLIENT_TEXT_IO.FCLOSE

Page 47: MIGRACIÓN WEB

Migración WEB

CLIENT_HOST

CLIENT_HOST('rename '||filename||' '||'C:\Hoja de Vida\Fotos\'|| substr(:sagh001t.nombres1,1,1)||substr(:sagh001t.apellid1,1,5)||'.jpg', NO_SCREEN);

Page 48: MIGRACIÓN WEB

Migración WEB

CLIENT_OLE2

CLIENT_OLE2.OBJ_TYPE

CLIENT_OLE2.LIST_TYPE

CLIENT_OLE2.CREATE_OBJ

CLIENT_OLE2.SET_PROPERTY

CLIENT_OLE2.GET_OBJ_PROPERTY

CLIENT_OLE2.INVOKE_OBJ

Page 49: MIGRACIÓN WEB

Migración WEB

CLIENT_TOOL_ENV

CLIENT_TOOL_ENV.GETVAR(:control.env_var, :control.env_value);

Page 50: MIGRACIÓN WEB

INTEGRANDO FORMS Y REPORTS

Migración WEB