You are on page 1of 95

Capacitacin Empresarial

Manual Oracle Forms 9i







P P G GI IN NA A 1 1 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S


CAPITULO 1


Conceptos y Componentes


Esta leccin se refiere acerca de Forms y las relaciones entre los principales
componentes de Forms. Usando este conocimiento, usted puede planear e implementar
las estructuras de sus aplicaciones.


Objetivos


Al final de esta leccin, usted tendr la habilidad para realizar lo siguiente:


Aplicar las normas del producto y su posicin en la barra de herramientas (toolset)
de Oracle

Identificar los principales componentes en una aplicacin de Forms y como estn
relacionadas

Usar el plan estructural para la aplicacin del curso


Visin General


Forms es el componente ms significativo de Oracle Internet Developer Suite 9i.
Forms le permite un rpido desarrollo en aplicaciones form-based para
presentar y manipular datos en una variedad de formas.


Las aplicaciones de Forms permiten al usuario:


Insertar (insert), actualizar (update), borrar (delete) y consultar datos (query
data) usando una variedad de interfaces item

Presentar datos usando texto, imgenes y controles VBX

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 2 2 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Controlar formas a travs de varias ventanas y transacciones en la base de
datos

Acceder las facilidades de grficos y aplicaciones OLE2 directamente

Acceder facilidades comprensivas usando mens integrados

Enviar datos directamente a Reports


Como diseador de aplicaciones de Forms, usted puede:


Disear formas que usen un nmero de fuente de datos, incluyendo la base
de datos de Oracle

Construir aplicaciones rpidamente usando las potentes herramientas de
desarrollo GUI

Disear aplicaciones que sean transportables a travs de ambos ambientes
modo carcter (character-mode) y GUI

Fcilmente copiar o mover objetos y sus propiedades entre los componentes
de las aplicaciones.

Tener un uso familiar en el diseo de las caractersticas comunes de las
herramientas de Oracle Internet Developer Suite 9i, como son Layout Editor,
Object Navigator y PL/SQL en el ambiente de desarrollo


Mdulos Forms


Una aplicacin de Forms puede componerse de varios mdulos (files) en los
siguientes tres tipos:


Form

Una forma presenta los objetos y los datos con los que el usuario puede ver e
interactuar. En una forma los datos estn colocados dentro de registros.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 3 3 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Men

Un modulo de men puede contener una jerarqua de mens, cada uno con items
seleccionados por el usuario para escoger.


Librera

Una coleccin de PL/SQL unidades de programa (program units).


Los mdulos de men estn usualmente unidos a un mdulo de Form. En este
caso los mens pueden proveer un servicio para las facilidades ofrecidas por una
forma, como bien opciones para invocarlas desde cualquier otro sitio.


Los mdulos de librera pueden contener program units que son utilizados por
ambos mdulos forma y men.


Componentes del Producto


Forms incluye tres componentes a los cuales usted puede accesar como diseador de
aplicaciones:


Forms Runform

Este es el programa que corre una aplicacin de Forms ejecutable, y sus respectivos
mdulos. Los registros usados en tiempo de corrimiento (runtime) pueden estar siendo
generados por el componente generador (generate).


Forms Generate

Este lee el diseo de la definicin de un modulo y crea un ejecutable.


Forms Designer

Este componente le permite disear y almacenar las definiciones de un modulo de
forma, men y librera, y tambin le permite invocar otros dos componentes Generate
y Runform. El componente Designer debe correrse en un ambiente GUI.
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 4 4 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Nota: Los comandos para invocar los componentes del producto varan de acuerdo a
la plataforma.


Estructurando Mdulos en Forms


Los mdulos de Forms construyen el principal cuerpo (body) de una
aplicacin de Forms. Estos pueden consistir en diferentes tipos de objetos, y
algunos de estos son visibles para el usuario en tiempo de corrimiento
(runtime).


Los tres principales objetos en una forma son:

Items
Estos son objetos que presentan valores de datos para el usuario, o
permiten al usuario interactuar con la forma, dependiendo del tipo de
item. Los items estn lgicamente agrupados en bloques (blocks), y
visiblemente en un arreglo dentro de un canvas.


Canvases
Un canvas es una superficie donde los objetos visuales estn
agrupados. Un modulo de Form puede tener varios canvas. Por default,
todos los canvases dentro de una forma aparecen en la misma ventana,
pero tu usted puede asignar ventanas diferentes para cada canvas y que
varios canvases puedan ser vistos al mismo tiempo.


Blocks
Un bloque (block) es el propietario lgico de los items. Los items estarn
relacionados lgicamente dentro de un bloque; por ejemplo, ellos pueden
corresponder a columnas en la misma base de datos.

Nota: Los items en un bloque no necesitan estar fsicamente agrupados,
pueden extenderse por algunos canvases ( y ventanas).


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 5 5 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Navegacin dentro de un mdulo form


Cuando usted corre una forma, principalmente navega alrededor de su
contenido ya sea por items y bloques, *no* por canvas. Cada item tiene una
posicin de secuencia dentro de un bloque, y cada bloque tiene una posicin de
secuencia en la forma.


Cuando un usuario solicita moverse al siguiente item dentro de un bloque,
enfoca cual ser el siguiente item en secuencia. Si el siguiente item esta en un
canvas diferente, entonces ese canvas es desplegado automticamente por
Forms.


Similarmente, los usuarios pueden solicitar moverse al siguiente bloque (o
anterior). Si el primer item en el bloque reside en otro canvas, entonces el
canvas es desplegado automticamente.


Por supuesto, si ya usted puede ver el item al que se quiere mover, entonces la
aplicacin le permite dar clic directamente con el mouse. Tambin usted puede
programar las facilidades dentro de la aplicacin para alojar navegacin en
otras maneras.


Base Table Blocks


Cuando usted construye aplicaciones de base de datos con Forms, algunos de los
bloques sern Tabla Base (base table). Una Base Table Block esta asociada con una
base de datos especfica (o vista).


Usted puede programar un bloque sencillo para accesar datos en varias tablas y datos
fuentes, esto lo puede hacer escribiendo triggers, pero un bloque solo puede tener una
tabla base.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 6 6 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Para una tabla base, Forms automticamente:


Crea items en el bloque que corresponda a las columnas en la tabla

Produce cdigo en la forma para emplear las reglas de los constraints de la
tabla

Genera SQL en tiempo de corrimiento (SQL implcito) para insertar, actualizar,
borrar y consultar registros en la tabla base, basada en las acciones del
usuario.


En runtime, usted puede usar las llaves de funcin estndar, botones u opciones de
men para iniciar consultas, insertar, actualizar o borrar operaciones en la tabla base y
posteriormente dar commit a la transaccin.


Relaciones Maestro-Detalle


Para soportar la relacin entre bloques y sus tablas base, puede definir un
bloque como detalle (detail) o tambin conocido como hijo. Esto permite los
valores de primary key y foreign key para ser relacionados a travs de bloques,
y a los bloques para poder sincronizar los datos que estn desplegando.


Forms automticamente genera los objetos y el cdigo necesario para soportar
relaciones maestro-detalle (Master-Detail Relationship). Como diseador usted
solo necesita solicitar la relacin.


Usted puede disear un bloque para mostrar un registro por tiempo (single
record block) o varios registros a la vez (multi-record block). En cualquier caso,
los registros actualizados dentro de un bloque no visible en la pantalla son
almacenados en buffer.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 7 7 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Muchos Bloques o Muchas Formas?


Tpicamente, una aplicacin de Forms consiste de ms de un bloque. Esto
puede realizarse para:


Separar el ciclo de navegacin de un grupo de items de otro.

Mapear cada bloque en una base de datos diferente (usted puede tener
una tabla base por bloque).

Producir una forma maestro-detalle, con un bloque maestro y sus
bloques detalles correspondientes que estn relacionados al maestro.


Usted puede crear un extenso modulo con muchos bloques. Alternativamente,
usted puede crear varios pequeos mdulos con algunos bloques en cada uno.


Generalmente, teniendo una aplicacin modular con varios pequeos mdulos
significa que:


Los mdulos solo son cargados cuando sus componentes son
requeridos, y estos se conservan en memoria

El mantenimiento puede ser realizado sin que se regeneren o se carguen
los otros

Forms puede mandar llamar a cada uno cuando sea requerido

Paralelamente el desarrollo puede llevarse a cabo por diferentes grupos
de miembros en diferentes componentes


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 8 8 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Aqu estn algunos de los puntos a considerar cuando agrupamos bloques en
una aplicacin:


Bloques en el mismo mdulo Bloques en diferente mdulo
Pueden estar directamente
vinculados en relaciones maestro-
detalle
No pueden vincularse las
relaciones inter-bloques
Navegacin entre bloques
manejada por la funcionalidad
default
Navegacin entre bloques de
diferentes Forms son programadas
por el diseador.


Jerarqua de objetos


Estos son algunos de los tipos de objetos que usted puede crear en un modulo
Form. Algunos de estos son desarrollados con ms detalle ms adelante.


Objeto Descripcin
Bloque Seccin lgica de una forma. Propio de un mdulo
Item Miembro de un bloque. Los items son grupos funcionales
dentro de los registros
Trigger Es un bloque de PL/SQL que ejecuta o dispara un evento. Los
triggers pueden pertenecer a un modulo, bloque o item,
dependiendo de los que se quiera disparar
Ventan
a
Una ventana contiene las vistas de los canvas
Canvas
-view
(vista)
Es la superficie donde los objetos visuales estn arreglados.
Un canvas puede contener boilerplate (etiquetas) de texto y
grficos, cada uno con informacin esttica con la que el
usuario no puede interactuar.
Progra
m Unit
Son los nombres de los procedimientos, funciones o paquetes
Otros
objetos
Estos incluyen alertas (alerts), parmetros (parameters) y
grupos de registro (record groups)



Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 9 9 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

La siguiente tabla muestra algunas tablas de la base de datos que se usaran
dentro del curso:

Nombre de
la tabla
Descripcin
S_CUSTOM
ER
Name, adress, credit rating y sales represenative ID de
cada cliente (customer)
S_DEPT Name, department ID y region ID de cada departamento
S_EMP Name, userid, salary, title y manager ID de cada
empleado
S_IMAGE Format y filename de cada imagen del producto
S_INVENTO
RY
Warehouse ID e stock information de cada product ID
S_ITEM Product, price y quantity information de cada orden (order)
S_PRODUC
T
Name, decrption e image ID de cada producto
S_ORD Customer ID y order information de cada orden (order)


Resumen.


Forms, un componente de Oracle Internet Developer Suite 9i, le permite un rpido
desarrollo de aplicaciones form-based para presentar y manipular datos en
distintas maneras. Forms le permite consultar, insertar, actualizar y borrar datos.

Contiene una potente integracin de caractersticas GUI

Las aplicaciones consisten en mdulos de formas, mens y libreras. Una forma
presenta los objetos y los datos que el usuario puede ver e interactuar. Un mdulo
de men puede incluir una jerarqua de mens, cada uno con items seleccionados
por el usuario para elegir. Un mdulo de librera es una coleccin de PL/SQL
program units.

Un modulo de Forms consiste de bloques lgicos. Un bloque es el propietario
lgico de los items.

Los items dentro de un bloque no necesitan estar fsicamente agrupados. Los
items dentro de un bloque pueden conectarse a varios canvases.

Usted puede rpida y fcilmente construir bloques de bases de datos y relaciones
entre bloques.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 1 10 0 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

CAPITULO 2


Corriendo una aplicacin de Forms


Para disear y construir aplicaciones amigables para el usuario, es esencial entender
como opera una aplicacin de Forms. Esta leccin familiariza con el operador interface
de Forms.


Objetivos


Al final de esta leccin, usted tendr la habilidad para realizar lo siguiente:


Usar la terminologa tiempo de corrimiento (runtime) en una sesin Runform
(corriendo la forma)

Navegar a travs de las aplicaciones de Forms

Recuperar datos no restringidos

Recuperar datos restringidos

Insertar, actualizar y borrar registros


Comenzando una sesin Runform


Una sesin Runform consiste de uno o ms vnculos en los mdulos de forma y men,
todo bajo control de un solo usuario.


Dentro del ambiente GUI, usualmente usted comienza una sesin de Forms Runform:

Seleccionando un icono en la ventana del sistema (Microsoft Windows)

Seleccionando una opcin del men en la ventana del sistema


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 1 11 1 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

En ambos casos, esta accin ejecutar un comando Runform para comenzar una
sesin. (El nombre del comando varia de acuerdo a la plataforma).


Por ejemplo:

IFRUN90 <MODULE_NAME> [USERID/PASSOWRD] [PARAMETERS]


En un ambiente GUI, las opciones Runform son desplegadas en pantalla cuando usted
ejecuta el comando (F45RUN en Microsoft Windows). Esta pantalla le permite entrar al
nombre de la forma, el usuario de la base de datos y otras opciones.


Qu es el MDI Parent Window?


El Multiple-Document Interface (MDI) parent window es la ventana contenedor
en la cual usted puede desplegar sus aplicaciones en mltiples mdulos de
Forms.


Nota: El concepto de MDI es solamente aplicable a Microsoft Windows.


Qu es el men default?


Es el men que es usado automticamente por todas las aplicaciones de
Forms. Este proporciona un mtodo alternativo del uso de las operaciones.
Usted puede reemplazar o personalizar el men default para introducir sus
propias funciones dentro de un modulo de Forms.

Qu es la Consola?


La consola es el nombre genrico de las caractersticas estndar que
proporcionan informacin til para el usuario en tiempo de corrimiento (runtime).


La lnea de mensaje

El estado de la lnea

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 1 12 2 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S


Qu son la lnea de mensaje y el estado de lnea?

