FORMS V4.5, V6, V10 Introducción Enero de 2013 Unidad de Arquitectura y Soporte de Aplicaciones Área de Aplicaciones Especiales y Arquitectura de Software DCCT
INDICE INTRODUCCIÓN VERSIONES DE FORMS PORTAL DE CONOCIMIENTO FORMS V4.5 FORMS V6 Y V10 Forms Developer Página 2
INTRODUCCIÓN: VERSIONES DE FORMS En la actualidad existen aplicaciones en distintas versiones de Forms: Forms v4.5 Forms v.6i Forms v10g La ejecución de informes se realiza a través de ReportBuilder bajo plataforma Windows (excepto Forms v4.5) Forms Developer Página 3
INTRODUCCIÓN: PORTAL DE CONOCIMIENTO http://intranet.madrid.org/arquitecturasw/ En el apartado Tecnologías Anteriores/Oracle Developer Forms Developer Página 4
FORMS 4.5 INTRODUCCIÓN FORMS 4.5 COMPONENTES ENTORNO DE DESARROLLO CICLO DE VIDA FORMS V6 Y V10 Forms Developer Página 5
FORMS V4.5 En la actualidad ya no se realizan nuevos desarrollos bajo la tecnología de Oracle Forms v4.5 La mayoría de las aplicaciones existentes en esta tecnología provienen de un desarrollo inicial en Forms v3 para el cual se realizaron unos procesos de migración automáticos para su evolución a la versión Forms v4.5 El código desarrollado en esta tecnología se ejecuta en Unix (modo carácter) La evolución natural de este tipo de módulos es hacia Forms v10g o bien a J2EE dependiendo de una serie de aspectos de criticidad o de integración con otros componentes de ICM. Forms Developer Página 6
FORMS 4.5: COMPONENTES Para la ejecución de una aplicación Forms v4.5 se necesitan una serie de forms genéricos además de los propios de la aplicación, los siguientes: APLICACIÓN.fmx forms inicial de acceso a aplicaciones, es el forms que ejecuta inicialmente el usuario final y mediante el cual se permite mostrar al usuario final el conjunto de aplicaciones al que tiene acceso en la base de datos de conexión. Forms Developer Página 7
FORMS 4.5: COMPONENTES MENU_XXXX.fmx forms propio de la aplicación XXXX, se copia del menú genérico MENU_SIS.fmb y tan solo se adapta para incorporar el código de aplicación bajo el cual va a ejecutarse (se ampliará a continuación) Forms Developer Página 8
FORMS 4.5: COMPONENTES OPCIÓN.fmx forms genérico que se invoca desde cualquier programa (no menú) y nos permite bien acceder al menu principal (F4), bien acceder a un determinado programa conociendo la opción de menú para el que está catalogado. Forms Developer Página 9
FORMS 4.5: COMPONENTES En forms v4.5 no se utilizan los tipos de archivo MENU (.mmb) que ofrece el producto para la creación de estos. Se utiliza un forms (fmb) llamado MENU_XXXX.fmb que realiza las siguientes funciones: presenta una zona superior cabecera con los datos de la aplicación a las que hemos accedido en el resto de pantalla presenta una bloque multiregistro por el que podemos navegar (subir y bajar) con las distintas opciones de menu a las que tenemos acceso para ejecutar los forms (fmb) de la aplicación (esta información la obtiene de una consulta a las tablas GRUPO_AUTORIZACION y MENU del modelo de datos general USU). seleccionando una determinada opción de menú accederemos al programa que tenga asociado la opción y si esta no tiene programa asociado es por que navegaremos a un submenu. Forms Developer Página 10
FORMS 4.5: COMPONENTES Para la creación de un MENU para una aplicación es necesario copiarse el menu general MENU_SIS.fmb (o bien otro MENU ya existente de otra aplicación) Una vez copiado se renombra para incorporar el nombre de la aplicación a la que dará servicio, por ejemplo para la aplicación XXXX obtendríamos el menu MENU_XXXX.fmb Ya sobre el MENU_XXXX.fmb accederíamos a asignarle el código de la aplicación, lo haremos cumplimentando la variable global GLOBAL.COD_APLICACION del siguiente modo en el trigger KEY- STARTUP: :GLOBAL.COD_APLICACION := XXXX ; A partir de este momento ya podemos compilarlo y dispondremos de un MENU para nuestra aplicación Ahora tan solo tenemos que asignar las opciones de menú que contiene nuestra aplicación (tabla MENU) y autorizarlas a los distintos grupos existentes para nuestra aplicación (mediante la tabla GRUPAUTO). Forms Developer Página 11
FORMS 4.5: Aplicación USU Mediante la ejecución de la aplicación USU se permite invocar las siguientes opciones de menu (entre otras): crear aplicaciones crear los grupos (perfiles) de las aplicaciones asociar a los usuarios a un grupo (solo uno) para una aplicación crear opciones de menu toda aplicación ha de contener una opción nombrada MENU (con código de menú 000000000000) asociar a una opción de menu el programa siguiente, es decir el forms que se ha de ejecutar cuando ejecutemos la opción Si no se asocia programa siguiente implica que accedemos a un submenu asociar opciones de menu a los distintos grupos existentes para la aplicación Forms Developer Página 12
FORMS 4.5: PROGRAMAS Se ha de partir de un programa genérico (CAJA_SIS.fmb / CAJA_CALL.fmb) en función de si llamaremos al forms con NEW_FORM o con CALL_FORM. Contienen los siguientes elementos: zona superior -> cabecera trigger genéricos (PRE-FORM, KEY-STARTUP,KEY-EXIT) resto del canvas accesible para incorporar los bloques que contendrán la lógica del programa a desarrollar Una vez copiado el forms se renombrará siguiendo la nomenclatura de la aplicación bajo la cual se ha de ejecutar: Por ejemplo: XXXX0001.fmb / XXXXALRE.fmb Posteriormente incorporamos la lógica del programa según los requisitos solicitados. Forms Developer Página 13
FORMS V4.5: ENTORNO DE DESARROLLO Las aplicaciones de Forms v4.5 se ejecutan en entorno Unix (modo carácter) bajo la siguiente arquitectura: Digital Unix (icm1003) Cliente Telnet B.Datos Oracle 9.2.0.8 SID denivel2 Login Unix (usuario/contraseña) fichero.login setenv user setenv opasswd f45run Forms Developer Página 14
FORMS 4.5 INTRODUCCIÓN FORMS 4.5 COMPONENTES ENTORNO DE DESARROLLO CICLO DE VIDA FORMS V6 Y V10 Forms Developer Página 15
FORMS 4.5: CODIFICACIÓN Análisis de Requisitos Diseño Codificación desarrollo Producción Las modificaciones y/o adaptaciones de programas desarrollados bajo Forms v4.5 se realizan en el puesto cliente. El POB de desarrollo contiene un grupo de programas relativos a Oracle donde encontraremos el acceso al entorno de desarrollo Forms 4.5. (Oracle Developer) proyecto Una vez realizadas las adaptaciones en el fichero fuente.fmb (no se utilizan.mmb) serán salvadas en el puesto cliente Forms Developer Página 16
FORMS 4.5: CODIFICACIÓN Análisis de Requisitos Diseño Codificación desarrollo Producción Control de versiones: El código fuente actualizado se ha de subir al repositorio correspondiente de Starteam. Forms Developer Página 17
FORMS 4.5: PASO A DESARROLLO Análisis de Requisitos Diseño Codificación desarrollo Producción La compilación y pruebas se realizan en el entorno Unix ya que es en este donde se despliegan los módulos que ejecutará el usuario Para realizar la transferencia del archivo modificado y su posterior compilación en el entorno Unix existe una utilidad denominada CompUnix.exe que nos permitirá realizar estos trabajos Forms Developer Página 18
FORMS 4.5: PASO A DESARROLLO Análisis de Requisitos Diseño Codificación desarrollo Producción La utilidad CompUnix contiene un archivo de configuración CompUnix.ini donde se ha de configurar el usuario y contraseña de Oracle con el que vamos a realizar la compilación así como la base de datos de conexión. Forms Developer Página 19
FORMS 4.5: PASO A DESARROLLO Análisis de Requisitos Diseño Codificación desarrollo Producción La utilidad CompUnix.exe pasa los archivos a la siguiente carpeta y los compila: /usr/aplic_icm/desa_xxxx/forms (siendo XXXX el nombre de aplic) Esta carpeta contendrá los programas de nuestra aplicación (es decir los XXXX*.fmx) Los forms de todas las aplicaciones están linkados a la carpeta general /usr/aplic_icm1/prod/forms. Desde esta carpeta se ejecutan las aplicaciones, aquí ya se encuentran los programas y librerías genéricos: APLICACION.fmx / OPCION.fmx. Forms Developer Página 20
FORMS 4.5: PASO A DESARROLLO Análisis de Requisitos Diseño Codificación desarrollo Producción Una vez finalizada la transferencia y con el código compilado correctamente realizaremos las pruebas estableciendo una sesión telnet con el equipo de desarrollo (icm1003). El cliente Telnet ha de tener configuradas una serie de teclas convencionales para el movimiento por este tipo de aplicaciones: F4. Abandonar una opción de menú. Abandonar la aplicación. F17. Limpiar campo. F18. Bloque anterior. Supr. Lista de valores. Forms Developer Página 21
FORMS 4.5: PASO A PRODUCCION Análisis de Requisitos Diseño Codificación desarrollo Producción PROCEDIMIENTO DE PASO A PRODUCCIÓN: Solicitud a través de aplicación GPAP Forms Developer Página 22
FORMS 6 Y FORMS V10 INTRODUCCIÓN FORMS 4.5 FORMS V6 Y FORMS V10 COMPONENTES FORMS V6: ENTORNO DE DESARROLLO FORMS V6: CICLO DE VIDA FORMS V10: ENTORNO DE DESARROLLO FORMS V10: CICLO DE VIDA Forms Developer Página 23
FORMS V6 Y V10: INTRODUCCION Existe un conjunto de librerías generales (ICM_PLL.pll) donde se centraliza el control de acceso a las aplicaciones (autenticación / autorización) y la gestión de bloqueos. Se dispone de un conjunto de Forms estándar (base) que se personalizan para cada aplicación (MENU_BASE.mmb, APL_BASE.fmb, FORM_BASE.fmb) Necesaria la instalación del applet Jinitiator en el Pc cliente para poder interactuar con Forms Services. Generación de informes con Report Builder Forms Developer Página 24
FORMS V6 Y V10: LIBRERIAS ICM_OBJ: Librería de Objetos que contiene los objetos comunes que componen los distintos módulos genéricos o plantillas a partir de las cuales iniciaremos nuestros programas. GPR_FORM_BASE GPR_APL_BASE ICM_PLL: Librería de PL/SQL que contiene procedimientos de carácter general APLICAR_PERFIL GENERAR:MENU CIFRA LEER_FICH_INI Forms Developer Página 25
FORMS V6 Y V10: TEMPLATES APL_BASE: Form de acceso a aplicaciones Nomenclatura: XXXX_APL.fmb (Ej: PRY1_APL.fmb) Forms Developer Página 26
FORMS V6 Y V10: TEMPLATES MENU_BASE: Menú de acceso a aplicaciones Nomenclatura: XXXX_MENU.mmb (Ej: PRY1_MENU.mmb) FORM_BASE: Forms genérico con referencia a librerías generales Nomenclatura: XXXX_<letra>_<sec>.fmb (Ej: PRY1_M001.fmb) LOV_GEN: Lista de valores Forms Developer Página 27
FORMS V6 Y V10: TEMPLATES F60_MANT1: Plantilla para forms de mantenimiento de catálogos (Todo está en una única pantalla) Forms Developer Página 28
FORMS V6 Y V10: TEMPLATES F60_MANT2: Plantilla para forms de mantenimiento de catálogos Forms Developer Página 29
FORMS V6 Y V10: FICHERO INI [General] BaseDatos=icm21_xxxxx ; *** Tipo de Ejecución, posibles valores: -Web -Windows TipoEjecucion=Web ; *** Variable ejemplo para cargar en cuadro de información en menú inicial Entorno=Consejería de xxxxxxxx [Ayudas HTML] ; *** Ubicación de las páginas html de ayuda WebAyuda=/xxxx/Forms/ [ReportBuilder] ; *** Parámetros válidos solamente para Reports bajo TipoEjecucion=Web Report_cache=\\cifs04v3002\DESA_WEB\web_reps\ Report_mapping=/web_reps/ Cola1=REPLIGERAD01 ;Cola2=REPMEDIANAD01 ; *** Para realizar impresión directa de Pdf's desde el módulo LIS_REP.fmx Impresion_pdf=/impresionpdf/cgi-bin/ImpresionPDF.exe [GLIS] ; *** Parámetros válidos solamente para la ejecución del GLIS GlisHost=icmsvds003 GlisDir=\\cifs04v3002\DESA_WEB\web_reps\ GlisCola=NORMAL GlisMapping=/web_reps/ GlisExe=\\cifs04v3002\DESA_OAS_GENERAL\general\etc\GlisBatchListado.exe GlisExe_Cubo=\\cifs04v3002\DESA_OAS_GENERAL\general\etc\GlisBatchCubo.exe GlisExe_Sql=\\cifs04v3002\DESA_OAS_GENERAL\general\etc\GlisBatchSql.exe GlisTemp=d:\temp\ GlisAyuda=/Glis_Ayuda/Forms/ Forms Developer Página 30
FORMS V6 Y V10: SOLUCIONES CALENDARIO ENVIO DE CORREO VISUALIZACION DE INFORMES REPORT BUILDER INFORMES DE CRYSTAL REPORTS UPLOAD/DOWNLOAD DE FICHEROS ESCANEO DE DOCUMENTOS PROCESOS BATCH FUSION DE DOCUMENTOS Forms Developer Página 31
UPLOAD / DOWNLOAD Las aplicaciones Forms para subir ficheros desde el puesto local a la aplicación y para visualizar ficheros de la aplicación utilizan el servlet upload. Desde Forms se tiene que generar un identificador de fichero único con la siguiente nomenclatura: USER_YYYYMMDD_HH24:MI:SS e invocar al servlet upload con un WEB_SHOW_DOCUMENT según la siguiente url: http://desarrollo.madrid.org/upload/servlet/servidor? bd=<bd>&user=<user>&apli=<apli>&clave=<clave>&plantilla=<plantilla> Estos son los parámetros básicos de la llamada: <bd> - base de datos donde se va a dejar la información del fichero <user> - usuario que realiza la operación (no se utiliza para la conexión) <apli> - aplicación que hace la carga <clave> - identificador único de fichero <plantilla> - plantilla htm a utilizar (opcional, existe una plantilla por defecto) Forms Developer Página 32
UPLOAD FICHEROS TXT El servlet upload deja los ficheros temporalmente en el siguiente modelo de datos Para subir ficheros txt incluir en la llamada al servlet upload el parámetro: opcclob=c - Carga de Fichero de texto a campo CLOB Genera un registro por cada línea del fichero en la tabla GAT_UPLOAD_LINEA Ejemplo:http://desarrollo.madrid.org/upload/servlet/Servidor?bd=icm1003_orcl8&user=U SU1&apli=USUG&clave= USU1_20021217_101330&opcclob=c opclob=t - Carga de Fichero de texto a campo CLOB y campo BLOB Genera un registro por cada línea del fichero de texto en la tabla GAT_UPLOAD_LINEA y un registro en la tabla GAT_UPLOAD_BLOB con el fichero completo. Ejemplo:http://desarrollo.madrid.org/upload/servlet/Servidor?bd=icm1003_orcl8&user=U SU1&apli=USUG&clave= USU1_20021217_101330&opcclob=c Forms Developer Página 33
UPLOAD FICHEROS BINARIOS El servlet upload deja los ficheros temporalmente en el siguiente modelo de datos Para subir ficheros binarios incluir en la llamada al servlet upload los siguientes parámetros: opcblob=c - Carga de archivos a campo BLOB - Genera un registro en la tabla GAT_UPLOAD_BLOB con el fichero completo. zip=s - El fichero se almacenará comprimido zip=n - El fichero no se almacenará comprimido. (Opcional, por defecto no se comprime). Ejemplo:http://desarrollo.madrid.org/upload/servlet/Servidor?bd=icm21_denivel2&user= GAT1&apli=GAT&clave=GAT_20021217_101858&opcblob=C&zip=S Forms Developer Página 34
UPLOAD FICHEROS DESDE URL El servlet upload puede recoger también el fichero de una url en lugar de sacar la página para seleccionar el fichero. Para subir ficheros desde una url hay que incluir en la llamada al servlet upload los siguientes parámetros: opcion=cargardeurl nombre_fich=<nombrefichero> - Nombre del fichero a cargar url_fichero =<url>- URL del fichero a cargar. Ejemplo: http://desarrollo.madrid.org/upload/servlet/servidor?opcion=cargardeurl&bd=icm21_denivel2& user=admon&apli=usui&clave=admon_20021217_101858&plantilla=&nombre_fich=admon _20071108_121949_73.pdf&urlfichero=http://NTICMAPL11/web_reps/ADMON_20071108_12194 9_73.pdf&zip=N Forms Developer Página 35
UPLOAD DE FICHEROS: PASOS 1. GENERAR CLAVE EXTERNA UNICA DE FICHERO La aplicación Forms genera un identificador único de fichero con la siguiente nomenclatura: USER_YYYYMMDD_HH24:MI:SS 2. INVOCAR AL SERVLET UPLOAD La aplicación Forms invoca al servlet de upload con los parámetros correspondientes a través de un WEB_SHOW_DOCUMENT. 3. CARGA EN BBDD DE FICHEROS SUBIDOS La aplicación Forms a través de un cursor lee los registros de las tablas GAT_UPLOAD_* y almacena la información en su modelo de datos. 4. BORRADO DE REGISTROS TEMPORALES La aplicación Forms tiene que borrar los registros leidos de GAT_UPLOAD_* ya que estas tabla son temporales. Forms Developer Página 36
VISUALIZACION DEL CONTENIDO DE UN TIPO CLOB (I) 1. CARGA EN TABLAS TEMPORALES Transferir el contenido del CLOB o de los registros de mi aplicación a las tablas temporales de GAT_UPLOAD_LINEAS a través de la función GAT_FUNC_CARGA_CLOB. Parámetros de entrada de la Función: w_cod_aplicacion: Código de aplicación w_cd_cl_externa: Clave generada por la aplicación form w_nom_archivo: Nombre del archivo a generar para su posterior descarga w_tabla_apl: Nombre de la tabla de la aplicación (XXXX_TABLA_CLOB) w_clave_tabla_apl: Sentencia where para localizar el registro único que contiene el CLOB. Ej: WHERE ID_CLOB=9877 and CDTIPO= A w_campo_clob: Nombre del campo CLOB a extraer de la anterior tabla w_campo_nm_linea: Nombre del campo de la tabla que contiene el número de líneas (Por defecto null) Parámetros de salida de la Función: z_mensaje_err: Mensaje de Error si se produce. Forms Developer Página 37
VISUALIZACION DEL CONTENIDO DE UN TIPO CLOB (II) 2. VISUALIZACION DEL DOCUMENTO Una vez cargados los registros en la tabla temporal GAT_UPLOAD_LINEAS se llama al servlet UPLOAD para visualizar el fichero incluyendo a los parámetros básicos el siguiente parámetro: opcclob=v - Descarga/Visualización de campos CLOB a fichero para su posterior visualización Ejemplo: http://desarrollo.madrid.org/upload/servlet/servidor?bd=icm1003_orcl8&user=us U1&apli=USUG&clave=USU1_20021217_101858&opcclob=V 3. BORRADO DE REGISTROS TABLA TEMPORAL Una vez visualizado el fichero la aplicación Forms tiene que borrar el/los registros de la tabla temporal GAT_UPLOAD_LINEAS. Forms Developer Página 38
VISUALIZACION DE UN CONTENIDO DE TIPO BLOB (I) 1. CARGA EN TABLAS TEMPORALES Transferir el contenido del BLOB de mi aplicación a las tablas temporales de GAT_UPLOAD_BLOB a través de la función GAT_FUNC_CARGA_BLOB. Parámetros de entrada de la Función: w_cod_aplicacion: Código de aplicación w_cd_cl_externa: Clave generada por la aplicación Forms w_nom_archivo: Nombre del archivo a generar para su posterior descarga w_tabla_apl: Nombre de la tabla de la aplicación (XXXX_TABLA_BLOB) w_clave_tabla_apl: Sentencia where para localizar el registro único que contiene el BLOB. Ej: WHERE ID_BLOB=9877 and CDTIPO= A w_campo_blob: Nombre del campo BLOB a extraer de la anterior tabla Parámetros de salida de la Función: z_mensaje_err: Mensaje de Error si se produce. Forms Developer Página 39
VISUALIZACION DEL CONTENIDO DE UN TIPO BLOB (II) 2. VISUALIZACION DEL DOCUMENTO Una vez cargados los registros en la tabla temporal GAT_UPLOAD_BLOB se llama al servlet UPLOAD para visualizar el fichero incluyendo a los parámetros básicos el siguiente parámetro: opcblob=v - Descarga/Visualización de campos BLOB a fichero para su posterior visualización zip=s - El fichero se almacenará comprimido zip=n - El fichero no se almacenará comprimido. (Opcional, por defecto no se comprime). Ejemplo: http://desarrollo.madrid.org/upload/servlet/servidor?bd=icm1003_orcl8&user=us U1&apli=USUG&clave=USU1_20021217_101858&opcblob=V&zip=N 3. BORRADO DE REGISTROS TABLA TEMPORAL Una vez visualizado el fichero la aplicación Forms tiene que borrar el/los registros de la tabla temporal GAT_UPLOAD_BLOB. Forms Developer Página 40
ESCANEO DE DOCUMENTOS Las aplicaciones Forms para escanear documentos desde el puesto local a la aplicación utilizan el servlet upload. Desde Forms se tiene que generar un identificador de fichero único con la siguiente nomenclatura: USER_YYYYMMDD_HH24:MI:SS e invocar al servlet upload con un WEB_SHOW_DOCUMENT según la siguiente url: http://desarrollo.madrid.org/upload/servlet/servidor?opcion=generaactivex bd=<bd>&user=<user>&apl=<apl>&clave=<clave>&formato=<formato> &vis_imag=<vis_imag>&vis_intf=<vis_intf> Estos son los parámetros básicos de la llamada: <bd> - base de datos donde se va a dejar la información del fichero <user> - usuario que realiza la operación (no se utiliza para la conexión) <apl> - aplicación que hace la carga <clave> - identificador único de fichero <formato> - Posibles valores: JPG, TIF, TIFBN, PDF, PDFBN <vis_imag> - Visualizar o no lo escaneado (Valores: S, N) <vis_intf> - Visualizar o no la página del escaner (Valores: S, N) Forms Developer Página 41
PROCESOS BATCH Para la ejecución de procesos en batch desde Forms se ha implementando en el paquete QUJB_PAQ_GENERAL unos procedimientos mediante los cuales se permite realizar una petición de trabajo e inmediatamente se puede consultar el estado de la misma. PETICION DE UN PROCESO: QUJB_PAQ_GENERAL.PETICION EJECUCION DEL PROCESO: QUJB_PAQ_GENERAL.EJECUCION CONSULTA DE ESTADO DE PETICION: QUJB_PAQ_GENERAL.ESTADO Las peticiones se ejecutarán con un servicio llamado PIPEBATCH Forms Developer Página 42
PROCESOS BATCH: ENVIO DE PETICION Se invoca al procedimiento QUJB_PAQ_GENERAL.PETICION(Parametros) Parámetros: Host: máquina donde va a correr el trabajo Cola: cola que gestionará el trabajo Shell: nombre del ejecutable a lanzar Param: parámetros a pasar al ejecutable Usuario: usuario que encarga el trabajo Mensaje: (salida) mensaje de error en una petición errónea Devuelve: El numero de petición (WPETI) que nos ha generado En caso de ERROR devuelve -1 Forms Developer Página 43
PROCESOS BATCH: EJECUCION Se invoca al procedimiento QUJB_PAQ_GENERAL.EJECUCION(Parametros) Parámetros: Wpeti: Nº petición que se ha obtenido en la invocación al procedimiento de petición. Host: máquina donde va a correr el trabajo Devuelve: En caso de petición correcta devuelve 0 En caso de ERROR devuelve -1 Forms Developer Página 44
PROCESOS BATCH: CONSULTA Se invoca al procedimiento QUJB_PAQ_GENERAL.ESTADO(Parámetros) Parámetros: Wpeti: Nº petición que vamos a comprobar Devuelve uno de los siguientes literales: - En cola - En ejecución - Terminada - Petición desconocida Forms Developer Página 45
PROCESOS BATCH: VISUALIZACION DE LOS TRABAJOS Existe un Form general para visualizar los trabajos lanzados con el PIPEBATCH para el usuario conectado. Este form se llama ICM_TRABAJOS. Forms Developer Página 46
FUSION DE DOCUMENTOS bd= Usuario/Password@cadena_conexion operacion= Operación a realizar, puede ser Visualizar (V) o Imprimir (I) codigo= Código de Plantilla copias= Nº de copias fichero= El path y nombre del fichero que se va a generar, el nombre del fichero debe llevar la extensión W2Z. dl= Directorio Temporal Forms Developer Página 47
FORMS V6 : GESTION DE PERFILES F60_USU: Este es un módulo estándar para aplicaciones desarrolladas en Developer v10g que se puede utilizar solamente en el entorno de Desarrollo que permite realizar: Gestión de Perfiles, Opciones de Menú y Acciones Gestión de Usuarios Para el resto de Entornos (PREPRODUCCIÓN, PRODUCCION,..) El paso de la Gestión de Perfiles, Opciones de Menú y Acciones debe realizarse de a través de la aplicación GPAP La Gestión de Usuarios debe realizarse por el grupo de Gestión de Accesos Forms Developer Página 48
FORMS V6 : WEBS DE APLICACION WEB PARA ALOJAR PAGINA ESTATICA INICIAL: Se creará una web estática con FrontPage Frames WEB DE AYUDA: Se creará una web estática con FrontPage Se invocará mediante el procedimiento PROC_AYUDA Forms Developer Página 49
REPORT BUILDER: EJECUCION Ejecución de informes EJECUTAR_REPORT (WReport in varchar2, WDes_Report in varchar2, WParam in varchar2, WCola in varchar2 ); WReport.- Nombre del objeto ReportObject WDes_Report.- breve descripción del informe WParam.- parámetros que se enviarán para la ejecución del report (a nivel de REPORT_OTHER) Por ejemplo aquellos parámetros tipo filtro enviados en tiempo de ejecución. WCola.- nombre de la cola bajo la cual se lanzará el report Las colas han de estar definidas en el fichero.ini de la aplicación como por ejem. Cola1=ReportsServer1 Cola2=ReportsServer2 por defecto (si el valor es NULL) este parámetro tomará siempre el valor de Cola1' El informe queda registrado en la tabla F60_REPORTS se genera como un PDF con la siguiente nomenclatura: YYYYMMDD_HH24MISS.pdf Forms Developer Página 50
REPORT BUILDER: EJECUCION POR TIPO Ejecución de informes por tipo de salida EJECUTAR_REPORT_TIPO(Parametros) WReport.- Nombre del objeto ReportObject WDes_Report.- breve descripción del informe WParam.- parámetros que se enviarán para la ejecución del report (a nivel de REPORT_OTHER) Por ejemplo aquellos parámetros tipo filtro enviados en tiempo de ejecución. WCola.- nombre de la cola bajo la cual se lanzará el report Las colas han de estar definidas en el fichero.ini de la aplicación WTipo: Formato del Fichero de Salida. CSV (Excel - Texto), XLS (Excel), RTF (Word) TXT (Texto), XML, HTML, PDF WDelimiter : Sólamente se tiene en cuenta con Tipo TXT, es el separador de campos si va a Nulo por defecto utiliza el tabulador WCellwrapper: Sólamente se tiene en cuenta con Tipo TXT, engloba el valor del campo con el carácter indicado Z_FICH_OUT: Es un parámetro de Salida y devuelve el Nombre del Fichero generado Wvisual_mens: Valores Válidos S - Visualiza el Mensaje de Lanzado report a Cola de Impresión (defecto) N - No visualiza el Mensaje Forms Developer Página 51
REPORT BUILDER: VISUALIZACION Visualización de informes: LIS_REP.FMX Permite consultar/borrar/actualizar informes Forms Developer Página 52
REPORT BUILDER: FICHERO INI [ReportBuilder] ; *** Parámetros válidos solamente para Reports bajo TipoEjecucion=Web ;*** Path en donde se ubicarán los ficheros PDF generados Report_cache=\\cifs04v3002\DESA_WEB\web_reps\ ;*** Path virtual para la localización de los ficheros PDF generados Report_mapping=/web_reps/ ;*** Colas de ejecución de Reports que se corresponderán con los Servidores de Reports existentes Cola1=REPLIGERAD01 ;Cola2=REPMEDIANAD01 ; *** Para realizar impresión directa de Pdf's desde el módulo LIS_REP.fmx Impresion_pdf=/impresionpdf/cgi-bin/ImpresionPDF.exe Forms Developer Página 53
REPORT BUILDER Distribución de trabajos/informes Report PDF Diseño de página Log de ejecución de Reports Colas de ejecución Forms Developer Página 54
FORMS V6 : MIGRACION A V10 CONV_F10G: Conversor de Forms6i -> Forms10g Nos facilitará el paso de nuestros forms de versión 6i a 10g, realizá los siguientes cambios: actualización de built-in no soportadas en la nueva versión cambio de referencias de librerías de acceso a b.d. por acceso a fichero cambio en las llamadas a forms (lower -> upper) como establecimiento en el estándar de nomenclatura para plataforma Linux (ejem: XXXX_FORM1.fmx) cambio en los nombres de imágenes (lower -> upper) idem del pto. Anterior cambio de formato de versión 6i a 10g Forms Developer Página 55
FORMS V6I: ENTORNO DE DESARROLLO Las aplicaciones Forms v6i se ejecutan bajo plataforma Windows 2000 Win2000 (nticmdes01) Internet Explorer (Applet Jinitiator) B.Datos Oracle 9.2.0.8 SID denivel2 Forms Server Report Server Forms Developer Página 56
FORMS V6I: ENTORNO DE PRODUCCIÓN intranet / educama / sirius HW LB H W LB HW LB H W LB HW LB H W LB Servidores ReportServer (uno por granja) Granja de servidores Intranet Granja de servidores Educama Granja de servidores Sirius ReportServer PipeBatch Servidores PipeBatch (uno por granja) Servidores de BBDD Servidores de BBDD Servidores de BBDD Forms Developer Página 57
FORMS 6: CODIFICACIÓN Análisis de Requisitos Diseño Codificación desarrollo Producción Las modificaciones y/o adaptaciones de programas desarrollados bajo Forms v6 se realizan en el puesto cliente. El POB de desarrollo contiene un grupo de programas relativos a Oracle donde encontraremos el acceso al entorno de desarrollo Forms 6. (Oracle Developer) proyecto Forms Developer Página 58
FORMS 6: CODIFICACIÓN Análisis de Requisitos Diseño Codificación desarrollo Producción Control de versiones: El código fuente actualizado se ha de subir al repositorio correspondiente de Starteam. Forms Developer Página 59
FORMS 6: PASO A DESARROLLO Análisis de Requisitos Diseño Codificación desarrollo Producción La ejecución se realiza en el entorno Windows ya que es en este donde se despliegan los módulos que ejecutará el usuario. Para realizar la transferencia del archivo modificado y compilado previamente al entorno Windows existe una utilidad denominada CONTROL_FICHEROS.exe Forms Developer Página 60
FORMS 6: PASO A DESARROLLO Análisis de Requisitos Diseño Codificación desarrollo Producción La utilidad CONTROL_FICHEROS contiene un archivo de configuración donde se ha de configurar el usuario y contraseña de Oracle con el que vamos a realizar la compilación así como la base de datos de conexión. Forms Developer Página 61
FORMS 6: PASO A DESARROLLO Análisis de Requisitos Diseño Codificación desarrollo Producción Para probar la ejecución de los proyectos forms 6 en desarrollo se accede a la url http://desarrollo.madrid.org/xxxx o http://nticmdes01.icm.es/xxxx Forms Developer Página 62
FORMS 6: PASO A PRODUCCION Análisis de Requisitos Diseño Codificación desarrollo Producción PROCEDIMIENTO DE PASO A PRODUCCIÓN: A través de la herramienta PPRO http://intranet.madrid.org/ppro Opción: Distribución de software Forms Developer Página 63
FORMS V10: ENTORNO DE DESARROLLO FW1 HW LB desarrollo.madrid.org icmcache01 icmcache02 Oracle Web Cache Oracle Web Cache Apache01 Apache02 Apache Apache FW2 Servidor ReportServer/PipeBatch Nodo OC4J Nodo OC4J icmformd01 ENTORNO FORMS Forms Developer Página 64
FORMS V10: CODIFICACIÓN Análisis de Requisitos Diseño Codificación desarrollo Producción Las modificaciones y/o adaptaciones de programas desarrollados bajo Forms v10 se realizan en el puesto cliente. El POB de desarrollo contiene un grupo de programas relativos a Oracle donde encontraremos el acceso al entorno de desarrollo Forms 10. (Oracle Developer) proyecto Forms Developer Página 65
FORMS V10: CODIFICACIÓN Análisis de Requisitos Diseño Codificación desarrollo Producción Control de versiones: El código fuente actualizado se ha de subir al repositorio correspondiente de Starteam. Forms Developer Página 66
FORMS V10: PASO A DESARROLLO Análisis de Requisitos Diseño Codificación desarrollo Producción La compilación y pruebas se realizan en el entorno Linux ya que es en este donde se despliegan los módulos que ejecutará el usuario Para realizar la transferencia del archivo modificado y su posterior compilación en el entorno Linux existe una utilidad denominada CompLinux.exe que nos permitirá realizar estos trabajos Forms Developer Página 67
FORMS V10: PASO A DESARROLLO Análisis de Requisitos Diseño Codificación desarrollo Producción La utilidad COMPLINUX contiene un archivo de configuración donde se ha de configurar el usuario y contraseña de Oracle con el que vamos a realizar la compilación así como la base de datos de conexión. Forms Developer Página 68
FORMS V10: PASO A DESARROLLO Análisis de Requisitos Diseño Codificación desarrollo Producción Para probar la ejecución de los proyectos forms 6 en desarrollo se accede a la url http://desarrollo.madrid.org/xxxx o http://nticmdes01.icm.es/xxxx Forms Developer Página 69
FORMS V10: PASO A PRODUCCION Análisis de Requisitos Diseño Codificación desarrollo Producción PROCEDIMIENTO DE PASO A PRODUCCIÓN: A través de la herramienta PPRO http://intranet.madrid.org/ppro Opción: Distribución de software Forms Developer Página 70
SIGUIENTES PASOS: MIGRACIÓN DE SOPORTE A MANTIS Mantis: Herramienta de Soporte Forms Developer Página 71