Download - SW-OrA-20110127 - Oracle Developer Build Forms 1 Respuestas a Practica Del Capitulo 21

Transcript
Page 1: SW-OrA-20110127 - Oracle Developer Build Forms 1 Respuestas a Practica Del Capitulo 21

Oracle Developer Build Forms 1 Oracle Developer Build Forms 1 Repuestas a Práctica del Capítulo 21Repuestas a Práctica del Capítulo 21

SW-ORA-20110127SW-ORA-20110127

Revisión: 1Revisión: 1Fecha: 27/01/2011Fecha: 27/01/2011

Oracle Developer Build Forms 1 Oracle Developer Build Forms 1 Respuestas a Práctica del Capítulo 21Respuestas a Práctica del Capítulo 21

1. Introducción a la Práctica del Capítulo 21:Introducción a la Práctica del Capítulo 21: Esta práctica cubre los tópicos siguientes:

• Completa las imágenes de productos solamente cuando el item imagen es mostrado

• Modifica el disparador “WHEN-BUTTON-PRESSED” del item “IMAGE_BUTTON” para usar los IDs de objetos en lugar de los nombres de objetos

En esta práctica, usa las propiedades y variables en el formulario “ORDG01” para proporcionar un uso flexible del código. También hace uso de los IDs de objetos.

• Completa las imágenes de productos solamente cuando el item imagen es mostrado

• Modifica el disparador “WHEN-BUTTON-PRESSED” del item “IMAGE_BUTTON” para usar IDs de objetos en lugar de los nombres de objetos

2. Proceso: Práctica del Capítulo 21Proceso: Práctica del Capítulo 21

2.1. En el formulario “ORDG01”, altere el disparador que completa el item “PRODUCT_IMAGE” cuando la imagen es mostrada.Agregue un chequeo en el código para verificar el “PRODUCT_IMAGE”. Solamente efectúe las acciones del disparador si la imagen está siendo mostrada actualmente. Use la función incorporada “GET_ITEM_PROPERTY”.

11//99

Page 2: SW-OrA-20110127 - Oracle Developer Build Forms 1 Respuestas a Practica Del Capitulo 21

Oracle Developer Build Forms 1 Oracle Developer Build Forms 1 Repuestas a Práctica del Capítulo 21Repuestas a Práctica del Capítulo 21

SW-ORA-20110127SW-ORA-20110127

Revisión: 1Revisión: 1Fecha: 27/01/2011Fecha: 27/01/2011

Respuesta 1: En Windows 7 Ultimate 32 Bits, click en: “Inicio → Todos los programas → Oracle Forms 6i → Form Builder”

2.1 - “Oracle Forms Builder” - ORDG01.fmb2.1 - “Oracle Forms Builder” - ORDG01.fmb11

Seleccionar “Open an existing form” y click en [ OK ]

22//99

Page 3: SW-OrA-20110127 - Oracle Developer Build Forms 1 Respuestas a Practica Del Capitulo 21

Oracle Developer Build Forms 1 Oracle Developer Build Forms 1 Repuestas a Práctica del Capítulo 21Repuestas a Práctica del Capítulo 21

SW-ORA-20110127SW-ORA-20110127

Revisión: 1Revisión: 1Fecha: 27/01/2011Fecha: 27/01/2011

2.1 - “Oracle Forms Builder” - ORDG01.fmb2.1 - “Oracle Forms Builder” - ORDG01.fmb22

Seleccionar el archivo de módulo de formulario “ORDG01.fmb” y click en [ Abrir ]

33//99

Page 4: SW-OrA-20110127 - Oracle Developer Build Forms 1 Respuestas a Practica Del Capitulo 21

Oracle Developer Build Forms 1 Oracle Developer Build Forms 1 Repuestas a Práctica del Capítulo 21Repuestas a Práctica del Capítulo 21

SW-ORA-20110127SW-ORA-20110127

Revisión: 1Revisión: 1Fecha: 27/01/2011Fecha: 27/01/2011

2.1 - “Oracle Forms Builder” - ORDG01.fmb2.1 - “Oracle Forms Builder” - ORDG01.fmb33

Click en “File → Connect...” Ingresar el “User Name”, “Password”, “Database” y click en [ Connect ]

44//99

Page 5: SW-OrA-20110127 - Oracle Developer Build Forms 1 Respuestas a Practica Del Capitulo 21

Oracle Developer Build Forms 1 Oracle Developer Build Forms 1 Repuestas a Práctica del Capítulo 21Repuestas a Práctica del Capítulo 21

SW-ORA-20110127SW-ORA-20110127

Revisión: 1Revisión: 1Fecha: 27/01/2011Fecha: 27/01/2011

2.1 - “Oracle Forms Builder” - ORDG01.fmb2.1 - “Oracle Forms Builder” - ORDG01.fmb44

Doble click sobre el nodo del disparador “WHEN-NEW-RECORD-INSTANCE” correspondiente al bloque de datos “S_ORD” En el Editor PL/SQL modificar el código:“DECLARE

filename VARCHAR2(20);BEGIN

IF GET_ITEM_PROPERTY('S_ITEM.PRODUCT_IMAGE', VISIBLE) = 'TRUE' THENfilename := GET_PRODUCT_IMAGE(:S_ITEM.PRODUCT_ID);IF filename = 'No file' THEN

NULL;ELSE

READ_IMAGE_FILE(filename, 'tiff', 'S_ITEM.PRODUCT_IMAGE');END IF;

END IF;END;”Cerrar el Editor PL/SQL

