Vous êtes sur la page 1sur 21

Gua Rpida de Visual DataFlex V.14.

Bienvenido a la introduccin de Visual DataFlex!

Data Access Worldwide es el distribuidor de Visual DataFlex. Desde 1976 Data Access ha estado suministrando herramientas para desarrollar
aplicaciones de base de datos. En la versin en curso, por primera vez una "Edicin personal" est disponible. Esta edicin, gratis y
completamente funcional, puede ser usada para uso privado y no comercial. En este momento, se supone que ha instalado Visual DataFlex
Studio. Si no, descargue una copia de www.download.com o www.visualdataflex.com e instlelo primero.

El objetivo de esta introduccin es mostrarle los pasos involucrados en la construccin de aplicaciones de base de datos con Visual DataFlex. Lo
haremos, usando un guin de ejemplo. Primero haremos una aplicacin de Windows y a continuacin haremos la base de datos accesible va
Internet. La funcionalidad estar limitada a lo que se puede obtener con las funcionalidades de arrastrar y soltar de Visual DataFlex. Pero no
deje que esto le detenga en ir ms all en el lenguaje de programacin!

Primero presentmosle algunos conceptos.

Qu base de datos?

Visual DataFlex puede funcionar con cualquier motor de Base de Datos (DBMS) popular. Por ejemplo la combinacin del Visual DataFlex
Personal y MS SQL Express es muy potente. Visual Dataflex viene con los drivers de base de datos necesarios, pero para nuestra introduccin
nos limitaremos a la base de datos de DataFlex embebida. Ms tarde, la base de datos puede ser fcilmente transformada e incluso la
conversin de los datos existente ser completamente automtica. Las bases de datos se mantienen con Database Builder. Database Builder
permite la creacin de tablas, la definicin de reglas de negocio y la codificacin personalizada.

Espacio de trabajo (Workspace)

Antes de empezar un proyecto, debe crear un nuevo entorno en su PC, y a esto se le llama WorkSpace (espacio de trabajo). Sobre el disco se
crean varias carpetas en las que la base de datos, el cdigo fuente y dems son almacenados. En un espacio de trabajo se pueden uno o ms
proyectos. stos son los programas, o los "Ejecutables". El espacio de trabajo y la informacin de proyecto pueden ser vistos desde el Studio en
la ventana Workspace Explorer.

Orientado al objeto

Visual Dataflex es un lenguaje de programacin orientado al objeto. Esto quiere decir que ya hay una clase definida para todos componentes
necesitados a menudo. A decir verdad esta clase es la definicin de la apariencia y funcionalidad de ese componente y lo qu har
exactamente, una vez es instanciado como un objeto en un programa escrito. La ventaja es que muchos detalles tcnicos estn predefinidos
(pero son modificables) para puede concentrarse en la verdadera funcionalidad de la aplicacin que quiere desarrollar.

Diccionario de datos

Al introducir datos queremos que la informacin guardada en la base de datos sea lo ms exacta y consistente posible. Los datos introducidos
tienen que ser validados antes de grabar los registros. Un ejemplo es que una Provincia o Estado deba estar en maysculas. O un cliente no
pueda pedir ms que el crdito que le ha sido asignado. El trmino que se utiliza para a estas validaciones es "Reglas de negocio" (Business
Rules). Tiene sentido guardar todas estas reglas en un repositorio central, al que llamamos diccionarios de datos (Data Dictionary). La ventaja es
que las reglas sern aplicadas en todas las aplicaciones que usan los diccionarios de datos y que cuando surja un cambio en esas reglas,
solamente tiene que tiene que ser programadas en un sitio. Tambin quiere decir que al migrar la aplicacin a otra plataforma de base de
datos, las mismas reglas son pasadas automticamente al mismo tiempo. La utilidad Data Dictionary Builder es parte del Database Builder. Las
ltimas cuatro pestaas se usan para crear y mantener Diccionarios de Datos.

1
Gua Rpida de Visual DataFlex V.14.0

Guin de nuestro ejemplo: Media

Desarrollaremos una pequea aplicacin de base de datos que llamaremos Media. Crearemos una tabla Media, en la que almacenamos todos
nuestros CD, DVD, libros etc... Despus, haremos una tabla de personas para almacenar los nombres de amigos y parientes. Estas dos tablas
estarn relacionadas entre s, de forma que pueda hacer un seguimiento de la localizacin de cada Media: lo tienes t o se lo has prestado a
un amigo? En pocas palabras, haremos lo siguiente:

 Cree la tabla de personas People. Necesita una clave nica y columnas para almacenar la direccin, telfono, la fecha de nacimiento, etc.
