0% encontró este documento útil (0 votos)
13 vistas46 páginas

Introducción a Developer/2000 Forms

Este documento describe Developer/2000 y sus componentes, incluyendo Form Builder. Form Builder permite desarrollar aplicaciones basadas en formularios para presentar y manipular datos. Los componentes clave de una forma incluyen ventanas, bloques de datos y elementos. Las propiedades, triggers y consultas permiten interactuar con la base de datos y validar la entrada de datos.

Cargado por

oscar_obando_17
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
13 vistas46 páginas

Introducción a Developer/2000 Forms

Este documento describe Developer/2000 y sus componentes, incluyendo Form Builder. Form Builder permite desarrollar aplicaciones basadas en formularios para presentar y manipular datos. Los componentes clave de una forma incluyen ventanas, bloques de datos y elementos. Las propiedades, triggers y consultas permiten interactuar con la base de datos y validar la entrada de datos.

Cargado por

oscar_obando_17
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPT, PDF, TXT o lee en línea desde Scribd

Qu es Developer/2000?

Es un conjunto de componentes Oracle que se integran para construir aplicaciones. Soporta: GUI Base de datos (ODBC) Cliente/Servidor World Wide Web Object Linking and Embedding (OLE2) Dinamic Data Exchange (DDE) ActiveX Controls
Build Forms

Componentes de Developer/2000

Project Builder Translation Builder Form Builder Procedure Builder Report Builder Query Builder Graphics Builder Schema Builder

Database Interface

Build Forms

Componentes y Variables de Ambiente


Componentes OBJECT NAVIGATOR PROPERTY PALETTE LAYOUT EDITOR DESARROLLO PL/SQL

Variables de Ambiente
FORMS50_PATH REPORTS30_PATH GRAPHICS30_PATH TK25_ICON

ORACLE_PATH
[Link]

[Link] (preferencias)
Build Forms

Esquema relacional de ejemplo


s_item s_ord s_customer

s_inventory

s_emp

s_product

s_warehouse

s_dept

s_image

s_region

Build Forms

Qu es Form Builder?
Es un componente de Developer/2000 que permite desarrollar rpidamente aplicaciones basadas en formas, para presentar y manipular datos. F50RUN32 MODULE=summit USERID= usrdev12/lania Incluye tres componentes ejecutables.
.FMB

Form Builder

.FMX Form Compiler


Definitions

Form Runtime

Runfiles

Build Forms

Caractersticas de Form Builder


Caractersticas:

Insertar, actualizar, borrar y consultar datos.


Presentar datos: texto, sonido, video, imagen y controles Active X. Controlar formas a travs de varias ventanas y transacciones a la base de datos. Accesar a Graphics y aplicaciones OLE2.

Utilizar menues integrados.


Enviar datos directamente a Report Builder.
Build Forms

Modos de Operacin
Dentro de Form Builder existen dos modos de operacin:
Modo Consulta (Enter Query mode) Permite:
Consultas restringidas y sin restriccin. Conteo de registros

Modo normal (Normal mode) Permite:


Consultas sin restricciones

Insertar, Actualizar, Borrar


Commit Navegacin fuera del bloque de datos actual

No permite:
Navegacin fuera del bloque de datos Salir de la sesin Insertar, Actualizar, Borrar

Salir de la sesin

No permite:
Consultas restringidas Build Forms

Componentes de una forma


Ventana: Contenedor de los objetos visuales de la forma. Canvas: Superficie dentro de una ventana,sobre la cual se colocan los items e imagenes.

Bloques: Es el propietario lgico de los elementos que se despliegan dentro del Canvas. Existen dos tipos de bloques: Bloques de datos. Estan asociado a una tabla de la base de datos. Bloques de control. No estan asociados a una tabla.

Build Forms

Relaciones entre Bloques


Master Master Master

Detail

Detail

Detail

Detail

