Professional Documents
Culture Documents
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Tabla de Contenido
Tabla de Contenido.................................................................................. 2
Introduccin ............................................................................................. 4
Finalidad del Curso .............................................................................................................4
Objetivo del Curso ..............................................................................................................4
Confidencialidad .................................................................................................................4
Laboratorio 3.2..................................................................................................................44
Visin General de los Eventos ..........................................................................................45
Laboratorio 3.3..................................................................................................................57
Laboratorio 3.4..................................................................................................................59
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 2 de 125
Grid Control................................................................................................................ 62
Laboratorio 3.6.................................................................................................64
Propiedades Especiales del GRID ...................................................................65
Estilo Page Grid...............................................................................................80
Laboratorio 3.7.................................................................................................82
Laboratorio 3.8.................................................................................................83
Laboratorio 3.9.................................................................................................84
Laboratorio 3.10...............................................................................................85
tem..................................................................................................................88
Relacin Padre e Hijo ......................................................................................89
Adicionando tem hijos.....................................................................................89
Laboratorio 3.11...............................................................................................92
Web Browser.............................................................................................................. 94
Mtodos...........................................................................................................94
Laboratorio 3.12...............................................................................................98
Herramientas y utilidades................................................................................................ 101
Laboratorio 3.13.............................................................................................104
Administracin de Transacciones en Archivos ................................................................ 105
Acuthin......................................................................................................................114
Acuserver..................................................................................................................116
CGI ...........................................................................................................................117
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 3 de 125
Capacitacin Introduccin
Introduccin
Finalidad del Curso
Brindar al estudiante los conocimientos bsicos necesarios para el desarrollo
de proyectos en ambiente grfico, bajo la herramienta de desarrollo
AcuBench, adems de facilitar el uso del entorno de trabajo, optimizando la
creacin o conversin de aplicaciones.
Confidencialidad
El material es propiedad de JIMMY GUZMN SUREZ Se presenta como
material de ayuda y consulta al estudiante en el curso de capacitacin.
Este material se creo sin autorizacin de Acucorp y bajo la responsabilidad de
su autor sin que Acucorp tenga ninguna responzabilidad ni autoria en este
material.
Las reglas de confidencialidad aplicadas, afectan a todo el documento, su
reproduccin es prohibida por cualquier tipo de medio, fsico o magntico sin
autorizacin expresa escrita del autor
Copyright 2003 - Todos los derechos son reservados.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 4 de 125
Introduccin a GUI
El termino GUI (Graphical User Interfaces), o Interfaz Grfica de Usuario, es
ampliamente aplicado a los ambientes basados en sistemas grficos, tales
como, Windows 95/98/NT/2000, LINUX, Macintosh, OS/2 IBM etc. Esto es,
una construccin de una serie de controles y componentes grficos que
permiten al usuario interactuar con stos para ejecutar eventos o acciones de
una aplicacin especifica.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 5 de 125
Controles
Los controles son una serie de objetos grficos que estn intrnsicamente
contenidos en una ventana con una funcin dedicada, los controles no son
movibles y no tienen algunas propiedades de las ventanas. Los controles
tienen unas propiedades bsicas, como son: Localizacin, Tamao, Ttulos,
Valores, Colores, Fuentes y Estilos. Adems de esto ciertos tipos de controles
cuentas con propiedades especiales dependiendo del tipo de control. Dentro
de los controles comnmente usados tenemos:
ACTIVE-X
BAR
BITMAP
CHECK-BOX
COMBO-BOX
ENTRY-FIELD
FRAME
GRID
LABEL
LIST-BOX
PUSH-BUTTON
RADIO-BUTTON
SCROLL-BAR
STATUS-BAR
TAB
TREE-VIEW
WEB-BROWSER
Los controles se aplican dependiendo de la aplicacin que deseemos
construir. Una parte importante en la construccin de software es la de definir
el tipo de ventana y los controles que tendr, creando un estndar nico para
la aplicacin, evitando excesos y disparidad de objetos, es decir, se debe
crear un ambiente claro y de fcil comprensin por parte del usuario, evitando
nomenclatura tcnica y siendo lo ms especifico y claro posible.
En el desarrollo del curso se adentrar en el concepto de cada uno de estos
controles, por ahora los mencionaremos para que el estudiante se vaya
familiarizando con los trminos.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 6 de 125
Eventos
En los sistemas grficos, los eventos comunican acciones dadas por el
usuario a travs de varios objetos grficos. Por ejemplo, si el usuario presiona
una tecla, el sistema puede generar algunos eventos para denotar el hecho,.
Los eventos son generados por el sistema y lo que hace el desarrollador es
interpretarlos y aplicarlos en la aplicacin.
Nota: Como se ha dado cuenta el desarrollo de aplicaciones grficas, demanda ciertas reglas y
conceptos que a travs del curso iremos ampliando y profundizando. El curso esta enfocado haca el
dominio de la herramienta AcuBench, pero esto solo se lograr con el empeo y dedicacin que usted
ponga en el aprendizaje de la herramienta.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 7 de 125
Figura 1.1.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 8 de 125
Figura
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 9 de 125
Barra de
herramientas
Standard
Barra
de
Alineamiento
de Controles
Ventana de
Propiedades
Barra
del
Debug
Espacio de
Trabajo
Ventana de
Desarrollo
Ventana de
Salida
Caja de herramientas
de Componentes
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 10 de 125
Edit Menu
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 11 de 125
Project Menu
Build Menu
Debug Menu
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 12 de 125
Format Menu
Tools menu
Window Menu
Help Menu
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 13 de 125
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 14 de 125
Edit Menu
El men Edit incluye funciones de edicin familiares tales como: cortar, copiar, y pegar.
Undo
Reversa la accin previa en el Code Editor y Screen
Designer. El workbench soporta mltiples acciones deshacer,
para acciones o comandos efectuados antes de guardar los
cambios.
Redo
Reversa la ms reciente operacin Undo. El Code Editor y
el Screen Designer soportan mltiples acciones Redo, para
acciones o comandos efectuados antes de guardar los
cambios.
Cut
Remueve la seleccin desde el Code Editor o Screen
Designer colocndolo en el portapapeles. Este comando es
disponible nicamente si ha seleccionado cdigo o
componentes de la Screen.
Copy
Coloca una copia de la seleccin en el portapapeles. Este
comando es disponible nicamente si ha seleccionado cdigo
o componentes de la Screen.
Paste
Coloca una seleccin que ha sido cortada o copiada al
portapapeles en un documento activo o Screen. Cuando
usted selecciona este commando.
Delete
Remueve la seleccin desde el Code Editor o el Screen
Designer. Este comando es disponible nicamente si ha
seleccionado cdigo o componentes de la Screen.
Select All
Selecciona todos los elementos en el activo Code Editor o
Screen Designer.
Find
Le permite buscar mltiples ocurrencias de una cadena de
texto. El comando Find no es habilitado para el Screen
Designer. Cuando usted selecciona este comando aparece
un cuadro de dialogo con varias opciones de bsqueda.
Find Next
Avanza en la siguiente ocurrencia del tem seleccionado en el
documento activo. Este comando esta disponible nicamente
si usted ha seleccionado un texto.
Find in Files
Permite localizar cadenas de texto en los archivos
almacenados en su disco duro. Cuando usted selecciona este
comando aparece un cuadro de dialogo con varias opciones
de bsqueda.
Replace
Permite reemplazar tem en el texto con otros tem. Cuando
usted selecciona este comando aparece un cuadro de dialogo
con varias opciones de reemplazo.
Replace in Files
Permite reemplazar una cadena de texto por otra cadena
dentro de su proyecto o su disco duro. Cuando usted
selecciona este comando aparece un cuadro de dialogo con
varias opciones de reemplazo.
Go To
Permite especificar un destino para el cursor en el documento
activo. Cuando selecciona este tem, aparece un submen con
varias opciones.
Bookmark
El comando Bookmark permite insertar una marca en la lnea
seleccionada del Code Editor. Una vez las marcas son
colocadas, usted puede instantneamente desplazarse a la
siguiente o previa marca en su cdigo.
Advanced
El comando Advanced contiene un submen permitiendo
desempear una variedad de tareas.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 15 de 125
View Menu
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 16 de 125
Project
Menu
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 17 de 125
Build Menu
El men Build incluye comandos para generar cdigo, construir el espacio de trabajo
(workspace), compilar un archivo, reparar un archivo o todos de el espacio de trabajo y
para ejecutar un programa.
Generate
Seleccione Build/Generate para generar cdigo del
programa activo. Por ejemplo, si una forma de ventana esta
activa, seleccionando Generate causa que el cdigo relativo
a la screen sea generado. Si la ventana de File Designer es
activa, los archivos ".fd" and ".sl" son generados para el diseo
de datos.
Compile
Seleccione Build/Compile para compilar el archivo activo.
Esta opcin es deshabilitada si el archivo activo no es un tipo
de archivo COBOL.
Build Workspace
Seleccione Build/Build Workspace para construir todo
dentro del proyecto en el espacio de trabajo.
Build
Workspace recompila todos los archivos que han sufrido
cambios desde la ltima construccin (build) y sus
dependencias. Si su espacio de trabajo contiene proyectos
locales y remotos, y desea construir estos proyectos, debe
usar el comando Build Workspace doble vez: una vez para
su proyecto local y otra vez despus de seleccionar el
comando Thin Client para sus proyectos remotos.
Rebuild Workspace Seleccione Build/Rebuild Workspace para forzar la
construccin de todo el proyecto en el espacio de trabajo.
Rebuild Workspace recompila nuevamente todos los
archivos y sus dependencias. Si su espacio de trabajo
contiene proyectos locales y remotos, y desea reconstruir
estos proyectos, debe usar el comando Rebuild Workspace
doble vez: una vez para su proyecto local y otra vez despus
de seleccionar el comando Thin Client para sus proyectos
remotos.
Reparse
Seleccione Build/Reparse para repasar el activo archivo de
origen, identificar e incluir todos los archivos referenciados
(COPY).
Reparse All
Seleccione Build/Reparse All para repasar todo el espacio
de trabajo, identificar e incluir todos los archivos referenciados
(COPY).
Execute
Seleccione Build/Execute para ejecutar o correr el
programa seleccionado.
Debug Runtime
Seleccione Build/Debug (Runtime) para iniciar la ejecucin
en modo de depuracin del programa activo.
Allow Parameters
Seleccione Build/Allow Parameters para especificar
parmetros antes de ejecutar el programa seleccionado.
Cuando esta opcin es seleccionada la ejecucin con el
dialogo de parmetros es visualizada
Use Thin Client
Seleccione Build/Use Thin Client para sealizar el espacio
de trabajo deseado para ser usado con la tecnologa cliente
delgado.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 18 de 125
Debug
Menu
El men Debug provee acceso a los comandos usados con el depurador (debugger).
Trace Option
Go
Restart
Exit Debugger
Quit Debugger
Interrupt
Auto Step
Step Into
Step Over
Step Out Paragraph
Step Out Program
Skip to line
Run to Cursor
Record Script
Run Script
Trace Paragraphs
Trace Flush.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 19 de 125
Align Menu
Permite que usted afine la apariencia de sus controles despus que los ha colocado en
su ventana en el Diseador de Pantalla. Cundo escoge un grupo de controles para
estas rdenes, debe fijarse que el ltimo control escogido es el control dominante.
Cundo escoge una orden de la alineacin, todos los otros controles en su seleccin
del grupo se alinean de acuerdo al control dominante.
Align Control
Align Control le da varias opciones para posicionar sus
controles. Estas opciones aparecen en el submenu, descrito
en la tabla siguiente:
Comando
Center Horizontal
Center Vertical
Left
Descripcin
Centra
los
controles
seleccionados Horizontalmente.
Centra
los
controles
seleccionados Verticalmente.
Alinea los bordes a la izquierda
los controles seleccionados, de
acuerdo al control dominante
Right
Top
los
de
Bottom
Space Evenly
Down
Descripcin
Espacia
uniformemente
los
controles escogidos (por lo menos
tres) horizontalmente.
Espacia
uniformemente
los
controles escogidos (por lo menos
tres) verticalmente.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 20 de 125
Descripcin
Ajusta los controles escogidos al
ancho del control dominante.
Height
Ajusta los controles escogidos al
alto del control dominante.
Both
Ajusta los controles escogidos al
ancho
y
alto
del
control
dominante.
Cundo usted usa esta orden, el control escogido se ajusta
para que sea apenas lo suficientemente grande para
acomodar una etiqueta o un ttulo..
Permite cerrar y bloquear la posicin de un control en una
ventana. Un control cerrado no se puede arrastrar, pero se
puede cortar, centrar y calibrar. Cundo usa este comando y
escoge la posicin del control en la ventana se desbloquea,
entonces esa posicin de control en la pantalla se cierra. Si el
control escogido se cierra cuando usted usa esta orden, esa
posicin del control se desbloquea.
Permite que usted determine el orden en que el cursor navega
por los controles en la ventana. Cundo usa esta orden, una
ventana de dilogo de Orden de Etiquetas de Controles
aparece. Esta caja del dilogo contiene una lista de los
controles en su ventana junto con el nmero de orden
asignado. Usted puede cambiar la orden de la etiqueta
escogiendo un control y usando las flechas arriba y abajo.
Presenta una cuadricula que sirve como referencia para
alinear controles en la ventana de diseo.
Presenta unas guas en forma vectorial que sirven como
referencia para ubicar controles en la ventana de diseo.
Width
Size to Content
Lock Controls
Tab Order
View Grid
Toggle Guide
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 21 de 125
Format
El men Format permite cambiar ciertas propiedades de texto del editor de cdigo.
Capitalize
Coloca en mayscula la primera palabra del texto
Uppercase
Cambia todas las letras del texto de minscula a mayscula.
Lowercase
Cambia todas las letras del texto de mayscula a minscula.
Comment Block
Permite que usted escoja un bloque de texto en su cdigo
fuente y aplique smbolos de comentario a toda el rea
seleccionada.
Uncomment Block
Permite que usted remueva un bloque comentariado de texto
en su cdigo fuente.
Sequense Number
Permite crear o enumerar una seleccin de cdigo fuente. Las
opciones de enumeracin se muestran en un cuadro de
dialogo.
Indent to Next
Cambia la tabulacin de la posicin de la lnea a la siguiente.
Indent to Previous
Cambia la tabulacin de la posicin de la lnea a la anterior.
ANSI to Terminal Cambia la configuracin de color del fondo y frente de su
Format
cdigo fuente entre ANSI y formato de terminal.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 22 de 125
Taller de repaso 1.
Complete las siguientes frases:
Para abrir un archivo de extensin (.cbl) utilizo la opcin _________ del men
File.
La opcin Recent Workspaces me permite ver una lista de los ms recientes
_____________________ abiertos.
La opcin _________________ permite localizar cadenas de texto en mi disco
duro.
El comando Bookmark sirve para __________________________________
Puedo ejecutar la depuracin paso a paso de mi programa utilizando el
comando _______ window del men _______.
Puedo configurar los parmetros de mi proyecto utilizando _________ del
Project Menu
Indique si las siguientes afirmaciones son falsas o verdaderas
Puedo crear una nueva carpeta utilizando la opcin Add/Remove Files del
men Project: _______________
Para compilar un programa utilizo la opcin Generate del men Build:
______________
El comando Reparse me sirve para repasar el archivo activo:
______________
Para realizar un seguimiento a mi aplicacin paso a paso dentro de una
sentencia o pargrafo utilizo la opcin Step Into del menu Debug:
______________
Responda a las siguientes preguntas
Cul opcin utilizo para salir completamente de una depuracin?
________________________
Qu comando debo ejecutar para crear puntos de interrupcin en mi
depurador de cdigo?
________________________
Cul opcin utilizo para darle una mejor apariencia a los controles creados
en una ventana?
________________________
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 23 de 125
Opciones de configuracin
Las Opciones de Configuracin son usadas para personalizar el entorno de
trabajo de AcuBench.
Figura 2.1
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 24 de 125
Administracin de un proyecto
El desarrollo de proyectos con AcuBench es organizado en espacios de trabajo
(workspaces), proyectos (project), y unidades de programa (program units).
Un espacio de trabajo en AcuBench (workspace), es un contenedor para uno o
ms proyectos. Fsicamente consiste en un archivo especifico
(nombre_proyecto.prj), el cual es creado cuando se origina un proyecto en un
espacio de trabajo. Este archivo contiene toda la informacin especifica del
proyecto, as como el contenido de archivos y la configuracin de valores
definidos para el proyecto.
Un proyecto en AcuBench (project), es una coleccin de todos los archivos
necesarios para construir, ejecutar y depurar un programa, incluye todos los
archivos de origen, archivos COPY, definiciones de archivos de ventanas,
archivos de recursos (bitmap, audio, etc), listados de archivos, y archivos
objeto.
Puede crear mltiples proyectos en el mismo espacio de trabajo. Cuando un
espacio de trabajo (workspace) es abierto, todos los proyectos miembros son
visualizados en la ventana workspace.
Cada proyecto contiene un conjunto de carpetas para organizar los archivos del
proyecto.
Cada cambio en la configuracin del proyecto es guardada en el archivo de
configuracin del proyecto.
Cuando un nuevo proyecto es creado, AcuBench crea un directorio local y un
conjunto de subdirectorios para el proyecto. Podemos adicionar archivos al
proyecto con la funcin Add/Remove Files. Los archivos pueden residir
directamente en el subdirectorio del proyecto o en el file system, incluyendo una
direccin de red. AcuBench mantiene vnculos lgicos a los archivos del
proyecto.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 25 de 125
Figura 2.2
Pg. 26 de 125
Figura 2.3
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 27 de 125
Carpeta con el nombre del proyecto, la cual contiene los archivos (.pjt
estructura y configuracin del proyecto) (.psf estructura y configuracin del
programa)
Copylib
En esta carpeta se almacenarn los archivos (.cpy - .wrk .def etc) necesarios para el proyecto
FD
En esta carpeta quedarn almacenados los archivos de
datos (.FD) y (.SL) y los archivos (.dlt) que contienen la
definicin estructural de dichos archivos.
List
Contiene los listados (.lst) de los programas despus de
compilar. nicamente los genera si esta habilitada la opcin
por las propiedades del proyecto.
Object
En esta carpeta estarn todos los programas objeto
compilados (.obj - .acu).
Resource Almacena todos los archivos de recursos (imgenes, audio,
etc), necesarios para el proyecto (.bmp - .avi - .jpg)
Screen
Contiene los archivos de cdigo de la Screen Section (.scr)
Source
Los archivos de cdigo fuente (.cbl) estarn en esta carpeta
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 28 de 125
Taller de repaso 2.
Complete las siguientes frases:
La opcin _______ me permite personalizar la estructura de mis programas y
de mis directorios de trabajo.
Puedo personalizar las plantillas de generacin de cdigo, para ello utilizo la
opcin _____________ de Options\Code Editor.
Las cinco opciones primarias para configurar mi workbench son:
1._________________________
2._________________________
3._________________________
4._________________________
5._________________________
La opcin Options\Screen Designer\Default me permite _____________ los
atributos de los ____________ grficos.
El workspace esta conformado por 3 pestaas, estas son:
__________________
__________________
__________________
Indique si las siguientes afirmaciones son falsas o verdaderas
Puedo adicionar o eliminar un componente cuando creo un nuevo proyecto.
______________
Cuando genero un documento puedo especificar que seccin de mi programa
generar.
______________
Cuando creo un proyecto debo crear manualmente la estructura fsica en
donde estar ubicados mis archivos.
______________
No es posible adicionar o crear ms de un proyecto en mi espacio de trabajo
______________
Responda a las siguientes preguntas
Cul opcin utilizo para crear una carpeta personalizada en mi espacio de
trabajo? ________________________
Cul opcin me permite tener una vista de mis archivos de datos?
________________________
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 29 de 125
Pg. 30 de 125
Cdigo Incluido
Descripcin de las entradas de la Screen Section. Si es
necesario se incluye el llamado a Procedimientos de
Eventos y asociaciones.
Descripcin de la barra de men y llamados a la librera
W$MENU
de
Nombre_programa.wrk
Nombre_programa.lks
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 31 de 125
Estrategia de desarrollo
AcuBench soporta una amplia variedad de metodologas para desarrollar y
mantener aplicaciones COBOL. La metodologa que emplee es determinada
por el conjunto de herramientas empleadas, las necesidades de su aplicacin
y su metodologa para el desarrollo de software. Si planea usar las
herramientas deI banco de trabajo (workbench) para generar el cdigo
automticamente, como el diseador de ventanas (Screen Designer) o el
diseador de archivos (File Designer), algunos elementos de sus programas,
contenido y estructura sern determinados por los mtodos usados por estas
herramientas.
Consideraciones generales
Sin tener en cuenta la metodologa que usted use, hay ciertos aspectos a
tener en cuenta para el correcto uso y aprovechamiento de AcuBench, en
cada proyecto que usted genere.
Verifique y ajuste, si lo considera, los valores para los prefijos utilizados en
el proyecto.
Si cambia el nombre por defecto de un subdirectorio de proyecto, puede
necesitar verificar y ajustar ciertos valore del proyecto.
Considere colocar sus archivos de proyecto directamente en el directorio
de proyectos.
Verifique todos los valores de configuracin de Compilacin, Entorno y
Runtime.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 32 de 125
Objetivos
Profundizar en el uso y conocimiento de la herramienta de desarrollo
AcuBench.
Aprender el uso y aplicacin de los controles grficos.
Aprender el uso de la programacin orientada a eventos.
Generar un proyecto desarrollado en AcuBench, utilizando la Generacin
automatizada de cdigo.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 33 de 125
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 34 de 125
Laboratorio 3.1
Hasta ahora...
Objetivos
Tareas generales
Clientes
Clientes.dat
Indexada
Dinmico
Status-01
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 35 de 125
Pg. 36 de 125
Icono
Elemento
Selector
Label
Push Button
Entry Field
Check Box
Radio Button
Scroll Bar
Combo Box
Bitmap
Bar
Frame
List Box
Menu Designer
Toolbar Designer
Tab
Descripcin
Limpia la seleccin de un control en el Component
Toolbox y permite seleccionar, mover, y cambiar el
tamao de los controles en una ventana.
Permite ingresar una etiqueta de texto (como un
encabezado o ttulo) y no puede ser modificado por le
usuario.
Dibuja un rectngulo acompaado con una etiqueta de
texto para que cuando el usuario haga clic efectu una
accin (Ej. Botn Aceptar o Cancelar).
Dibuja un campo rectangular en el cual el usuario puede
ingresar texto o datos.
Crea una caja acompaada de una etiqueta de texto, en
la cual el usuario puede hacer clic para seleccionar o
deseleccionar una opcin. Normalmente un Check box
se usa para una opcin combinada que pueda ser
activada o desactivada.
Crea un botn circular acompaado de una etiqueta de
texto, este control es excluyente, es decir, solo permite
seleccionar uno en un grupo de controles Radio Button.
Dibuja un rectngulo que contiene una caja de
desplazamiento y unas flechas de desplazamiento en
cada punta. El usuario tpicamente usa una barra de
desplazamiento para navegar a travs de la informacin
de una lista, sin embargo una barra de desplazamiento
puede servir como un dispositivo de entrada.
Crea un control de una caja combinada de edicin y lista.
El usuario puede seleccionar un tem de la lista o
ingresar texto en la caja de edicin.
Especifica un rea para visualizar una imagen grfica en
formato ("*.bmp", "*.dib", "*.jpg", "*.jpe", "*.jpeg").
Permite dibujar una lnea vertical u horizontal.
Dibuja una caja usada para agrupar un conjunto de
controles. Puede colocar controles dentro de los frames
para separarlos visualmente de otros controles.
Crea un rectngulo conteniendo una lista de tem los
cuales el usuario puede seleccionar. Si hay varios tem
en la lista, el usuario puede navegar usando una barra
de desplazamiento vertical u horizontal
Crea una barra de men para una ventana. Los mens
pueden estar compuestos de ttulos de men, tem de
men y barras de separacin. Cuando hace doble clic en
el icono Menu Designer en la ventana, el cuadro de
dialogo del men es visualizado. Este dialogo permite
adicionar, borrar, mover o renombrar un tem.
Crea una coleccin de controles organizados en una
barra de herramientas. El toolbar aparece debajo del
Menu Bar (si ha sido creado), o en el borde superior de
la ventana si el Menu Bar no existe.
Crea un control el cual combina una caja con una
etiqueta que simula el aspecto de un archivo de
carpetas. El usuario puede hacer clic en cualquier
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 37 de 125
Grid
Tree View
Browser
Status Bar
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 38 de 125
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 39 de 125
Propiedades Especiales
Algunos estilos aplican para todos los controles. Sin embargo, cada control
tiene propiedades especiales, las cuales se vern a lo largo del curso, por ahora
las mencionamos para que el estudiante se familiarice con los trminos.
Tipo de Control
Label
Entry field
Propiedad especial
LABEL-OFFSET (numrico)
MAX-TEXT (numrico)
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 40 de 125
Push Button
Check Box
Radio Button
List Box
Combo Box
Frame
Bar
MAX-LINES (numrico)
CURSOR (numrico)
CURSOR-COL (numrico)
CURSOR-ROW (numrico)
ACTION (numrico)
MIN-VAL (numrico)
MAX-VAL (numrico)
SELECTION-TEXT (alfanumrico)
AUTO-DECIMAL (numrico)
BITMAP-NUMBER (numrico)
BITMAP-HANDLE (handle)
TERMINATION-VALUE (numrico)
EXCEPTION-VALUE (numrico)
BITMAP-NUMBER (numrico)
BITMAP-HANDLE (handle)
TERMINATION-VALUE (numrico)
EXCEPTION-VALUE (numrico)
BITMAP-NUMBER (numrico)
BITMAP-HANDLE (handle)
TERMINATION-VALUE (numrico)
EXCEPTION-VALUE (numrico)
GROUP (numrico)
GROUP-VALUE (numrico)
ITEM-TO-ADD (alfanumrico)
RESET-LIST (numrico)
MASS-UPDATE (numrico)
ITEM-TO-DELETE (numrico)
INSERTION-INDEX (numrico)
SEARCH-TEXT (alfanumrico)
DATA-COLUMNS (numrico)
DISPLAY-COLUMNS (numrico)
ALIGNMENT (alfanumrico)
SEPARATION (separacin)
DIVIDERS (numrico)
SELECTION-INDEX (numrico)
THUMB-POSITION (numrico)
QUERY-INDEX (numrico)
ITEM-VALUE (alfanumrico)
TERMINATION-VALUE (numrico)
EXCEPTION-VALUE (numrico)
MAX-TEXT (numrico)
ITEM-TO-ADD (alfanumrico)
MASS-UPDATE (numrico)
RESET-LIST (numrico)
ITEM-TO-DELETE (numrico)
INSERTION-INDEX (numrico)
TERMINATION-VALUE (numrico)
EXCEPTION-VALUE (numrico)
HIGH-COLOR (numrico)
LOW-COLOR (numrico)
FILL-COLOR (numrico)
FILL-PERCENT (numrico)
FILL-COLOR2 (numrico)
TITLE-POSITION (numrico)
WIDTH (numrico) (Windows nicamente)
COLORS (numrico) (Windows nicamente)
SHADING (numrico) (Windows nicamente)
POSITION-SHIFT (numrico) (Windows nicamente)
TRAILING-SHIFT (numrico) (Windows nicamente)
LEADING-SHIFT (numrico) (Windows nicamente)
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 41 de 125
Tab
Bitmap
Grid
MIN-VAL (numrico)
MAX-VAL (numrico)
PAGE-SIZE (numrico)
TAB-TO-ADD (alfanumrico)
TAB-TO-DELETE (numrico)
RESET-TABS (numrico)
BITMAP-HANDLE (numrico)
BITMAP-WIDTH
BITMAP-NUMBER
BITMAP-HANDLE (numrico)
BITMAP-NUMBER (numrico)
BITMAP-START (numrico)
BITMAP-END (numrico)
BITMAP-TIMER (numrico)
ACTION (numrico)
ALIGNMENT (alfanumrico)
BITMAP (numrico)
BITMAP-NUMBER (numrico)
BITMAP-TRAILING (numrico)
BITMAP-WIDTH (numrico)
CELL-COLOR (numrico)
CELL-DATA (alfanumrico)
CELL-FONT (numrico)
COLUMN-COLOR (numrico)
COLUMN-DIVIDERS (numrico)
COLUMN-FONT (numrico)
CURSOR-COLOR (numrico)
CURSOR-FRAME-WIDTH (numrico)
CURSOR-X (numrico)
CURSOR-Y (numrico)
DATA-COLUMNS (numrico)
DATA-TYPES (alfanumrico)
DISPLAY-COLUMNS (numrico)
DIVIDER-COLOR (numrico)
DRAG-COLOR (numrico)
END-COLOR (numrico)
FILE-POS (numrico)
HEADING-COLOR (numrico)
HEADING-DIVIDER-COLOR (numrico)
HEADING-FONT (numrico)
HIDDEN-DATA (alfanumrico)
HSCROLL-POS (numrico)
INSERT-ROWS (numrico)
INSERTION-INDEX (numrico)
LAST-ROW (numrico)
MASS-UPDATE (numrico)
NUM-COL-HEADINGS
NUM-ROWS (numrico)
RECORD-DATA (alfanumrico)
RECORD-TO-ADD (alfanumrico)
RECORD-TO-DELETE (numrico)
REGION-COLOR (numrico)
RESET-GRID (numrico)
ROW-COLOR (numrico)
ROW-COLOR-PATTERN (numrico)
ROW-DIVIDERS (numrico)
ROW-FONT (numrico)
SEARCH-OPTIONS (alfanumrico)
SEARCH-TEXT
SEPARATION (numrico)
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 42 de 125
Tree View
Status Bar
START-X (numrico)
START-Y (numrico)
VIRTUAL-WIDTH (numrico)
VPADDING (numrico)
VSCROLL-POS (numrico)
X (numrico)
Y (numrico)
BITMAP-HANDLE (numrico)
BITMAP-NUMBER (numeric)
BITMAP-WIDTH (numrico)
ENSURE-VISIBLE (numrico)
EXPAND (numrico)
HAS-CHILDREN (numrico)
HIDDEN-DATA (alphanumrico)
ITEM (numrico)
ITEM-TEXT (alphanumrico)
ITEM-TO-ADD (alphanumrico)
ITEM-TO-DELETE (numrico)
ITEM-TO-EMPTY (numrico)
NEXT-ITEM (numrico)
PARENT (numrico)
PLACEMENT (numrico)
RESET-LIST (numrico)
PANEL-WIDTHS (numeric)
PANEL-STYLE (numeric)
PANEL-TEXT (alphanumeric)
PANEL-INDEX (numeric)
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 43 de 125
Laboratorio 3.2
Hasta ahora...
Objetivos
Tareas generales
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 44 de 125
EVENT-STATUS.
03 EVENT-TYPE
03 EVENT-WINDOW-HANDLE
03 EVENT-CONTROL-HANDLE
03 EVENT-CONTROL-ID
03 EVENT-DATA-1
03 EVENT-DATA-2
03 EVENT-ACTION
Existen eventos para las ventanas Windows Events, para los controles
Control Event, y para los mens Men Events.
CMD-CLOSE
Valor 1
Este evento indica que el usuario ha seleccionado la opcin cerrar desde el men del
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 45 de 125
CMD-ACTIVATE
Valor 6
Este evento ocurre cuando una ventana es activada por el usuario, pero unicamente
si la ventana previa pertenece al mismo programa. (p.e., el usuario intercambia
ventanas dentro del programa, y no transfiere el control desde otro programa). La
respuesta normal es un ACCEPT en la nueva ventana activa, construyendo en la
ventana activa del programa un punto de partida. Si utiliza cualquiera de las opciones
LINK o BIND TO THREAD cuando crea una ventana, el runtime puede
automticamente manejar este evento. EVENT-DATA-1 y EVENT-DATA-2 no son
usados.
NTF-RESIZED
Valor 4114
Este evento ocurre cuando una ventana reajustable no tiene la opcin AUTORESIZE. La aplicacin tpicamente reconstruye la ventana en respuesta al evento.
EVENT-DATA-1 contiene el nuevo alto y EVENT-DATA-2 contiene el nuevo ancho,
ambos son medidos en centsimas de celdas (p.e. un ancho de 80 columnas en la
ventana es expresado como "8000"). Use el verbo INQUIRE para obtener las nuevas
dimensiones.
MSG-CLOSE
Valor 16415
Este evento ocurre cuando el usuario hace clic en Cerrar del dialogo del men del
sistema de Windows, o teclea en el host system la secuencia de teclas para cerrar
una aplicacin (Alt-F4 para Windows).
Valor 4
Este evento ocurre para los siguientes controles: push button, check box, y radio
button, aunque NOTIFY no sea especificado. Especificando NOTIFY crea un evento
de terminacin para check boxes y radio button. CMD-CLICKED es un evento de
terminacin para push button. Los valores EVENT-DATA-1 y EVENT-DATA-2 no son
usados.
CMD-DBLCLICK
Valor 5
Indica que el usuario ha hecho doble clic sobre un tem en un list-box o combo-box
(retorna este evento), siempre y cuando este control no tenga un TERMINATIONVALUE o EXCEPTION-VALUE asociado. Esto ocurre si la aplicacin tiene NOTIFYDBLCLICK. EVENT-DATA-1 es el ndice del tem seleccionado en la lista
(comenzando en "1"). EVENT-DATA-2 no se usa.
CMD-GOTO
Valor 3
Indica que el usuario activa el control que genera el evento. Esto sucede cuando el
usuario hace clic en un control inactivo con el mouse o teclea un conjunto de teclas
asignado. La aplicacin desempea un ACCEPT normal en respuesta al control.
(Generalmente no es una buena tcnica de programacin controlar el evento CMDGOTO, porque esta impidiendo que el control se desempee normalmente). Los
valores EVENT-DATA-1 y EVENT-DATA-2 no son usados.
CMD-HELP
Valor 8
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 46 de 125
CMD-TABCHANGED
Valor 7
Este evento ocurre cuando el usuario selecciona una nueva pestaa desde un control
TAB. El valor de la pestaa seleccionada es almacenado en EVENT-DATA-1.
Distinto a algunos eventos, realiza cualquier validacin especificada en el ACCEPT, y
en los campos actuales cuando un AFTER PROCEDURE es ejecutado antes de un
EXCEPTION PROCEDURE. Este evento se asegura que el usuario no pueda usar el
control TAB para salir de una forma cuando contiene datos invalidos. EVENT-DATA2 no es usado.
MSG-AX-EVENT
Valor 16436
Este evento ocurre cuando un control ActiveX ha lanzado un evento. EVENT-DATA2 contiene el tipo de evento del control ActiveX. Dos pares de rutinas de librerias
C$GETEVENTDATA/C$SETEVENTDATA
y
C$GETEVENTPARAM/C$SETEVENTPARAM son usadas para obtener y fijar el
parametro de evento.
MSG-BEGIN-DRAG
Valor 16406
MSG-BEGIN-ENTRY
Valor 16392
Este evento ocurre cuando el usuario inicia una modificacin de una celda en un
control grid. EVENT-DATA-1 contiene el nmero de la columna de la celda, y
EVENT-DATA-2 contiene el nmero del registro. Por conveniencia, las propiedades X
y Y son fijadas por el cursor de la celda durante la duracin del evento. Esto le
permite obtener fcilmente una imagen antes de efectuar un INQUIRE en un CELLDATA.
Puede validar el ingreso de datos en una celda fijando el valor EVENT-ACTION a
EVENT-ACTION-FAIL.
MSG-BITMAP-CLICKED
Valor 16400
Este evento ocurre cuando el usuario hace clic en el botn izquierdo en el contenido
de un bitmap en un control grid. EVENT-DATA-1 contiene el nmero de la columna
de la celda, y EVENT-DATA-2 contiene el nmero del registro de la celda. Por
conveniencia, las propiedades X y Y son fijadas por el cursor de la celda durante la
duracin del evento.
Puede validar la accin en una celda fijando el valor EVENT-ACTION a EVENTACTION-FAIL.
MSG-BITMAP-DBLCLICK
Valor 16401
Este evento ocurre cuando el usuario hace doble clic en un bitmap contenido en un
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 47 de 125
MSG-BEGIN-HEADING-DRAG
Valor 16408
MSG-CANCEL-ENTRY
Valor 16394
Este evento ocurre cuando el usuario sale del modo de edicin de una celda en un
control grid, presionando la tecla Esc. El contenido de la celda es restaurado al
contenido antes de ingresar a la celda. EVENT-DATA-1 contiene el nmero de la
columna de la celda, y EVENT-DATA-2 contiene el nmero del registro de la celda.
MSG-COL-WIDTH-CHANGED
Valor 16410
Ocurre cuando el usuario cambia el ancho de una columna en un control grid. Para
que esto ocurra, el grid debe tener el estilo ADJUSTABLE-COLUMNS y debe tener
nicamente una fila por registro. EVENT-DATA-1 contiene el nmero de la columna
desde donde se inicia el cambio. EVENT-DATA-2 contiene el nuevo ancho (en
caracteres).
MSG-END-DRAG
Valor 16407
Este evento indica que el usuario ha soltado el botn del mouse despus de avanzar
durante una operacin normal (no encabezado) en un control grid. EVENT-DATA-1
contiene el nmero de la columna de la celda donde el usuario finaliz el avance del
mouse. EVENT-DATA-2 contiene el nmero de la fila de la celda.
MSG-END-HEADING-DRAG
Valor 16409
Este evento indica que el usuario ha soltado el botn del mouse despus de avanzar
durante una operacin normal en un encabezado de un control grid.
EVENT-DATA-1 contiene el nmero de la columna de encabezado de la celda donde
el usuario finaliz el avance del mouse. EVENT-DATA-2 contiene el nmero de la fila
de encabezado de la celda.
MSG-FINISH-ENTRY
Valor 16393
Este evento ocurre cuando el usuario finaliza la edicin de una celda en un control
grid. Puede utilizarlo para validar el contenido y formateo de cualquier celda de datos.
EVENT-DATA-1 contiene el nmero de la columna de la celda, y EVENT-DATA-2
contiene el nmero del registro. Por conveniencia, las propiedades X y Y son fijadas
por el cursor en la celda, durante la duracin del evento. Esto permite recuperar el
dato completo, utilizando el verbo INQUIRE en un CELL-DATA. Para modificar el
dato realice la obtencin del dato con el verbo INQUIRE en un CELL-DATA, luego
modifique la informacin, y finalmente utilice el verbo MODIFY CELL-DATA para
cargar el dato modificado.
Puede validar el dato ingresado por el usuario y forzar a que el cursor quede fijo en la
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 48 de 125
MSG-GOTO-CELL
Valor 16395
MSG-GOTO-CELL-DRAG
Valor 16404
MSG-GOTO-CELL-MOUSE
Valor 16396
MSG-GRID-RBUTTON-DOWN
Valor 16426
Este evento ocurre en el control grid cuando el usuario oprime el botn derecho del
mouse. EVENT-DATA-1 es fijado con el nmero de la columna de la celda
seleccionada, EVENT-DATA-2 es fijado con el nmero de la fila. Si el clic derecho es
realizado fuera de una celda, estos valores sern cero.
MSG-GRID-RBUTTON-UP
Valor 16427
Este evento ocurre cuando el usuario libera o suelta el botn derecho del mouse. El
evento se comporta de la misma forma que el evento MSG-GRID-RBUTTON-DOWN
descrito anteriormente. Una vez este evento finaliza el proceso, un men pop-up
asociado con el grid es visualizado.
Una forma en la cual usted puede usar este evento, es seleccionando un apropiado
men pop-up dependiendo de la celda seleccionada.
Por ejemplo, usted deseara poder asignar diferentes ventanas pop-up para el
encabezado del cuerpo de un grid . Usted puede examinar la celda seleccionada y
asociar el apropiado men pop-up para el control.
MSG-HEADING-CLICKED
Valor 16402
Este evento ocurre cuando el usuario hace clic con el botn izquierdo en una fila o
columna de encabezado.
EVENT-DATA-1 contiene el nmero de la columna y EVENT-DATA-2 contiene el
nmero de registro de la celda.
MSG-HEADING-DBLCLICK
Valor 16403
Este evento ocurre cuando el usuario hace doble-clic con el botn izquierdo en una
fila o columna de encabezado.
EVENT-DATA-1 contiene el nmero de la columna y EVENT-DATA-2 contiene el
nmero de registro de la celda.
MSG-HEADING-DRAGGED
Valor 16405
Este evento ocurre cuando el usuario mueve el mouse dentro de una celda de
encabezado mientras presiona el botn izquierdo del mouse. Este evento es
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 49 de 125
MSG-PAGED-FIRST
Valor 16423
Este evento ocurre para los grid con estilo PAGED. Indica que el usuario ha hecho
clic en el botn "First Page" (se genera presionando el botn Previous Record, en
conjunto con la tecla Shift o Mayscula). El runtime responde a este evento
posicionando el puntero del registro al inicio del origen de datos. Asumiendo que el
archivo de origen es un archivo indexado, una declaracin START fija el puntero del
registro a fin de que un READ NEXT pueda recuperar el primer registro en el archivo.
Si usted fija EVENT-ACTION to EVENT-ACTION-NORMAL (este es el valor por
defecto), ocurre lo siguiente despus que finaliza el evento.
1. El control es descargado de datos, excepto para cualquier columna de
encabezado; y
2. El control genera un evento de valor de pgina MSG-PAGED-NEXT para llenar la
primera pgina de datos.
Si usted opt por llenar la primera pgina de si mismo en respuesta a este
acontecimiento, fije EVENT-ACTION a EVENT-ACTION-COMPLETE para informarle
al grid que no es necesario generar el evento MSG-PAGED-NEXT para llenar la
primera pgina. Si no puede comenzar al inicio de la pgina (porque el archivo se
encuentra vaco), fije EVENT-ACTION a EVENT-ACTION-FAIL.
MSG-PAGED-LAST
Valor 16424
Este evento ocurre para los grid con estilo PAGED. Indica que el usuario ha hecho
clic en el botn "Last Page" (se genera presionando el botn Next Record, en
conjunto con la tecla Shift o Mayscula). Este trabaja de la misma manera que el
evento MSG-PAGED-FIRST descrito anteriormente. Usted posiciona el origen de
datos para que un evento MSG-PAGED-PREV recupere el ltimo registro, y el grid
administre el resto. Vea MSG-PAGED-FIRST y MSG-PAGED-PREV.
MSG-PAGED-NEXT
Valor 16419
Este evento ocurre para los grid con estilo PAGED. Indica que el usuario ha hecho
clic en el botn "Next Record". La respuesta esperada desde el runtime es el de
suministrar el siguiente registro despus del fin de los datos actuales del grid.
Para hacer esto adicione un registro nuevo al final del grid (usando RECORD-TOADD). Si el dato es de un archivo indexado, el valor de EVENT-DATA-2 es el nmero
de READ NEXTs necesarios para obtener los registros apropiados. Este valor es
controlado por la propiedad FILE-POS.
Si no puede obtener el prximo registro (porque usted ha alcanzado el fin del
archivo), responda fijando EVENT-ACTION a EVENT-ACTION-FAIL. Cuando haga
esto no recibir ms eventos MSG-PAGED-NEXT.
MSG-PAGED-NEXTPAGE
Valor 16421
Este evento ocurre para los grid con estilo PAGED. Indica que el usuario ha hecho
clic en el botn "Next Page". Si usted no define una accin especfica cuando este
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 50 de 125
MSG-PAGED-PREV
Valor 16420
Este evento ocurre para los grid con estilo PAGED. Indica que el usuario ha hecho
clic en el botn "Previous Record". La respuesta esperada del runtime ser
suministrar el registro antes del primer registro de los datos actuales del grid.
Para hacer esto adicione un registro nuevo al final del grid (usando RECORD-TOADD para adicionar el registro e INSERTION-INDEX para posicionar el registro antes
de la primera fila de datos y asegurese que el registro no es insertado antes de
cualquier columna de encabezado en el grid). Si el dato es de un archivo indexado, el
valor de EVENT-DATA-2 es el nmero de declaraciones READ PREVIOUS,
necesarios para obtener los registros apropiados.
Este valor es controlado por la propiedad FILE-POS. Si no puede suministrar el
registro (porque usted ha alcanzado el inicio del archivo), responda fijando EVENTACTION a EVENT-ACTION-FAIL. Cuando usted haga esto no recibira ms eventos
MSG-PAGED-PREV.
MSG-PAGED-PREVPAGE
Valor 16422
Este evento ocurre para los grid con estilo PAGED. Indica que el usuario ha hecho
clic en el botn "Previous Page". Este trabaja de la misma manera al evento MSGPAGED-NEXTPAGE descrito anteriormente.
Aunque este evento puede ser ignorado, usted podra suministrar una accin
especfica en respuesta a este evento. Vea MSG-PAGED-NEXTPAGE para detalles.
MSG-SB-NEXT
Valor 16385
MSG-SB-NEXTPAGE
Valor 16387
MSG-SB-PREV
Valor 16386
MSG-SB-PREVPAGE
Valor 16388
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 51 de 125
MSG-SB-THUMB
Valor 16389
MSG-SB-THUMBTRACK
Valor 16390
Este evento ocurre cuando el usuario mueve el dispositivo deslizante del control
scroll bar que tiene el estilo TRACK-THUMB. Cuando el mensaje de evento es
enviado al control, el programa en respuesta no reestablece la posicin del control.
EVENT-DATA-2 contiene la nueva posicin. EVENT-DATA-1 no es usado.
Este mensaje es el nico que no cambia la posicin de deslizamiento.
MSG-SPIN-DOWN
Valor 16417
Este evento ocurre cuando el usuario hace clic en la flecha inferior de un control
Entry Field con el estilo SPINNER.
El programa responde a MSG-SPIN-DOWN decrementando el valor del campo de
entrada por un valor especfico, no necesariamente 1.
Si el campo de entrada tiene un estilo AUTO-SPIN, usted puede fijar EVENTACTION a EVENT-ACTION-FAIL para prevenir que el control decremente el valor por
si mismo.
MSG-SPIN-UP
Valor 16416
Este evento ocurre cuando el usuario hace clic en la flecha superior de un control
Entry Field con el estilo SPINNER. El programa responde a este evento
incrementando el valor del campo de entrada. No es limitado para incrementar el
valor de uno en uno. Puede incrementar el valor del campo tomando el valor actual
del campo y modificndolo por el valor deseado.
Si el campo de entrada tiene un estilo AUTO-SPIN, usted puede fijar EVENTACTION a EVENT-ACTION-FAIL para prevenir que el control incremente el valor por
si mismo.
MSG-TV-DBLCLICK
Valor 16428
Este evento ocurre cuando el usuario hace doble-clic en un tem de un control TreeView control que no tiene dependientes. Los tem que tienen dependientes se
expanden o contraen cuando es hecho un doble-clic. El ID de el tem es almacenado
en EVENT-DATA-2.
Puede fijar EVENT-ACTION a EVENT-ACTION-IGNORE para inhibir el manejo
interno del control ente un evento de doble-clic. Esto se utiliza si usted desea
transferir el control a una nueva ventana en respuesta al doble-clic.
Si usted crea el cdigo para mostrar una nueva ventana pero el evento no es
ignorado, el manejo interno del control desactiva su nueva ventana.
MSG-TV-EXPANDED
Valor 16414
Pg. 52 de 125
MSG-TV-EXPANDING
Valor 16413
Este evento ocurre cuando un tem en un control Tree View esta a punto de ser
expandido o contrado.
EVENT-DATA-1 y EVENT-DATA-2 son fijados de la misma forma que el evento
MSG-TV-EXPANDED. Puede prevenir que el control se expanda o contraiga fijando
EVENT-ACTION a EVENT-ACTION-FAIL.
Nota: El runtime puede enviar un conjunto de estos eventos en respuesta, cuando el
usuario presiona las teclas + o *. La diferencia es que estos mensajes son enviados
independientemente de s el tem en particular es expandido o no. Mientras que un
evento del mouse causa un mensaje de EXPAND si el tem no es expandido. Este
hecho puede causar problemas en los programas COBOL, y los programadores
deben estar conscientes de ello.
Las teclas + y * generan un mensaje EXPANDED con EVENT-DATA-1 fijado a
TVFLAG-EXPAND, mientras que la tecla genera un mensaje EXPANDED con
EVENT-DATA-1 fijado a TVFLAG-COLLAPSE.
MSG-TV-SELCHANGE
Valor 16412
Este evento ocurre cuando la seleccin ha sido cambiada en un control Tree View. El
ID del nuevo tem es almacenada en EVENT-DATA-2. EVENT-DATA-1 contiene la
causa del cambio.
De acuerdo a los siguientes valores (encontrados en "acugui.def"):
TVFLAG MOUSE
Nuevo tem seleccionado con el mouse.
TVFLAG KEYBOARD Nuevo tem seleccionado con el teclado.
TVFLAG PROGRAM Cambio de programa por el tem seleccionado
MSG-TV-SELCHANGING
Valor 16411
Este evento ocurre cuando la seleccin en un control Tree View esta a punto de
cambiar. EVENT-DATA-1 contiene la razn para el cambio (Vea MSG-TVSELCHANGE), y EVENT-DATA-2 contiene el ID del tem a punto de seleccionar.
Puede prevenir la seleccin, fijando EVENT-ACTION a EVENT-ACTION-FAIL.
MSG-VALIDATE
Valor 16391
Pg. 53 de 125
MSG-WB-BEFORE-NAVIGATE
Valor 16429
MSG-WB-DOWNLOAD-BEGIN
Valor 16431
MSG-WB-DOWNLOAD-COMPLETE
Valor 16432
MSG-WB-NAVIGATE-COMPLETE
Valor 16430
MSG-WB-PROGRESS-CHANGE
Valor 16433
MSG-WB-STATUS-TEXT-CHANGE
Valor 16434
MSG-WB-TITLE-CHANGE
Valor 16435
NTF-CHANGED
Valor 4100
Indica que el valor de un campo de entrada puede haber sido cambiado por el
usuario. Este evento ocurre nicamente para campos de entrada que tengan el estilo
NOTIFY-CHANGE.
EVENT-DATA-1 es la posicin actual del cursor en el campo de entrada
(comenzando en 1). EVENT-DATA-2 no es usado.
NTF-PL-FIRST
Valor 4105
Este evento es generado nicamente para controles list boxes con el estilo PAGED.
Indica que el usuario realiz un desplazamiento en la parte superior de la lista. La
respuesta normal es adicionar los primeros n registros a la lista, donde "n" es el
nmero de lneas que el list box puede mostrar. EVENT-DATA-1 y EVENT-DATA-2
no son usados.
NTF-PL-LAST
Valor 4106
Este evento es generado nicamente para controles list boxes con el estilo PAGED.
Indica que el usuario realiz un desplazamiento en la parte inferior de la lista. La
respuesta normal es adicionar los ltimos n registros a la lista, donde "n" es el
nmero de lneas que el list box puede mostrar. EVENT-DATA-1 y EVENT-DATA-2
no son usados.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 54 de 125
Valor 4101
Este evento es generado nicamente para controles list boxes con el estilo PAGED.
Indica que el usuario realiz un desplazamiento de un registro en direccin
descendente en un list box. La respuesta normal para este mensaje es adicionar el
siguiente registro al final de la lista. EVENT-DATA-1 y EVENT-DATA-2 no son
usados.
NTF-PL-NEXTPAGE
Valor 4103
Este evento es generado nicamente para controles list boxes con el estilo PAGED.
Indica que el usuario realiz un desplazamiento de una pgina en direccin
descendente en un list box. La respuesta normal es adicionar los ltimos n
registros a la lista, donde "n" es el nmero de lneas que el list box puede mostrar.
EVENT-DATA-1 y EVENT-DATA-2 no son usados.
NTF-PL-PREV
Valor 4102
Este evento es generado nicamente para controles list boxes con el estilo PAGED.
Indica que el usuario realiz un desplazamiento de un registro en direccin
ascendente en un list box. La respuesta normal para este mensaje es adicionar el
anterior registro al comienzo de la lista. EVENT-DATA-1 y EVENT-DATA-2 no son
usados.
NTF-PL-PREVPAGE
Valor 4104
Este evento es generado nicamente para controles list boxes con el estilo PAGED.
Indica que el usuario realiz un desplazamiento de una pgina en direccin
ascendente en un list box. La respuesta normal es adicionar los anteriores n
registros a la lista, donde "n" es el nmero de lneas que el list box puede mostrar.
EVENT-DATA-1 y EVENT-DATA-2 no son usados.
NTF-PL-SEARCH
Valor 4107
Este evento es generado nicamente para controles list boxes con el estilo PAGED.
Indica que el usuario hace un desplazamiento en la pgina que contiene el texto
ingresado por el usuario. La repuesta normal es localizar el ms cercano registro
concordante y luego adicionar una pgina de registros al list box, comenzando con el
registro encontrado. EVENT-DATA-1 contiene el tamao del texto buscado. EVENTDATA-2 no es usado. Para determinar el texto de bsqueda ingresado, use el verbo
INQUIRE en la propiedad SEARCH-TEXT del list box.
NTF-SELCHANGE
Valor 4099
Valor 16398
Pg. 55 de 125
MSG-MENU-INPUT
Valor 16397
Este evento ocurre cuando el usuario tiene activado un control menu pop-up y
seleccionado un tem en el men. Para ventanas, la informacin desde este evento
de mensaje es enviada a un procedimiento de evento cuando el usuario realiza lo
siguiente:
1. Selecciona un tem desde la ventana de la barra de men pop-up.
2. Selecciona un tem desde una ventana de men pop-up.
3. Selecciona un tem desde un men pop-up men compuesto por un control
contenido en la ventana, y el procedimiento de control de evento no detiene el
procesamiento adicional de la seleccin del men.
4. Selecciona la opcin "Cerrar" desde la ventana inicial del sistema de men (o
hace clic en el botn "Cerrar"), y usted tiene fijado la opcin de configuracin
QUIT-MODE a un valor positivo. Esta opcin de configuracin causa que el
runtime trate de cerrar la operacin como si fuera un tem en la barra de men
inicial de la ventana.
EVENT-DATA-2 contiene el ID del tem del men. Fijando EVENT-ACTION a
EVENT-ACTION-CONTINUE previene procesamientos posteriors de la seleccin del
men. De otra forma, la seleccin del men es tratado como una seleccin normal
desde una barra de men (p.e., termina el ACCEPT con un valor de excepcin igual
al ID del tem del men).
MSG-END-MENU
Valor 16399
Este evento ocurre cuando el men pop-up de cualquier control o ventana ha sido
removido de la pantalla. EVENT-DATA-2 contiene el handle del men de control (o
ventana).
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 56 de 125
Laboratorio 3.3
Hasta ahora...
Objetivos
Tareas generales
LLave
Picture
X(3)
X(512)
Pg. 57 de 125
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 58 de 125
Laboratorio 3.4
Hasta ahora...
Objetivos
Tareas generales
Picture
9
9
9
9
Variable
CH-CLIENTE
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 59 de 125
EF-CLIENTE
TC-CLIENTE
CR-CLIENTE
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 60 de 125
Laboratorio 3.5
Hasta ahora...
Objetivos
Tareas generales
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 61 de 125
Grid Control
El control GRID control es una tabla bi-dimensional de campo de datos. Cada
elemento en esta tabla es llamado celda, puede contener texto, bitmap o
ambos.
Los GRIDs son controles relativamente complejos con muchas propiedades que
usted puede usar para personalizar su comportamiento y apariencia.
Nota de Portabilidad: De forma general un control GRID es soportado nicamente en entornos
Windows. El intento de crear un control GRID en otros sistemas puede fallar, causando que el
manejo del control sea retornado con un valor NULL.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 62 de 125
Accin
Mueve el cursor en la misma columna en el Anterior/Siguiente
Flechas Arriba/Abajo
registro .
Flechas Izquierda/Derecha Mueve el cursor en la columna Anterior/Siguiente del registro
Mueve el cursor a la derecha, volviendo al primer registro cuando
Tab (con USE-TAB)
esta ubicado en la ltima celda de la fila
Mueve el cursor a la izquierda, volviendo al primer registro cuando
Retroceso (con USE-TAB)
esta ubicado en la ltima celda de la fila
Inicio
Mueve el cursor a la primera columna en el registro
Ctrl-Inicio
Mueve a la primera columna en el primer registro
Fin
Mueve a la ltima columna en el registro
Ctl-Fin
Mueve a la primera columna en el ltimo registro
Av. Pg./Re Pg.
Mueve el cursor una pgina hacia arriba o hacia abajo
Alterna el modo de entrada en una celda; destacando el contenido
Intro
para edicin
Mayscula-Intro
Mueve el cursor a la primera columna de el siguiente registro
Alterna el modo de entrada para la celda activa; sobrescribiendo el
Cualquier carcter editable
contenido con el carcter.
GRIDs pueden tener filas y/o columnas de encabezado. Usando el estilo ROWHEADINGS establece una fila de encabezado y el estilo COLUMN-HEADINGS
establece una columna de encabezado. Los encabezados son celdas normales
con algunos atributos especiales.
1. Los Encabezados sern siempre visibles, independiente de como el usuario
navegue en el GRID.
2. El cursor no es movable en una celda de encabezado.
3. Las propiedades especiales HEADING-COLOR, HEADING-FONT y
HEADING-DIVIDER-COLOR aplican nicamente a celdas de encabezado,
as como el estilo TILED-HEADINGS.
4. Los eventos MSG-HEADING-CLICKED, MSG-HEADING-DBLCLICK, y
MSG-HEADING-DRAGGED aplican nicamente a celdas de encabezado.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 63 de 125
Laboratorio 3.6
Hasta ahora...
Objetivos
Tareas generales
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 64 de 125
Justificacin a la izquierda
Justificacin a la derecha
Centrada
Sin alineacin
Los datos no alineados unaligned son mostrados en la celda tal cual. De otra manera, el
interlineado y los espacios son removidos del dato. El valor por defecto para una columna es
"unaligned.".
El siguiente ejemplo fija varias alineaciones para un conjunto de 3 columnas:
ALIGNMENT = ( "L", "R", "C" )
Propiedad BITMAP (create, modify)
Tipo Numrico
Coloca una imagen bitmap en una celda identificada por las propiedades X y Y. Este debe
ser fijado para el handle del bitmap cargado en memoria (usando la opcin WBITMAP-LOAD
de W$BITMAP). Si este valor es cero, entonces cualquier bitmap existente es removido.
Puede colocar bitmap y texto en una misma celda. El bitmap es concatenado con el texto
(con una pequea separacin), y el conjunto es alineado de acuerdo a lo especificado en la
propiedad ALIGNMENT. Cuando el usuario ingresa texto en la celda, el bitmap es oculto, en
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 65 de 125
Tipo Numrico
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 66 de 125
LIST-DATA.
03 NAME
03 PHONE-NUMBER
03 STATE
PIC X(20).
PIC X(15).
PIC X(2).
Pg. 67 de 125
Alfanumrico - Minscula
9
Z
Numrico
Nmeros editados
I
P
D
Enteros
Enteros Positivos
Fecha
Caracteres permitidos
Todos los caracteres
Todos los caracteres automticamente
convertidos a mayscula.
Todos los caracteres automticamente
convertidos a minscula.
Dgitos, punto decimal, signo, espacio
Dgitos, signos, punto, coma, smbolo de moneda
local, "$", "*", "/", "%", espacios
Dgitos, signos, espacios
Dgitos, espacios
Dgitos, /, guin
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 68 de 125
Columna 2
Columna 5
Columna 3
Nota: Puede tambin usar columnas para ocultar datos. La columna se sita ms all del
lado derecho del grid, donde no es visible. Puede usar este comportamiento para almacenar
informacin en el grid que su programa necesite asociar con un registro, pero que usted no
desea mostrar al usuario. Un potencial uso de esta tcnica es almacenar el valor de la llave
primaria en la columna oculta, as podr recuperar el registro completo fcilmente cuando el
usuario lo seleccione del grid.
Propiedad DIVIDER-COLOR(create, modify, inquire)
Tipo Numrico
Fija el color de las divisiones del grid. Configurando este valor al nmero del color deseado
(p.e. "1" para negro, "9" para gris oscuro). Cuando esta propiedad es fijada a cero (por
defecto), el color especifico del divisor del sistema es usado. Este color depende del color del
fondo del grid.
Propiedad DRAG-COLOR (create, modify, inquire)
Tipo Numrico
Configura el color de resaltado aplicado al rea rectangular definida cuando el usuario
selecciona con el mouse en el grid. El valor DRAG-COLOR mayor a cero define un color a
ser aplicado usando el valor de la frase COLOR.
DRAG-COLOR es usado para el mismo propsito como REGION-COLOR (vea la descripcin
de la propiedad REGION-COLOR). Use DRAG-COLOR en lugar de REGION-COLOR
cuando desee permitir que los usuarios resalten un bloque de celdas presionando y
arrastrando el mouse (REGION-COLOR tiene mala ejecucin en aplicaciones que corren con
ACUCOBOL-GT Thin Client).
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 69 de 125
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 70 de 125
Modificar FILE-POS para reflejar la posicin actual del registro. Puede usar nmeros
de FILE-POS fuera del rango de registros disponibles en el grid. Por ejemplo, Si
posiciona el puntero del registro uno ants al primero en el grid, asignando "0" a FILEPOS. Fije FILE-POS a "1" para apuntar al primer registro en el grid, "0" para apuntar el
registro antes que, "-1" para apuntar 2 registros antes y as sucesivamente. Puede usar
nmeros mayores al ltimo registro del grid indicando una posicin ms alla del grid.
2.
Reposicionar el puntero al archivo actual haciendo correspondencia al valor FILEPOS. Puede hacer esto leyendo de nuevo el registro apropiado del archivo de datos.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 71 de 125
Ignorar el posicionamiento de la informacin transferida en el evento MSG-PAGEDNEXT y MSG-PAGED-PREV y el posicionamiento de la informacin suministrada por el
control grid, proveyendo su propia lgica de ubicacin, en este caso, FILE-POS puede
ser incorrecto; pero FILE-POS es irrelevante en este punto porque usted no lo esta
usando. Si usted ignora el valor de FILE-POS, debe decidir si utiliza o n la caracterstica
at-end o at-start de FILE-POS. Si no desea usar esta caracterstica, entonces no fije
EVENT-ACTION-FAIL en los eventos MSG-PAGED-NEXT y MSG-PAGED-PREV.
Cualquiera de las tcnicas mencionadas pueden ejecutarse. Sin embargo, observe que,
FILE-POS podra ser dificil de calcular con la primera tcnica, porque es con frecuencia dificil
de calcular cuantos registros hay en un archivo con indices.
Propiedad HEADING-COLOR (create, modify, inquire)
Tipo Numrico
Fija el color para las celdas de encabezado (columnas y filas). El valor del color especificado
usa la frse COLOR, para el primer plano y el fondo.
Propiedad HEADING-DIVIDER-COLOR (create, modify, inquire) Tipo Numrico
Fija el color usado para las lneas divisorias de una columna o una fila en un encabezado.
Cuando esta propiedad es fijada en cero (por defecto), las divisiones en el encabezado son
dibujadas usando el mismo color asignado al resto del grid.
Propiedad HEADING-FONT (create, modify, inquire)
Tipo Numrico
Fija la fuente a ser usada por las filas y columnas de encabezado. Debe ser fijado a un valor
valido de fuente. Observe que HEADING-FONT tiene precedencia sobre ROW-FONT y
COLUMN-FONT, pero no sobre CELL-FONT.
Propiedad HIDDEN-DATA (create, modify, inquire)
Tipo Alfanumrico
Permite al programa almacenar datos que no seran mostrados en una celda. Una celda
puede contener datos visualizados (ver CELL-DATA) y datos ocultos. Los datos ocultos estn
limitados a 255 bytes por celda. Puede ocultar datos de cualquier formato, incluidos
caracteres no imprimibles.
Propiedad HSCROLL-POS (inquire)
Tipo Numrico
Retorna el nmero de la columna ms a la izquierda de la columna activa y visible. Cuando
se usan filas de encabezado, HSCROLL-POS retorna el nmero de la columna que
aparecer en la columna 1 del grid donde no hay encabezado.
Propiedad INSERT-ROWS (create, modify)
Tipo Numrico
Cuando se fija a un valor positivo, esta propiedad inserta una cantidad de registros en blanco.
Estos son adicionados inmediatamente antes del registro identificado por INSERTIONINDEX. (Ver INSERTION-INDEX).
Propiedad INSERTION-INDEX (create, modify, inquire)
Tipo Numrico
Fijando esta propiedad a un valor positivo afecta la localizacin de los registros adicionados
va RECORD-TO-ADD. Cuando es fijado a cero (por defecto), los registros son adicionados
al final del grid. Cuando INSERTION-INDEX es positivo, los registros son adicionados
inmediatamente antes del correspondiente tem. Por ejemplo, fijando este a "1" causa que el
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 72 de 125
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 73 de 125
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 74 de 125
Pg. 75 de 125
Pg. 76 de 125
Pg. 77 de 125
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 78 de 125
Valor 0
Valor 1
Valor 2
Si X y Y identifican una celda fuera del rango de celdas, entonces el comienzo de la celda es
determinado como si la bsqueda es "wrapped" desde la posicin lgica (X,Y). Por ejemplo,
si el punto de partida es una celda ms all de la celda al extremo derecho, una bsqueda
comenzar en la primera celda de la siguiente fila. Puede usar esto para forzar una bsqueda
del grid completo iniciando delante de la fila "0", o una bsqueda hacia atrs desde la ltima
fila al final del grid.
El siguiente cdigo de ejemplo realiza una bsqueda en un grid con la palabra "ciencia",
iniciando en la celda donde el cursor se encuentra ubicado:
INQUIRE GRID-1, CURSOR-X IN CUR-COL,
CURSOR-Y IN CUR-ROW
MODIFY GRID-1 (CUR-ROW, CUR-COL)
SEARCH-TEXT = "ciencia" GIVING RESULT-1
IF RESULT-1 > GRDSRCH-NOT-FOUND
DISPLAY MESSAGE BOX "Bsqueda exitosa".
Nota: Las opciones de bsqueda en el grid no se visualizan a travs de una interfase de
usuario. Usted debe construir una interfase para que el usuario pueda realizar una
bsqueda. Una interfase comn es una ventana de dialogo pop-up, donde el usuario pueda
fijar el texto de bsqueda y la opcin deseada. Otra interfase tpica es un control entry-field
en la misma ventana del grid, con un botn Buscar al lado del entry-field.
Propiedad SEPARATION (create, modify)
Tipo Numrico
Describe el monto del espacio en blanco preservado al final de cada columna. Este espacio
aparece entre el final del dato y el inicio de la siguiente columna. Este espacio es expresado
como dcimas del ancho estndar de la fuente. Por ejemplo, un valor de "5" indica la mitad
del ancho de un carcter.
Cada vez que usted configura esta propiedad, fija el monto de separacin para la siguiente
columna en el grid, iniciando con el primero. Configurando esta propiedad a "-1" limpia el
monto de separacin previamente especificado. El valor por defecto 5", usado para una
separacin no definida es dado por la variable de configuracin COLUMN-SEPARATION.
Propiedad START-X (create, modify)
Tipo Numrico
La propiedad START-X es usada en conjuncin con las propiedades START-Y, X, y Y para
definir una regin rectangular en el grid. Esta regin es usada cuando configura REGIONCOLOR. START-X contiene el nmero de columna. La regin pintada REGION-COLOR
comienza con START-X y se extiende hasta X.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 79 de 125
Pg. 80 de 125
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 81 de 125
Laboratorio 3.7
Hasta ahora...
Objetivos
Tareas generales
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 82 de 125
Laboratorio 3.8
Hasta ahora...
Objetivos
Tareas generales
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 83 de 125
Laboratorio 3.9
Hasta ahora...
Objetivos
Tareas generales
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 84 de 125
Laboratorio 3.10
Hasta ahora...
Objetivos
Tareas generales
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 85 de 125
TO
CD-CLIENTE
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 86 de 125
TABLA-CLIENTES
TO
CD-CLIENTE-W
TO
ID-CLIENTE-W
TO
TP-CLIENTE-W
TO
DE-CLIENTE-W.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 87 de 125
tem
En un control Tree view, cada tem en una lista jerrquica es identificado por un
ID que es asignado al mismo tiempo que el elemento es adicionado a la lista.
Esto proporciona una nica forma de identificar cada tem, permitiendo as,
tener tem duplicados en cualquier parte de la lista sin riesgo a ser confundidos.
Los identificadores en un control Tree view son declarados en COBOL como un
tem de dato USAGE POINTER.
El control Tree view tiene una variedad de propiedades especiales, incluyendo
la habilidad para almacenar datos ocultos con cualquier tem y visualizar
bitmaps adyacentes a los tem. La propiedad especial llamada ITEM es usada
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 88 de 125
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 89 de 125
Pg. 90 de 125
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 91 de 125
Laboratorio 3.11
Hasta ahora...
Objetivos
Tareas generales
TV-APLICA-SCR
1
TRUE
1:True
ID-ITEAPL-W
Aplicaciones
Tipo Padre
tem: Clientes
(Name)
Bitmap Number
Expand
Has Children
Identified Pointer
Label
TV-CLIENT-SCR
3
FALSE
0:False
ID-APLCLI-W
Clientes
tem: Utilidades
(Name)
Bitmap Number
Expand
Has Children
Identified Pointer
Label
TV-UTILID-SCR
1
FALSE
0:False
ID-ITEUTI-W
Utilidades
tem: Ayuda
(Name)
Bitmap Number
TV-UTILID-SCR
1
Tipo Hijo
Tipo Padre
Tipo Padre
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 92 de 125
FALSE
0:False
ID-ITEAYU-W
Ayuda
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 93 de 125
Web Browser
Mtodos
Los Mtodos son implementados como propiedades en ACUCOBOL-GT. Para
invocar un mtodo, usted modifica el control, configura el valor de varias
propiedades que representan los parmetros del mtodo. Luego, usualmente
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 94 de 125
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 95 de 125
mtodo
GoBack
GoForward
Propiedad
GO-BACK
GO-FORWARD
GoHome
GoSearch
Navigate
GO-HOME
GO-SEARCH
VALUE
Refresh
Stop
REFRESH
STOP
Descripcin
Navega al tem previo en el histrico de la lista.
Navega al tem siguiente en el histrico de la
lista.
Navega a la pgina actual configurada
Navega al portal de Microsoft
Navega al recurso identificado por un URL o ruta
de archivo.
Recarga la pgina actual
Detiene una carga de pgina
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 96 de 125
BUSY
Propiedad
LocationName
TITLE
LocationURL
VALUE
Type
TYPE
Descripcin
Indica s una descarga o navegacin esta en
progreso.
Nombre del recurso que el control Web browser
actualmente esta mostrando.
URL del recurso que el control Web browser
actualmente esta mostrando.
Tipo de contenido del actual documento objeto
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Pg. 97 de 125
Laboratorio 3.12
Hasta ahora...
Objetivos
Tareas generales
PIC
PIC
PIC
S999V99.
S999V99.
X(100)VALUE IS SPACES.
Pg. 98 de 125
TITLE IN WB-TIT-PAN.
Pg. 99 de 125
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Herramientas y utilidades
AcuBench incluye acceso a una serie de utilidades a las cuales se puede
acceder desde el men Tools. Al seleccionar alguna de las utilidades desde el
men, causa que el workbench visualice un cuadro de dialogo, que permite
seleccionar fcilmente las opciones especificadas y ejecutar la utilidad.
Desde el men Tools, puede seleccionar:
cblutl
vutil, la utilidad para archivos vision
vio
alfred, editor de archivos indexados
logutil
Cblutl
cblutil es usado para ensamblar archivos objeto individuales en librerias objeto, mostrar
informacin de los archivos objeto y trasladar cdigo portable ACUCOBOL-GT's en cdigo
nativo (ver Figura 3.1.). Puede crear tambin una librera objeto por los comandos
Project/Settings y Project/Properties.
Figura 3.1.
Vutil
AcuBench suministra una interfaz grfica que desempea las funciones para los archivos
vision. Vutil opera en archivos indexados Vision y puede ser usado para extractar informacin
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Figura 3.2.
Vio
Vio es una utilidad de transferencia de archivo que permite crear archivo de datos y contenido
de acceso a archivos. Puede colocar un archivo vio en medios externos, tal como un disquete,
o en el disco duro. Vio es adaptado para mover los archivos a sistemas operativos diferentes
porque est disponible en la mayora de las plataformas sostenidas por ACUCOBOL GT y
porque ajusta automticamente aspectos dependiendo de la mquina, tal como un byteswapping. Tambin permite manejar mltiples volmenes. Vio corre en dos modos: el modo
de la entrada y el modo de la salida. Use el modo de salida para crear un archivo. Use el
modo de entrada para lectura y extraccin de un archivo.
Figura 3.3.
Alfred
Alfred es editor de registros indexados. Utilice alfred para ver, modificar, adicionar o eliminar
registros individuales almacenados en un archivo indexado. Alfred puede ser especialmente
til para depurar en un programa las disposiciones del archivo de datos y acciones de E/S.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Logutil
La utilidad logutil es usada para examinar y editar logs de transacciones de archivos. Esta
utilidad puede nicamente ser usada con archivos log creados en asocio con archivos Vision .
Figura 3.4
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Laboratorio 3.13
Hasta ahora...
Objetivos
Crear un Proyecto.
Crear una estructura de datos.
Generar el cdigo necesario para el proyecto.
Tareas generales
Tamao
5 digitos
256 caracteres
5 digitos
12 enteros y 2 decimales
8 caracteres
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Registro de Transacciones
ACUCOBOL-GT soluciona este problema proveyendo la facilidad de generar
un registro de transacciones. Todas las operaciones que hacen parte de una
transaccin son registradas. Una vez registradas, pueden ser consignadas
commit o reversadas rollback por el programa.
Si el programa es interrumpido o el sistema falla, el registro (log) del archivo
puede ser usado para reconstruir una transaccin completa, de ese modo
retorna todos los archivos a un estado consistente.
El administrador de transacciones ofrece estas dos opciones:
Suministrar al programador la habilidad para definir transacciones,
consignar commit o reversar rollback (usualmente en repuesta a una
condicin de error).
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Tipos de archivo
En general, las transacciones aplican a archivos relativos e indexados, de tipo
Vision, C-ISAM, y BTRIEVE, as como tambin para base de datos Acu4GL
(las cuales son tratadas como archivos indexados).
Cada operacin de transaccin es ejecutada en el sistema de archivos
vinculada con el runtime ACUCOBOL-GT. Cada sistema del archivo usa su
propio mecanismo para manejar las operaciones de la transaccin, y algunos
y algunos tienen sus propios archivos de log.
Los registros de transaccin suministran lo siguiente:
Un mtodo indicando que registro de transaccin es deseado e
identificando cual archivo de log usar.
Un medio para decidir cual archivo de operaciones registrar y cual archivo
tiene la capacidad para reversar rollback.
La habilidad para iniciar start, consignar commit, y reversar rollback,
transacciones en COBOL.
Una rutina para realizar la funcione de recuperacin recovery.
Un utilitario para examinar y editar un archivo de registro de transacciones.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Figura 3 : La misma pantalla una vez suprimidos los elementos de la barra de men
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Beneficios y Restricciones
Aunque el asistente Character-to-GUI Wizard es un excelente punto de partida
para cualquier proyecto de conversin a grficos, deber entender sus
criterios de diseo. Por ejemplo, debido a que imita la interfaz de caracteres, la
interfaz grfica de usuario creada por el asistente slo usa etiquetas y campos
de entrada. Puede aadir ms elementos grficos inmediatamente o despus
de un tiempo, segn sea necesario, pero no se incluyen como parte de la
conversin inicial.
Adems, el asistente no reconoce elementos ms avanzados de las
aplicaciones de caracteres, como barras de mens, ventanas desplegables o
caracteres de dibujo de lneas. De igual forma, el asistente no maneja
pantallas cuyos campos cambien en base a otras acciones. Esencialmente, al
hacer una importacin, obtiene una imagen de la pantalla como es en ese
momento. Si la pantalla es dinmica, la imagen slo expresa una forma de la
misma.
Por otra parte, los beneficios de usar el Character-to-GUI Wizard son muy
numerosos. El proceso de conversin es mucho ms rpido que las tcnicas
manuales y las pantallas resultantes se llevan a AcuBench, donde podr usar
las potentes funciones del Screen Designer para modernizar an ms la
pantalla.
Como la interfaz grfica se deriva de la de caracteres, conserva las eficiencias
inherentes a sta y a los usuarios habituales de la aplicacin la interfaz les
resultar familiar y cmoda.
Adems, al centrarse en las tareas a realizar, el asistente puede hacer ms
productivos a los programadores. Sustituir la interfaz de usuario de una
aplicacin por una interfaz grfica es una tarea desalentadora, en la que hay
que tomar muchas decisiones. Usando el asistente, los programadores se
encuentran con una tarea ms concreta: integrar una pantalla en un programa.
Por ltimo, la salida del asistente funciona bien con las funciones de doble
interfaz de ACUCOBOL-GT. Esto facilita que una misma aplicacin pueda
contener a la vez una interfaz de usuario de caracteres y otra grfica, si eso es
lo que se necesita.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Acuthin
Acuserver
CGI
Acuthin
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Acuserver
CGI
Si usted necesita desplegar su aplicacin en el Web sin requerir ninguna
configuracin especial para el usuario final, usted puede redisear su aplicacin
de modo que tenga una interfase HTML y un programa CGI que maneje la
lgica del programa.
Esta opcin brinda amplia flexibilidad e independencia en la plataforma, sin
embargo, tambin requiere de ms trabajo.
Que es CGI?
CGI (Common Gateway Interface) es un estndar mediante el cual un servidor
Web se comunica con un programa externo. Los programas CGI (algunas
veces llamados scripts) pueden ser escritos en varios lenguajes incluyendo
COBOL.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Formas HTML
Los documentos HTML pueden incluir entry-fields y otros controles para permitir
la interaccin con el usuario.
El ejemplo a continuacin muestra algunos textos HTML con marcas (tags) para
crear un control.
Ejemplo
Ejemplo
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Usted puede incluir el completo URL dentro del atributo de accin como se
muestra a continuacin:
Ejemplo
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Ejemplo
#!/bin/sh
A_TERM=vt100
export A_TERM
echo "Content-Type: text/html"
/usr/acucobol52/bin/runcbl -f myprog.acu
Ventajas
Desventajas
Seguridad
Puesto que es posible para otros usuarios de Internet interceptar sus datos
cuando son transferidos desde el cliente al servidor, considere la posibilidad
de encriptar sus datos antes de enviarlos al servidor.
Que es necesario?
Este mtodo requiere una interfaz de usuario HTML, un runtime en el servidor
web y una conexin de red (Internet).
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.
Todos los derechos reservados Documento Confidencial, prohibida su reproduccin parcial o total Versin 1.5.