La lnea de mensaje es un componente de la consola que despliega Forms y
mensajes de una aplicacin especifica. El estado de lnea es un componente de
la consola que despliega una variedad de indicadores para reflejar el estado
actual del modulo Forms.


Indicador Definicin
Count El nmero de registros recuperados y desplegados por una
consulta (query)
* El ultimo registro recuperado
Estos son registros por encima del actual
Estos son registros por debajo del actual
ENTER
QUERY
El bloque actual esta en modo de Enter Query y no tiene
registros recuperados
<List> Una lista de valores (LOV) esta asociada con el item actual


Identificando los elementos de los datos


Una aplicacin tpica de Forms usa y despliega una variedad de objetos y tipos
de item:

Boilerplate text (etiquetas de texto)

Boilerplate graphics (etiquetas de grficos)

Text items (items de texto)

Display items (items desplegables)

Radio Buttons (botones de radio)

Check boxes (cajas checables)

Image items (items de imgenes)

Custom items (items personalizados)


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 1 13 3 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

El ambiente determina la apariencia (el formato y tamao de los objetos no
cambia) de la aplicacin y los elementos de los datos. Visualmente las
caractersticas llaman la atencin, estas se despliegan cuando se corre la
aplicacin en un ambiente bit-map, estn limitadas cuando se corre en un
medio ambiente modo-caracter (character-mode).


Navegando en tiempo de ejecucin (Runtime)


Se puede utilizar los mtodos de navegacin siguientes:

Default Men

Mouse

Buttons

Function Keys


Navegando a travs de la aplicacin con el Men Default


El men default es automticamente disponible, a menos que este haya sido
deshabilitado o reemplazado con un men personalizado. Usted puede
seleccionar del men usando el mouse o las teclas de funcin (function keys).
Utilice el men para:

Mover el cursor

Salvar o limpiar todos los cambios

Ejecutar consultas

Insertar nuevos registros

Invocar la ayuda




Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 1 14 4 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Navegando a travs de la aplicacin con el Mouse


Usted puede utilizar el mouse para navegar y realizar operaciones en un
ambiente bit-map. Como no necesita aprender las teclas de funcin usando el
mouse se simplifica la operacin de las aplicaciones en Forms. Utilice el mouse
para:

Mover el cursor

Seleccionar de un men

Seleccionar de una lista de valores (LOV)

Marca y desmarca un check box

Presionar un botn

Presionar un botn dentro de un radio group

Seleccionar una ventana abierta

Responder a un alert

Desplegar registros o lneas usando un bloque o item en un scroll bar


Navegando a travs de la aplicacin con botones


Algunas aplicaciones hacen uso de botones como significado de navegacin.
Usted puede presionar un botn con el mouse para iniciar una accin en
particular.


Navegando a travs de la aplicacin con teclas de funcin


Si esta corriendo su aplicacin en un ambiente bit-map, usted puede elegir
navegar con el mouse. Sin embargo, usted puede moverse de item en item en
una secuencia ms eficientemente con las teclas de funcin. Para ver una lista
de teclas y de funciones seleccionar Help -> Keys


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 1 15 5 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Nota: Cuando se esta corriendo una aplicacin en Forms en un ambiente
character-mode, las teclas de funcin (Function Keys) esta solo el significado de
la operacin.


Recuperando datos


Usted puede utilizar un mdulo de Forms para recuperar datos de la base de datos sin
conocer siquiera alguna sintaxis de SQL. Sin embargo, si usted ha tenido experiencia
como usuario en SQL, usted puede complementar el proceso por default con sus propios
predicados. Estos son los dos tipos generales de queries:


Global
Query
(sin
restriccion
es)
Es el equivalente de seleccionar todas las filas para todas
las columnas representadas en la tabla base para el
bloque consultado
Query Es el equivalente de seleccionar un rango de filas para
todas las columnas representadas en la tabla base para el
bloque consultado


Realizando un Query sin restriccin


Usted puede recuperar datos sin restriccin de la siguiente forma:


Seleccionar Query -> Execute

Presionar [Execute Query]

Dar clic el en botn Execute Query


Nota: No puede realizar un query mientras no haya salvado
updates/inserts/deletes. Usted necesita salvar o limpiar los cambios antes de
que este disponible para continuar con la consulta.


Realizando un Query restringido

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 1 16 6 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S


Para realizar una consulta restringida, usted puede usar:

Valores combinados

Diseos combinados

Un query en donde el usuario puede ingresar sus predicados SQL


Pasos para realizar un query restringido

Seleccionar query -> enter

ENTER QUERY es desplegado en la lnea de estado

Ingresar el criterio dentro de los items apropiados

Seleccionar Query -> Execute


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 1 17 7 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Usando el Query Where Dialog


El query where dialog es una ventana para ingresar un criterio complejo, usando SQL
sin elaborar. Para usar el query where dialog efectivamente se necesita un
conocimiento de SQL. Utiliza el query where para:


Escribir condiciones complejas

Escribir con predicados OR

Ordenar el resultado de un query


Nota: Forms lgicamente utiliza el operador AND para aadir las condiciones del query
where a cualquier otro criterio y construir una declaracin SELECT


Si usted agrega un ORDER BY en runtime, se sustituye cualquier ordenacin definida
por el diseador.


Pasos para usar un Query Where Dialog

Seleccionar query -> enter

Escribir (:) seguido por una carcter variable nico en uno o mas items

Seleccionar query -> execute. (Alternativamente, usted puede seleccionar query
-> count hits, si solo quiere saber cuantos registros contienen el criterio del
query)

Introducir el criterio usando:variables, SQL y los operadores lgicos

Clic OK


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 1 18 8 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Modos de operacin


Forms tiene dos modos de operacin: Modo Normal y Modo Enter Query


Modo Enter Query


El modo enter query es un modo de operacin que permite ingresar un criterio
para una consulta a la base de datos. Cuando usted esta dentro de un modo
enter query, las keystrokes son interpretadas como una bsqueda de criterios
para recuperar datos restringidos.


Qu puede hacer en modo enter query?

Recuperar todos los registros

Recuperar registros usando una seleccin de criterios

Recuperar registros usando el query where dialog

Obtener el nmero de registros que sern recuperados antes de que sean
trados de la base de datos usando query -> Count Hits


Qu no puede hacer en modo enter query?

Navegar fuera del bloque actual

Salir de la sesin runtime de Forms

Usar ciertas funciones, como Next Record

Insertar nuevos registros

Actualizar registros existentes

Borrar registros


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 1 19 9 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Modo Normal


El modo normal es el modo de operacin que permite insertar y alterar registros
en la base de datos. Cuando esta dentro de un modo normal, las keystrokes
son interpretadas como la insercin de nuevos registros o la alteracin de los ya
existentes.


En modo normal usted puede:

Recuperar todos los registros

Insertar nuevos registros

Actualizar registros

Borrar registros

Salvar registros (commit)

Navegar fuera del actual bloque

Salir de la sesin runtime de Forms


En modo normal usted no puede:

Recuperar registros restringidos

Invocar el query where dialog


Insercin, actualizacin y borrado de registros.


Usted esta en modo normal si se encuentra en un mdulo tpico de insercin. Esto
significa que Forms considera cualquier cosa tecleada dentro de un registro en blanco
como una insercin y cualquier cosa tecleada sobre un registro existente como una
actualizacin.



Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 2 20 0 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Pasos para insertar un registro
(INSERT)

1. Asegurar que se tiene el cursor posicionado en un registro en blanco

a) Utilizar scroll bar hacia abajo para encontrar alguno (siempre es el ultimo)

b) Seleccionar Record -> Insert


2. Insertar los datos dentro de los items


Pasos para actualizar un registro
(UPDATE)

1. Seleccionar Query -> Enter

2. Insertar el criterio a buscar para recuperar los registros apropiados

3. Seleccionar Query -> Execute para recuperar todos los registros que satisfagan
el criterio de bsqueda

4. Moverse a travs de los registros, parando en el registro que va a ser
actualizado

5. Actualizar el registro


Pasos para borrar un registro
(DELETE)

1. Seleccionar Query -> Enter

2. Insertar el criterio a buscar para recuperar los registros apropiados

3. Seleccionar Query -> Execute para recuperar todos los registros que satisfagan
el criterio de bsqueda

4. Seleccionar Record -> Remove para limpiar el registro
Esto no borra automticamente el registro de la base de datos, solo lo indica
para ser eliminado


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 2 21 1 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Realizacin de inserciones, actualizaciones y eliminaciones permanentes


Para hacer cualquier insercin, actualizacin o eliminacin permanente usted
debe salvar (commit) los cambios en la base de datos. Seleccionar Action ->
Save

Desechando inserciones, actualizaciones y eliminaciones


Para desechar cualquier insercin, actualizacin o eliminacin usted debe
limpiar todos los registros en lugar de salvarlos. Seleccionar Action -> Clear All


Desplegado de Errores


Se utiliza para ver los errores ocurridos: Seleccionar Help -> Display Error


Muestra

Se declara el error ocurrido en SQL

Informacin acerca del error ocurrido


Resumen


En esta leccin se introdujo a las interfaces operadoras de Forms. Fueron cubiertos
los siguientes conceptos:


Los elementos de una forma:

- Etiquetas de texto y grficos (Boilerplate)

- Items de texto, desplegables, de imagen y personalizados

- Radio buttons y Check boxes


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 2 22 2 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Navegar a travs de una aplicacin con:

- El men Default

- El mouse


- Botones (Buttons)

- Teclas de funcin (Function Keys)


Recuperar datos efectuando:

- Restricted queries donde usted suministra criterios de bsqueda

- Unrestricted queries donde usted no suministra criterios de bsqueda


Insertar, actualizar y eliminar registros

Desplegar informacin de errores, cuando estos son reportados por Forms


Prctica.


En esta sesin de prcticas utilizar la aplicacin Submit para consultar las tablas de
la base de datos. Podr tambin insertar, actualizar y eliminar datos a travs de la
aplicacin.


Ejercicio 1. Queries

1. Comience Forms Runform utilizando el modulo Customer
Utilice la forma customer.fmx especificando su nombre de usuario y password.

2. Elija Help Keys del men
Utilice el scrollbar de la ventana para ver las funciones y sus llaves
correspondientes.

3. Ejecute un query sin restriccin
Utilice [Up] y [Down] para buscar a travs de los registros recuperados

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 2 23 3 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

4. Ejecute un query restringido para recuperar el registro Womansport

5. Ejecute un query restringido para recuperar customers con un
ACCOUNT_MGR_ID mayor que 145

6. Trate cada uno de estos queries restringidos

- Recupere todas las ciudades comenzando con Sa

- Recupere todos los datos de customers basados en US con un Credit Limit
entre 2300 y 3700

7. Obtenga el Credit Limit del customer Sivaji Landis y antelo, lo utilizar ms
tarde.

8. Abra el modulo ORDERS y Despliegue los detalles de los clientes Geraldine
Martin, Guillaume Edwards y Sivaji Landis

9. Consulte solo las ordenes con un order mode online

10. Para el customer Sivaji Landis obtenga las orders que excedan el credit limit
obtenido en el punto 7.


Ejercicio 2. Insercin, actualizacin y borrado de registros

Desde el modulo de Orders02 realice lo siguiente:

1. Inserte un nuevo registro en el Order block, como se detalla a continuacin:
Para el cliente Geraldine Martin
Item Valor
Order_date Todays date
Order_status online
Order total $500.00


2. Inserte un nuevo registro en el Item block

Item Valor
Line Item 11
Product ID 3503
Quantity 2

3. Salve los nuevos registros
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 2 24 4 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S


4. Actualice la orden que solo tiene colocada

Cambie Order_date a Next Monday y salve el cambio

5. Intente eliminar la orden colocada Qu pasa?

6. Elimine la lnea del item de su orden y salve el cambio

7. Ahora intente eliminar su orden y salvar el cambio

8. Salga de la sesin runform


CAPITULO 3


Creacin de un mdulo bsico en Forms


Esta leccin muestra como crear un mdulo bsico de Forms consistente de bloques
que estn formados usando las especificaciones de la base de datos.


Objetivos


Al final de esta leccin, usted tendr la habilidad para realizar lo siguiente:

Utilizar tipos de mdulo en Forms

Crear un nuevo mdulo en Forms

Construir un nuevo bloque usando las especificaciones existentes en la tabla

Salvar un mdulo de Forms

Correr un mdulo de Forms

Construir un mdulo maestro/detalle


Usted puede crear diferentes aplicaciones utilizando los tipos de mdulo que hay en
Forms. En esta leccin usted crear un mdulo bsico.
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 2 25 5 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S



Los tres tipos de aplicacin de mdulos

Mdulo Descripcin
Forma Llena los espacios en blanco para consultar, insertar, actualizar
y borrar registro de la base de datos
Men Despliega jerrquicamente proporcionando un mtodo simple
para emitir los comandos de la aplicacin
Librera Es una coleccin de PL/SQL program units almacenadas
centralmente


Nota: Usted puede tambin agregar un mdulo de Men para un mdulo de Forma,
haciendo estas opciones habilitadas para la forma en tiempo de ejecucin (runtime).
Usted puede agregar una o ms mdulos de libreras para un mdulo de Forma o un
mdulo de Men para hacer las rutinas de la librera disponibles con ese mdulo.


Creacin de un nuevo mdulo en Forms


Usted puede crear un nuevo mdulo de Forms de varias maneras. Esto depende de
las alternativas que tenga actualmente en el mdulo de Forms.


Cuatro mtodos para crear un mdulo de Forms


Abra el Forms Designer (automticamente se crea un mdulo nuevo)

Doble clic en el Objetc Navigator para entrar a la forma (solo cuando no este
otro mdulo de Forms disponible)

Seleccione File -> New -> Form

Clic en el Object Navigator para entrar a Forms, despus clic en icono
Create


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 2 26 6 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Cambiando de nombre el mdulo de Forms


