Documentos de Académico
Documentos de Profesional
Documentos de Cultura
GUIA DE LABORATORIO N 6
Controles y Datos en VFP (Objetos, propiedades y eventos)
Objetivo:
Utilizar controles que permitan interactuar con los datos de una base de datos.
Conocer y configurar el control cuadricula.
Conocer el entorno de datos en un formulario.
Consideraciones
- Debe de continuar trabajando dentro de su proyecto PermisosUes.
Ejemplo No. 1
Crear un formulario que muestre los datos de los empleados y permita el
desplazamiento entre sus registros:
1
Controles del formulario
Lista de Controles:
Objeto Tipo Cantidad Descripcin
Formulario Form 1 Ventana que contendr
controles
Etiqueta Label 1 Mostrar objetivo del Formulario.
Cuadricula Grid 1 Muestra los datos de
empleados.
Botones de comando Command 5 Para desplazar a travs de los
registros.
Aplique las propiedades a cada uno de los controles segn figura de pagina 1.
2
Cuadricula Grid1:
Se muestra la ventana Grid Builder, con las fichas para personalizar su cuadricula:
Grid Items
- Nit
- Apellidos.
- Nombres.
- Genero
Estilo:
- Ledger
3
Distribucin:
Modificar:
- Ttulos de las
Columnas.
- Ancho de las
columnas.
Relaciones:
4
Entorno de datos:
Para poder visualizar las tablas vinculadas a los controles realice los siguientes
pasos:
1) Seleccione el formulario.
2) Clic sobre el rea del formulario.
3) En el men desplegado seleccione la opcin entorno de datos.
4) Verifique que se encuentre la tabla Empleado
Entorno de datos:
Entorno de Datos
Vinculados
5
Las tablas tambin tienen propiedades, como por ejemplo Order que permite
ordenar la tabla en funcin de un ndice.
Pasos para mostrar las propiedades de una tabla:
1) Seleccione la tabla Empleado en la ventana de entorno de datos.
2) Clic sobre el rea de la tabla.
3) En el men desplegado seleccione la opcin propiedades.
6
Programacin de eventos
Boton titulado Inicio:
7
Boton titulado Ultimo:
Ejecute el formulario
8
Ejemplo No. 2
Crear un formulario que permita adicionar nicamente registros a la tabla Deptos,
la llave primaria se creara automticamente (08, 09, 10, 11, segn sea el siguiente
numero disponible y no sea digitado por el usuario), el usuario nicamente debe
digitar la descripcin y no estar obligado a recordar el codigo.
Estructura basica:
Campo Tipo de Dato Ancho Descripcin
Idtabla Carcter 20 Nombre de la tabla.
Ultimo Numerico 10, 0 Ultimo numero asignado.
Detabla Carcter 40 Descripcin de la tabla.
Estructura en VFP:
Indice:
9
Registros de la tabla contador
Para cada tabla que aparece en la siguiente figura, debe verificar el numero que
tiene el ultimo registro y guardarlo en el campo Ultimo, segn la tabla que
corresponda. Ejemplo Deptos tiene 10 registros y el ultimo es 10.
Creacin de Formulario:
10
Descripcin de su funcionamiento:
Al seleccionar el botn Agregar, aparece la caja de texto para que el usuario
digite el nombre de la Unidad (este esta oculto), el texto de los botones cambian a
Guardar y Cancelar respectivamente.
Al seleccionar el botn Guardar se verifica el ultimo numero en la tabla contador
de la tabla correspondiente y se incrementa en uno, asignando este a la tabla
indicada y remplazando este nuevo numero en tabla contador.
Listado de Controles
Objeto Tipo Cantidad Descripcin
Tabla Cursor 2 Deptos y Contador
Formulario Form 1 Ventana que contendr controles
Etiqueta Label 2 Mostrar objetivo del Formulario.
Cuadricula Grid 1 Muestra las Unidades y descripcin.
Caja de texto TextBox 1 Para capturar nombre de la Unidad.
Botones de comando Command 2 Para agregar/guardar y
cancelar/cerrar.
Vincular la cuadricula a la
tabla Deptos por medio del
asistente
(ver ejemplo 1)
Nuevas propiedades:
Objeto: Etiqueta 2
Propiedad Valor Comentario
Name Label2 Nombre nico del objeto.
Caption Descripcin: Texto a mostrar junto a la Caja de texto.
Visible .F. No se muestra el control en tiempo de
ejecucin
11
Format ! Caracteres alfabticos en maysculas.
Visible .F. No se muestra el control en tiempo de
ejecucin.
Entorno de Datos
Adicion de la tabla contador al entorno de trabajo:
Iddpto
Dedpto
Seleccione
Contador
12
Iddpto
Dedpto
13
Programacin de eventos
Boton titulado Agregar
DO CASE
CASE THISFORM.COMMAND1.CAPTION = "Agregar"
* Son visibles la caja de texto y descripcin *
THISFORM.LABEL2.Visible = .T.
THISFORM.TEXT1.Visible = .T.
THISFORM.TEXT1.Value = " "
IF SEEK("DEPTOS")
* Se encontro el registro *
* Se captura el numero del campo ultimo a
* una variable
nNumero1 = Contador.Ultimo
* nuevo numero que sera asignado y
* actualizado en contador.
nNumeromas1 = nNumero1 + 1
14
cNumeromas1 = STR(nNumeromas1, 2, 0)
* Se eliminan espacios en blanco ejem: "4"
cNumeromas1 = ALLTRIM(cNumeromas1)
*se concatena colocando dos ceros a la
*izquierda "004"
cNumeromas1 = "00" + cNumeromas1
* se extraen dos caracteres partiendo del
* lado derecho "04"
cNumero2 = RIGHT(cNumeromas1, 2)
ELSE
MESSAGEBOX("En este momento no es posible
ingresar datos, intente mas tarde !!!")
ENDIF
ENDCASE
THISFORM.REFRESH
15
Boton titulado Cerrar
16
Ejemplo No. 3
Crear un formulario que permita modificar el nombre de los Departamentos, con la
caracterstica que este nombre sea seleccionado desde la tabla Deptos.
Descripcin de su funcionamiento:
La unidad a modificar debe seleccionarse desde la cuadricula
Al seleccionar el botn Modificar, aparecen una etiqueta y dos cajas de texto
mostrando la unidad seleccionada y los botones con las opciones Guardar y
Cancelar respectivamente.
Al seleccionar el botn Guardar, se guardan los cambios.
Al seleccionar el botn Cancelar, se las modificaciones no se realizan.
Listado de Controles
Objeto Tipo Cantidad Descripcin
Tabla Cursor 2 Deptos
Formulario Form 1 Ventana que contendr
controles
Etiqueta Label 1 Mostrar objetivo del Formulario.
Cuadricula Grid 1 Muestra las Unidades y
descripcin.
Botones de comando Command 2 Para eliminar y cerrar.
17
El diseo del formulario es similar a la siguiente figura:
18
Programacin de eventos
Objeto: Boton Command1, Evento: Click
DO CASE
CASE THISFORM.COMMAND1.Caption = "Modificar"
* Los datos son capturados desde las tablas *
cIddpto = THISFORM.GRID1.COLUMN1.TEXT1.VALUE
cDedpto = THISFORM.GRID1.COLUMN2.TEXT1.VALUE
* Actualizacion en la tabla *
UPDATE Deptos SET Dedpto = cDedpto WHERE Iddpto = cIddpto
ENDCASE
THISFORM.REFRESH
19
Objeto: Boton Command2, Evento: Click
Ejercicios propuestos:
Hacer los formularios de los tres ejercicios en las tablas: Permisos., Puestos y
Tipoper.
20