Detail
Es de mayor conveniencia: crear varias formas con pocos bloques, que crear una forma con varios bloques.
Build Forms

Blocks, Items and Canvases


Canvas 1

Canvas 2

Items Block B Block A

Items

Build Forms

Modulo de Jerarqua
Table

Module

Database

Blocks
Column
Item

Trigger Program Units

Item

Frame
Item

Canvas

Window

Trigger

Trigger Build Forms

Canvas Types
Horizontal Toolbar

Stacked Canvas Tab

Vertical Toolbar

Tab Canvas Build Forms

Creacin de una Forma


Para Crear un modulo vaco Utilizar Object Navigator

Crear un bloque de datos y sus Data Block Wizard items Aplicar estndares Object Library Afinar el Diseo Layout wizard o Layout editor Poner propiedades a los Property Palette objetos Agregar Cdigo PL/SQL editor Probar el mdulo de la forma Forms Runtime

Build Forms

Property Palette
Cada objeto tiene diferentes propiedades. Estas propiedades estn divididas en los siguientes grupos: General Navegacin Registros Base de Datos Atributos Visuales Etiquetas (prompt) Fuentes y Color Fsica
Build Forms

Elemento (Text Item )


Prompt

Es un objeto en la interfaz a travs del cual se puede: consultar, insertar, actualizar y borrar datos.

Usualmente un Text Item corresponde a una columna de la base de datos. Cuando es creado el tipo por default es texto.
Posee propiedades: Generales, Fsicas, de Registros, de Fuente y Color, Etiquetas (Prompt), etc. Las propiedades Keyboard Navigable y Enabled permiten o prohiben la navegacin e interaccin con el Text Item Se pueden crear Text Item multi-lneas
Build Forms

LOVs
Lista de Valores (LOV) . Objeto dentro de una forma que cuando es activado en tiempo de ejecucin, abre su propia ventana para elegir una opcin de una lista de valores. Caractersticas: Dinmicos Independientes Flexibles Eficientes Las listas de valores pueden devolver ms de un valor y asignarselo tanto a variables como a los items.
Build Forms

Input Items and Noninput Items


Input Items
Aceptan entradas por parte del usuario. Pueden interactuar con la base de datos.

Noninput Items
No aceptan entradas directas por parte del usuario.
Elementos que representan datos a desplegarse:

Check boxes

Etiqueta

List Items

Opcin

Display Items Image Items Calculated Items


Elementos que no representan datos a desplegarse:

Radio Groups

Opcin 1 Opcin 2 Opcin 3

Sound Items Buttons


Build Forms

Calculated Item
Se pueden realizar campos en donde se invoque una frmula. Existen dos modos de calcular una operacin: por frmulas o por sumas

Dentro de las funciones de sumas o total se encuentran: AVG, COUNT, MAX, MIN, SUM, VARIANCE Una suma o total se aplica para operaciones realizadas verticalmente, invoca los valores de un solo item.

Una frmula se aplica para operaciones horizontales invocando a una o ms variables.

Build Forms

Triggers
Existen tres principales componentes a considerar cuando se disea un trigger: PrePostWhenOnKey-

Form Block Item

Trigger Scope Type

Code

PL/SQL User subprograms Built-in subprograms


Build Forms

Variables y Built-in
Variables de Form Builder. Requiere del prefijo : para hacer referencia a su valor. : block_name.item_name :GLOBAL.variable_name :SYSTEM. variable_name :[Link]

Variables PL/SQL. Estn disponibles para todos los triggers que accesen a ese paquete. Form Builder provee de un conjunto de subprogramas predefinidos llamados Built-ins. * EDIT_TEXTITEM * EXIT_FORM * MESSAGE * ENTER_QUERY * GO_BLOCK * SHOW_ALERT * SHOW_LOV * GO_ITEM * SHOW_EDITOR
Build Forms

Interaccin de los Triggers con Items y Nonitems

