Creando el formulario para el sistema 2011 Preparando los formularios En un formulario de Visual Basic crea las etiquetas necesarias que correspondan –modificando su propiedad Caption- con los nombres de los campos de la tabla Alumnos, a saber, Matrícula, Nombre, Carrera y Turno. Crea las cajas de texto –dejando en blanco su propiedad Text- necesarias para mostrar el contenido de los campos y un control Data, repite los pasos para cada tabla que tengas en tu base de datos. Haz clic en el menú Proyecto, Componentes, selecciona el componente Microsoft FlexGrid Control 6.0 y haz clic en Aceptar. Ahora el objeto se halla en la Caja de herramientas, dibújalo en el formulario para que se vea más o menos como se ve abajo.
E- MAIL
[email protected]
Página 1
Creando el formulario para el sistema 2011 Creando la conexión con la base de datos y la tabla 1. Conectando el control Data a) Selecciona el control Data y modifica sus propiedades como sigue: b) DatabaseName: localiza la carpeta del proyecto y selecciona la base de datos (mibasededatos) en donde se halla la tabla. c) RecordSource: selecciona el nombre de la tabla (Alumnos) cuyos campos se mostrarán en el formulario.
2. Conectando las cajas de texto a) Selecciona una de las cajas de texto y modifica sus propiedades como sigue: b) DataSource: selecciona Data1. c) DataField: selecciona el nombre del campo de la tabla –que corresponda con la etiqueta correcta- que se mostrará en la caja de texto. d) Repite los pasos con cada caja de texto del formulario y ejecuta el programa con F5. e) En el formulario que conectaste a la base de datos, al hacer clic en el botón de avance del control Data se mostrarán los registros de la tabla.
f) Si no se pueden ver los registros de la tabla, significa que no se conectaron correctamente el control Data y las cajas de texto, simplemente revisa las conexiones una por una. E- MAIL
[email protected]
Página 2
Creando el formulario para el sistema 2011 3. Conectando el MSFlexGrid. a) Selecciona el objeto MSFlexGrid, en su propiedad DataSource selecciona Data1, modifica su propiedad Cols a 5, cambia su propiedad Rows a 5, opcionalmente puedes modificar sus propiedades de BackColor de la manera que más te agrade. 4. Este es el código del formulario: Private Sub Form_Activate() With MSFlexGrid1 For X = 1 To .Rows - 1 .Row = X For J = 1 To .Cols - 1 .Col = J .CellBackColor = IIf((X Mod 2) = 1, Val(&HC0FFFF), Val(&HC0FFC0)) .CellFontBold = True .CellForeColor = &HFF0000 Next J Next X End With End Sub Private Sub Form_Load() MSFlexGrid1.ColWidth(0) = 300 MSFlexGrid1.ColWidth(1) = 800 MSFlexGrid1.ColWidth(2) = 2500 MSFlexGrid1.ColWidth(3) = 2000 MSFlexGrid1.ColWidth(4) = 1100 End Sub Private Sub Form_Unload(Cancel As Integer) Cancel = 1 MsgBox "Haz Clic en Movimientos", vbInformation, "¡Aviso Importante!" End Sub
E- MAIL
[email protected]
Página 3
Creando el formulario para el sistema 2011 Creando un Menú En el formulario vamos a crear un menú llamado Movimientos con las siguientes opciones:
E- MAIL
[email protected]
Página 4
Creando el formulario para el sistema 2011 a) Haz clic con el botón derecho del ratón sobre el formulario y haz clic en el Editor de menús…
b) Y aparece la caja Editor de menús.
E- MAIL
[email protected]
Página 5
Creando el formulario para el sistema 2011 c) En Caption introduce el nombre (que se mostrará en el formulario) del menú. d) En Name introduce el nombre que utilizará Visual Basic. e) Haz clic en el botón Siguiente para crear otro menú. f) Haz clic en el botón con la flecha hacia la derecha y aparecerán cuatro puntos, lo cual indica que el siguiente renglón será una opción del menú. g) En Shortcut selecciona la combinación de teclas que se podrán usar para activar la opción de menú correspondiente. h) Repite los pasos para crear cada opción del menú.
Programando las opciones del menú Ahora codificaremos en Visual Basic las opciones del menú Movimientos para eso abre el menú y haz clic en cada una de las opciones del menú, el código para las opciones son: a) Opción Nuevo, el cual servirá para crear un nuevo registro en la tabla, el código es el siguiente: Private Sub nuevo_Click () Data1.Recordset.AddNew End Sub P.D. Esta opción debe presionarse antes de dar de alta un nuevo registro en la base de datos. b) Opción Guardar, el cual servirá para guardar un nuevo registro en la tabla, el código es el siguiente: Private Sub guardar_Click() Data1.UpdateRecord Data1.Refresh MsgBox "El Registro ha sido Guardado en la Base de Datos", vbExclamation, "Aviso Importante" End Sub P.D. Esta opción debe presionarse una vez que se haya completado la información del registro. c) Opción Buscar, el cual servirá para buscar un registro en la tabla, el código es el siguiente: Private Sub buscar_Click() Dim m As Long m = Val(InputBox("Introduce la Matrícula que Buscas")) Data1.Recordset.FindFirst "matricula=" & m If Data1.Recordset.NoMatch Then MsgBox "La Matrícula Número: " & m & " No está en la Base de Datos", vbExclamation, "Búsquedas de Matrícula" End If End Sub E- MAIL
[email protected]
Página 6
Creando el formulario para el sistema 2011
Nota: aquí declaramos una variable (m) que representará el número del registro (matricula) que estemos buscando. Es de vital importancia de que te asegures de que en la línea subrayada la palabra “Matrícula” esté escrita exactamente como llamaste el campo “matricula” al crear la tabla. d) Opción Eliminar, el cual servirá para eliminar un registro de la tabla, el código es el siguiente: Private Sub Eliminar_Click() If MsgBox("¿Quieres Eliminar la Matrícula Número: " & Text1 & "?", 16 + 4) = 6 Then Data1.Recordset.Delete Data1.Refresh Text1.SetFocus MsgBox "Se Eliminó la Matrícula", vbCritical, "Aviso Importante" Else MsgBox "No se Eliminó la Matrícula Número: " & Text1, vbExclamation, "Aviso Importante" End If End Sub
Ahora corre tu programa con la tecla F5 dirígete al formulario y ahora podrás agregar, guardar, buscar y eliminar registros de la tabla Alumnos de la base de datos de Access mediante Visual Basic.
E- MAIL
[email protected]
Página 7
Creando el formulario para el sistema 2011 Creando los reportes con Visual Basic Para crear reportes en Visual Basic vamos a crear primero el Data Environment (Entorno de Datos) el cual es una herramienta muy sencilla para crear reportes tal como Crystal Reports o Access.
Creando el Data Environment a) Haz clic en el botón Proyecto de la barra de herramientas. b) Haz clic en Agregar Data Environment c) Y se abrirá el Data Environment mostrando el nombre del proyecto en su barra de título.
E- MAIL
[email protected]
Página 8
Creando el formulario para el sistema 2011 Nota: En caso de que no se halle disponible la opción Agregar Data Environment en el menú Proyecto, hay que activarla desde Proyecto, Componentes, Diseñadores y hacer clic en Data Environment y otro clic en Aceptar.
E- MAIL
[email protected]
Página 9
Creando el formulario para el sistema 2011
d) En la ventana aparece un pequeño icono de un reporte al cual puedes cambiarle el nombre fácilmente seleccionándolo y modificando su propiedad (Name) por otro como Reportes, etc.
e) Más abajo se puede ver otro objeto, un cilindro -el cual representa a la base de datos- con una clavija eléctrica llamado Connection1 al cual también puedes cambiarle el nombre modificando su propiedad (Name) por otro como Alumnos, Maestros, etc.
E- MAIL
[email protected]
Página 10
Creando el formulario para el sistema 2011
f) Ahora haz clic con el botón derecho del ratón sobre la Connection1 (ahora llamada Alumnos) y haz clic en Propiedades… g) Y aparecerá la caja Propiedades de vínculo de datos, haz clic en la opción Conexión.
E- MAIL
[email protected]
Página 11
Creando el formulario para el sistema 2011
E- MAIL
[email protected]
Página 12
Creando el formulario para el sistema 2011 h) Haz clic en: Usar la cadena de conexión y haz clic en Generar…
E- MAIL
[email protected]
Página 13
Creando el formulario para el sistema 2011 i) Y aparecerá la caja Seleccionar origen de datos, haz clic en la opción Origen de datos de equipo.
j) Selecciona el tipo de base de datos en donde se creó la base de datos, en nuestro caso MS Access Database y haz doble clic ahí.
E- MAIL
[email protected]
Página 14
Creando el formulario para el sistema 2011
k) Y aparecerá la caja Conexión, haz clic en el botón Base de datos…
l) Y aparecerá la caja Seleccionar base de datos, localiza la carpeta o unidad de disco en donde se halla tu base de datos, selecciónala y haz clic en Aceptar.
m) Enseguida se vuelve a mostrar la caja Conexión, haz clic nuevamente en Aceptar.
E- MAIL
[email protected]
Página 15
Creando el formulario para el sistema 2011
n) Y se mostrará la caja Propiedades de vínculo de datos, mostrando en la caja de texto Cadena de conexión bajo la opción Usar la cadena de conexión la ruta de la base de datos que hemos conectado, para finalizar la conexión haz clic en Aceptar.
o) Y volveremos al Entorno de Datos.
Ya creamos la conexión de los reportes con la base de datos, ahora vamos a crear un comando para el reporte.
E- MAIL
[email protected]
Página 16
Creando el formulario para el sistema 2011
Creando un comando a) Haz clic con el botón derecho del ratón sobre la conexión (Alumnos) que creamos previamente y haz clic en Agregar comando.
E- MAIL
[email protected]
Página 17
Creando el formulario para el sistema 2011
b) Y enseguida aparecerá un objeto llamado Command1, al cual le puedes cambiar su nombre modificando su propiedad (Name).
c) Para motivos de identificación llamaremos el Command1 Repalumnos, ya que nos será útil para identificar el reporte de alumnos.
E- MAIL
[email protected]
Página 18
Creando el formulario para el sistema 2011
Creando las propiedades del reporte a) Haz clic con el botón derecho del ratón sobre el comando –ahora llamado Repalumnos- y haz clic en Propiedades… y aparecerá la caja Propiedades de Reporte, ahí podemos ver el Nombre de comando (Command1) el cual es Repalumnos y el nombre de la Conexión que es Alumnos.
E- MAIL
[email protected]
Página 19
Creando el formulario para el sistema 2011
b) En la sección Origen de datos, Objeto de la base de datos, haz clic en la flechita que se halla en la caja de combo y selecciona la opción Tabla.
c) Haz clic en la flecha de la caja de combo Nombre de objeto y selecciona el nombre de la tabla (alumnos) que nos servirá de origen de datos para crear el reporte.
d) Ahora sólo haz clic en Aceptar.
E- MAIL
[email protected]
Página 20
Creando el formulario para el sistema 2011
e) Y se mostrará un pequeño cuadro con un signo de más en su interior, al lado izquierdo del comando Repalumnos, haz clic ahí y podrás ver los campos de la tabla Alumnos que seleccionaste previamente, todo indica que nuestra conexión se realizó exitosamente.
Ya puedes cerrar el Entorno de Datos (Data Environment) para crear ahora la estructura del reporte.
E- MAIL
[email protected]
Página 21
Creando el formulario para el sistema 2011
Creando la estructura del reporte a) En Visual Basic haz clic en el botón Proyecto de la barra de herramientas y haz clic en Agregar Data Report y se mostrará la caja DataReport1, la caja de herramientas y la caja de propiedades correspondientes para trabajar en el DataReport.
E- MAIL
[email protected]
Página 22
Creando el formulario para el sistema 2011
Nota: En caso de que no se halle disponible la opción Agregar Data Report en el menú Proyecto, hay que activarla desde Proyecto, Componentes, Diseñadores y hacer clic en Data Report y otro clic en Aceptar.
a) Hay varias maneras de elaborar la estructura del reporte, vamos a emplear una muy sencilla, haz clic en la herramienta RptLabel y dibuja una etiqueta en Encabezado de informe (Sección4) y modifica su propiedad Caption con el título que tendrá el reporte. Nota: puedes ajustar la altura de las diferentes secciones del Data Report mediante colocar el apuntador del ratón en el limite inferior de cada sección, presionar el botón izquierdo del ratón y sencillamente moverlo hacia arriba o hacia abajo según sea el caso.
E- MAIL
[email protected]
Página 23
Creando el formulario para el sistema 2011
b) Ahora haz clic en RptLabel y coloca etiquetas con los títulos de los encabezados de la tabla en Encabezado de página (Sección2) modificando sus propiedades Caption, Font, ForeColor, etc. a tu gusto. c) Ahora haz clic en RptTextBox y coloca cajas de texto en Detalle (Sección1). d) Al terminar de colocar las cajas de texto que muestran el texto: No enlazado, haz clic en cualquier parte vacía del DataReport y haz clic en la cajita gris situada bajo el icono de la barra de titulo del Data Report, para mostrar las propiedades del DataReport.
e) Haz clic en la propiedad DataSource y selecciona el DataEnvironment1 que previamente llamamos reportes, y en la propiedad DataMember selecciona el Command1 que llamamos Repalumnos. Nota: Podemos crear varios reportes –si hay varias tablas- en el mismo Data Environment. f) Ahora selecciona la primera caja de texto y haz clic en la cajita gris situada bajo el icono de la barra de titulo del Data Report, para mostrar las propiedades de la caja de texto (RptTextBox), y modifica sus propiedades como sigue: DataMember: el nombre del reporte (Repalumnos) y en DataField: selecciona el campo que corresponda de la tabla y repite los pasos para cada caja de texto para que se vea más o menos así.
E- MAIL
[email protected]
Página 24
Creando el formulario para el sistema 2011
Creando el menú de Reportes Vamos a volver al formulario en donde creamos el menú a) Haz clic con el botón derecho del ratón en el formulario y haz clic en Editor de menús… b) Crea el menú Reportes con la opción Alumnos.
E- MAIL
[email protected]
Página 25
Creando el formulario para el sistema 2011
c) Para que se vea así
E- MAIL
[email protected]
Página 26
Creando el formulario para el sistema 2011
E- MAIL
[email protected]
Página 27
Creando el formulario para el sistema 2011 Conectando el menú con el reporte Ahora vamos a conectar la opción del menú Reportes con el reporte que creamos previamente a) Haz clic en Reportes, Alumnos y escribe el siguiente código: Private Sub reportedealumnos_Click() DataReport1.Show End Sub b) Ejecuta el programa y haz clic en la opción para ver el reporte y se mostrará el reporte que creaste.
Nota: En caso de ser necesario puedes estirar las cajas de texto para que se puedan ver los datos, o modificar la propiedad RightMargin del Data Report según tus necesidades particulares. Puedes crear una base de datos con varias tablas, diferentes formularios y diferentes reportes según prefieras, sinceramente espero que haya sido de tu interés el ejercicio y sirva para que te adentres en el mundo de la programación y las bases de datos.
E- MAIL
[email protected]
Página 28
Creando el formulario para el sistema 2011
En esta segunda parte del ejercicio, vamos a controlar el acceso al programa, de manera que solamente accesen el sistema, usuarios que previamente se hayan registrado como tales, también se creará la opción para que los interesados se auto registren y puedan hacer uso del programa, por lo que vamos a crear: a) Una pantalla de Inicio, que se verá inmediatamente antes de iniciar el programa. b) Una pantalla de Bienvenida, con opciones para entrar al programa o registrarnos si es que no somos usuarios registrados para accesar el programa. c) Una pantalla de Entrada, para acceder al programa como usuario registrado. d) Una pantalla de Registro, en donde se registrarán los usuarios que quieran entrar el programa.
Creando una pantalla de inicio a) Haz clic en Proyecto, Agregar formulario. b) En la caja de diálogo Agregar formulario, opción Nuevo, selecciona el icono Pantalla de inicio y haz clic en Abrir. Para el propósito del ejercicio sólo conserva dos etiquetas que nos serán de utilidad así como la gráfica, selecciona el resto de las etiquetas y presiona el botón Suprimir para eliminarlas. Modifica las etiquetas, cambia la gráfica por la que prefieras, y agrega un reloj a la pantalla de inicio para que se vea más o menos como se ve abajo.
Para que esta pantalla se vea inmediatamente antes que inicie el programa hay que hacer lo siguiente: a) Selecciona el reloj y cambia su propiedad Interval a 100. b) Haz doble clic en el reloj y escribe el siguiente código: Private Sub Timer1_Timer() Static J As Integer J=J+1 If J = 20 Then frmSplash.Hide Bienvenida.Show E- MAIL
[email protected]
Página 29
Creando el formulario para el sistema 2011 Timer1.Enabled = False End If End Sub Aquí sencillamente declaramos una variable que se incrementará de uno en uno y al llegar a 20 se ocultará la pantalla de inicio y mostrará otro formulario, en nuestro caso el formulario de Bienvenida, y deshabilitará el reloj. Para que el programa inicie con el formulario que acabamos de crear: c) Haz clic en Proyecto, Propiedades de proyecto… y se abrirá la caja de diálogo, Propiedades del proyecto. d) En la opción General, Objeto inicial, selecciona el formulario frmSplash y haz clic en Aceptar.
Creando una pantalla de bienvenida Crea un formulario, con una etiqueta y tres botones, para que se vea más o menos como se ve abajo.
a) El código del botón Registrarse es: Private Sub Command1_Click() Bienvenida.Hide Registro.Show End Sub Cuya función es la de ocultar el formulario de Bienvenida y mostrar el formulario de Registro.
b) El código del botón Entrar es: Private Sub Command2_Click() Bienvenida.Hide Entrada.Show End Sub E- MAIL
[email protected]
Página 30
Creando el formulario para el sistema 2011 Cuya función es la de ocultar el formulario de Bienvenida y mostrar el formulario de Entrada.
c) El código del botón Cancelar es: Private Sub Command3_Click() Unload Me End End Sub Cuya función es la de cerrar el programa.
E- MAIL
[email protected]
Página 31