de una persona.

 En Database Builder creamos la tabla Media. Le daremos una clave nica y algunas columnas para guardar autor (Artista/Escritor), tipo y
tal vez la fecha compra y el precio. En la tabla tambin guardamos PeopleID, para poder relacionar con la tabla People.

 En VDF Studio haremos una vista de personas (Person View) usando el asistente Data Entry Wizard para introducir datos en la tabla
People. Una Vista (View) en Visual DataFlex es una ventana, un dilogo de pantalla para introducir datos.

 A mano, usando arrastrar y soltar crearemos una vista para introducir datos en la tabla Media. Compilaremos el programa y evaluaremos
nuestros primeros resultados.

 A continuacin, incorporaremos algunas caractersticas ms avanzadas:

o Asegurarnos que las claves (IDs) de Media y People son nmeros secuenciales generados automticamente.

o Creacin de listas de seleccin para encontrar de una forma fcil y rpida registros en Media y People.

o Asegurar un formato consistente en la introduccin de datos son en la columna Media.Type. Usaremos un combo-box (lista
desplegable) asegurndonos de esta forma que el usuario siempre introduce el dato de Media.Type de una forma consistente.

o Permitir guardar una imagen asociada con registros de Media.

o Hacer la base de datos accesible va Internet!

2
Gua Rpida de Visual DataFlex V.14.0

Primeros pasos!

Arranque Visual DataFlex Studio. Empezaremos por crear un nuevo espacio de trabajo. En el men, bajo File escogemos New Workspace
(nuevo espacio de trabajo).... Dle una denominacin - en nuestro ejemplo lo almacenaremos bajo C:\Project\Media

Acepte todos los valores por defecto (Next, Next) / (Siguiente, Siguiente,) y cierre el asistente. Al final, el espacio de trabajo se parecer a
esto:

3
Gua Rpida de Visual DataFlex V.14.0

Puesto que aceptamos todos los valores por defecto, el asistente


automticamente inicia el Database Builder y podemos crear la tabla People
(Personas).

Nota: en la parte superior derecha se puede ver un icono: este indica que la tabla (fsicamente) puede ser modificada. En la barra de titulo
dice "Exclusive"(Exclusivo): las tablas no pueden ser accedidas o modificadas por otra persona, hasta que la tabla sea liberada.

Cree un de campo clave PeopleID. Cada registro de People puede ser identificado por esta
columna. Cree tambin las dems columnas y experimente aadiendo ms columnas.

Tal vez le gustara almacenar la talla de zapatos, hobbies u otra direccin de correo electrnico?

Para buscar registros, crearemos algunos ndices. Supongamos que queremos permitir buscar por Apellidos, Nombre y Cdigo Postal
(LastName, FirstName, Zip). Tenemos que crear un ndice para cada uno de ellos y cada ndice tiene que ser nico en s. Esta imagen muestra
que Index2 consta de dos segmentos:

LastName y PeopleID. El ltimo segmento (PeopleID ) hace el ndice nico. Fijese que la casilla de verificacin Ignore Case est marcada. Esto
quiere decir que cuando un usuario busca "Fernndez" el orden en que es encontrado no es dependiente sobre si est escrito "FERNANDEZ",
"fernndez " o " Fernndez ".

4
Gua Rpida de Visual DataFlex V.14.0

Ahora vamos a la quinta pestaa, Column Settings (Ajustes de Columna), para crear algunas validaciones simples en el DataDictionary.

Si seleccionamos la columna PeopleID, podemos configurar que sea un campo clave (Key Field). Esto quiere decir que despus de que un
registro sea grabado, este valor no puede ser modificado. Eso es lo que queremos para que la integridad referencial est asegurada. Creamos
algunas reglas de negocio ms (Business Rules):

 Asegrese de que la columna LastName se introduzca obligatoriamente (Required)

 Asegrese de que el cdigo postal (Zip) y la ciudad (City) sean guardados siempre en mayscula (Capslock)

En el men, File (archivo), escoja Save Table para almacenar la tabla: seguido de OK dos veces y cierre
DataBase Builder para regresar a Studio.

En Studio en el men File, New, Project creamos un proyecto Windows


llamado Media. Para empezar el Studio crea el cdigo automticamente.
En este momento no necesitamos hacer nada con l. Ahora podemos
crear una vista (View) de entrada de datos y lo haremos con el asistente
de Data Entry Wizard.

Haga clic de nuevo en File, New y ahora


en View / Report.

Como puede ver, hay varios asistentes


disponibles.

5
Gua Rpida de Visual DataFlex V.14.0