When-Button-Pressed When-Checkbox-Changed When-Radio-Changed When-Image-Pressed When-Image-Activated When-List-Changed When-List-Activated

Build Forms

Interaccin de los Triggers con Items y Nonitems


When-Radio-Changed
DECLARE v_credit_rating S_CUSTOMER.credit_rating%TYPE BEGIN IF :S_ORD.payment_type= CREDIT THEN SELECT credit_rating INTO v_credit_rating FROM S_CUSTOMER WHERE id= :S_ORD.customer_id; IF v_credit_rating NOT IN (GOOD, EXCELLENT) THEN :S_ORD.payment_type := CASH; MESSAGE (Warning-customer must pay cash); END IF; END IF; END;

Build Forms

Interaccin de los Triggers con Items y Nonitems


When-Checkbox-Changed
IF :S_CUSTOMER.cass = Y THEN :S_CUSTOMER.name := NAME: || :S_CUSTOMER.name; END IF;

IF CHECKBOX_CHECKED (S_ORD.order_filled) THEN SET_ITEM_PROPERTY (S_ORD.date_shipped,UPDATE_ALLOWED, PROPERTY_FALSE); ELSE SET_ITEM_PROPERTY (S_ORD.date_shipped,UPDATE_ALLOWED, PROPERTY_TRUE); END IF;

Build Forms

Interaccin de los Triggers con Items y Nonitems


When-Button-Pressed
LOOP EXIT WHEN SHOW_LOV(customer_lov); MESSAGE (Debes Seleccionar un Valor de la Lista); END LOOP

When-List-Activated
ADD_LIST_ELEMENT (list_item_name,index,label,value); DELETE_LIST_ELEMENT (list_item_name,index);

When-Image-Pressed

When-Image-Activated

READ_IMAGE_FILE (Filename,Filetype,Item_name);

Build Forms

Mensajes y Alertas
Alertas
Sistema Aplicacin

SHOW_ALERT Built-in

Mensajes
On-Message trigger
On-Error trigger

Informativos Error
Trabajo Aplicacin
Build Forms

Supress_Working (true) Message Built-in

Mensajes y Alertas
Form_Sucess True: xito, False: Error fatal Form_Failure True: Error, False: No hay error Form_Fatal True: Error fatal, False: No hay error GO_BLOCK (S_INVENTORY); IF FORM_SUCESS THEN EXECUTE QUERY; ELSE MESSAGE (Un error ha ocurrido); END IF

Build Forms

Mensajes y Alertas
Cuando se detecta un error es necesario identificarlo para tomar una accin especfica.

Built-ins ERROR _CODE: Nmero del Error. ERROR_TEXT: Descripcin del Error. ERROR_TYPE: FRM= Error en la Forma, ORA= Error de Oracle.
On-Error IF ERROR_CODE=40202 THEN MESSAGE (Este campo debe ser llenado); ELSE MESSAGE (ERROR_TYPE||-||TO_CHAR(ERROR_CODE)||:|| ERROR_TEXT); END IF;
Build Forms

Mensajes y Alertas
Los TRIGGERS poseen su propio manejador de excepciones: FORM_TRIGGER_FAILURE SELECT name, phone INTO :S_ORD.customer_name, :S_ORD.customer_phone FROM S_CUSTOMER WHERE id= :S_ORD.customer_id; EXCEPTION WHEN no_data_found THEN MESSAGE (El Cliente no se encontro); RAISE form_trigger_failure

Build Forms

Alertas
Yes/No Question Yes/No/Cancel Question Informative Messages

SET_ALERT_PROPERTY(alert_name,property, message) Cambia el mensaje que esta asignado a una alerta.

Caution Messages

SET_ALERT_BUTTON_PROPERTY (alert_name, button, property,value) Cambia la etiqueta de uno de los botones SHOW_ALERT (alert_name) Despliega una Alerta y regresa la respuesta del usuario.
IF SHOW_ALERT (del_check)=ALERT_BUTTON1 THEN DELETE_RECORD END IF;

