Issuu on Google+

45

Acceso a Base de Datos

Que aprenderás en el capítulo 4: •

Como manipular simultáneamente múltiples controles.

Como cambiar propiedades comunes de múltiples controles.

Como acceder a registros utilizando Acceler8DB.

Como visualizar registros de un archivo con Acceler8DB.

Como codificar la hoja F y sus líneas de continuación.

Como programar una caja de mensajes.

Que aspecto tendrá la aplicación al finalizar el capítulo 4: Al final de este capítulo, la aplicación tendrá el siguiente aspecto:


46

ASNA Visual RPG para Principiantes

Seleccionar y Modificar Controles Un control del formulario, se puede copiar, mover, borrar y cambiar el tamaño. •

Para seleccionar un control – simplemente púlsalo. El control quedará redondeado por 8 cuadrados negros. Con el control seleccionado, podrás moverlo y arrastrarlo sobre el formulario.

Para copiar un control - selecciona el control a copiar, y selecciona en el menú Edit la opción Copy.

Para borrar un control – selecciona el control a borrar, y pulsa Del.

Para cambiar el tamaño de un control – arrastra una de las esquinas negras del control en la dirección que quieras ampliarlo.

Seleccionar Múltiples Controles Puede también copiar, mover, borrar o cambiar un grupo de controles. Hay 2 maneras de seleccionar múltiples controles. 1. Pulsa uno de los controles que quieras seleccionar. Con el control seleccionado, pulsa la tecla Control, y ves pulsando cada control adicional que quieras seleccionar. 2. Pulsa la tecla de la flecha en la paleta de control, sitúa el cursor en un área del formulario y arrastra el rectángulo a través del formulario, hasta que este seleccionados todos los controles, como se muestra a continuación.


Capítulo 4

Aceso a Base de Datos

47

3. Cuando sueltes el ratón, verá que cada control tiene 8 cuadrados azules, alrededor del control. Para cancelar la selección de un control, selecciona el control otra vez, con la tecla CTL pulsada.

Para mover los controles seleccionados, sitúa la flecha sobre uno de los controles seleccionados y arrástralo hasta la nueva posición. Las cajas gris representan la nueva ubicación de cada control, cuando se suelte el ratón. Como se muestra a continuación.


48

ASNA Visual RPG para Principiantes

Vamos a continuar con nuestra aplicación. 1. Mueve todos los controles del programa, a la parte inferior del formulario, como muestra la figura anterior. 2. Añade la etiqueta lblWelcome al principio del formulario. En la propiedad Caption escribe Welcome to the Supermarket. 3. Para resaltar esta etiqueta, vamos a cambiar el tamaño del fuente a 18 y el estilo a Bold. •

Pulsa la propiedad Font en la ventana del proyecto.

Pulsa el botón

de la propiedad font.

Aparecerá la siguiente ventana de dialogo:

Después de seleccionar los nuevos valores, pulsa el botón OK. (Deberá cambiar el tamaño de la etiqueta, para poder ver la frase completa). 4. Añade 4 etiquetas más: Name lblQuantity

Caption &Quantity

lblItem

&Item

lblPrice

Price

lblAmount

Amount

(Fíjate en el ampersand de las 2 etiquetas primeras). 5. Añade 4 campos de E/S: ioQuantity, ioItem, ioPrice y ioAmount. Vamos a modificar los valores de algunas propiedades para los campos: ioQuantity, ioPrice e ioAmount. Para asignar el mismo valor para un grupo de controles, primero hay que seleccionarlas. Las propiedades de la ventana, se visualizarán y se les asignará el nuevo valor.


Capítulo 4

Aceso a Base de Datos

49

6. Cambia para los valores ioQuantity, ioPrice y ioAmount, con los s siguientes valores: Propiedad Alignment

Valor 1

Decimals

2

EditCode

5

MultiLine

True

NumericLength

7

Text

(blank it out)

7. Para ioAmount, la propiedad OutOnly a True. 8. Para ioQuantity y ioItem, la propiedad FieldAdvance a True. 9. Finalmente, al campo ioItem introduce los siguientes valores: Propiedad Alignment

Valor 1

Decimals

0

EditCode

4

MultiLine

True

NumericLength

12

Text

(blank it out)