Por default Forms asigna el nombre MODULExx a un nuevo mdulo de Forms,
donde xx es el siguiente nmero disponible para nombres de mdulos. Esto es
desplegado en el Objetc Navigator y en la paleta de propiedades (property
palette). Usted puede cambiar el nombre de un mdulo en cualquiera de los
dos:


En Object Navigator:
- Doble clic en el nombre del mdulo

En Property palette:
- Seleccionando Tool -> Properties, o
- Doble clic al icono del mdulo en Object Navigator


Caractersticas del nombre en un mdulo de Forms

Puede incluir arriba de 30 caracteres

Puede comenzar con una letra

Puede contener combinaciones de letras, nmeros y caracteres especiales
($, , and)

No puede incluir nombres duplicados para objetos de Forms del mismo tipo.

No puede incluir palabras reservadas


Colocando las propiedades a un mdulo de Forms


Los objetos dentro de una forma y el mdulo en si, tienen propiedades que
usted puede definir. Dando doble clic al objeto en Navigator, o eligiendo Tools -
> Properties con el objeto seleccionado, para ver las propiedades.


Hecho lo anterior usted puede definir las propiedades del mdulo cuando ya ha
sido creado, esto afecta al mdulo y a los objetos que se encuentran dentro de
l.

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 2 27 7 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S


Las propiedades para un mdulo de Forms incluyen:

Propiedad Uso
Name Es el nombre interno del mdulo de Forms, como aparece
en el Object Navigator
Coordinate
System
Define las unidades utilizadas para valorar los objetos en la
forma, y sus posiciones
Comments Define comentarios que sirven para la documentacin del
modulo

Entre Otras ms.


Eligiendo Coordinate System


Cuando usted da clic en el botn More en la ventana de propiedades, con la
propiedad Coordinate System seleccionada, se abre una ventana adicional.


Las propiedades de Coordinate System para una forma son:

Real
- Las unidades pueden estar en pixeles, centmetros, pulgadas o
puntos.
- Apropiado para aplicaciones GUI
- Permite flexibilidad y alineamiento cuando se ajustan posiciones y
tamaos

Caracter
- Las unidades estn en carcter de celdas (tamao por default tomado
de la fuente por dafault)
- Apropiado donde el ambiente runtime incluye dispositivos de modo
carcter


La unidad por default es el punto (Real). Este significa que las posiciones de los
objetos y sus tamaos dentro de la forma estn valoradas por esta unidad. El
punto provee un fino alineamiento, y una consistencia a travs de las diferentes
plataformas y dispositivos de vdeo.



Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 2 28 8 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Creacin de un nuevo bloque.


Usted puede construir un bloque funcional con un mnimo consumo, basado en la
tabla existente y usando las definiciones almacenadas en el diccionario de datos.


Cuando usted esta ejecutando una consulta, las lneas de la tabla base son ledas
dentro de las lneas del bloque establecido. Si el bloque despliega ms de un registro,
ms de un registro ser visible al mismo tiempo. Cuando inserta, actualiza o elimina
registros en el bloque y selecciona Action -> Save, las lneas correspondientes son
insertadas, actualizadas o eliminadas segn sea el caso en la tabla base.


Pasos para crear un nuevo bloque en la tabla base


Dar clic en el Object Navigator para entrar a los bloques

Dar clic en el icono create dentro del Object Navigator. Se despliegan las
opciones del nuevo bloque (Elegir creacin de un bloque de manera manual)

Colocar las propiedades generales del bloque de acuerdo con tus
requerimientos

Asegurarse de especificar el nombre de la tabla base

Dar clic en el nodo de Items

Colocar las propiedades del bloque item de acuerdo con sus requerimientos

En la seccin de Scroll Bar, especificar el Canvas en el que se desplegar el
Bloque.


Funcionalidad de un bloque tabla base


Crear un bloque y colocar sus propiedades por default

Crear un text item par cada columna de la tabla base marcada para ser incluida

Colocar las propiedades de cada text item (nombre, tipo de dato, mxima
longitud, etc.) para marcar la especificacin de la columna correspondiente
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 2 29 9 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S


Crear etiquetas de texto para cada item, la etiqueta por default es el nombre de
la columna

Arreglar la tabla base en un canvas especifico de acuerdo con las propiedades
del Layout


Nota: La funcionalidad de la tabla base es que automticamente crea text items,
sin embargo, usted puede cambiar estas por diferentes tipos de items como un
check box o un radio group.


Integrity Constraints


Cuando usted selecciona esta propiedad para un nuevo bloque. Forms
automticamente agrega cdigo (triggers) dentro de la aplicacin de Forms para
marcar las reglas (constraints) a la base de datos de la tabla base.


Salvar y Correr un mdulo de Forms


Salvando un mdulo de Forms


Usted puede salvar el mdulo de Forms de dos formas:


Seleccionar File -> Save, o

Dar clic en el icono Save


En ambos casos hacer lo siguiente:


a) Insertar el nombre del archivo

b) Dar clic en OK


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 3 30 0 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Corriendo un mdulo de Forms


El diseador de Forms puede invocar Forms Runform y correr el mdulo activo. Lo
anterior se puede realizar de la siguiente manera:


Seleccionar Program -> Run, o

Dar clic en el icono Run


Nota: Cuando usted sale de la sesin Runtime, regresa a Forms Designer.


Qu pasa en Runtime?

Las columnas de la tabla base NOT NULL son text items requeridos
obligatoriamente

Las columnas de la tabla base NULL son text items opcionales

Ocurre la validacin de los tipos de datos cuando usted sale de un text item
despus de haber actualizado o insertado un valor.

La propiedad requerido/opcional es colocado en tiempo de diseo, y se toma
por default de la columna NULL/NOT NULL cuando el bloque es creado


Creando bloques con relaciones


Usando las opciones New Block usted puede crear bloques independientes o tomar
ventaja de las ligas automticas que estn disponibles a travs de Master-Detail
option.


Qu es una relacin Master-Detail?


Una relacin maestro-detalle es una conexin entre dos bloques que reflejan
una relacin primary-foreign key ente las tablas sobre las cuales estas basadas.
El bloque maestro esta basado sobre la tabla con llave primaria (primary key); el
detalle esta basado sobre la tabla con llave fornea (foreign key). La relacin
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 3 31 1 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

maestro-detalle equivale a una relacin uno a muchos en el diagrama de
entidad relacin.


Nota: En el diagrama de entidad relacin, la entidad hijo (detalle) usualmente
esta posicionada sobre la entidad padre (maestro).


Un bloque detalle puede ser maestro


Usted puede crear relaciones entre bloques, en las cuales el detalle de una liga
maestro-detalle es el maestro para otra liga.


Un bloque maestro puede tener ms detalles


Usted puede crear ms de un detalle para un bloque maestro.


Master/Detail Option


El tab maestro-detalle de la opcin New Block le permite crear un modulo de
Forms que automticamente muestre todos los registros en el bloque detalle
siempre se despliega el registro asociado en el bloque maestro.


Propiedad Uso
Master Block Determina el nombre de un bloque maestro
Join Condition Determina como los bloques maestro y detalle estn
ligados


Pasos para crear un mdulo Maestro/Detalle en Forms

Crear un bloque maestro

Crear un bloque detalle

Clic en el tab maestro/detalle

Clic en Select
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 3 32 2 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S


Una lista de valores (LOV) muestra los bloques maestros apropiados y despliega
foreign keys que sirven como constraints

Clic para elegir un bloque maestro

La propiedad Join Condition es automticamente habilitada

Clic en OK


Ejecucin un mdulo Maestro-Detalle en Forms

Cuando usted corre un mdulo maestro-detalle encontrara que:


Consultando el bloque maestro recupera registros a detalle inmediatamente

Insertando un registro detalle es asociado automticamente con el registro
maestro desplegado actualmente

Eliminando un registro maestro usted ser prevenido si existe un registro
detalle.


Nota: Usted puede alterar el comportamiento por default del modulo maestro-
detalle de la forma colocando las propiedades de la relacin


Resumen


Esta leccin le mostr como crear un modulo bsico de Forms consistente de bloques
que son construidos usando las especificaciones de la tabla de la base de datos. En
particular, los siguientes tpicos fueron discutidos:


Forms le permite crear:
- Mdulos de Forms
- Mdulos de Libreras
- Mdulos de men

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 3 33 3 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Cuando usted esta definiendo un modulo de Forms, la facilidad New Block
provee:

- General Options
- Item Options
- Layout Options
- Master-Detail Options

Salve la forma para preservar su definicin. Corra el modulo para probarlo en el
Designer. (Run por default, tambin crea el archivo runtime)

Prctica


En esta prctica, usted creara dos nuevos mdulos de forms. Creara un bloque
sencillo que despliegue registros sencillos. Tambin creara un modulo de forms que
despliegue informacin master-detail.


1. Cree un nuevo single-block en un modulo de forms
Cree un nuevo bloque llamado Customer
Bselo en la tabla CUSTOMERS e incluya todas las columnas
Despliegue el bloque Customer sobre el Canvas1 y muestre solo un registro a la
vez.
Utilice el Layout de Forms y la orientacin vertical


2. Salve el nuevo modulo en un archivo llamado CUSTGx, donde x es el nmero de
grupo que su instructor le ha asignado
Corra su modulo de forms y ejecute un query
Navegue a travs de los campos, salga de runtime y regrese al Forms Designer.


3. Cambie el nombre del modulo de forms en el object navigator como CUSTOMERS.


4. En el Layout editor, reduzca la cantidad de espacio entre los items desplegados
hacia la izquierda.


5. En un nuevo modulo de forms, cree un master block basado sobre ORDERS.
Cree un nuevo modulo de forms
Cree un nuevo bloque llamado Order
Bselo en la tabla ORDERS e incluya todas las columnas
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 3 34 4 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Despliegue el Order block sobre el Canvas1 y muestre solo un registro a la vez.
Utilice el Layout de Forms y orientacin vertical


6. Cree un detail block basado en ORDER_ITEMS
Cree un nuevo bloque llamado Item
Bselo en la tabla ORDER_ITEMS e incluya todas las columnas
Cambie la etiqueta de Quantity item a Shipped.
Despliegue 4 registros en este detail block en el mismo canvas que el master block


Utilice un diseo tabular, orientacin vertical incluyendo un scrollbar.
Coloque el master block para order, seleccionando el constraint Foreign Key.


7. Cree un bloque independiente basado en INVENTORIES para desplegarlo en un
canvas diferente
Cree un nuevo bloque llamado Stock
Basado en la tabla INVENTORIES, excluyendo la columna de definicin
WAREHOUSE_ID
Cambie la etiqueta de Quantity on hand por In Stock
Despliegue 4 registros en este bloque y asegrese que estos sean desplegados en
un canvas llamado Canvas2.
Utilice un diseo tabular, orientacin vertical e incluyendo un scrollbar.
Incluya un button palette


8. Salve el nuevo modulo en un archivo llamado ORDGx, donde x es el nmero de
grupo que su instructor le ha asignado.


9. Corra su modulo
Ejecute un query
Navegue a travs de los bloques as podr ver el Stock Block
Salga de runtime y regrese al Forms Designer


10. Cambie el nombre del modulo en el object navigator por ORDERS y salve.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 3 35 5 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

CAPITULO 4


Almacenamiento y ejecutables


Usted podr manejar y manipular varios formatos de almacenamiento, esta leccin le
muestra las caractersticas de cada tipo de archivo en Forms. Como usted puede
convertir o exportar una forma.


Objetivos


Al final de la leccin, usted tendr la habilidad para hacer lo siguiente:

Identificar los formatos de los archivos de Forms y sus caractersticas

Convertir entre formatos de texto y binarios

Producir documentacin acerca de la aplicacin


Se recordar que las definiciones del modulo de Oracle Forms 9i pueden ser
almacenadas en la base de datos o en archivo, y despus ser reabierto dentro del
Designer en el lugar en donde fue almacenado.


Cuando usted salve o abra un mdulo, Forms:

Checar el mdulo acceso colocando en sus opciones del diseador. Si la
opcin es colocada para File/Database (default), aparecer el Filter dialog y
podr elegir la fuente o el destino para esta forma.

Aparecer un cuadro de dialogo donde especificara el nombre del archivo o el
nombre del mdulo dependiendo del tipo de eleccin de almacenamiento.

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 3 36 6 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Algunas caractersticas al salvar mdulos:


Salvar formas en archivo(.fmb) Salvar formas en la base de
datos
Binary file. Puede ser reabierto en
el Designer para una modificacin
ms adelante
Oracle table format. Los
componentes del mtodo son
almacenados en varias tablas.
Pueden ser reabiertos en el
Designer para una modificacin
ms adelante
Los componentes dentro del
archivo pueden ser copiados a
otros mdulos de Forms
Los componentes pueden ser
copiados para otros mdulos de
Forms
Porttil a travs de plataformas Porttil a travs de plataformas


Nota: Las formas con extensin fmx solo pueden ser almacenadas en archivo


Almacenando y acceso a las definiciones de Forms


En un mdulo de Forms, los mens y las libreras pueden ser salvados y reabiertos
del lugar en donde fueron almacenadas.


Colocando un modulo de acceso


Usted puede colocar una preferencia para los archivos del sistema o la base de
datos en Designer Options. Esto elimina la necesidad de contestar el Filter
Dialog cuando salve y abra mdulos.


Forms Base Tables


Las tablas base de forms son propietarias del usuario SYSTEM. Estas tablas
estn creadas por scripts SQL que se corren como parte de la instalacin de
forms.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 3 37 7 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

En resumen para los mdulos de forms, estas tablas pueden ser usadas para
almacenar definiciones de los mdulos men y libreras, si usted elige salvarlos
en la base de datos. Cada tabla contiene informacin por separado acerca de
un objeto en particular o una propiedad del forms.