Build Forms

Procesamiento de Consultas

Disparar el trigger Pre-Query Construcccin del SELECT... Realizar la consulta Fetch a row into a new record Marcar el registro como vlido Disparar el trigger Post-Query Validar algunos cambios en el registro

Abortar la consulta

Build Forms

Procesamiento de Consultas
Ejemplo de Pre-Query: IF TO_CHAR (:S_ORD.ID)|| TO_CHAR (:S_ORD.date:ordered)|| TO_CHAR (:S_ORD.date_shipped) IS NULL THEN MESSAGE(Es necesario introducir una orden o una fecha); RAISE form_trigger_failure; END IF;

Ejemplo de Post-Query

SELECT COUNT (ord_id) INTO :S_ORD.lineitem_count FROM S_ITEM WHERE ord_id= :S_OR.id;
Build Forms

Informacin en Tiempo de Ejecucin


GET_BLOCK_PROPERTY, SET_ BLOCK_PROPERTY
GET, SET DEFAULT_WHERE ORDER_BY QUERY_ALLOWED QUERY_HITS GET QUERY_OPTIONS RECORDS_TO_FETCH GET_ITEM_PROPERTY, SET_ITEM_PROPERTY GET, SET CASE_INSENSITIVE_QUERY QUERYABLE QUERY_ONLY GET QUERY_LENGTH Build Forms

Validaciones
Form Builder realiza procesos de validacin a varios niveles para asegurar que los registros y valores individuales sean correctos.

Forma
Bloque

Commit

Registro Elemento

When-Validate-Record When-Validate-Item

IF :S_ORD.date_ordered > SYSDATE THEN MESSAGE (La fecha del pedido es mayor que la actual); RAISE form_trigger_failure; END IF;
Build Forms

Navegacin
Forms Limitar la navegacin con el mouse. Navegacin sobre el primer bloque de datos Blocks Estilo de navegacin. Navegacin a un Bloque Previo Navegacin al Prximo Bloque Items Habilitarlo Navegacin por el teclado Navegacin por el mouse Navegacin a un Item previo Navegacin al prximo Item

Mouse Navigate valores: NO, YES.

Build Forms

Navegacin
Trigger When-New When-New-Form-Instance When-New-Block-Instance When-New-Record-Instance When-New-Item-Instance Triggers Pre/Post Navegacin en Triggers Go_Form Go_Block Go_Item Go_Record

Pre-Form
Post-Form Pre-Block Post-Block Pre-Record Post-Record Pre-Text-Item Post-Text-Item

Next_Block
Next_Item Next_Key Next_Record Previous_Block Previous_Item Previous_Record
Build Forms

Transacciones
Validar la forma Pre-Commit Validar el bloque Copia el valor del Item Pre-Insert Verifica valores nicos On-Insert Insert row Pre-Insert Verifica valores nicos On-Update Update row

Post-Insert Post-Forms-Commit

Post-Update

Commit changes

Post-Database-Commit Build Forms

Diversos Usos para los Trigger Commit


Pre-Commit => Verificar la autorizacin del usuario. Utiliza mtodos de bloqueo

Pre-Delete => Implementar las reglas de borrado de las llaves-forneas.


Pre-Insert => Llenar automticamente columnas, Generar una secuencia de nmeros, verificar llaves.

Pre-update => Llenar automticamente columnas, verificar llaves, implementar actualizaciones en cascada o restringidas.
On-Insert/Update/Delete => Reemplazar enunciados DML del bloque. Post-Forms-Commit => Verificar las complejas restricciones sobre varios registros Post-Database-Commit => Determinar si el commit fue exitoso o si fue utilizado.

Build Forms

Cdigo Flexible
Cdigo flexible es el cdigo que puede ser reutilizado. Variables del sistema para localizar el enfoque: CURSOR_BLOCK CURSOR_RECORD CURSOR_ITEM CURSOR_VALUE