Elija en este caso el icono de Data Entry Wizard (Asistente de introduccion de datos) e introduzca los siguientes datos:

1. Al objeto se le llama oPeople, el nombre de fichero es People y a la descripcin se le puede introducir People o Personas.

2. Cree una pantalla de introduccin de datos simple. Escoja Simple Form Entry View (Vista Simple de introduccin de datos)

3. Escoja la tabla People (de momento la nica tabla disponible)

4. Ponga todas las columnas sobre la vista.

Aadiendo dos pestaas, el asistente le permite crear una mejor visin general de los datos. La pantalla podra parecerse a esto:

Acepte todos los valores por defecto y despus de hacer clic en Finish vuelva al Studio. En Studio, vea la Vista que ha creado el asistente. Esta
puede ser fcilmente modificada arrastrando componentes con el ratn, cambiando el tamao, etc. En este momento le aconsejamos que
solamente cambie de nombre a las pestaas. En el men View, abra Object Properties y haga clic con el ratn en algn sitio de la pestaa ahora
etiquetada como Tab Page label. En la lista de las propiedades del objeto (Object Properties), encuentre la propiedad Label (etiqueta) y
cmbielo a Address (Direccin). Cambie la etiqueta de la otra pestaa a Other (Otros) , o a lo que encuentre apropiado.

Nota: si no puede encontrar Label en la lista de las propiedades de objeto, es porque ha hecho clic con el ratn en la cabecera de la pestaa o
en algn otro sitio. Asegrese de hacer clic en la pgina (cuerpo) de la pestaa e intntelo de nuevo.

Ya est preparado para probar su primera aplicacin de Visual Dataflex. Para probarla primero tiene que ser compilada; para poder ejecutar la
aplicacin el compilador har un ejecutable (un .exe) del programa fuente. El compilador se puede arrancar de varias maneras:

1. Pulsando la tecla F8 para compilar

2. Pulsando la tecla F5 para compilar y ejecutar

3. En la opcin del men desplegable Project y seleccione Compile

4. En la barra de herramientas haciendo clic en el icono con forma de un pequeo tringulo azul

6
Gua Rpida de Visual DataFlex V.14.0

Cuando la compilacin finalice, la aplicacin arranca y podr introducir algunos registros. Fjese en lo siguiente:

 Empiece con el primer registro usando PeopleID = "1". El siguiente es "2", etctera (ms sobre esto, despus).

 Grabe registros pulsando la tecla F2, o haga clic en el icono.

 Puede limpiar la pantalla pulsando la tecla F5 (el registro no ser eliminado).

 En cuanto haya creado varios registros les puede echar un vistazo usando las teclas F7 (registro anterior) y F8 (registro siguiente).

 Esto funcionar nicamente si est el cursor situado el algunas de las columnas de PeopleID, LastName, FirstName y City. Y sa es la
lgica: stas fueron las columnas sobre las que definimos ndices.

 Introduzca parcialmente un nombre en LastName y pulse la tecla F9. Este buscar un registro (igual) basado en la cadena (parcial)
introducida. Prubelo!

Cierre la aplicacin y vuelva al Studio.

Ahora vamos a crear la tabla para Media y crear la vista necesaria para introducir datos. Bajo el men Tools (herramientas), elija DataBase
Builder y cree una nueva tabla llamada Media. Esta tabla tiene las siguientes columnas:

Nota:

 En la columna Type (tipo) queremos guardar la pista si es un CD, DVD, LIBRO etc..

 La columna purchasedate (fechacompra) es del tipo Date (fecha)

 El Price (precio) es numrico con formato 4,2. Esto indica que el precio puede tener 4 dgitos antes del separador decimal (coma) y 2
despus.

 La columna PeopleID se usar para fundar la relacin con la tabla de People. Por lo tanto aseguraremos que es del mismo tipo (numrico)
y del mismo tamao (6 dgitos) que la columna en la otra tabla.

7
Gua Rpida de Visual DataFlex V.14.0

Teclas e ndices

MediaID ser el campo clave. Adems de eso, cree ndices basados en Title, Author y Type (ttulo, escritor y tipo). Para
hacerlos nicos, aadimos MediaID a cada uno. Tambin decidimos activar la opcin Case Insensitive (sin distincin de
maysculas).

Nota: hasta ahora hemos explicado que un ndice est ah para rpidamente y fcilmente encontrar un registro. Los
ndices tienen otra funcin importante; la ordenacin rpida en informes. Si llegar a necesitar ms ndices
posteriormente no sera difcil crearlos.