55//99

Page 6: SW-OrA-20110127 - Oracle Developer Build Forms 1 Respuestas a Practica Del Capitulo 21

Oracle Developer Build Forms 1 Oracle Developer Build Forms 1 Repuestas a Práctica del Capítulo 21Repuestas a Práctica del Capítulo 21

SW-ORA-20110127SW-ORA-20110127

Revisión: 1Revisión: 1Fecha: 27/01/2011Fecha: 27/01/2011

2.1 - “Oracle Forms Builder” - ORDG01.fmb2.1 - “Oracle Forms Builder” - ORDG01.fmb55

Doble click sobre el nodo del disparador “WHEN-NEW-RECORD-INSTANCE” correspondiente al bloque de datos “S_ITEM” En el Editor PL/SQL modificar el código:“DECLARE

filename VARCHAR2(20);BEGIN

IF GET_ITEM_PROPERTY('S_ITEM.PRODUCT_IMAGE', VISIBLE) = 'TRUE' THENfilename := GET_PRODUCT_IMAGE(:S_ITEM.PRODUCT_ID);IF filename = 'No file' THEN

NULL;ELSE

READ_IMAGE_FILE(filename, 'tiff', 'S_ITEM.PRODUCT_IMAGE');END IF;

END IF;END;”Cerrar el Editor PL/SQL

2.2. Altere el disparador “WHEN-BUTTON-PRESSED” del item

“IMAGE_BUTTON” así se usan los IDs de objetos.Use la función “FIND_object” para obtener los IDs de cada items referenciados por el disparador. Declare variables para estos IDs, y uselas para cada referencia a items en el disparador.

66//99

Page 7: SW-OrA-20110127 - Oracle Developer Build Forms 1 Respuestas a Practica Del Capitulo 21

Oracle Developer Build Forms 1 Oracle Developer Build Forms 1 Repuestas a Práctica del Capítulo 21Repuestas a Práctica del Capítulo 21

SW-ORA-20110127SW-ORA-20110127

Revisión: 1Revisión: 1Fecha: 27/01/2011Fecha: 27/01/2011

Respuesta 2:

2.2 - “Oracle Forms Builder” - ORDG01.fmb2.2 - “Oracle Forms Builder” - ORDG01.fmb11

Doble click sobre el disparador “WHEN-BUTTON-PRESSED” correspondiente al item “CONTROL.IMAGE_BUTTON” En el Editor PL/SQL modificar el código: “DECLARE

PRODUCT_IMAGE_ID ITEM := FIND_ITEM('S_ITEM.PRODUCT_IMAGE');IMAGE_DESC_ID ITEM := FIND_ITEM('S_ITEM.IMAGE_DESCRIPTION');IMAGE_BUTTON_ID ITEM := FIND_ITEM('CONTROL.IMAGE_BUTTON');

BEGINIF GET_ITEM_PROPERTY(PRODUCT_IMAGE_ID, VISIBLE) = 'TRUE' THEN

SET_ITEM_PROPERTY(PRODUCT_IMAGE_ID, VISIBLE, PROPERTY_FALSE);SET_ITEM_PROPERTY(IMAGE_DESC_ID, VISIBLE, PROPERTY_FALSE);SET_ITEM_PROPERTY(IMAGE_BUTTON_ID, LABEL, 'Image On');

ELSESET_ITEM_PROPERTY(PRODUCT_IMAGE_ID, VISIBLE, PROPERTY_TRUE);SET_ITEM_PROPERTY(IMAGE_DESC_ID, VISIBLE, PROPERTY_TRUE);SET_ITEM_PROPERTY(IMAGE_BUTTON_ID, LABEL, 'Image Off');

END IF;END;”Cerrar el Editor PL/SQL

77//99

Page 8: SW-OrA-20110127 - Oracle Developer Build Forms 1 Respuestas a Practica Del Capitulo 21

Oracle Developer Build Forms 1 Oracle Developer Build Forms 1 Repuestas a Práctica del Capítulo 21Repuestas a Práctica del Capítulo 21

SW-ORA-20110127SW-ORA-20110127

Revisión: 1Revisión: 1Fecha: 27/01/2011Fecha: 27/01/2011

2.3. Guarde, Compile, y Ejecute el formulario para testear estas

características. Respuesta 3:

2.3 - “Oracle Forms Builder” - ORDG01.fmb2.3 - “Oracle Forms Builder” - ORDG01.fmb11

En el Navegador de Objetos click en “Save” y en “Run Form Client/Server” Cerrar el entorno de ejecución del formularioCerrar el archivo de módulo de formularioDesconectar de la Base de DatosSalir del Constructor de Formularios de Oracle

88//99

Page 9: SW-OrA-20110127 - Oracle Developer Build Forms 1 Respuestas a Practica Del Capitulo 21

Oracle Developer Build Forms 1 Oracle Developer Build Forms 1 Repuestas a Práctica del Capítulo 21Repuestas a Práctica del Capítulo 21

SW-ORA-20110127SW-ORA-20110127

Revisión: 1Revisión: 1Fecha: 27/01/2011Fecha: 27/01/2011

3. Referencias:Referencias:

ItemItem Referencia y URLReferencia y URL11 Oracle Developer: Build Forms 1

Volume 3 – Instructor Guide43112GC10Production 1.0April 1999M08606

Historia de CambiosHistoria de Cambios

RevisiónRevisión AutorAutor FechaFecha DescripciónDescripción

11 Ezequiel Hernán Villanueva 27/01/2011 Creación del documento.

99//99