Mostrando entradas con la etiqueta forms. Mostrar todas las entradas
Mostrando entradas con la etiqueta forms. Mostrar todas las entradas

miércoles, 26 de febrero de 2014

Unas cuantas utilidades para desarrolladores: Forms Tool

Hoy os quiero presentar una aplicación que, aunque la versión que utilizo ya tiene unos años, aún me resulta muy útil para trabajar con Forms y Reports, especialmente si utilizáis controladores de versiones tipo CVS o SVN. Estoy hablando de Forms Tool, de la compañía ORCL TOOLBOX:


Se trata de una herramienta que nos ofrece una serie de utilidades para los desarrolladores de Forms y Reports, a saber:

1. Comparación de objetos creados con Oracle Developer: forms (FMB), reports (RDF), librerías (PLL), librerías de objectos (OLB), scripts de PL/SQL (SQL) y menús (MMB):

Comparación de módulos


La herramienta nos muestra visualmente las diferencias entre dos objetos que queramos comparar, pudiendo además eliminar o añadir lo que sobra o falta de manera visual y muy sencilla:
Visualización de diferencias en módulos


Diferencias en código PL/SQL

Esta herremienta la utilizo con cierta frecuencia para poder documentar los cambios entre versiones de objetos.

2. Herramienta de búsqueda, llamada Power Search, permite hacer búsquedas muy sofisticadas sobre un conjunto de ficheros con objetos de Oracle Developer dada una cadena de búsqueda o un valor de una propiedad, pudiend incluso utilizar expresiones regulares:

Herramienta de búsqueda


3. Developer Report: nos permite generar un completo informe sobre objetos forms, reports, etc.:

Generación de informes de objetos Developer

Visualización de informe Developer
4. Por último, desde la versión V3.0 cuenta una herramienta de procesamiento de módulos por lotes, muy útil cuando queramos realizar ciertas tareas sobre un grupo de módulos, como compilar, convertir o extraerlos en uno sólo.


Para más información, podéis visitar la web de ORCL TOOLBOX.

Tooltips basados en items

Tras más de 2 años, vuelvo a publicar una entrada en mi blog. De ahora en adelante espero poder actualizar con más frecuencia.

Hoy quiero hablaros sobre los tooltips, esas ayudas textuales que aparecen cuando posicionamos el puntero del ratón sobre un item en Forms. A veces se nos da el caso de que hay que poner una ayuda de burbuja (tooltip) a un item cuyo valor no es fijo, sino que depende del valor de del mismo item u otro diferente. La manera lógica de proceder es añadir, en el trigger WHEN-NEW-RECORD-INSTANCE del bloque que contiene el item, un script como este: 

SET_ITEM_PROPERTY('BLOQUE.ITEM',TOOLTIP_TEXT,:BLOQUE.ITEM);

En este caso la ayuda de tooltip es el propio valor del item (útil por ejemplo si no tenemos espacio para mostrar el item en toda su anchura) y esto en principio funciona bien. El problema lo tendríamos si el texto de ayuda depende de otro item, en cuyo caso cuando nos cambiemos de fila el texto de ayuda no se actualizará. Para solucionarlo hay que hacer lo siguiente:
1. Añadir el código del trigger como se ha mencionado antes, es decir:  

SET_ITEM_PROPERTY('BLOQUE.ITEM',TOOLTIP_TEXT,:BLOQUE.ITEM2);

2. En la propiedad Ayuda de burbuja (Tooltip) poner el nombre del item que queremos mostrar, sin usar los dos puntos(:):

Con esto conseguiremos que el valor del texto se vaya actualizando conforme cambiamos de registro.

jueves, 22 de diciembre de 2011

Alertas de más de 255 caracteres

A veces he tenido la necesidad de presentar mensajes más largos que los 255 caracteres que nos permiten las alertas de Oracle Forms. Por ello hoy os voy a presentar una función, que con la ayuda de un formulario, podréis visualizar alertas con mensajes de hasta 4000 caracteres.

viernes, 14 de octubre de 2011

Commit sin validación previa

He aquí lo que dice Oracle sobre la instrucción COMMIT cuando se ejecuta en un formulario de Forms:
“Causes Oracle Forms to update data in the database to match data in the form. Oracle Forms  first validates the form, then, for each block in the form, deletes, inserts, and updates to the database, and performs a database commit. As a result of the database commit, the database releases all row and table locks.”
Finalmente advierte lo siguiente:
“If you use a PL/SQL COMMIT statement in an anonymous block or a form-level procedure, Oracle Forms interprets that statement as a call to the COMMIT_FORM built-in”. Resumiendo, no es posible hacer un COMMIT sin evitar la validación de los datos modificados en los bloques.

domingo, 2 de octubre de 2011

Cómo crear en Forms un canvas tabular con scrollbar vertical y horizontal

Hola a todos y bienvenidos a este espacio web en el cual pretendo compartir con la comunidad mis conocimientos sobre PL/SQL, Oracle Forms y Reports fruto de 10 años de experiencia con estas herramientas.

Mi intención no es más que dar a conocer ciertos trucos o técnicas que pueden servir de gran ayuda sobre todo a los que lleváis poco tiempo trabajando con ellas, aunque en ocasiones es posible que resulte interesante a los más expertos. En cualquier caso, espero que os sea de utilidad.


Hoy voy a empezar explicando cómo se le puede poner a un canvas tabular barras de desplazamiento horizontales y verticales al mismo tiempo. Algo tan aparentemente trivial no lo es en Forms, puesto que en principio es posible hacerlo de manera sencilla, pero luego no funciona como es de esperar.