Tipos de archivos para los mdulos de forms


En resumen para los mdulos de forms (.fmb), usted puede salvar mdulos de
men y libreras para el File System.


.mmb
- Fuente del modulo men
- Archivo binario
- Porttil a travs de las plataformas

.pll
- Librera PL/SQL Fuente y compilador de program units para libreras. Porttil
a travs de las plataformas


Usted puede generar mdulos de forma y men para producir runfiles
ejecutables. Estos son:

.fxx
- Modulo ejecutable de forms
- Archivo binario
- No es porttil a travs de las plataformas

.mmx
- Modulo ejecutable de men
- Archivo binario
- No es porttil a travs de las plataformas


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 3 38 8 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Generacin de archivos de texto y documentacin


Los archivos normalmente producidos para salvar y generar mdulos estn en formato
binario. Esto permite un eficiente almacenamiento y ejecucin.


Sin embargo, usted puede querer producir archivos de texto que sean legibles de tus
mdulos para:

Versin control

Documentation


Convirtiendo lenguaje binario a texto


Usted puede producir un archivo de texto ASCII sobre una forma existente .fmb,
.mmb, o pll realizando lo siguiente:

Seleccionar File -> Convert del men de Forms Designer. Esto abrir un
cuadro de dialogo.

Seleccionar el tipo de modulo (Men, Forma o Librera), o el archivo a
convertir y su direccin (Binary-to-Text). Hay que notar que la opcin
Direction tambin le permite convertir de texto a binario.

Presionar el botn Convert. Esto produce un archivo adicional para l
modulo con las siguientes extensiones:
- .fmt para una forma
- .mmt para un men
- .pld para una librera

Nota: Estos archivos pueden contener datos en cdigo binario, pero estos se
encontrarn en formato carcter.


Documentando la aplicacin


Usted no necesita convertir un archivo de texto para producir documentacin.
La facilidad Forms Doc es que produce ms reportes para este propsito.

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 3 39 9 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S


Seleccionar l modulo a ser documentado en el Object Navigator

Seleccionar File -> Administration -> Forms Doc del men. Esto produce un
archivo ASCII con el nombre <module>.txt

Vista o impresin del archivo requerido.


Resumen


En esta leccin usted aprendi como convertir un mdulo entre formato de texto y
binario. En particular:


Salvando archivos en el sistema se producen archivos porttiles binarios: .fmb,
.mmb o .pll

Usted puede salvar mdulos para disear las tablas base

Designer Options le permite almacenar informacin a su preferencia

Los archivos ejecutables .fmx y .mmx no son porttiles

Los archivos de texto .fmt, .mmt y .pld pueden ser producidos usando la opcin
Convert

Utilice Forms Doc para producir documentacin imprimible










Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 4 40 0 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

CAPITULO 5


Personalizacin de Bloques.


Esta leccin le muestra como personalizar los bloques existentes en una forma que ya
creo y tambin como agregar bloques que no estn asociados con la tabla.


Objetivos


Al final de esta leccin usted tendr la habilidad para realizar lo siguiente:

Modificar el comportamiento y la apariencia de los bloques y sus componentes
para componer sus aplicaciones

Usar las tcnicas del Designer para manejar las propiedades de los bloques y
otros objetos

Construir bloques que no correspondan directamente a las tablas de la base de
datos

Remover bloques redundantes y sus componentes


Usted puede definir o cambiar estas y varias propiedades adicionales ms tarde, esto
a travs de la paleta de propiedades (Property Palette).


Las propiedades de un bloque estn en generalmente divididas dentro de los
siguientes grupos:


General
Navigation
Records
Database
Advanced Database
Scroll Bar
Visual Attributes
Color
International
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 4 41 1 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Para acceder a las propiedades del bloque, seleccionar en el Navigator, entonces se
despliegan las propiedades (Tools -> Properties)


Controlando el comportamiento y la apariencia de los bloques


Cuando se crea un bloque con las siguientes propiedades display, navigation y
database, se deben considerar:


Display Properties


Scroll Bar
Una Scroll Bar requiere para los registros de los bloques de una opcin : True or
False

Cuando usted coloca esto a verdadero (True), aparecen una serie de propiedades
en la Property Palette, donde usted puede definir el canvas y la posicin para la
Scroll Bar, su tamao y otras propiedades (tambin usted puede controlar algunas
de las propiedades del Layout Editor)


Current Record Attribute
Le permite definir un Visual Attribute que ser usado para resaltar el registro actual
en el bloque. (Visual Attribute es otro objeto que usted puede crear en el Designer,
usted puede nombrarlo, colocar tipo de fuente, color y combinar diseos)


Record Properties


Records Displayed
Le permite cambiar l nmero de registros de los bloques ordenados en el canvas
para ser desplegados, y cuantos registros usted puede ver al mismo tiempo. Se
asegura si hay suficiente espacio en el canvas para desplegar este nmero de
registros o poder cubrir objetos.


El nmero normal de instancias para cada item en el bloque es determinado por
esta propiedad (que es, un item por registro), pero usted puede sustituir este a
nivel de item

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 4 42 2 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Record Orientation
Usualmente, los registros estn orientados verticalmente (uno debajo de otro).
Usted puede cambiar la orientacin a horizontal con esta propiedad, aunque es
ms fcil elegir orientacin horizontal cuando se construye por vez primera el
bloque.


Navigation Properties


Navigation Style
Normalmente, cuando usted navega ms all del ultimo item en el registro usando
la operacin [Next Item]. Forms le regresa al comienzo del registro. Esta propiedad
le permite cambiar la localizacin del cursor.


Next/Previous Navigation Block
Normalmente, cuando usted realiza una operacin para mover al bloque siguiente
o al anterior (Next-Previous). Forms mueve el control para el bloque adyacente
Next/Previous en secuencia. Esta propiedad le permite nombrar a un bloque en
especfico para ir de uno a otro.


Nota: Usted puede alterar la secuencia natural de los bloques por las posiciones
en el Object Navigator.


Database Properties


Base table
La tabla base o vista, son los bloques que estn asociados, normalmente esto no
se puede cambiar


Primary Key
Estos controles alternativos de Forms checa que los registros sean nicos antes de
ser insertados en la tabla base. True identifica que por lo menos un item en el
registro tenga la propiedad Primary Key colocada en True


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 4 43 3 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Clusula WHERE
Le permite definir una condicin SQL que esta agregada a cada una de las
consultas realizadas en la tabla base a travs de SQL implcito. Esta clusula es
ANDed con condiciones suministradas por el operador en modo

Enter Query. Utiliza esta propiedad para definir las restricciones generales sobre
las filas que este bloque puede traer (fetch).


Clusula ORDER BY
Le permite definir como dafault el orden para los registros desplegados de un
query. El operador puede alterar este orden si es utilizado el Query/Where dialog
en runtime.


Records Fetched
El mximo nmero de registros para ser recuperados de la tabla base en cada
operacin fetch. El valor por default 0 le dice a Forms como utilizar el mismo
nmero como un registro desplegado. Esto significa que la forma no trae ms
registros de los que el operador inicialmente ve en pantalla.


Sin embargo, si usted espera que el operador frecuentemente se despliegue a
travs de algunos registros, usted puede colocar este valor ms arriba de los
registros desplegados, y as, ms registros sern desplegados a la vez.


Records Buffered
El mnimo espacio en buffer retenido para mantener consultas de registros por
bloque. El mnimo permitido es Records Displayed +3. Cuando Forms esta
deshabilitado para almacenar operaciones adicionales en buffer, estos son escritos
en un archivo temporal.


Delete/Insert/Update/Query Allowed
Estas propiedades de control alternan con las operaciones asociadas pueden ser
realizadas sobre los registros del bloque


Update Changed Columns
Cuando se colocan en True, solo esos items pueden actualizarse por el operador
son escritos en sus columnas correspondientes a la base de datos. Si el operador
comnmente actualiza o inserta registros con solo una o dos columnas, esto puede
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 4 44 4 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

salvar l trafico en la red de trabajo. (Cuando se coloca en False, el dafault,
Formas actualiza todas las columnas asociadas con el bloque).


Column Security
Cuando se coloca en True, los items dentro del bloque solo pueden ser
actualizados si el usuario actual tiene permiso para realizar la actualizacin a la
columna correspondiente a la base de datos.


Key Mode/Locking Mode/Transactional Triggers
Estas propiedades controlan como Forms mantiene registros y transacciones
cuando un bloque es asociado primeramente con tablas o vistas que no son de
Oracle. Las posiciones por dafault son usualmente apropiadas de los bloques
conectados con una base de datos de Oracle.


Se han explicado las propiedades mas relevantes, sin embargo no hay que omitir que
existen en cada uno de los rubros antes mencionados ms propiedades.


Manejo de propiedades de los objetos


Como se ha visto las propiedades de los bloques pueden ser desplegados y
modificados en la paleta de propiedades. Las tcnicas utilizadas para desplegar y
colocar las propiedades aplicables a los otros objetos en Forms tambin. Usted ver
generalmente como las propiedades son manejadas en el diseador de Forms (Forms
Designer).


Usando la paleta de propiedades (Property Palette)


Para abrir la paleta de propiedades de un objeto que se haya seleccionado, usted
puede:


Dar doble clic sobre el objeto en el Navegador (Navigator) o en el Editor del
diseo (Layout Editor)

Seleccionar Tools -> Properties

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 4 45 5 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Dar clic en el botn derecho del mouse, y seleccionar Properties del men
del mouse


Una vez que se haya activado la paleta de propiedades, esta ventana permanece
abierta. Automticamente son desplegadas las propiedades de cada objeto en el
Layout Editor. Esto tambin se aplica al Navegador, tan pronto como la opcin
Synchronize es colocada en el men Navigator.


Las propiedades son manipuladas de diferente manera, dependiendo del tipo de
propiedades.


Colocando propiedades sobre mltiples objetos


Usted puede ver y colocar las propiedades de varios objetos simultneamente, si
ellos son el mismo o diferente tipo de objeto. Para hacer esto seleccionar los
objetos en el Object Navigator y desplegar una combinacin de las propiedades en
la paleta de propiedades. La combinacin/colocacin puede ser:


Interseccin ()
Un subconjunto en donde usted puede desplegar solo las propiedades
comunes de los objetos seleccionados. Este es el default set operator.


Unin ()
Una superconjunto en donde usted puede desplegar las propiedades
comunes y las propiedades nicas de los objetos seleccionados.


Donde estos son valores diferentes a travs de los objetos seleccionados, usted
podr ver **** en el valor de la propiedad. Esto cambia para un valor definitivo una
vez que inserte un valor en la paleta de propiedades. Este nuevo valor ser
aplicado a cada uno de los objetos seleccionados.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 4 46 6 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Pasos para colocar propiedades en mltiples objetos


1. Abrir la paleta de propiedades (Property Palette)

2. Mantener presionada la tecla [Control] y dar clic a cada objeto en el Navegador
de quien las propiedades sern vistas o modificadas. Los objetos seleccionados
comenzarn a resaltarse.

3. Colocarse en el botn Unin/Interseccin en la ventana de propiedades para la
operacin deseada. Este botn encierra las dos opciones cuando son
presionadas

4. Cambiar las propiedades desplegadas, como se requieran. Los cambios son
aplicados a todos los objetos seleccionados con estas nuevas propiedades.


Nota: Con la Unin, algunas propiedades que usted ve puede que no sean
relevantes para todos los objetos seleccionados. Los cambios de una propiedad
son aplicados solo a los objetos que tienen propiedades semejantes.


Copiando las propiedades de otros objetos


Usted puede escribir las propiedades y valores de la paleta de propiedades a
buffer, y ellas pueden ser aplicadas (pasted) a otros objetos en la sesin de diseo.


1. En la paleta de propiedades, despliega y coloca las propiedades a ser
copiadas. Estos pueden ser de un objeto o una combinacin de ellos.

2. Clic sobre el botn Copy Properties en la barra de herramientas de la
ventana de propiedades.

3. Seleccionar el objeto del Navegador dentro de las cuales las propiedades
sern copiadas.

4. En la ventana de propiedades, dar clic sobre el botn Paste Properties. Los
objetos seleccionados recibirn valores de todas las propiedades copiadas
que son relevantes para ese tipo objeto.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 4 47 7 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Clases de propiedades (Property Classes)


Cuando usted despliega una lista de propiedades en la paleta de propiedades, la
lista de los nombres y los valores asociados pueden ser salvados para otros
objetos en futuras aplicaciones.


Los objetos pueden recibir algunas de sus propiedades de una clase, as sus
propiedades sern automticamente cambiadas si las propiedades asociadas
cambian en Property Class.


Qu es un Control Block?


Un Control Block es un bloque que no esta asociado a la tabla base. En otras
palabras, su propiedad en la tabla base es NULL.


Esto significa que Forms no realiza una consulta automtica cuando el operador
emite un comando [Enter Query] o [Execute Query] del bloque, y no inserta,
actualiza o elimina automticamente del bloque cuando el operador salva los
cambios a la base de datos.


Utilice un control block para:


Items que necesiten una navegacin cclica que es separada de otros
bloques, pero donde el bloque no ser asociado con la base de datos. (El
usuario normalmente llega al bloque por un simple TAB a travs de los items
o usando el comando [Next Item].

Registros que estn asociados primeramente con una fuente de datos que
no es de Oracle, como un archivo neutro.

Botones que tendrn lugar sobre una barra de herramientas.






Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 4 48 8 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Creando un Control Block


Usted puede crear un bloque de control usando la facilidad New Block.


1. Invocar la facilidad New Block.

2. Colocar las opciones General y Layout. Dejar el campo de la tabla base
colocndolo a <NONE> o null



Eliminando un Control Block


Usted puede eliminar un bloque en la misma forma como los otros objetos,
seleccionando en el Navigator y despus eligiendo la opcin Delete. Una alerta es
desplegada para la confirmacin de la eliminacin.


Resumen.


Esta leccin le mostr como usted puede personalizar bloques existentes en un
modulo bsico de Forms. En particular, los siguientes tpicos fueron discutidos:


Los bloques tienen propiedades como Display, Record, Navigation y otras ms
que usted puede modificar para conjuntar su aplicacin.

Las propiedades de la base de datos incluyen la clusula WHERE, Records
Buffered y Records Fetched.

Un bloque de control no tiene tabla base. Utilice un bloque de control para
cuando:
- Los Items necesitan una navegacin cclica que es separada de otros
bloques.
- Los registros asociados con un dato fuente que no es Oracle
- Los botones sobre una barra de herramientas

Usted puede copiar propiedades entre bloques y otros objetos


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 4 49 9 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S



Usted puede ver y cambiar las propiedades de varios objetos juntos. Usted
puede usar las opciones de Unin e Interseccin para conectar estas
propiedades en la paleta de propiedades.


Prctica


En esta prctica, usted crear bloques de control y modificara algunas de las
propiedades de los bloques.


CUSTGx Form


1. Cree un bloque de control en la forma CUSTGx.
- Cree un nuevo bloque llamado Control
- Deje todas las otras propiedades por default

2. Asegrese que los registros recuperados en el bloque Customer son
clasificados por el ID

3. Salve y corra la forma CUSTGx.
- Pruebe el efecto de las propiedades que acaba de colocar


ORDGx Form


4. Cree un bloque de control en la forma ORDGx.
- Cree un nuevo bloque llamado Control
- Deje todas las otras propiedades por default

5. Asegrese que el actual registro despliegue diferente de los otros bloques Item
y Stock
- Cree un atributo visual llamado Current_Record
- Coloque el color del primer plano (Foreground) en blanco y el del fondo
(Bacground) a DarkCyan. (Si estos colores no estn disponibles, utilice otros
colores)
- Utilice una mltiple seleccin de caractersticas para colocar la propiedad
relevant block para usarlo como un atributo visual.

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 5 50 0 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

6. Asegrese que los registros recuperados en el bloque del item estn
clasificados por el ID del item.

7. Elimine la necesidad de navegar explcitamente al siguiente registros, cuando
utiliza [Next Item] para salir del ultimo item de un registro en el Item Block


8. Salve y corra la forma ORDGx.
- Pruebe el efecto de las propiedades que acaba de colocar


CAPITULO 6


Control de las relaciones entre bloques


En Oracle Forms 9i usted puede modificar las conexiones o relaciones entre bloques,
habilitndole el control de las dependencias entre las reas relacionadas de
informacin en un modulo de Forms. Esta leccin identifica como alterar estas
relaciones y el efecto de alterarlas.


Objetivos


Al final de esta leccin, usted tendr la habilidad de hacer lo siguiente:

Explicar el concepto de la relacin.

Crear una nueva relacin implcitamente.

Crear una nueva relacin explcitamente.

Distinguir las propiedades de borrado.

Distinguir las propiedades de coordinacin.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 5 51 1 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Qu es una relacin?


Una relacin es un objeto de Forms que mantiene relaciones entre dos bloques
asociados.


Usted puede crear una relacin, de la siguiente manera:

Implcitamente con un mdulo maestro-detalle en Forms

Explcitamente en el Object Navigator


Relaciones Implcitas


Cuando usted crea un modulo maestro-detalle en Forms una relacin es
automticamente creada. Esta relacin es nombrada masterblock_detailblock,.


Relaciones Explcitas


Si la relacin no esta establecida cuando los bloques son creados por default, usted
puede crear sus propias relaciones colocando las propiedades en la ventana New
Relationship.


Pasos para crear una relacin explcitamente


1) Seleccionar el bloque maestro (master block) en el Object Navigator, expandir
el nodo y seleccionar e subnodo Relations

2) Clic en el icono Create
Se despliega la ventana New Relation

3) Especificar el nombre de la relacin

4) Especificar el nombre del bloque maestro

5) Especificar el nombre del bloque detalle

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 5 52 2 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

6) Elegir la propiedad master delete

7) Elegir la propiedad coordination

8) Especificar la condicin de liga (join condition)

9) Clic en OK
La nueva relacin, nuevos triggers y nuevos program units son dados de alta en
el Object Navigator.


Modificando una relacin


Usted puede alterar las propiedades de la relacin para afectar la manera de eliminar
y como estn manipuladas la coordinacin de bloques.


Master Deletes


Puede prevenir, propagar o aislar la eliminacin de registros en un master block
cuando los registros correspondientes existen en el bloque detalle colocando
una propiedad Master Deletes. Por ejemplo, puede eliminar todos los items
correspondientes cuando un orden es eliminado.


Propiedad Uso
Non-
Isolated
Previene la eliminacin de un master record cuando un
registro detalle existe
Cascading Elimina los registros detalle cuando un master record es
eliminado
Isolated Elimina solo los master record


Nota: Aunque eliminando con la propiedad cascada puede remover diferentes
registros detalle, el mensaje commit muestra solo el nmero de registros
eliminados del master block.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 5 53 3 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Qu pasa cuando se modifica una relacin?


Cambiando la propiedad Master Deletes del default non-isolated para
reemplazar en forma de cascada el trigger On-Delete-Master con el trigger Pre-
Delete

Cambiando la propiedad Master Delete del default non.isolated para separar los
resultados en el trigger On-Master-Delete


Coordinacin


Puede controlar la coordinacin del bloque detalle cuando el Master Block es
consultado colocando la propiedad coordination. Por ejemplo, usted puede
consultar la lnea de los items en un orden mientras el operador navega para el
item block.


Propiedad de
coordinacin
Uso
Default Obliga una coordinacin de bloques para que
ocurra siempre y cuando el registro maestro sea
cambiado por el usuario o un trigger.
Deferred with Auto
Query
Pospone potencialmente los detalles de los queries
procesados mientras el cursor visita la relacin de
los bloques
Deferred without
Auto Query
Permite insertar un criterio de consulta adicional en
el bloque detalle
Prevent Masterless
Operations
Se asegura que el bloque detalle no pueda ser
consultado o usado para insertar registros, cuando
un registro maestro no es desplegado.


Nota: Colocando la propiedad Deferred a TRUE se habilita el Auto Query check
box.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 5 54 4 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Condicin Join


Se utiliza para:

Crear ligas entre bloques utilizando SQL

Alterar las ligas entre los bloques utilizando SQL


Se definen utilizando:

Una sintaxis de condicin equi-join SQL usual

Nombres e los bloques a la vez de los nombres de las tablas base

Los nombres de los items que existen en el modulo de la forma en vez
de los nombres de las columnas de las tablas.

Resumen


En esta leccin usted aprendi como controlar las dependencias entre las reas
relacionadas de informacin de un mdulo de Forms. En particular,


Puede crear relaciones
- Implcitamente, cuando un bloque es creado a travs de la facilidad New Block
- Explcitamente, creando la relacin separadamente de la relacin de los
bloques

Estas son algunas de las propiedades de relacin
- Para controlar el comportamiento de los registros maestros
- Para la coordinacin de los datos entre los bloques.










Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 5 55 5 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Prctica


En esta prctica investigar las propiedades de relacin de objetos y definir la
relacin entre los bloques de item y Stock.


1. Examine las propiedades de relacin llamadas ORDER_ITEM

- Note la supresin y coordinacin de los valores de la propiedad
- Corra la form ORDGx y pruebe que la manera de eliminar es manipulada


2. Cree una relacin entre los bloques de item y Stock, como se detalla adelante

- Cree una nueva relacin llamada Item_Stock
- Asegrese que el registro de los items puedan ser eliminados
independientemente de cualquier relacin Stock
- Coloque la coordinacin de manera que el bloque Stock no sea consultado
hasta que ejecute una consulta explcitamente.


CAPITULO 7


Creando y modificando Text Items


Usted puede modificar el default de un Item o un Text Item que Forms crea para cada
columna similar por inclusin dentro de un bloque en la tabla base. Esta leccin cubre
el mejoramiento de los items existentes y la creacin de nuevos items.


Objetivos


Al final de esta leccin, usted tendr la habilidad para hacer lo siguientes:

Crear un Text Item nuevo

Controlar los datos dentro de un Text Item

Alterar el comportamiento de la navegacin de un Text Item

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 5 56 6 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Mejorar la relacin entre el Text Item y la base de datos

Agregar funcionalidad a un Text Item

Incluir mensajes de ayuda en tus aplicaciones


Un Text Item es un objeto de interface a travs de la cual usted puede consultar,
insertar y eliminar datos. Un Text Item usualmente corresponde a la columna en la
tabla de la base de datos.


El tipo de Item determina las propiedades disponibles en la Paleta de Propiedades. En
esta leccin ver las propiedades de un Text Item.


Usando el Item en la Paleta de Propiedades


Utilice la paleta de propiedades para definir, alterar o examinar las caractersticas
de los Items. Usted puede invocar las propiedades del Item en la paleta de
propiedades en una de las siguientes maneras:


A travs del Layout Editor dando doble clic en el item deseado.

Dando doble clic en el icono de la izquierda del Object Navigator.


Creacin de un Text Item


Usted puede crear un Text Item de las siguientes formas:


Convirtiendo un item existente a un Text Item

Usando la herramienta Text Item en el Layout Editor

Usando el icono Create en el Object Navigator

Usando la ventana New Block Options (Los Text Items son creados
implcitamente)

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 5 57 7 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S


Pasos para crear un Text Item en el Layout Editor


1. Invocar el Layout Editor

2. Clic en la herramienta Text Item

3. Clic en el canvas
El Text Item es desplegado

4. Doble clic en el Text Item
Son desplegadas las propiedades del Item en la paleta

5. Colocar las propiedades del Item como se requieren


Pasos para crear un Text Item en el Object Navigator


1. Localizar el bloque en el cual se quiere crear el Item

2. Clic para entrar al Item

3. Clic en el icono create
Un nuevo item se despliega en el Object Navigator

4. Doble clic al icono de la izquierda del nuevo item
Las propiedades de la paleta son desplegadas

5. Coloca el tipo de propiedad para el Text Item

6. Coloca todas las propiedades del item requeridas


Modificando la apariencia de un Text Item


Usted puede afectar la manera de desplegar un Text Item alterando su tipo,
desplegado y propiedades de registro.





Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 5 58 8 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Type Property Use
Item Type Selecciona el tipo de item que quieres crear


Display
Properties
Use
Canvas Determina en cual canvas se despliega el item
Displayed Determina alternativas para desplegar el item
X Position Coloca la coordenada X del item relativo al canvas
(bit-mapped) o la pantalla (character)
Y Position Coloca la coordenada Y del item relativo al canvas
(bit-mapped) o la pantalla (character)
Width Coloca el ancho del text item
Height Coloca la altura del text item
Space Between
Records
Coloca la cantidad de espacio entre los registros
Bevel Coloca la apariencia esculpida del borde del item
Rendered Conserva los recursos del sistema. Cuando la
proporcin de un item no largo tiene enfocado los
recursos usados para desplegarlo es disparado


Records
Property
Use
Items Displayed Especifica l nmero de instancias de item
desplegados del item cuando el item esta en un
bloque multiregistro


Display
Properties
Use
Visual Attribute
Name
Especifica como estn derivados los atributos
visuales de un item. Elegir por Default, Custom o
Named
Font Name Especifica la fuente (tipo de letra)
Font Size Especifica el tamao de la fuente en puntos (points)
Font Style Especifica el estilo de fuente
Font Widht Especifica el ancho de la fuente
Font Weight Especifica la altura de la fuente
Foreground Color Especifica el color del primer plano del item
Background
Color
Especifica el color del fondo del item
Fill Pattern Especifica el diseo del item
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 5 59 9 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Charmode
Logical Attribute
Especifica el nombre de los recursos de la Terminal
de Oracle que coloca los atributos del dispositivo
cuando se esta corriendo en modo carcter
White on Black Determina las alternativas del item desplegado como
blanco o negro cuando es desplegado en un
dispositivo monocromtico
Current Record
Attribute
Especifica el nombre del atributo visual a usar
cuando el item es parte de un registro actual (current
record)


Alterando Colores y Fuentes


Utiliza las propiedades Visual Attributes (atributos visuales) para colocar colores y
fuentes del text item. Un Visual Attribute es una coleccin de propiedades
desplegadas las cuales usted puede aplicar a los objetos de Forms:

Default

Custom

Named


Usted puede crear un Visual Attribute del Object Navigator y aplicarlo en varios
objetos


Controlando los datos en un Text Item


Utilice las propiedades Data (datos) de un text item para controlar la manera de
insertar y desplegar los datos.


Propiedades de
datos
Uso
Data Item Determina que tipo de valores de Forms se permiten
insertar en el item
Maximum
Lenght
Coloca l nmero mximo de caracteres permitidos
en el item. Este usualmente corresponde al ancho de
la columna de la tabla base

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 6 60 0 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Fixed Lenght Determina las alternativas que el usuario requiere
para llenar el item completamente antes de poderse
mover a otro item. Fixed Lenght es con frecuencia
usado con la propiedad Auto Skip
Required Determinar las alternativas obligatorias del item; estas
alternativas estn basadas sobre una columna NOT
NULL en la tabla subrayada.
Format Mask Especifica un formato del text item
Range Low
Value
Coloca el mnimo valor permitido en este item
Range High
Value
Coloca el mximo valor permitido en este item
Copy Value from
Item
Especifica el bloque y el item a usar como fuente para
copiar un valor dentro de este item cuando se enfoque
en uno de estos registros (used in inter-block
relations)
Sincronized Item Especifica con que elemento se sincronizar el valor
para el text item seleccionado.