Creemos la relacin entre las dos tablas. Escoja la pestaa Relationships (relaciones) y escoja el segundo icono: Add a relationship (aadir una
relacin). En las columnas From Table (de Tabla) y To Table (a Tabla) y las columnas subyacentes, puede relacionar la tabla Media con People,
usando las columnas PeopleID en ambas tablas. Debera parecerse a esto:

Finalmente, vamos a aadir algunas Reglas de Negocio ms (Business Rules) en el diccionario de datos. La columna MediaID va a ser un campo
clave (Key Field) y la columna Title va a ser obligatoria (Required) Los valores para Type deben ser siempre introducidos en maysculas, pero
aadamos algo adicional. Queremos que el usuario utilice una forma coherente de asignacin de nombres en Type. Si es un CD - Rom, debe ser
introducido como "CD". Si es un libro, debe ser siempre introducido como "BOOK". Si esto no fuera as ser difcil hacer una seleccin ("Mostrar
todos libros?") al hacer un informe. Vamos a hacer una validacin (Validate) simple y esttica (Static) sobre la columna Type que se parecer a
esto:

8
Gua Rpida de Visual DataFlex V.14.0

Sintase libre en aadir ms Tipos. En este caso la entrada es validada con estos valores y no es posible dejar la columna vaca (la opcin Blanks
no est marcada).

Nota: esto no tiene importancia en este momento, pero eche un vistazo a la pgina de la pestaa Structures (Estructuras) donde puede ver que
la tabla de People ha sido aadida a la estructura con Media. sta es una sugerencia de que las validaciones no se aplican solamente a tablas
individuales. Tambin las tablas relacionadas son validadas.

Grabe la definicin de la tabla Media y cierre DataBase Builder para volver a Studio. Esta vez no vamos a usar el asistente para crear una vista
de introduccin de datos. En el men File elija otra vez New, View / Report pero ahora haga clic sobre el segundo icono: Data Entry View (Vista
Introduccin Datos).

El objeto lo vamos a llamar oMedia y el fichero ser Media.Vw (nombre del fichero en el disco)

Nota: en la pantalla ya se puede comprobar que el componente ha sido aadido al entorno del proyecto ha sido puesto en el men de la
aplicacin automticamente.

Un nuevo concepto: Data Awareness (Conocimiento de Datos)

Antes de que continuemos, expliquemos un nuevo concepto: Data Awareness. Visual DataFlex es una herramienta con la que hacer
aplicaciones de base de datos. Despus del primer ejemplo vimos que necesitbamos de un View (vista) para introducir informacin en la base
de datos. Los componentes en la interfaz son aparentemente acoplados a las columnas subyacentes en las tablas. Es correcto, eso es
exactamente lo que ocurri. Pero a decir verdad hay una capa adicional en medio; los diccionarios de datos (Data Dictionaries). Visual DataFlex
usa y tiene diferentes clases de componentes. Una diferencia importante es si los componentes son "Data-aware", o no. Si lo son, solamente
tiene que asignar objetos de diccionario de datos (DDO's) hacia l, de forma que tenga los datos (tablas) deseadas a su disposicin. Si echamos
un vistazo al cdigo fuente podramos reconocer fcilmente los componentes Data Aware por el nombre: empiezan con "Db". Por ejemplo
dbView, dbForm y dbGrid.

Continuemos. Ahora mismo usted est mirando un dbView vaco en Studio. Lo primero que vamos a hacer es determinar qu tablas queremos
mantener en esta vista. En el men View, abra DDO Explorer (Explorador de Objetos del Diccionario de Datos). En el DDO Explorer an no
tenemos ninguna tabla seleccionada. Haga clic con el botn derecho del ratn sobre el nodo del DDO vaco para aadir DDOs. Escoja la tabla
Media. Se le preguntar si esta ser el MainFile (tabla principal). La respuesta es s: en general, esto quiere decir que si un registro tiene que ser
salvado o eliminado, supone que es un registro de Media.

Nota: puesto que habamos definido una relacin en DataBase Builder desde la tabla Media a la tabla People, esta tambin es puesta en la lista.
Y eso es correcto, queremos estar al tanto de a quin prestamos nuestro Media (CD, DVD, libros, etc.)

9
Gua Rpida de Visual DataFlex V.14.0

En el selector de columna de DDO (DDO Column Selector) seleccione


todas columnas de Media (marque todas casillas de verificacin) y
arrstrelos a la Vista. De forma semejante, arrastre y suelte las
columnas PeopleID y LastName de People en la vista. Retire el
prompt-text LastName en las propiedades de objeto y termine la vista
con el propsito de que se parezca a la imagen anterior.

A la izquierda puede ver a lo que se parece una vez que se


compila y ejecuta (F5).

Numere MediaID empezando en "1" y escoja a la persona relacionada con cada uno. Despus de aadir unos cuantos, use las teclas F7 y F8
para echar un vistazo a los datos.

Hagamos esta aplicacin un poco ms amigable.

El orden en la que los datos son introducidos

Si usted ha cambiado los puestos de las columnas PersonID / LastName y Comment, como en el ejemplo, notar al introducir los datos, que el
orden no se ha cambiado en consecuencia. Podemos cambiar la posicin en la vista (View), pero al ejecutar el programa, no cambia
automticamente el orden. Podemos corregir esto fcilmente: en el men View, abra Code Explorer (Explorador de cdigo). En el objeto
oMedia seleccione la columna oMedia_Comment y haga clic en l con el botn derecho del ratn. Cambie de posicion la columna dos puestos
haca abajo (escoger "Move Down o Alt+FlechaAbajo). Con esto ya est.

Genere campos clave automticamente

Tanto para la tabla People como para la table Media hemos definido claves numricas nicas (es decir ese nmero identifica a un solo registro
de esa tabla). A decir verdad este nmero no es relevante para el usuario y es problemtico recordar al crear un nuevo registro cual fue el
ultimo numero que utilizamos. Vamos a solucionar esto en dos pasos:

1. Cree una tabla adicional. En esta tabla guardaremos siempre solamente un registro (1). A esto se le llama tabla sistema. En la tabla
solamente definimos dos columnas: LastPeople y LastMedia. Estas columnas son numricas, 6 dgitos.

2. Los diccionarios de datos (Data Dictionaries) de Media y People tendrn que encargarse de serializar estos identificadores de registro (IDs)
de forma automtica, usando la tabla sistema.

10
Gua Rpida de Visual DataFlex V.14.0

La tabla sistema se parece a esto:

Asegurarse de que sea una tabla sistema marcando la casilla de verificacin donde dice System file (Fichero sistema).

Queremos que los diccionarios de datos (Data Dictionaries) incrementen los identificadores de registro (ID) automticamente cada vez que se
graba un nuevo registro. Abra la tabla People en el DataBase Builder.

Seleccione la columna PeopleID, vaya a la pestaa Column Settings y escoja la pestaa Other. Haga clic en el botn Auto Increment, seleccione
la tabla SystemFile y escoja la columna LastPeople. Haga clic en OK y guarde el cambio.

11
Gua Rpida de Visual DataFlex V.14.0

Haga lo mismo con Media. En Auto Increment el valor se guarda en LasteMedia en la tabla sistema. Cierre DataBase Builder y regrese al Studio.

Hasta aqu todo bien. Usted ya ha creado algunos registros con identificacin 1, 2, 3, . La primera vez que usemos nuestra funcin de
incremento automatizada tratar de guardar un registro con ID= "1". Y eso no funcionar, porque ese valor ya existe; puesto que es un campo
clave debe ser nico! Nuestra nueva aplicacin no puede grabar ningn registro nuevo. Podemos eliminar nuestros registros existentes, pero
hay otra manera de solucionar esto. Inicie otra herramienta muy til de Studio: el Database Explorer (Explorador de Base de Datos)

El Database Explorer (a menudo llamado DBExplorer) provee una forma rpida de editar tablas de datos directamente. Es una herramienta
tpica para desarrolladores, sea cuidadoso puesto que, cuando la use, ignora cualquier tipo de validacin que haya construido en sus
aplicaciones!

Arranque Database Explorer desde el men Tools y a continuacin abra la tabla SystemFile haciendo click sobre ella en el panel de la izquierda.

Lo primero que vamos a hacer es habilitarlo para poder cambiar datos. Para ello haga clic en el icono pequeo en la parte inferior
izquierda, de forma en que el icono cambia a

Supongamos que no haya introducido ms de 10 registros en cada una de las tablas; por lo tanto debe poner 10 en las columnas de LastPeople
y LastMedia (el prximo registro tendr un ID igual a 11.)

Antes de que compilar y probar, hagamos dos mejoras ms:

Abra Media en Database Builder. Para la columna Type, en Column Settings vaya a la pestaa Appearance y seleccione dbComboForm. Cada vez
que usemos esta columna queremos que el valor predeterminado sea un Combobox. En la pestaa Options ponga la validacin de la columna
Type a CapsLock (bloqueo maysculas) y para la columna MediaID a Autofind.

Ahora vamos a programar un poco: en Studio en el diseo, haga doble clic en la columna Type. El Studio le llevar automticamente al sitio
donde est el cdigo de programacin para el dbForm de la columna de Media.Type Puede ver uno lnea de cdigo que dice:

Object oMedia_Type is a dbForm

Es un dbForm, pero queremos que sea un objeto de la clase dbComboForm. Cambie el cdigo a:

Object oMedia_Type is a dbComboForm

Ahora pulse la tecla F7. En Studio, la tecla F7 alterna entre el diseo y el cdigo fuente, y ya puede ver que el dbForm ha sido transformado en
un combo box (lista desplegable). Ahora intente hacerla un poco ms ancha. Ya estamos preparados para compilar y probar: para ello pulse la
tecla F5. Ahora ya no es necesario introducir manualmente cdigos de identificacin (PeopleID y MediaID).

12
Gua Rpida de Visual DataFlex V.14.0

Hemos hecho las siguientes mejoras:

 La identificacin (IDs) para las tablas People y Media son automticamente serializadas.

 Introduzca un ID de Media de un registro que ya exista y pulse la tecla tabuladora; automticamente encontrar el registro asociado a ese
ID; esto lo hace Autofind. Como ve tienen sentido hacer el mismo cambio para la columna ID de la tabla People. Intntelo ms tarde.

 Ahora la introduccin de datos para Media.Type tiene mucho ms sentido. Siempre en mayscula, en un combobox, que es el cajetin
visual apropiado para la introduccin de este tipo el datos.

 En Database Builder fijando la Appearance (apariencia) de Media.Type a Combobox, esta columna tendr siempre esa apariencia.

Todava podemos mejorar la aplicacin: si hay solamente algunos registros en las tablas, no es un problema encontrar el registro que buscamos
usando las teclas F7 y F8. Pero cuando las tablas crecen, debemos poder ofrecer una manera mejor de encontrar los registros que buscamos,
as que vamos a aadir listas pop-up o Selection Lists (Listas de Seleccin).

En Studio en el men File, escogemos New, Dialog / Lookup y arrancamos el Lookup Wizard (Asistente de Visualizadores o Asistente de
Selection Lists). Hagamos primero una Listas de Seleccin para People, en la que ponemos LastName, FirstName y Phonenumber. Aceptamos
todos los valores por defecto y compilamos el programa otra vez (F5). Automticamente se han aadido botones de indicador de selector a
LastName y Firstname. Haciendo clic en ellos o pulsando F4 se muestra la Lista de Seleccin automticamente, aadiendo la siguiente
funcionalidad estndar:

 Dependiendo de la columna en la que el cursor est, la orden de clasificacin de la lista cambia en consecuencia

 Simplemente empiece a teclear el LastName deseado y se le mostrar otro pop-up. Pulsando Intro le llevar al registro ms cercano.
Puesto que usamos ndices, encontrar registros en un conjunto de slo algunos pocos ser tan rpido como cuando buscamos registros en
un conjunto de unos cuantos millones.

Ahora debe ser fcil crear a un SelectionList para la tabla Media. Tal vez quiere probar otra manera en vez de usar el asistente, por ejemplo
arrastrando y soltando (drag & drop). En tal caso, he aqu algunos consejos: escoja File, New,Dialog / Lookup: Table Lookup. Use DDO Selector
(selector de DDO) para seleccionar las
tablas y las columnas correctas. Para
cambiar los detalles en la nueva Lista de
Seleccin, mire en Object Properties bajo
la pestaa Column Properties.

13
Gua Rpida de Visual DataFlex V.14.0

Hagamos algo un poco ms avanzado. No es tan


difcil crear una Vista (View) donde un usuario
pueda navegar por la tabla People y en una
parrilla debajo mostrar todos los registros de
Media que se ha prestado a cada persona. El
componente usado aqu se llama dbGrid, y se
puede encontrar en Data Controls (controles de
datos) en la Class Palette (paleta de clases).
Podramos hacer una vista (view) similar a la
imagen de la derecha.

As que, para echar un vistazo a las personas y mostrar solamente los registros de Media apropiados, necesitamos una restriccin (constrain),
un filtro.

He aqu cmo puede hacer esto:

1. Cree una nueva Vista vaca

2. Use el DDO Explorer para seleccionar las tablas Media y People

3. Arrastre FirstName y LastName sobre la vista

4. Use las propiedades de objeto para cambiar los textos de FirstName y LastName

5. Retire el botn de lista de seleccin de la columna de LastName (encuentre ePrompt_Button_Mode en la lista de las propiedades de
objeto y pngalo a PBPromptOff).

6. Verifique en el DDO Explorer si se ha fijado una restriccin (Constrain) correcta a la tabla People

Si este no fuera el caso, haga clic con el botn derecho del ratn en la tabla
Media en el DDO Explorer y elija Add/Change Constraint (Aadir/Cambiar
restricciones): aada un constraint (restriccin) sobre People.

14
Gua Rpida de Visual DataFlex V.14.0

Fotografas

Por ltimo vamos a realzar la aplicacin aadiendo una imagen. Digamos que queremos guardar una imagen con cada registro de Media. En
primer lugar, tenemos que modificar la tabla:

1. Abra la tabla media en in Database Builder y aada una columna llamada Picture.

2. Es del tipo Text (texto) y 128 de longitud. En realidad la imagen no ser guardada aqu, pero si una referencia haca su ubicacin (carpeta)
y nombre del archivo Bitmap (bmp).

3. En el Studio abra el View de Media otra vez y hgalo algo ms grande.

4. En la paleta de clases (Class Palette) en DataControls encuentre dbBitmap, arrastre y dejelo caer sobre la vista Media.

5. En la pestaa Data Bindings de las propiedades de objeto, al Data Source (Entry Item) asgnele la columna Media.Picture.

6. Compile y ejecute la aplicacin (F5).

En la aplicacin, busque un registro en la tabla Media y haga doble clic en el rea donde el mapa de bits debe ser almacenado. Se abrir un
dilogo de archivo comn: encuentre la imagen que usted quiere guardar y grabe el registro.

Informes y listas.

Una de las maneras ms potentes de crear informes e integrarlos en Visual DataFlex es usando Crystal Reports y el integrador de Crystal
Reports (Crystal Reports Integrator). ste es un asistente que integra automticamente un informe en su aplicacin de Windows. El usuario
podr arrancar el informe desde el men, seleccionar el orden de clasificacin de los datos (ndices), el dispositivo de salida, o incluso criterios
de seleccin. Es simple: primero cree un informe con Crystal Reports, a continuacin inicie el asistente y siga las instrucciones.

En caso de que no tenga una licencia de Crystal Reports, por favor contacte con el Soporte de Visual Dataflex en soporte@visualdataflex.es para
recibir una licencia de evaluacin, o comprar una licencia.

Otra va para generar informes es usando Winprint. Un informe Winprint es completamente programable en Visual DataFlex. Afortunadamente
hay una manera de crear informes Winprint usando un asistente. Tardar solamente unos segundos en confeccionar un informe que liste todos
los registros de Media, con una rotura por autores (Authors):

15
Gua Rpida de Visual DataFlex V.14.0

Llevemos nuestra base de datos a Internet!

En Visual DataFlex es posible compartir los mismos datos y las Reglas de Negocio entre Windows y las aplicaciones Web (y Servicios Web -Web
Services-, pero eso va ms alla de esta primera introduccin.)

Primero presentemos el concepto general.

Para ejecutar aplicaciones de Internet, Visual DataFlex usa un servidor de aplicaciones Web (llamado WebApp Server). ste es el software que
funciona en el Servidor de Informacin para Internet de Microsoft (el IIS). Asegrese de que el IIS funcione en su PC. Va ms all del alcance de
esta introduccin el explicar en detalle todos estos conceptos, pero esto es lo que ocurrir:

Una aplicacin Web de Visual Dataflex est lista y esperando en el servidor. En cuanto una solicitud de HTTP (Internet) llega al servidor, la
aplicacin arranca y sirve la solicitud. En esta aplicacin Web, se programan Web Business Objects (WBO). Estos componentes son comparables
a las Vistas (Views) en los Aplicaciones de Windows y proveen el enlace entre la interfaz, la base de datos y la lgica del negocio (diccionarios de
datos). El WBO encontrar los datos correctos y los validar, se da forma al interfaz (HTML) y es enviado al navegador del cliente. El navegador
interpreta el cdigo HTML y presenta la aplicacin en el equipo del cliente. De esta manera puede desarrollar rpidamente potentes
aplicaciones de base de datos para Internet.

Un ejemplo

Lo anterior puede parecer un poco complicado. Veamos qu fcil es llevar su datos a la Web. Para hacer una muestra rpida vamos a usar los
asistentes. Empezamos creando un nuevo proyecto: File, New, Project: Web Project. Lo llamaremos Media otra vez fijndonos que el cdigo
fuente se llama WebApp.src. Va File, New, Web
Object arrancamos el WBO Report Wizard
(asistente de informe de WBO). Hagamos un listado
de todos los registros de Media y llamemos
oMediaReport al objeto. En el listado deseamos ver
Media.Title, Author y Type. De la tabla People
escogemos FirstName y LastName. Aceptamos
todos los valores por defecto, hasta que llegamos la
pantalla llamada Drill-down. He aqu el lo que
queremos hacer: si arrancamos el informe,
queremos poder hacer clic en un elemento de una
lnea de Media y hacer un drildown a una pantalla
en la que podemos mantener los datos de ese
elemento de Media. En este momento solamente
podemos suponer que tenemos esa pantalla y que
se llama MediaWebEntry por lo que usaremos ese
nombre:

16
Gua Rpida de Visual DataFlex V.14.0

Por lo tanto si ms tarde hacemos clic en el listado de Ttulos de Media, haremos un drill-down a la pgina de MyWebEntry para mantener los
datos. Desde aqu en adelante aceptamos todos los valores por defecto, compilamos y arrancamos la aplicacin (F5).

El navegador arrancar automticamente y podemos pedir el informe desde el men. Podra parecerse a esto:

Si en este momento hacemos clic sobre un ttulo, ocurrir un error. Esto es debido a que esa pgina no existe an.

Para crearla usamos File, New, Web Object y el WBO Entry Wizard (asistente de entrada de WBO). Aceptamos todos los valores por defecto
hasta que tengamos que dar un nombre al objeto. Asegrese de que el nombre del fichero sea exactamente el mismo que usamos en
MediaReport y que es: MediaWebEntry. Seleccionamos la tabla Media, seleccionamos que todas columnas se vean y a continuacin
seleccionamos que de la Tabla People se vean FirstName y LastName.

En la pantalla llamada Buttons (botones) seleccionamos para llamar al informe creado anteriormente y dejarlo que enlace de vuelta a
MediaReport.ASP. Acepte todos los valores por defecto, cierre el asistente, compile y corra la aplicacin (F5).

17
Gua Rpida de Visual DataFlex V.14.0

Haga clic en el botn llamado List para navegar al informe. Haga clic sobre un ttulo en el informe y le llevar de vuelta a la pantalla de
mantenimiento.

Si su ISP permite que tenga una direccin IP fija, puede ejecutar esta aplicacin en Internet. Sea consciente sin embargo que, alguien que
encuentra la URL que lleva en su servidor, podr ver e incluso modificar sus datos.

Visual Dataflex en un futuro prximo....

En la zona del desarrollo de Windows con Visual DataFlex, est programada una excitante extensin sobre la biblioteca de interfaz. Esto
permitir que suministre sus aplicaciones con la interfaz de usuario ms sofisticada. Ya es posible hoy en da, pero la prximo versin de Studio
proveer estas capacidad de una forma estndar. Sus aplicaciones se podrn parecer a esto:

18
Gua Rpida de Visual DataFlex V.14.0

Tambin en el rea desarrollo de Web con Visual DataFlex, est en marcha el trabajo para soportar las ms recientes tcnicas para mejorar la
interfaz de usuario. Los trminos a menudo usados para estos modernos interfaces de Web son:

 El JavaScript asncrono y XML (Asynchronous JavaScript And XML -AJAX)

 Aplicaciones de Internet abundantes (Rich Internet Applications - RIA)

 Web 2.0

En esencia se trata de proveer de una interfaz visualmente rica a las aplicaciones web. Un ejemplo de tal interfaz se puede encontrar en
Electos, un sistema de administracin de contenido que viene con Visual DataFlex Studio. En el futuro, aplicaciones Web desarrolladas con
Visual DataFlex se parecern a esto:

19
Gua Rpida de Visual DataFlex V.14.0

Puede descargarse la biblioteca de libreras AJAX para Studio desde

www.dataaccess.nl/ajax

20
Gua Rpida de Visual DataFlex V.14.0

Empiece ya!

Esto concluye esta gua de evaluacin para Visual DataFlex. Si no ha lo hecho an, eche un vistazo a Electos un sistema de administracin de
contenidos de pginas Web que viene con Visual DataFlex.

Para aprender ms sobre Visual DataFlex, visite los siguientes sitios con contenido sobre el producto, su fabricante y sus representantes en la
Pennsula Ibrica:

 www.visualdataflex.com

 www.dataaccess.com

 www.visualdataflex.es

O sitios relacionados:

 news://news.dataaccess.com/visual-dataflex (Grupo de noticias)

 www.dynami-cai.es (herramienta de Business Intelligence)

Si la documentacin, archivos de ayuda o el grupo de noticias no dan respuestas a sus dudas pida asistencia va email a
soporte@visualdataflex.es

Esperamos poderle ayudar en Visual DataFlex en un futuro prximo!

21

Vous aimerez peut-être aussi