Variables del sistema para determinar el estado actual de la forma


SYSTEM.RECORD_STATUS Valores: New, Insert, Query, Changed SYSTEM.BLOCK_STATUS Valores: New, Query, Changed SYSTEM.FORM_STATUS Valores: New, Query, Changed
Build Forms

Project Builder
Facilita la administracin de grandes y complejas aplicaciones al: Enlista todos los archivos asociados con una aplicacin en un Navegador en comn. Automatizar acciones Compartir proyectos entre los miembros del equipo. Liberar la aplicacin para el usuario final. PROYECTO Es una coleccin de apuntadores a los archivos que conforman una aplicacin.

Build Forms

Project Builder
Dependencia Implcita Project Builder deduce automticamente muchas dependencias de la propiedad Deliverable Type y del Build Form. Ejemplo: Del archivo fuente .fmb se deriva el ejecutable .fmx Dependencia Explcita Algunas veces habr dependencias que no pueden ser determinadas automticamente. Definicin de menues Un mdulo de menues es una estructura jerrquica que provee, mediante un mtodo fcil y rpido, una lista de opciones relacionadas con la aplicacin. Estilos: Pull-Down, Full-Screen, Bar
Build Forms

Project Builder
Compile Selection Esta opcin compilar todos los archivos que se encuentren previamente seleccionados.

Compile Incremental Project Builder automticamente determina cules son los archivos que necesitan ser compilados.

Compile All Compila todos los archivos del Proyecto.


Build Forms

The Menu Editor


Interfaz grfica para facilitar la creacin y modificacin de los mdulos de los menues y sus objetos.

Select Tools

Menu Editor

Extensin .MMB(definicin) .MMX (ejecutable)

Plain Check Radio

Save Image Activate Order Id Customer Id Sales Rep Id Copy Ctrl+C

Propiedades del Menu Item: * Enabled * Label * Menu Item Type * Magic Item * Menu Item Radio Group * Command Type

Magic

* Menu Item Code * Submenu Name * Keyboard Accelerator * Icon in Menu * Icon Filename * Help Description
Build Forms

Mouse Events
Eventos del Mouse Por movimiento: Entrar a un item o canvas Salir de un item o canvas Movimiento en General Por los botones del mouse Click Double-Click Para cambiar el estilo del cursor dinmicamente: SET_APPLICATION_PROPERTY (CURSOR_STYLE,value); Defauly, busy, crosshair, help, insertion. When-Mouse-Enter

When-Mouse-Leave

When-Mouse-Move

Mouse Events
Variables del Sistema para determinar a donde se ha movido el mouse.

SYSTEM.MOUSE_FORM

SYSTEM.MOUSE_CANVAS

SYSTEM.MOUSE_X_POS
SYSTEM.MOUSE_Y_POS SYSTEM.MOUSE_ITEM

SYSTEM.MOUSE_RECORD

SYSTEM.MOUSE_RECORD _OFFSET

Controlando Ventanas y Canvas


Triggers: When-Window-Activated When-Window-Desactivated When-Window-Closed When-Window-Resized Variable del sistema: :SYSTEM.EVENT_WINDOW Built-In FIND-WINDOW GET_WINDOW_PROPERTY HIDE_WINDOW MOVE_WINDOW RESIZE_WINDOW SET_WINDOW_PROPERTY SHOW_WINDOW Built-ins FIND_CANVAS, FIND_VIEW GET_CANVAS_PROPERTY GET_VIEW_PROPERTY SET_CANVAS_PROPERTY SET_VIEW_PROPERTY HIDE_VIEW SHOW_VIEW REPLACE_CONTENT_VIEW SCROLL_VIEW

Componentes Reusables
Es un objeto que se puede reusar en todas las aplicaciones. Controles ActiveX Calendario Navegador Ayuda en lnea Utileras y Bibliotecas para Formas Menues Iconos

También podría gustarte