10. Borrar el botón btnDone y la subrutina Click. Para borrar las líneas del editor, sitúa en la primera línea que quieras borrar, y con el botón pulsado del ratón, arrástralo hasta la última línea a borrar. Una vez estén todas las líneas seleccionadas, pulsa la tecla SUPR. 11. Añada un grupo de botones nuevos, btnBuy y btnNew, y cambia las siguientes propiedades. btnBuy

btnNew

Propiedad Caption

Valor &Buy Item

Default

True

Propiedad Caption

Valor &New Client

12. Inicialmente, el botón por defecto era Pay, cambia la propiedad Default Propiedad a false, el botón Buy Item es ahora el botón por defecto. Cuando hayas hecho los pasos anteriores, el aspecto será:


50

ASNA Visual RPG para Principiantes

Comportamiento del Programa El cajero va a poder entrar una cantidad de artículos para ser comprados, con el código del artículo. Tendremos un archivo con la información sobre cada cajero del supermercado. Cuando el cajero pulse sobre el botón de Compra (Buy), el programa pedirá introducir el código de artículo UPC, y se calculará la cantidad a cobrar de ese artículo, y se acumulará en el total. El cajero entrará en la cantidad que recibió y pulsará Pay para calcular el cambio a devolver al cliente. Finalmente cuando se pulse el botón New, el programa limpiará el total y estará preparado para un nuevo cliente. Antes de escribir el código del programa, veamos el diseño del archivo de artículos que vamos y el sistema de base de datos que vamos para usar. El ASNA Visual RPG ejecuta las operaciones de base de datos con los productos de ASNA: Acceler8DB y DataGate/400.


Capítulo 4

Aceso a Base de Datos

51

Acceler8DB (ADB) es un manejador de Base de Datos, muy parecido en capacidad y funcionalidad al DB2/400 de IBM. Esto proporciona los mismos tipos de operaciones para archivos de Windows utilizando PCs. Puede ejecutarse en un PC independiente o en un servidor de Windows NT.

DataGate/400 es un producto que se ejecuta en el AS/400 proporcionando acceso a archivos de DB2/400. Acceler8DB se utiliza en bases de datos de PC o en el AS/400 de forma totalmente transparente para tu programa.

Composición de un Archivo Como parte de la instalación de ASNA Visual RPG, se instala en tu PC una Base de Datos de Acceler8DB con el nombre ASNA Local DB Esta Base de Datos contiene los archivos necesarios para nuestra aplicación.

Vamos a ver la Base de Datos en Acceler8DB 1. Para ver la base de datos de Acceler8DB, selecciona Acceler8DB Database Manager en el menú Tools de Visual RPG o pulsa los botones Inicio - Programas - ASNA Product Suite - Acceler8DB 4.1 - Acceler8DB Database Manager. 2. Selecciona Open en el menú Database. 3. De la lista de nombres, selecciona ASNA Local DB y pulsa OK. Los contenidos de la base de datos serán visualizados. 4. Doble-click en la carpeta LearnAVR, selecciona el archivo ItemMast en el panel de la izquierda, y pulsa doble-click en el formato de registro del panel de la derecha, para ver el formato del registro. La pantalla será similar a la siguiente:

Fíjate que hay 4 campos en el formato: ItemUPC, ItemDesc, ItemPrice e ItemIsTaxable. La clave del archivo es ItemUPC. 5. Para ver los datos del archivo físico, utiliza el visor de archivos de Acceler8DB. Doble-click en el miembro del archivo ItemMast ( ItemMast). También puedes seleccionar Browse Data desde el menú Tool cuando el archivo esta seleccionado en el panel izquierdo.


52

ASNA Visual RPG para Principiantes

6. El Visor de Archivos de Acceler8DB automáticamente visualizará los registros de ItemMast en el orden que han estado grabados. Utiliza las barras de scroll de la ventana. Cuando haya acabado la visualización, selecciona Exit en el menú File.

Líneas de Continuación Especiales Vamos a Codificar una hoja F 1. Inserta una línea antes de la primera Hoja C, sitúa el cursor en la línea 1, columna 1. Mientras esta pulsada la tecla Ctrl , pulsa Intro. 2. Codifica la siguientes línea: FItemMastIF

E

K

DISK

Este archivo será usado sólo de lectura, descrito externamente y con claves. Nos falta más información para que el compilador sepa donde se encuentra el archivo. Con AVR se han de añadir las siguientes líneas de continuación: •

DBDESC Indica al compilador que Base de Datos va a usar para encontrar el archivo.