Formateando un Text Item


La propiedad Format Mask le permite especificar el formato el cual el usuario
observa en el valor del item.

Utiliza la sintaxis de formato estndar de SQL para fechas y datos, por
ejemplo
DD/MM/YY y $99,999.99.

Encierra sintaxis estndar que no es de SQL para incrustar caracteres en
doble quotas

Reutliza los formatos mascara seleccionando Edit -> Copy y luego Edit ->
Paste


Creando un Default Value


Utilice cualquiera de las siguientes para emitir un valor por default en el item
siempre y cuando sea creado un nuevo registro:

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 6 61 1 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Raw Value
- Ejemplo: 340, RICHMOND


System Variable

- Las variables dadas por el sistema que esta operando actualmente
Date/Time:
$$DATE$$ DD-MON-YY
$$DATETIME$$ DD-MON-YYYY hh:mi[:ss]
$$TIME$$ hh:mi[:ss]
- Las variables dadas por la base de datos actual Date/Time:
$$DBDATE$$ DD-MON-YY
$$DBDATETIME$$ DD-MON-YYYY[hh:mi[:ss]
$$DBTIME$$ hh:mi[:ss]

Global Variable
Ejemplo: :GLOBAL.CLIENTE_ID


Form Parameter
Ejemplo: :PARAMETER.REP_VENTAS_ID


Form Item
Ejemplo: :ORDEN.ID

Sequence
Ejemplo: :SEQUENCE.S_ORD_ID.NEXTVAL


Generacin automtica de secuencia de nmeros


Cuando usted esta definiendo el valor por default de un text item, puede referenciar
una secuencia en la base de datos. Forms automticamente escribe una secuencia
generada de nmero dentro de un text item





Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 6 62 2 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Alterando el comportamiento de la navegacin de un Text Item


Usted puede ver la secuencia de navegacin por default de los items en el Object
Navigator, como las entradas a los items que son desplegados en el orden de
navegacin. Sin embargo, usted puede tambin usar las siguientes propiedades
para controlar el comportamiento de navegacin de un Text Item.


Navegacin Uso
Navigable Determina las alternativas con las que usted puede
navegar de un item a otro durante la navegacin por
default con las teclas de funcin o en los mens de
los items
Next Navigation
Item
Determina que items son visitados cuando
seleccionas Item -> Next
Previous
Navegation Item
Determina que items son visitados cuando
seleccionas Item -> Properties


Colocando las propiedades Navigable y Enabled


Habilitado Navegable Comportamiento de la Navegacin
TRUE TRUE El item es incluido durante la navegacin por
default. El item puede ser navegado y
manipulado con el mouse
TRUE FALSE El item es excluido durante la navegacin por
default. El item puede ser navegado y
manipulado con el mouse
FALSE FALSE El item es excluido durante la navegacin por
default. El item no puede ser navegado y
manipulado con el mouse.
FALSE TRUE El item es excluido durante la navegacin por
default. El item no puede ser navegado o
manipulado con el mouse. La propiedad
Navigable es tambin colocada a FALSE.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 6 63 3 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Mejorando la relacin entre un Text Item y la Base de Datos


Usted puede alterar o realzar la manera en la cual el Text Item interactua con la columna
de su base de datos correspondiente colocando las propiedades de la base de datos.


Propiedades de la
base de datos
Uso
Base Table Item Determina si el valor del item es almacenado en el bloque de
la tabla base como un item de control opuesto
Primary Key Determina si el item es usado para identificar nicamente un
registro en el bloque de la tabla base. Colocada
automticamente por Oracle
Insert Allowed Determina si el item permite valores para ser insertados, esta
propiedad aplica solo para nuevos registros
Query Allowed Determina si el item puede aceptar un criterio de consulta
Query Lenght Coloca la mxima longitud de una expresin de consulta del
item (Enter query mode), este puede no colocar un valor mas
bajo que el valor mximo mientras sea colocado el cero
Case Insensitive
Query
Determina la diferencia entre valores upper, mixed y lower
case son reconocidos durante el proceso de consulta
Update Allowed Determina si el item permite actualizaciones
Update Only is Null Determina si el item solo permite actualizaciones cuando el
valor actual es null, esta propiedad aplica solo para los
registros existentes
Lock Record Determina si el registro es bloqueado cuando el item es
modificado, esta propiedad solo aplica para los items non-base
table


Nota: Un item es creado por default como Base Table (excepto en un control block).
Usted normalmente necesitara cambiar esto.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 6 64 4 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S



Agregando funcionalidad a un Item


Agregue funcionalidad al default de un text item introduciendo algunas de las
caractersticas adicionales:


Propiedades de
funcionalidad
Uso
Case Restriction Impone la insercin del tipo de letra Upper(mayscula),
Lower(minscula), o Mixed(mixto).
Alignment Determina la justificacin del valor sin el item
Multi-Line Determina si el item puede almacenar mltiples lneas de
texto. Los text item solo puede ser multi-line si ellos
representan un varchar2, o long base de la columna de l
atabla
Wrap Style Determina si una mltiple lnea de text item esta envuelta
dentro de una lnea de texto; elige de None, Character o
Word.
Secure Determina si el valor en el item es repetida para la pantalla
y as ser visible para el usuario
Keep Position Retiene la posicin del cursor, as que se puede reingresar
a un item, si se coloca en el mismo lugar
Auto Skip Determina si el cursor automticamente salta dentro del
siguiente item cuando este esta completo. El auto skip es
usado en conjunto con la propiedad Fixed Length
Vertical Scroll Bar Determina si el text item mutli-line incluye un scroll bar


Creando un Text Item Multi-line


Utilice un text item multi-line para desplegar:

Direcciones

Comentarios

Descripciones



Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 6 65 5 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S




Los datos en un text item multi-line debe ser de uno de los siguientes tipos:

Char

Alfanumeric

Long


Cuando se crea un text item multi-line, hay que considerar las propiedades de:

Ancho

Altura

Longitud mxima


Para ver el nmero deseado de lneas, necesita alterar el valor por default de las
propiedades mencionadas, de otro modo el text item simplemente tiene la habilidad
para almacenar datos multi-lined.


El nmero de caracteres que pueden ajustarse en una lnea son dictados por el
ancho del text item y la fuente en uso.


Colocando la alineacin


Puede especificar como los valores de texto son alineados en un text item
colocando la propiedad Alignment hacia la izquierda (left), derecha (right) o
centrado (center).


Incluyendo mensajes de ayuda


Utilice las propiedades Miscellaneuos de Hint y Automatic Hint para proveer de
contexto de ayuda al usuario.

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 6 66 6 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S



Propiedades
Miscellaneuos
Uso
Hint Escribe el mensaje que se desplegara sobre la lnea de
mensajes
Automatic Hint Determina si la sugerencia del item es desplegada
automticamente


Nota: Forms tiene otras varias propiedades de item que caen dentro de la
categora Miscellaneous, que se vern ms adelante.


Resumen


Esta leccin le mostr como modificar el default de los item o de los text item que se
crean en Forms para cada una de las columnas similares de inclusin en un bloque de
la tabla base. En particular, los text items tienen las siguientes propiedades:


Modificar su apariencia alterando su tipo, su desplegado y sus propiedades de
registros.

Controlar la manera en que los datos son desplegados e insertados

Alterar el comportamiento de navegacin

Realzar la interaccin con sus correspondientes columnas de las base de datos

Agregar funcionalidad como Case Restriction y Alignment

Incluir propiedades Hint para proveer contento de ayuda para usuarios.










Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 6 67 7 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Prctica


En esta prctica creara text items, alterara el comportamiento de los text items y
eliminara text items.


Forma CUSTGx


1. Remover el item Region ID y su boilerplate de texto


2. Asegrese que los comentarios del item permitan desplegar mltiples lneas de
texto


3. Automticamente despliegue un nico, nuevo nmero de customer por cada
nuevo registro y asegrese que este no pueda ser cambiado. Utilice :
SEQUENCE.CUSTOMER_ID.NEXTVAL


4. En la Forma CUSTGx, reorganice el tamao y la posicin de los items.
Utilice la tabla como una gua


Item Tamao
Sugerido
ID 5
FIRST_NAM
E
30
LAST_NAME 30
STREET_AD
RESS
15
POSTAL_CO
DE
5
CITY 2
STATE_PRO
VINCE
10


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 6 68 8 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Forma ORDGx


5. En el bloque Order, cree a nuevo text item llamado Customer_Name
Asegrese que el Customer_Name no este asociado con la tabla ORDERS
No permita insertar, actualizar o consultar en este item y asegrese que la
navegacin sea posible solo si es realizada con el mouse


6. En el bloque Order, cree un nuevo text item llamado Sales_Rep_Name
Asegrese que Sales_Rep_Name no este asociado con la tabla ORDERS.
No permita insertar, actualizar o consultar en este item y asegrese que la
navegacin sea posible solo si es realizada con el mouse


7. Coloque las propiedades de Oder_Total, y que la navegacin sea posible solo
si es realizada con el mouse, no es permitido insertar y actualizar. Despliegue el
valor utilizando el formato 9,999,990.99 y alineacin a la derecha.


8. Utilice el formato de DD-MON-RRRR para Order_date.
Asegrese que las propiedades Maximum Length y Query Length se acomoden
a este formato.


9. Coloque las propiedades relevantes para Order_date, y que este despliegue la
fecha actual, siempre que un nuevo registro sea insertado.


10. En el Item Block, cree un nuevo text item llamado Item_Total.
Asegrese que el Item_Total no este asociado con la tabla ORDER_ITEMS.
No permita insertar, actualizar o consultar en este item y asegure que la
navegacin sea posible solo si es realizada con el mouse.
Permita datos numricos y despliguelos usando el formato de 999,990.99


11. Alinee los valores de Unit_Price y Quantity


12. Altere el item Quantity, y que la navegacin sea posible solo si se realiza con
mouse, u las actualizaciones no estn permitidas



Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 6 69 9 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Order Block Items Tamao
Sugerido
ORDER_ID 5
ORDER_STATUS 5
ORDER_TOTAL 15,2
CUSTOMER_NAME 30
SALES_REP_ID 5
SALES_REP_NAME 30
ORDER_DATE 15
ORDER_TOTAL 15


Item Block Items Tamao
Sugerido
ORDER_ID 5
PRODUCT_ID 5
UNIT_PRICE 15
QUANTITY 15
ITEM_TOTAL 15


13. En el bloque Stock, alterar el nmero de instancias del Porduct_ID, y que este
se despliegue solo una vez.


14. Ordene los items y los bolierplates en el Canvas2.
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 7 70 0 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

CAPITULO 8


Creacin de Listas de Valores y Editores


Usted regularmente querr apoyar sus text items con listas de valores disponibles. En
algunos casos, tambin querr ajustar el editor utilizado sobre text item seguros. Esta
leccin muestra como crear listas de valores (Los) y editores de texto (text editors), y
como asociarlos con los items en la forma.


Al final de esta leccin, usted tendr la habilidad para hacer lo siguientes:

Identificar los objetos y mecanismos envueltos con LOVs

Disear LOVs y asociarlos con los text items en una forma

Crear editores y pegarlo a los text items


Lista de valores (LOVs) y Editors son objetos en un modulo de Forms que abre su
propia ventana cuando es activada en runtime. Estos son definidos a nivel de forma, lo
cual significa que usted puede utilizarlos para sustentar text items en cualquier bloque
del modulo de la forma.


LOVs


Un LOV provee al usuario con un simple mecanismo para escoger un valor de item de
una lista dinmica. El usuario puede reducir las lneas desplegadas en la lista por una
simple tcnica de auto-reudccin, o por bsqueda de cadenas.


Cada lnea en un LOV puede presentar varios campos de valores, con encabezados
de columnas arriba. Usted puede disear su propia LOV para recuperar algunos o
todos los valores del campo de la lnea elegida por el usuario, y colocarlos dentro de
los item de la forma o variables.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 7 71 1 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

LOVs pueden ser:

Dinmicas
La lista entrada puede cambiar para reflejar los cambios en la fuente de datos

Independientes
El diseador puede invocar de cualquier text item, o forma fuera un text item si
es llamado programablemente.

Flexibles
Usted puede utilizar el mismo LOV para sustentar varios items

Eficientes
Usted puede disear LOVs para reutilizar datos que ya hayan sido cargados
dentro de la forma, a la vez de accesar a la base de datos de cada llamada.
Esto es til donde los datos son de recuperacin esttica.


Uso de Lovs en tiempo de ejecucin.


Cuando un text item tiene un LOV agregado, la lista se despliega sobre la lnea de
estado mientras el cursor este en el item.


1. Dando clic en [List] key, o select Help -> List para invocar la LOV

2. Elija como entrar en la lista desplegada. Puede introducir caracteres para auto-
reducir la lista, o entrar una bsqueda de cadenas en el campo Buscar

3. Clic OK para recuperar el valor de la lnea


Editores


Un editor de texto permite al usuario para ver mltiples lneas de un text item
simultneamente, bsqueda y reemplazo de texto (search-and-replace text) con el, y
generalmente modifica un valor de un item de esta ventana separada.


Recuerde, cada item de texto tiene el editor por default disponible, pero usted puede
disear su propio editor de reemplazamiento para estos items que tienen
requerimientos especiales.
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 7 72 2 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Reemplazando el editor default de un text item, usted puede:


Proveer una extensa ventana de edicin para items con valores textuales
potenciales

Opcionalmente utiliza un externo sistema editor.


Uso de Editores en tiempo de ejecucin.


Con el cursor en el text item para ser editado,


1. Presiona [Edit] key, o select Edit -> Edit para invocar el editor agregado

2. Editar el texto en la ventana Editor, el editor de Forms provee un botn Search el
cual invoca un dialogo adicional search-and-replace para manipular texto

3. Clic OK para escribir sus cambios en el text item


Definicin de una LOV


Cuando usted planea y construye un LOV, necesita considerar los siguientes objetos
de Forms:

Record Group
Un objeto de Forms, que es utilizado para almacenar el arreglo de valores que
estn representados por un LOV. El record group puede ser creado primero, o
como parte del proceso de la creacin de LOVs.

LOV
La lista en si misma, la cual representa valores que sustentan un record group,
permite al usuario seleccionar valores, y escribir valores para especificar items o
variables.

Text Items
El principal text item que usted agregue a un LOV ser usualmente uno de los
valores que regrese el LOV. El LOV puede entonces ser llamado de este item para
proveer valores posibles para este. Un LOV sencillo puede regresar valores para
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 7 73 3 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

varios items, y usted puede querer agregarlo para este tambin, si es apropiado
para su aplicacin.


De hecho, el LOV puede ser adjuntado a cualquier text item del cual la misma lista de
valores necesita para ser vista, si estos recibirn un valor o no.


Record Groups


Un record group es una estructura column-and-row almacenada en la memoria Forms,
y similar a la estructura de la tabla de base de datos. Son utilizados para mantener
registros que pueden ser reutilizados por las aplicaciones de Oracle Forms 9i, as
reduciendo el acceso repetido para los datos externos.


Record groups pueden ser diseados para contener valores estticos. Estos pueden
alternativamente ser habitados programaticamente en runtime, o ms comnmente,
habitados por un query SQL.


Los record groups pueden:


Proveer los datos que son presentados por LOVs

Proveer los datos de list items dinmicos

Proveer los datos pasando para reportes y grficos

Otras aplicaciones definidas por los usuarios.


En esta seccin utilizar record groups para sustentar Los. Estos pueden ser creados
antes del LOV, o como parte del proceso de la creacin de una LOV si es basada en
una consulta.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 7 74 4 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Creando un nuevo LOV


Seleccione el nodo LOV en el Object Navigator, despus elija Create. Esto abrir el
dialogo New LOV, con los siguientes elementos:


Elemento Descripcin
Source of Data to be
Displayed
(Radio Group)
Seleccionar de:
-Un record group existente
- Nuevo record group basado en una consulta

Select (Button) Para ver la lista de record groups, es para usar
una vez que ya exista un LOV

Existen 2 Opciones:
-Crear una consulta
-Importar una consulta

Query Text Area multi-linea donde inserta estatutos SQL.
Utiliza este si un query basado en un record group
es para ser creado para sustentar el LOV


Posteriormente, se presentar la venta de seleccin de las columnas que deseamos
se presenten cada vez que la Lov sea invocada.


Al dar clic en siguiente, se presentar la pantalla en donde debemos definir la etiqueta
de las columnas que hemos seleccionado.


En la parte inferior derecha, esta un boton para especificar los Elemetentos de
Retorno, esto es, se podr especificar en que ITEMS deseamos que sean
almacenados los valores de la lista de valores al momento que el usuario seleccione
una opcin vlida dentro de la misma.


El resto de las opciones que se presentan, son relativas a los aspectos visuales de la
Lista de Valores tales como: Titulo, Posicion, Nmero de Registros que se van a
presentar, filtrado de los datos, etc.

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 7 75 5 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

El Query Text


Cuando usted elige crear un record group al mismo tiempo que la LOV (la accin por
default), el nuevo record group estar query-based. Esto es que se ejecutar un
estatuto SELECT SQL para habitar el grupo de la base de datos.


El query text que usted suministra en el nuevo dialogo New LOV ser:


Definir el query en el cual el nuevo record group estar basado

Opcionalmente definir el regreso de los items de valores en el LOV (este puede
ser definido a travs de la clusula INTO, pero puede suministrar esta
informacin mas convenientemente)


El query text debe incluir una clusula SELET y FROM. Las clusulas opcionales
incluyen:


INTO

WHERE

GROUP BY

ORDER BY


Colocando propiedades a un LOV


Despus de crear las propiedades de un LOV, estas son otras importantes
propiedades que usted puede definir en la paleta de propiedades de un LOV. Estas
incluyen:


Propiedad Descripcin
X Position and Y
Position
Coordina la pantalla para la ventana del LOV. Elija una
posicin que sea apropiado para los items que el LOV
sustenta.

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 7 76 6 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Width and Height Tamao de la ventana del LOV. El usuario puede
ajustar esto, pero elige un tamao que es apropiado
para los datos
Column Mapping
(More...)
Abre la ventana Column Mapping
Auto Confirm Determina si el LOV debe cerrarse y regresar valores
automticamente cuando es reducido a un registro
sencillo
Auto Display Determina si el LOV debe ser invocado
automticamente cuando el cursor entra a un texto
adjunto
Auto Refresh True:
El record group re-ejecuta este query cada vez que el
LOV es invocado

False:
El query record group dispara solo la primera vez que
el LOV es invocado. Subsecuentemente el LOV llama
el actual datos del record group (mas eficiente de un
dato que no cambia mucho)
Long List Determina si el usuario debe ser prompted con un
dialogo que permite entonces ingresar un valor de
bsqueda antes de invocar un LOV. Este valor es
utilizado como una restriccin adicional en la primer
columnas en la consulta
Auto Skip El cursor da pequeos saltos al siguiente next item


Cuando usted da clic en botn control de la propiedad More de la columna Mapping
properties, la caja de dialogo LOV Column Mapping es abierta.


Column Mapping
Element
Descripcin
Column Names (List) Le permite seleccionar una columna LOV para mapear
o definir una columna

Return Item Uno de: block_name.item_name
GLOBAL.variable_name
PARAMETER.parameter_name
Si es null, el valor de la columna no es regresada de
un LOV


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 7 77 7 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Display Width Ancho de la columna es desplegada en un LOV. Un
valor 0 causa la columna para ser escondida, a travs
de su valor se mantiene permanentemente disponible
Column Title El encabezado de la columna en una ventana LOV


Para colocar un columns mapping en este dialogo, primero seleccione la lista de la
columna de nombres, despus coloque los otros valores.


Nota: La columna record group y las columnas LOV deben mantenerse compatibles.
Usted puede modificar la consulta del record group de su propia lista de propiedades.


Asociacin de Lovs a TextItems


Para permitir al usuario invocar un LOV de un text item, usted debe especificar el
nombre del LOV en las propiedades del item.


1. Seleccione el text item en el object navigator del cual el LOV es accesible

2. En la paleta de propiedades, coloque la propiedad LOV (en el grupo
Miscellaneous) para requerir un LOV del text item


Recuerde que <list> lamp despliega cuando el usuario navega al siguiente text item,
publicando que el LOV es disponible a travs de la llave [List] o el men command.


Definiendo un Text Editor


Si el usuario necesita utilizar valores cobre textos, el default del editor de Forms son
usualmente suficientes de mas items. Sin embargo, usted puede disear un editor
personalizado como un objeto en un modulo de Forms, despus adjntelo a los text
items que lo necesiten.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 7 78 8 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Creando un editor personalizado


1. Selecciones el nodo Editors en el object navigator, despus elija Create. Un nuevo
objeto de editor se despliega en la lista

2. Selecciones el nuevo editor en el navigator, despus entre a la paleta de
propiedades, donde usted puede colocarle nombre y otras propiedades.


Observando las siguientes propiedades, usted puede ver los ajustes individuales que
son posibles crear en su propio editor.


Propiedad Descripcin
Title and
Botton Title
Despliega el encabezado de la ventana del editor
Width and
Height
Estas propiedades controlan el tamao del editor y mejoran el
rea de edicin
X and Y
positions
Es la posicin en la pantalla de la ventana (puede tambin ser
definida por una propiedad text item)
Wrap Style Word, Character, o None.
Controlan el estilo del texto envuelto en una rea de edicin
visible
Horizontal and
Vertical Scroll
Bars
True o False para cada uno


Definiendo el editor de un text item

Este es especificado en la propiedad del editor del item. Las opciones posibles
son las siguientes:

Null
El text item utiliza el default del editor de Forms

Editor_name


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 7 79 9 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

El text item utiliza el nombre del editor que tiene que personalizar en este
modulo

SYSTEM_EDITOR
El item utiliza el editor externo ASCII definido en el sistema editor de la
variable del medio ambiente (el cual varia de acuerdo a la plataforma).


Resumen


En esta leccin usted aprendi que las listas de valores (LOVs) y editores de texto
pueden ser utilizados para apoyar text items. Los LOVs y los Editores son objetos en
un modulo de Forms que abren su propia ventana cuando se activa runtime y son
usados para sustentar los text items en cualquier bloque del modulo de Forms. En
particular:

LOVs y Editores pueden compartirse a travs de los text items


Los pasos para implementar un LOV son:

1. Crear un nuevo LOV (y record group)
2. Definir Column Mapping de los items retornados
3. Adjuntar el LOV a un text item


Los text items puede utilizar el editor default, un editor personalizado o un editor
del sistema.


Prctica


En esta practica, creara dos LOVs y un Editor.


1. En la forma ORDGx, cree un LOV que despliegue los nmero de los productos y
sus descripciones
Cree un nuevo LOV y cambie su nombre como Products_Lov.
Utilice las columnas ID y NAME de la tabla PRODUCT_DESCRIPTIONS para
definir el query. Asegrese que el query del LOV clasifique los productos por
nombre.
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 8 80 0 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

En el LOVs Column Mapping, especifique que la columna ID ser habitada
como Product_ID en el item block.
Asegrese que el LOV despliegue el titulo de los productos
Cambie el nombre del record group Product_Lov a Products_Rg.


2. Adjunte el Product_Lov al item del Product_ID en el item Block


3. En la forma CUSTGx, cree un LOV que despliegue los nmeros representativos de
ventas y sus nombres.
Cree un nuevo LOV y cambie su nombre por Sales_Rep_Lov.
En el query LOV, seleccione ID en la primera columna y concatenar
FIRS_NAME y LAST_NAME para la segunda columna (incluyendo un alias).
Seleccione estas columnas de la tabla EMPLOYEES.
Asegrese que el LOV despliegue solo las personas con un Title of Sales
Representative y clasificados por last name.
Regresa la columna ID en el LOV para Sales_Rep_ID en el customer block y
coloque el ancho de desplegado a 20
Cambie el titulo de la columna por el nombre de Sales Representative a Name
y coloque el ancho de desplegado a 200
Asegrese que el LOV despliegue el titulo de Sales Representative.
Cambie el nombre de Sales_Rep_Lov record group a Sales_Rep_Lov_Rg


4. Adjunte el Sales_Rep_Lov al item Account_mgr_id en el customer block


5. En la forma CUSTGx, cree un editor y adjntelo al item de Comments
Cree un nuevo editor y cambie su nombre a Comments_Editor y de un nombre
apropiado.
Coloque el tamao del editor a 450 x 250 y su coordinacin a 175, 175.
Cambie el color de background y foreground, y que el editor despliegue con
atributos visuales distintos.
Adjunte el editor al item Comments.

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 8 81 1 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

CAPITULO 9


Creacin de Input Items adicionales


En resumen para los text items, Forms provee una variedad de otros tipos de item.
Estos pueden estar divididos en dos grupos: Los que aceptan la insercin de datos y
los que no. Esta leccin cubre a los Input items y como son utilizados.


Objetivos


Al final de esta leccin, usted tendr la habilidad para hacer lo siguientes:


Crear check boxes

Crear list items

Crear radio Groups

Incluir controles VBX


Un Input Item es un trmino genrico para los tipos de item de forms que admiten
introducir informacin (Input).


Estos tipos de item incluyen:


Check box

List item

Radio group

VBX control




Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 8 82 2 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Qu se puede hacer con los Input Items?


Cuando usted crea Input items, ellos tienen algunas funcionalidades iniciales. Un
Input item le permite interactuar con la base de datos de las siguientes maneras:


Insertar valores

Actualizar valores existentes

Eliminar valores existentes

Consultar valores existentes


Nota: Usted puede agregar funcionalidad a los Input items con triggers y PL/SQL
program units.


Qu es un check box?


Un check box es un objeto de interface two-state que indica si un valor es ON u
OFF. El estado desplegado de un check box es siempre checked o unchecked.
Aunque un check box es limitado a dos estados, este no es limitado a solo dos
valores. Usted especifica el valore que representa Checked, el valor para
representar Unchecked y como otros valores son procesados.


Usted puede utilizar un check box para realzar la interface del usuario convirtiendo
un item existente que tenga dos posibles estados.


Usando un check box en Runtime


Usted puede:


Colocar un valor de check box de las siguientes maneras:
- Que sea un Input, o sea que permita el acceso de informacin
- Que signifique el valor por default de una propiedad
- Que este programado para realizar algo.
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 8 83 3 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Consultar valores checked

Consultar valores unchecked

Ignorar los valores de un check box en modo Enter Query deshabilitando el
item con Shift-Click


Un check box puede ser creado de las siguientes maneras:


Convirtiendo un item existente

Usando la herramienta check box en el Layout Editor


Utilizando el icono Create en el Object Navigator


Propiedades especificas de un check box

Propiedad Uso
Data Type Determina el tipo de dato. Este es restringido a las
opciones de CHAR, NUMBER y DATE
Access Key Determina la combinacin de llaves(keys) puede ser
utilizadas para navegar y manipular este item
Label Crea y modifica el texto que aparece adyacente al item
check box. Este es independiente del valor del check box
Mouse Navigate Determina la navegacin del item cuando el usuario utiliza
el clic en el item con el mouse. El default es TRUE
Checked Value Especifica un texto string/value para representar el estado
checked del check box. El valor debe ser compatible con el
tipo de dato especificado
Unchecked Value Especifica un texto string/value para representar el estado
unchecked del check box. El valor debe ser compatible con
el tipo de dato especificado
Check Box Other
Values
Determina como otros valores son procesados. Eligiendo
de NOT ALLOWED, CHECKED y UNCHECKED


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 8 84 4 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Pasos para convertir un Item existente en un Check Box


Usted puede convertir un item existente en un check box cambiando la
propiedad Item Type a Check Box en la paleta de propiedades (property
palette) y colocando las otras propiedades relevantes.


1. Invoque la paleta de propiedades del item el cual quiere convertir

2. Coloque el tipo de item a check box

3. Entre a la etiqueta del check box

4. Entre a los valores de los estados checked y unchecked

5. Coloque la propiedad check box Other Values


Pasos para crear un Check Box en el Layout Editor


Usted tambin puede crear un check box utilizando la herramienta Check Box
en el Layout Editor


1. Invoque el Layout Editor

2. Clic en la herramienta check box

3. Clic en el canvas en la posicin donde usted quiere que se despliegue el
check box

6. Doble clic en el check box para invocar la paleta de propiedades

7. Coloque las propiedades como son requeridas. Recuerde definir el
Default Value


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 8 85 5 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Transacciones con otros valores


Si su tabla base permite otros valores, entonces el check box debe contar con
ellos. Usted puede asignar otros valores para los estados checked y unchecked
utilizando la propiedad Check box Other Values. Alternativamente, usted puede
elegir para desactivar otros valores completamente con la propiedad Not
Allowed.


Nota: Si elige desactivar otros valores y ellos existen en la columna de la tabla
base. Forms ignora el registro completo durante el proceso de consulta.


Transacciones con valores Null


Si la columna de la tabla base permite valores nulos, usted puede tomarlos en
cuenta de la siguiente forma:


Colocando la propiedad Check box Other Values

Colocando el estado checked o unchecked para representar un valor
nulo (dejar el espacio en blanco)

Ignore un check box en modo de Enter Query (utilice Shift-Click)


List Item


Un list item es un objeto de interface que despliega un conjunto predefinido de
opciones, cada uno correspondiente a un valor especifico de datos. Usted puede
utilizar un list item en runtime para seleccionar un valor sencillo. Lista las opciones o
elementos que son mutuamente exclusivos; uno y solo uno puede ser elegido a la vez.


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 8 86 6 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Tres estilos de List Item


List Style Descripcin
Pop List Se despliega como un campo con un botn adjunto del lado
derecho. Cuando se da clic sobre un pop list todos los elementos
de la lista se despliegan.
T-List Se despliega como campo con un scroll bar adjunto del lado
derecho. Utilice el scroll bar para ver la lista de elementos
Combo
Box
Se despliega como un campo con una fecha indicada hacia abajo
siguiente a su lado derecho, pero no esta adjunta. Utilice el botn
para desplegar todos los elementos de la lista. Permite utilizar
input item


Usos y beneficios de los List Items


Permite desplegar un conjunto definido de opciones

Despliega un conjunto de opciones sin utilizar el rea del canvas

Provee una alternativa de radio Groups

Provee una lista de valores estilo ventana


Colocando el valor de un List Item


El valor de un list item puede ser en cualquiera de las siguientes maneras:

User selection

User input (solo en el estilo Combo Box)

Default value

Programmatic control


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 8 87 7 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Creando un List Item


Usted puede crear un list item de la siguiente forma:


Convirtiendo un item existente

Usando la herramienta check box en el Layout Editor

Usando el icono Create en el Object Navigator


Propiedades especificas para un list item


Propiedad Uso
Access Key Determina la combinacin de las llaves usadas para navegar y
manipular este item
List Style Especifica el estilo de la lista. Tiene las opciones de Pop-list, T-
list o Combo box
Other
Values
Determina como otros valores son procesados
Mouse
Navigate
Determina la navegacin del item cuando se da clic en el
List Element Especifica el texto que aparece en la lista
Value Especifica el valor que corresponde al elemento de la lista


Pasos para convertir un Item existente en un List Item


Usted puede convertir un item existente en un List Item cambiando la propiedad
Item Type a List Item en la paleta de propiedades (property palette) y colocando las
otras propiedades relevantes.


1. Invoque la paleta de propiedades del item el cual quiere convertir

2. Coloque el tipo de item a List Item

3. Selecciones la propiedad List Element

4. Clic en el botn More. Se desplegar la lista de elementos
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 8 88 8 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S


5. Entre al primer elemento que quiere que aparezca en su List Item

6. Entre al valor seleccionado actualmente del elemento de la lista en Value
property

7. Cree una adicional lista de elementos y valores repitiendo los pasos 2 al 5

8. Clic en OK para aceptar y cerrar el dialogo de la lista de elementos

9. Coloque Other Values property para tambin:
a. Rechazar otros valores que estn predefinidos como una lista de valores,
o
b. Aceptar y dejar por default todos los valores de una lista de valores
predefinida


Pasos para crear un List Item en el Layout Editor


Usted tambin puede crear un list item utilizando la herramienta List Item en el
Layout Editor


1. Invoque el Layout Editor

2. Seleccione la herramienta List Item

3. Clic en el canvas en la posicin donde usted quiere que se despliegue el list
item

4. Doble clic en el list item para invocar la paleta de propiedades

5. Coloque las propiedades como son requeridas


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 8 89 9 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Valores Null en un List Item


Si la columna de la tabla base de un list item permite valores nulos. Forms crea un
pseudo-choice en la lista para representar el null. Qu puede ver en runtime
dependiendo del estilo del list item?


Pop-lists se despliegan en un elemento en blanco

T-lists sin elementos sobresaltados

Combo boxes despliegan un elemento en blanco


Manipulando otros valores en un List Item


Si la columna de la tabla base de un list item permite otros valore que estn
asociados con la lista de elementos, usted debe especificar como desea manejar
este valor. Usted puede tambin:


Ignorar otros valores (dejando la propiedad Other Values en blanco), o

Asociar los otros valores con un elemento de la lista existente en Other
Values Property.


Radio Group


Un radio group es un conjunto de radio buttons. Cada radio button representa un valor
diferente. Estos valores y su mejora correspondiente a radio buttons, son mutuamente
exclusivos.


Usos y beneficios de Radio Groups


Provee opciones entre dos o ms valores estticos

Provee una alternativa par list items con dos o tres opciones

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 9 90 0 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Provee opciones entre dos alternativas, donde la opcin es On/Off o Yes/No. Por
ejemplo, formato de impresin Horizontal o Vertical.


Nota: Considere list items a la vez de radio groups si son mas de 4 o 5 items


Usando un Radio Group en Runtime


Usted puede:

Colocar un valor radio group:
- Que sea un Input, o sea que permita el acceso de informacin
- Que signifique el valor por default de una propiedad
- Que este programado para realizar algo.

Consultar valores individuales de radio buttons

Ignorar los valores de un radio button en modo Enter Query asegurndose que
ninguno esta seleccionado


Usted puede crear un radio group de las siguientes maneras:


Convirtiendo un item existente a un radio group

Creando un nuevo Radio Group en el Layout Editor


Propiedades especificas para Radio Group Items y Radio Buttons

Radio
Group
Properties
Uso
Data Type Coloca el tipo de dato. Este es una opcin restringida de CHAR, NUMBER
y DATE
Other
Values
Determina como otros valores son procesados
Access Key Determina la combinacin de las llaves usadas para navegar y manipular
este item
Mouse
Navigate
Determina la navegacin del item cuando el operador activa el item con el
mouse
Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 9 91 1 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S



Radio
Button
Properties
Uso
Name Identifica cada radio individualmente en el radio group
Access
Key
Determina la combinacin de las llaves usadas para navegar y manipular
este item
Label Especifica el texto que aparecer adyacente al radio button. Estas etiquetas
son independientes de los valores del button
Value Especifica el valor que el radio button representa


Pasos para convertir un Item existente en un Radio Group


Usted puede convertir un item existente en un Radio Group cambiando la propiedad
Item Type y colocando las propiedades de un radio group.

1. Invoque la paleta de propiedades del item el cual quiere convertir

2. Coloque el tipo de item a Radio Group

3. Coloque la propiedad Other Values para especificar como el radio group debe
manejar cualquier otro valor

4. Expanda el nodo Radio Group en el Object Navigator. Se desplegar Radio
Buttons

5. Clic en el icono Create
Un radio group es desplegado en el Object Navigator y la paleta de propiedades
toma su contexto

6. Inserte un valor y etiqueta para el radio Button

7. Especifique las propiedades desplegadas del radio Button

8. Cree radio button adicionales repitiendo los pasos 5 a 7

9. Coloque la propiedad Default, como es requerido. Este debe ser el nombre del
radio button


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 9 92 2 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Creando un Radio Group


Usted tambin puede crear un radio group utilizando la herramienta Radio Group en el
Layout Editor


1. Invoque el Layout Editor

2. Seleccione la herramienta Radio Button

3. Posicione el cursor en la localizacin deseada y de clic

4. Si usted y tiene un radio button en el bloque actual, se despliega el dialogo Radio
Groups y usted tiene que decidir si el nuevo radio button debe aparecer en el grupo
existente o en uno nuevo.

5. Doble clic en el radio button para invocar la paleta de propiedades
El nuevo radio group es creado implcitamente

6. Coloque las propiedades del radio button como son requeridas


Valores Null en un Radio Group


Un radio group puede tratar como un valor null como un valor valido. Usted debe ser
considerado el caso null, si su columna de la tabla base lo permite. Usted puede hacer
tambin:


Utilizar la propiedad Other Values para forzar implcitamente el null a un radio
button, o

Asignar el null a su propio radio button


Manipulando otros valores en un Radio Group


Si la columna de la tabla base de un radio group permite otros valore que estn
asociados con sus radio buttons, usted debe especificar como desea manejar este
valor. Usted puede tambin:

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 9 93 3 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Ignorar otros valores (dejando la propiedad Other Values en blanco), o

Asociar Other Values con un radio button existente (nombrndolo o asociando
el valor en la propiedad Other Values)


VBX Control


Un VBX Control es un objeto de interface personalizado el cual su definicin es
almacenada en un tipo especial de liga dinmica en una librera distribuida en los
archivos con una extensin.VBX. Un archivo sencillo VBX puede contener diferentes
controles VBX, como bien sus propiedades, eventos, mtodos y mensajes de error.


Usos y beneficios de Radio Groups


Provee un nmero ilimitado de mtodos alternativos para desplegar valores de
datos

Permite utilizar interface de objetos comnmente usados en las aplicaciones de
Microsoft Windows


Incluyendo un control VBX


Usted puede incluir controles VBX en su modulo de Forms creando un item
personalizado y colocando las propiedades relevantes.


Propiedades
Funcionales
Uso
Custom Item Type Determina el tipo de item personalizado como un control
VBX. Elija de un contenedor OLE, User Area y VBX control
VBX Control File Especifica el nombre del archivo en el cual la definicin del
VBX control es almacenada
VBX Control Name Determina cual VBX control utiliza el modulo de Forms
VBX Control Value
Property
Determina cual de las propiedades de control scalar-valued
denotan el valor del control


Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 9 94 4 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Las propiedades VBX control varan con cada control. Usted puede ver las
propiedades de VBX Controla travs de las propiedades Miscellaneous y Display, una
vez que usted tenga el nombre del archivo de control y el nombre del control. Usted
puede encontrar mas propiedades de control VBX especificas referiendose a la
documentacin para ese control en particular.


Pasos para incluir un VBX Control dentro del Layout Editor


1. Clic en la herramienta VBX Control

2. Clic en el canvas en la posicin donde usted quiere que se despliegue el item
Un custom item se despliega

3. Reacomode el rea personalizada para conocer su requerimiento

4. Doble clic el custom item. Se despliega la paleta de propiedades.

5. Asegrese que la propiedad Custom Item Type es colocada en VBX control

6. Doble clic en la propiedad VBX control file. Se despliega el dialogo File System

7. Especifique el nombre del archivo VBX control, asegurndose de insertar el
directorio path completo

8. Especifique el nombre del VBX control

9. Coloque las propiedades Miscellaneous como son requeridas.


Resumen


En esta leccin, usted aprendi como crear items que acepten directamente insertar
datos. Utilice estos datos para realzar la interface del usuario:


Check boxes para convertir items que tienen dos posibles estados

List items (pop-lists, t-lists y combo boxes) para convertir items que son
mutuamente exclusivos

Capacitacin Empresarial
Manual Oracle Forms 9i





P P G GI IN NA A 9 95 5 D DE E 9 95 5 G GR RU UP PO O A AR RG GO OG G Y Y A AS SO OC CI IA AD DO OS S S S. .A A. . D DE E C C. .V V. .
T TE EC CN NO OL LO OG G A A E EN N S SI IS ST TE EM MA AS S A AD DM MI IN NI IS ST TR RA AT TI IV VO OS S

Radio groups para convertir items (dos o tres alternativos) que son
mutuamente exclusivos

VBX controls para convertir items a interface de objetos personalizados.


Prctica


En esta prctica convertir un item existente en otro tipo de item. Crear un list item, un
check box y un radio group.


1. En la forma CUSTGx, convertir el text item NLS_TERRITORY dentro de un pop-list item

Agregue una lista de elementos:

AMERICA
CHINA
GERMANY
INDIA
ITALY
JAPAN
SWITZERLAND
THAILAND

Asegrese que los nuevos registros desplieguen el valor default AMERICA.

Cambie el list item a un combo box, para ver la diferencia.

Acomode el tamao en el Layout Editor, as que los elementos no se trunquen en runtime.

2. En la forma ORDGx, convertir el text item Order_Mode en un Radio Group.
Coloque los valores on-line y direct

Asegrese que los nuevos registros sean automticamente asignados al valor direct


Realice los cambios visuales necesarios para ajustar la presentacin de los datos
correctalmente.