FILEDESC especifica el nombre del archivo, en que directorio se encuentra o en que librería en caso de tratarse un archivo de AS/400. Si falta la línea de continuación FILEDESC, se utiliza el nombre usado en la hoja F para el nombre de archivo y *LIBL para el acceso.


Capítulo 4

Aceso a Base de Datos

53

En nuestro programa, utilizaremos la base de datos ASNA Local DB y el archivo LearnAVR/ItemMast. Para solicitar la línea de continuación en el editor, introduce una ‘K’ en la primera columna de la línea. El editor mostrará una ‘F’ con el formato de la línea de continuación. 3. Introduce las líneas, como se muestra a continuación.

(Fíjate como la hoja K tiene un formato diferente que la hoja F, pero ambas tienen una F en la primera columna).

Caja de Mensajes Visual RPG tiene un código de operación llamado MSGBOX, el cual nos permite mostrar un simple mensaje en la pantalla. MSGBOX visualiza un mensaje en una caja de diálogo, y espera a que el usuario pulse el botón OK. El mensaje a visualizar se especifica en el Factor 2. La siguiente línea de código: MSGBOX 'Invalid UPC' muestra el siguiente mensaje:

y MSGBOX 'Not Enough Money Tendered' produce:


54

ASNA Visual RPG para Principiantes

Vamos a Completar el Programa 1. Introduce la codificación que se muestra en la siguiente figura. 2. Save (Salva) el programa, y Run (Ejecútalo). Si tienes algún problema al compilar o ejecutar el programa, abre el proyecto en el directorio LearnAVR/Step04 y compáralo con tú programa..

Fíjate como las hojas C principales han sido eliminadas, y como la subrutina btnPay-Click se ha modificado.


Capítulo 4

Aceso a Base de Datos

Resumen Capítulo 4 Para

Hay que

Seleccionar un control

Pulsar el control. Alrededor del control se visualizarán 8 marcas.

Copiar un control

Seleccionar Copy en el menú Edit.

Borrar un control

Pulsar la tecla Del.

Cambiar el tamaño de un control

Arrastra uno de los cuadraditos negros en la dirección que quieras cambiar el tamaño del control.

Seleccionar múltiples controles

• Pulsar un control, y con la tecla Ctrl pulsada, ir pulsando cada control adicional que se quiera seleccionar. • Pulsar la flecha de la paleta de control, situar el cursor en un área del formulario, donde no haya ningún control, y arrastra el rectángulo sobre todos los controles que quieras seleccionar.

Ver una Base de Datos

• Seleccionar Acceler8DB Database Manager en el menú Tools de Visual RPG. • Pulsar los botones de Windows Inicio – Programas - ASNA Product Suite Acceler8DB - Acceler8DB Database Manager.

Ver datos de un archivo físico

• Pulsar un archivo en Acceler8DB y pulsar un doble-click en el miembro del archivo ( ). • Pulsar un miembro del archivo y selecciona en Acceler8DB Browse Data en el menú Tool.

Incluir un archivo de B.D. en un programa

Codifica en la hoja de especificaciones, una F introduciéndola en la primera columna del código.

Incluir una línea de continuación en el código del editor

Introducir una K en la primera columna de la línea de continuación.

Ver un mensaje en una caja de dialogo.

Usa el código de operación MSGBOX , Ej. MSGBOX ‘Invalid UPC’

Tecla

55


56

ASNA Visual RPG para Principiantes

Más Información Para encontrar más información de los temas tratados en este capítulo, puede consultar: los archivos de ayuda, el capítulo correspondiente en el manual, o la ayuda en línea. Recuerde que siempre puede ponerse en contacto telefónico con CaCovai 400 (Distribuidor Exclusivo de ASNA Visual RPG en España, Andorra y Portugal) , o enviar un correo electrónico a soporte@cacovai.com

Para conocer las novedades de AVR consulte las página web: http://www.cacovai.com http://www.asna.com Archivos de Ayuda de Consulta: •

Selecting, multiple controls

MSGBOX

Continuation, lines

Spec formats, listing of

Manual/Manual en Línea: •

AVR Manual de Lenguaje de Referencia – Una lista alfabética de los controles, eventos, propiedades, códigos de operación, y métodos.

Guía de Usuario de Acceler8DB - Capítulo 2 – Trabajar con Bases de Datos.


tuto4