Está en la página 1de 64

AC C E S O A DATOS DE S DE

V I S U A L BA S I C .N E T C O N
ADODB

ELABORADO POR:
ELIESER NÚÑEZ
Eliesns08@hotmail.com

Elieser Núñez Eliesns08@hotmail.com 1


INTRODUCCIÓN

A través de esta guía que va paso a paso y que para cumplir

los objetivos se desarrolla un proyecto de control de trabajo

educativo social, para una institución de nivel medio, donde el

alumno aprenderá a crear aplicaciones usando base de datos.

Espero que satisfaga las necesidades de los estudiantes

Si desean compartirla con otros colegas, me agradaría mucho

que lo hiciera, con la única condición de que siempre se respete

el derecho del autor.

Elieser Núñez

Elieser Núñez Eliesns08@hotmail.com 2


Microsoft Visual Basic.Net
GUÍA DE LABORATORIO Nº 1

Objetivos
Luego de completar este laboratorio, el estudiante será
capaz de:

 Crear y manipular bases de datos utilizando Microsoft Access.


 Conectar con la base de datos usando la librería ADODB
 Manipular registros de una tabla programando con ADODB
 Crear formularios con datos enlazados.
 Realizar consultas utilizando sentencias SQL.
 Crear Reportes usando Crystal Report

Creación de la base de datos con Microsoft Access 2007-2010

Para desarrollar nuestras prácticas de laboratorio debemos

crear una base de datos cuyo nombre es DBtes.ACCDB, la cual

contendrá las tablas modalidades, Cursos, secciones, alumnos,

actidetalles, actividad1 y otras que añadiremos en el siguiente

nivel. La tarea de crear una base de datos con Microsoft Access

2007-2010-2013 es muy sencilla. Para tener una mejor comprensión

observemos el DER del proyecto.

Elieser Núñez Eliesns08@hotmail.com 3


DER PROYECTO CONTROL-TES 90%

Casos
Partiendo de que un instituto tiene varias modalidades (áreas)
podemos decir:
 Un área puede tener varios cursos
 Un curso puede tener varias secciones
 Un alumno tiene derecho a estar en un curso varias veces

Conociendo los casos y visto el diagrama describimos los atributos


pertenecientes a cada identidad e identificamos los campos claves.
Para luego crear la base de datos en Microsoft Access.

TABLA MODALIDADES
Nombre del Tipo Ancho Descripción
Campo
Mod_cod T 03 Código de modalidad

Mod_nom T 50 Nombre de modalidad

TABLA CURSOS
Nombre del Tipo Ancho Descripción
Campo
Cur_cod T 03 Código de Curso

Cur_no N Entero Numero de Curso


Cur_desc T 12 Descripción

Cur_nsec N Entero Cantidad secciones

Elieser Núñez Eliesns08@hotmail.com 4


Mod_cod T 03 Código de modalidad

TABLA SECCIONES
Nombre del Tipo Ancho Descripción
Campo
Sec_id AutoNumera
cion
Sec_no N Entero Numero de Sección

sec_jorn T 20 Jornada

Sec_limite N Entero Limite alumnos

Sec_year N Entero Año sección

Cur_cod T 03 Código de curso

Como puede observar hay un atributo en cada tabla que aparece


subrayado, eso significa que es un campo único donde los datos a
diferencia de los demás no se pueden repetir, al momento de crear la
tabla debe asegurarse que la llave de asignación este sobre el campo
primario.
Note que hay campos que han sido definidos como primarios en una tabla
y aparecen en otra tabla, a estos campos se les denomina campos
foráneos y su función es conectar la información de una tabla con
otra.

Desarrollaremos este proyecto por partes, como hemos visto el DER está
compuesto por 6 entidades (tablas), iniciaremos diseñando estas cuatro
tablas(áreas, curso, secciones y modalidades) y la interfaz de cada
una de ellas en Visual Basic.

Así que manos a la obra, entremos en la aplicación de Access asignemos


el nombre a la base de datos “dbtes”, diseñamos la tabla de áreas,
cursos, secciones y alumnos conforme al diseño propuesto en esta guía.
Luego relacionamos las tablas usando las reglas de integridad
referencial, guarde la base de datos y listo ya tenemos la base de
datos. Si usted ya recibió el curso de Access no tendrá problemas en
seguir las instrucciones descritas anteriormente. Si no consulte el
manual de Access para resolver el problema.

La relación debe de quedar según la siguiente imagen.

Elieser Núñez Eliesns08@hotmail.com 5


Creando aplicaciones en Visual Basic >NET 2008-2010
En visual Basic existen diferentes formas de desarrollar una
aplicación puede ser utilizando entornos de datos, ADODB entre otros.
Nos centraremos en la programación ADODB que es la más recomendada por
los expertos en esta área.

Que significa ADODB?


A través de este nuevo modelo podemos acceder a las bases de datos
mediante código.
Podíamos definir ADODB como:
 Un conjunto de interfaces, clases y estructuras que permiten el
acceso a Datos.
 Permite un modo de acceso a datos desconectado. Esto quiere
decir que a través de ADODB solo estaremos conectados con el
servidor el tiempo estrictamente necesario para realizar la
carga de los datos en el RECORDSET.

Entremos a visual Basic y elijamos Nuevo Proyecto.

Elieser Núñez Eliesns08@hotmail.com 6


 Aparece la siguiente ventana

 Seleccionamos Aplicación de Windows Form


 Asignamos un nombre al proyecto por ejemplo “Control-TES”
 Hacemos clic en el botón Aceptar y listo

Elieser Núñez Eliesns08@hotmail.com 7


AGREGANDO UNA REFERENCIA PARA TRABAJAR CON LA LIBRERÍA ADODB
 Clic derecho sobre el nombre del proyecto en el explorador
de soluciones

 HAGA CLIC EN AGREGAR REFERECIA

 APARECE LA SIGUIENTE VENTANA

 HAGA CLIC EN LA PESTAÑA COM

 BUSQUE LA OPCIÓN O DESCRIPCIÓN QUE SE MUESTRA EN LA IMAGEN SIGUIENTE:

Elieser Núñez Eliesns08@hotmail.com 8


 HAGA CLIC EN EL BOTON ACEPTAR, YA PODEMOS TRABAJAR CON LA LIBRERÍA ADODB.

CREANDO MODULO PARA ESTABLECER CONEXIÓN


Un módulo es una sección no grafica que generalmente se usa
para segmentos de código a través de procedimientos o funciones
específicas como en este caso; establecer la conexión con la base
de datos.
Manos a la obra.
 Clic derecho en el nombre del proyecto en el explorador de
soluciones
 Haga clic en agregar, luego en modulo
 Asigne nombre al modulo o déjelo con el nombre que asigna el
sistema.
 Haga clic en el botón aceptar

Elieser Núñez Eliesns08@hotmail.com 9


Codificando el modulo
Comenzaremos declarando variables de alcance publico ya que su
valor es necesario en todas las aplicaciones del proyecto.
La variable CONEc sera usada para establecer la conexión con la
base de datos por lo tanto heredera comandos y funciones para
realizar peticiones a la base de datos dbtes.
Declare las variables tal como se observan en la imagen debajo.

Agregando un procedimiento para escribir el código que debe


conectar a la base de datos.
Al procedimiento le asignamos el nombre de conectar pero igual le
podemos otro nombre si desea hacerlo, la estructura Try se usa
para evitar que el programa se suspenda en caso de que se
produzca un error, de producirse un error este es almacenado en
la función ex, devolviendo un mensaje donde se lee el error que
se produjo.

Elieser Núñez Eliesns08@hotmail.com 10


Debajo de try se escriben todas las instrucciones para conectar
con la base de datos, pero debajo de Catch ex As Exception se
escribe código para que el programa devuelva un mensaje con el
error que se produjo.

Descripción de código

La primera línea activa a la variable CONEc para que pueda


recibir la conexión heredándole todos los procedimientos,
propiedades y funciones de la clase ADODB.Connection; la segunda
línea almacena la cadena de conexión, la cual lleva instrucciones
clara del proveedor y ubicación de la base de datos con la que
vamos a conectar.
La tercer línea ejecuta la cadena de conexión, aquí se establece
la conexión con la base de datos.
La cuarta línea asigne el valor de verdadero ala variable estado,
en señal de que la conexión ha sido exitosa.

Agregando un procedimiento para cerrar la conexión a la base de


datos.
Al procedimiento le llamaremos cerrar, y permitirá cerrar la
conexión a la base de datos. Generalmente se usa en las rutinas
de salida del proyecto.

Elieser Núñez Eliesns08@hotmail.com 11


Creando el procedimiento Sub Main
Ningún procedimiento definido por el usuario es capaz de auto-
ejecutarse, es decir que para que su código sea analizado o
ejecutado el procedimiento debe de ser invocado.

Elieser Núñez Eliesns08@hotmail.com 12


Desde el procedimiento sub main(el cual más adelante será
configurado para que sea la primer aplicación que corra al
ejecutar el proyecto) llamamos al procedimiento conectar para que
realice la conexión; si la conexión se realiza con éxito, en esta
caso se ejecutara el formulario de modalidades.

CONFIGURANDO PARA QUE EL PROYECTO INICIE CON EL PROCEDIMIENTO SUB

MAIN.

 Clic derecho en el nombre del proyecto y luego hacemos clic


en propiedades.
 Aparece la siguiente ventana

 En el combo tipo de aplicación seleccionamos aplicación de


consola

Elieser Núñez Eliesns08@hotmail.com 13


 La descripción formulario de inicio se cambiara
automáticamente a objeto de inicio.
 Seleccione sub main y listo, debe quedar como la siguiente
imagen.

NOTA. Si ejecutamos el proyecto, no establecerá la conexión, ya


que la base de datos no se encuentra en la ruta especificada,
hasta aquí aún no hemos guardado el proyecto, eso significa que
aún no tiene estructura. Es justo lo que vamos hacer;
 HAGA CLIC EN GUARDAR TODO

 APARECE LA SIGUIENTE VENTANA

 CAMBIE EL NOMBRE DEL PROYECTO SI LO DESEA

 LUEGO HAGA CLIC EN EL BOTON GUARDAR , LISTO

Puede ir a la dirección que muestra la imagen debajo para


comprobar que se creó la estructura.

Elieser Núñez Eliesns08@hotmail.com 14


Nota. Debe de copiar la base de datos (dbtes) en la siguiente
dirección que muestra la imagen. Esto porque cuando se establece
la conexión, es a este lugar que hace referencia para que busque
la base de datos.

Nota. Ejecute el proyecto, si ha seguido los pasos correctamente


y sus dedos no han fallado, debe de aparecer el formulario de
modalidad, lógicamente vacío, pero si aparece significa que la
conexión con la base de datos se ha realizado con éxito.

“Si usted va por el mundo buscando la excelencia, encontrará


la excelencia; si va por el mundo buscando problemas,
encontrará problemas. O, como dice el proverbio árabe: “Lo
que pueda significar un trozo de pan dependerá de que
tengas hambre o no”
John Grinder

Elieser Núñez Eliesns08@hotmail.com 15


APLICACIÓN Nº 1 (FRM-MODALIDAD)
Elaborar una aplicación que permita agregar, eliminar y
editar áreas o modalidades tomando en cuenta los siguientes
aspectos:
o Para poder agregar un registro es obligatorio
introducir el código y nombre del área, sino debe de
generar un mensaje de error.
o El código del botón OK debe de identificar si se trata
de un registro nuevo o simplemente es una
actualización.

El diseño
de la
interfaz
debe ser
similar a
la figura
mostrada en
la IMagen

El
botón
Eliminar,
posibilita
la
eliminación
del registro seleccionado en el datagridview1.

Agregue los siguientes controles al formulario:


 3 grupos de opciones(optiongroup)
 2 etiquetas
 2 cajas de texto
 1 datagridview

Elieser Núñez Eliesns08@hotmail.com 16


En seguida proceda a establecer las propiedades requeridas:

Form1
Nombre FrmModalidad
Text Registro de Modalidades

OptionGroup1
Text

OptionGroup2
Text
OptionGroup3
Text

Label1
Nombre Lblcodigo
Text Codigo

Label2
Nombre Lblnombre
Text Modalidad

Text1
Nombre Txtcodigo

Text2
Nombre TxtMododalidad

Button1
Nombre BtnOk
Text Ok

Button2
Nombre BtnAyuda

Elieser Núñez Eliesns08@hotmail.com 17


Text Ayuda

Button3
Nombre BtnEliminar
Text Eliminar

Button4
Nombre BtnSalir
Text Salir

El código asociado a la aplicación se muestra a


continuación:

 Iniciamos declarando variables, la variable table es del


tipo Recordset (conjunto de registros), podríamos decir que
se trata de una tabla temporal que almacenara datos

Elieser Núñez Eliesns08@hotmail.com 18


provenientes de una consulta, pero sus valores solo se
mantendrán en tiempo de ejecución.
 El procedimiento Cargar (), tiene como objetivo mostrar
todas las modalidades existentes en la cuadricula
(datagridview), este procedimiento se invoca desde el evento
load (se produce inmediatamente después de ejecutar el
formulario).

El siguiente código pertenece al botón BtnOK escrito en el evento


click.

Elieser Núñez Eliesns08@hotmail.com 19


Como puede observar esta codificación tiene muchos comentarios
que describen la función de cada línea. Desde este botón podemos
agregar una nueva modalidad como modificar una modalidad
existente. Esto significa que si ingresa un código de modalidad
existente y hace cambios en el nombre de la modalidad y luego
pulsa en el botón Ok, se producirá una actualización.

Una vez pulsado el botón BtnOk, se realiza una consulta para


comprobar si el código de modalidad ya existe o no. Si existe se
dara una operación de actualización de lo contrario los datos
serán insertados como nuevos.

El siguiente código que presentamos es para eliminar modalidades.

Para eliminar una modalidad debe de seleccionarla en el


datagridview. Y luego hacer clic en el botón eliminar.
La primer sentencia de este código es para conocer el número de
fila seleccionada, la segunda es para conocer el código de área
de la fila seleccionada, luego la condición para confirmar si
desea eliminar, si contesta que sí; realiza una consulta de
eliminación usando como criterio el código de área, ejecuta la
consulta y por ultima vuelve a llamar al método cargar.

Elieser Núñez Eliesns08@hotmail.com 20


El siguiente código es para cerrar la aplicación o formulario,
me.dispose se utiliza para destruir los identificadores que se
usan en la aplicación al momento de cerrarla, me.close cierra el
formulario.

El código escrito en TXTMODALIDAD_KeyPress tiene la función de


validar la tecla enter. Como ya es conocido la tecla que se usa
para salir o saltar de un control a otro es Tab, para que la
tecla Enter realiza esta función es necesario escribir la
instrucción que presentamos en la imagen debajo.

Ejecutemos la aplicación y hagamos las pruebas de escritorio


necesarias para determinar el buen funcionamiento.
APLICACIÓN NO . 2 (FRM CURSOS)
Elaborar una aplicación que permita agregar, eliminar y editar
cursos tomando en cuenta los siguientes aspectos:
o En un cuadro combinado debe de seleccionar el área, si
hay cursos ya creados para el área o modalidad
seleccionada debe de visualizarlos en el datagridview.
o Para poder agregar un registro es obligatorio
introducir todos los datos, sino debe de generar un
mensaje de error.
o El código del botón Agregar debe de identificar si se
trata de un registro nuevo o simplemente es una
actualización.

Elieser Núñez Eliesns08@hotmail.com 21


o Para eliminar debe de seleccionar el registro dentro de
datagridview y luego hacer clic en el botón eliminar y
listo.

El diseño
planteado para
esta aplicación es
el siguiente.

Agregue los siguientes controles al formulario:


 4 grupos de opciones(optiongroup)
 5 etiquetas(label)
 3 cajas de texto(TextBox)
 2 cuadros combinados (combobox)
 Una cuadricula(datagridview)

En seguida proceda a establecer las propiedades requeridas:

Form1
Nombre FrmCursos
Texto Registro de Cursos

Optiongroup1
Texto Agregar / Actualizar
cursos

Elieser Núñez Eliesns08@hotmail.com 22


Optiongroup2
Texto

Optiongroup3
Texto

Optiongroup4
Texto

Label1
Nombre LblTitulo
text Registro de Cursos

Label2
Nombre Lblmodalidad
text Codigo de Area:

Label3
Nombre Lblcodcurso
Text Codigo Curso:

Label4
Nombre Lblncurso
Text No-Curso:

Label5
Nombre Lbldescripcion
text Cantidad secciones

Text1
Nombre TxtcurCod
Text

Elieser Núñez Eliesns08@hotmail.com 23


Text2
Nombre Txtcurno
Text

Text3
Nombre Txtcansec
Text

Combobox1
Nombre cbomodalidad

Combobox2
Nombre Cbodescrip
Items PRIMERO
SEGUNDO
TERCERO
CUARTO
QUINTO
SEXTO
SEPTIMO
OCTAVO
NOVENO
DECIMO
ONCEAVO
DOCEAVO

DataGridView1
Nombre Datagridview1
Agregar 4 columnas

Elieser Núñez Eliesns08@hotmail.com 24


Para modificar ancho de columnas haga lo siguiente

Aparece la siguiente imagen

Elieser Núñez Eliesns08@hotmail.com 25


Seleccione la propiedad y cambie las siguientes propiedades
Column1
Nombre Column1
HeaderText Codigo
witdh 100

Column2
Nombre Column2
HeaderText Curso No
witdh 90

Column3
Nombre Column3
HeaderText Descripcion
witdh 100

Column4
Nombre Column4
HeaderText Cant_Secc
witdh 90

Button1
Nombre BtnOk
Text Ok

Button2
Nombre Btndeshacer
Text Deshacer

Button3
Nombre BtnEliminar
Text Eliminar

Elieser Núñez Eliesns08@hotmail.com 26


Button4
Nombre Btnayuda
Text Ayuda

Button5
Nombre BtnSalir
Text Salir

El código asociado a la aplicación se muestra a


continuación:

Como puede observar este código es muy similar al que usamos en la


aplicación de modalidad, tiene muchos comentarios para una mejor
comprensión del código. Cuando ejecutemos este formulario se lee el
procedimiento cargar con el objetivo de depositar los nombres de las
modalidades en el cbomodalidad. Es la función que cumple el
procedimiento cargar.

“El viaje es mejor que la llegada”

Continuamos codificando
Elieser Núñez Eliesns08@hotmail.com 27
Este es otro procedimiento definido por el usuario, su función es
depositar todos los cursos registrados en el datagridview1.

Este procedimiento es llamado desde el evento load, para llamarlo tan


solo basta con digitar el nombre.

Listo para ejecutar la aplicación haga las pruebas de escritorio


necesarias para comprobar si el funcionamiento del programa va de
acuerdo a las necesidades planteada. Guarde el formulario con el
nombre de “FrmCursos”.

Seguro que vas bien, continuemos

Elieser Núñez Eliesns08@hotmail.com 28


Este código visualiza los cursos según la modalidad seleccionada, como
podes ver, los comentarios sobre el código brindan una mejor
comprensión de la función del mismo.

Este código tiene como objetivo mostrar la descripción de acuerdo al


número de curso que se digite.

Complete las condiciones hasta el grado número 12.

Elieser Núñez Eliesns08@hotmail.com 29


El siguiente código tiene como proposito agregar o actualizar información sobre los cursos,

El nombre de este control es


Cbomodalidad

La explicacion de este codigo es visible en los comentarios asignados


al mismo.

El siguiente código sirve para eliminar cursos, para hacerlo debe de


seleccionar el curso que desea eliminar en el datagridview1 y luego
hacer clic en el botón eliminar, el código lo presentamos a
continuación:

Elieser Núñez Eliesns08@hotmail.com 30


La primer linea declara la variable nn, luego en la segunda se
almacena en la variable nn el numero de la fila seleccionada, la
tercera asigna el valor de la celda de la primer columna y fila
seleccionada.

La siguiente hace aparecer un cuadro de mensaje con la interrogante


“Eliminar Si / NO”, si contesta que si, se ejecutar la consulta de
eliminacion y se ejecuta de nuevo el procedimiento cargarcursos para
que ya no se muestre el registro eliminado.

El siguiente codigo es para el boton salir, jeje, en realidad no


deberia de ponerlo, a estas altura seguro que lo tienes muy bien
memorizado.

Para finalizar mostramos el codigo del boton deshacer, cuya funcion es limpiar los datos que se visualizan en los
controles de entrada de datos. Cuadros de textos y combos.

Elieser Núñez Eliesns08@hotmail.com 31


APLICACIÓN Nº 3 (FRMSECCIONES)
Elaborar una aplicación que permita agregar, eliminar y
editar secciones tomando en cuenta los siguientes aspectos:
o Para poder crear una sección es obligatorio elegir
modalidad, código curso.
o El código del botón Crear permite agregar una nueva
sección al curso seleccionado
o Para edita una sección se realizan los cambios en el
datagridview y se hace clic en el botón actualizar
o Cuando seleccionemos una modalidad debe desplegar los
códigos de cursos de la modalidad seleccionada.
o Cuando seleccionemos un código de curso debe
desplegarse los datos del curso como el numero de
curso, descripción y cantidad de secciones, estos
controles deben de estar en solo lectura.

Agregue los siguientes controles al formulario:

Elieser Núñez Eliesns08@hotmail.com 32


 5 grupos de opciones(optiongroup)
 9 etiquetas(label)
 2 cajas de texto(TextBox)
 4 cuadros combinados (combobox)
 Tres controles numéricos (numericUpdow)
 Una cuadricula(datagridview)
 4 botones

En seguida proceda a establecer las propiedades requeridas:

Form1
Nombre FrmSecciones
Texto Registro de Secciones

Optiongroup1
Texto
Optiongroup2
Texto
Optiongroup3
Texto
Optiongroup4
Texto
Optiongroup5
Texto

Label1
Texto Modalidad

Label2
Texto Código de curso
Label3
Texto Numero de Curso
Label4

Elieser Núñez Eliesns08@hotmail.com 33


Texto Descripcion

Label5
Texto Cantidad Secciones

Label6
Texto Año
Label7
Texto Seccion
Label8
Texto Jornada
Label9
Texto Limite Alumnos

TextBox1
Nombre Txtcurno2
readonly true
enabled False

Combobox1
Nombre cbomodalidad

Combobox2
Nombre Cbocurcod2
Combobox3
Nombre Cbodesc
Enabled False

NumericUpDown1
Nombre NUDano
Maximun 2100
Minimun 2000

Elieser Núñez Eliesns08@hotmail.com 34


NumericUpDown2
Nombre NUDSEC
Maximun 100
Minimun 0

NumericUpDown3
Nombre NUDLIMITE
Maximun 100
Minimun 0

Datagridview1
Nombre Datagridview1

Debe de agregar tres columnas (Seccion, limite-alumnos, jornada)


el ancho de cada columna debe de ser de 130.
Si no se acuerda verifique en la paginas anteriores para recordar el
procedimiento.

El código asociado al evento es el siguiente.

El procedimiento cargar realiza una cónsulta de selección en la


tabla de modalidades, luego deposita el resultado de la consulta en el
combo Cbomodalidad.

Elieser Núñez Eliesns08@hotmail.com 35


Este procedimiento busca todos los códigos de cursos en la tabla de
cursos según la modalidad seleccionada, primero busca el código de
área usando como parámetro de búsqueda el nombre del área.
Este código se aplica en el control CBOmodalidad.

El código que presentamos a continuación, realiza una consulta en la


tabla de cursos, para conocer los detalles del curso (no, descripción,
cantidad de secciones). El resultado de esta consulta se deposita en
los controles (txtcurno2, cbodesc2, txtnsec2).

El siguiente codigo muestra las secciones que pertenecen al curso seleccionada, este codigo este escrito en el contro
Cbocurcod2

Elieser Núñez Eliesns08@hotmail.com 36


El siguiente código agrega secciones a la tabla de secciones.

El código que presentamos a continuación, permite actualizar los


cambios hechos en x fila del datagridview en la tabla de secciones.

Elieser Núñez Eliesns08@hotmail.com 37


El siguiente código sirve para eliminar una sección, para ello debe de
seleccionarla en el datagridview y luego hacer clic en el botón
eliminar.

Bueno aquí tenemos el código necesario para registrar secciones, si


puede codifique algunos controles para validad la tecla enter, esto se
hace en el evento Keypress, también puede aplicar otros detalles, esto
queda a su criterio.

Elieser Núñez Eliesns08@hotmail.com 38


APLICACIÓN Nº 4 (FRMALUMNOS)
Para construir esta aplicación debemos de agregar una nueva tabla
a la base de datos dbtes asi que abramos la base de datos y
agreguemos la siguiente tabla siguiendo la estructura que te
muestro a continuación.
TABLA Alumnos
Nombre del Tipo Ancho Descripción
Campo
Alu_rne T 13 Registro Nacional Estudiantil

Alu_nom T 20 Nombres

Alu_ape T 20 Apellidos

Alu_sex T 1 Sexo

Alu_fnac Fech Fecha de Nacimiento

Cur_cod T 3 Código de curso

Sec_no Nume Entero Sección Numero


Alu_year Nume Entero Año
Alu_tel T 10 Teléfono

Alu_email T 50 Correo electrónico

El campo principal es el que aparece resaltado con negrita,


asígnele la llave en Access. Relacione la tabla alumnos con la
tabla cursos. Guarde y salga de Access
Elaborar una aplicación que permita agregar, eliminar,
editar e imprimir listado de alumnos tomando en cuenta los
siguientes aspectos:
o Para poder agregar un alumno es obligatorio elegir
modalidad, código curso y sección. Luego debe de llenar
los campos rne, nombre, apellido, sexo, fecha.
o El código del botón Add permite agregar los datos del
alumno a la tabla de alumnos y al datagridview.
o Para editar los datos del alumno, debe de hacer los
cambios en la fila del datagridview y luego hacer clic
en el botón actualizar.

Elieser Núñez Eliesns08@hotmail.com 39


o Cuando seleccionemos una modalidad debe desplegar los
códigos de cursos de la modalidad seleccionada.
o Cuando seleccionemos un código de curso debe
desplegarse los datos del curso como el número de
curso, descripción estos controles deben de estar en
solo lectura.
o Cuando seleccionemos el número de sección debe de
visualizar el límite de alumnos, la jornada y desplegar
la cantidad de alumnos registrados en dicha sección;
esta lista debe de visualizarse en el datagridview.
o Para eliminar un alumno de la base de datos, solo debe
de seleccionar la fila donde se encuentran los datos
del alumno que quiere eliminar y luego debe de hacer
clic en el botón Eliminar.
o Desde aplicación obtendremos listado de alumnos
visibles en pantalla y también de forma impresa, a
través de los botones Vista Previa e Imprimir.

Elieser Núñez Eliesns08@hotmail.com 40


Agregue los siguientes controles al formulario:
 4 grupos de opciones(optiongroup)
 8 etiquetas(label)
 1 cajas de texto(TextBox)
 4 cuadros combinados (combobox)
 Tres controles numéricos (numericUpdow)
 Una cuadricula(datagridview)
 6 botones
 1 statusstip
En seguida proceda a establecer las propiedades requeridas:

Form1
Nombre FrmAlumnos
Texto Registro de Alumnos

Optiongroup1
Texto
Optiongroup2
Texto
Optiongroup3
Texto
Optiongroup4
Texto
Label1
Texto Modalidad

Label2
Texto Código de curso
Label3
Texto Numero de Curso
Label4
Texto Descripción

Elieser Núñez Eliesns08@hotmail.com 41


Label5
Texto Seccion

Label6
Texto Año
Label7
Texto Limite alumnos
Label8
Texto Jornada

TextBox1
Nombre Txtcurno2
readonly true
enabled False

Combobox1
Nombre Cbomodalidad2

Combobox2
Nombre Cbocurcod2
Combobox3
Nombre Cbodesc2
Enabled False
Combobox4
Nombre Cbojor
Enabled False

NumericUpDown1
Nombre NUDano

Elieser Núñez Eliesns08@hotmail.com 42


Maximun 2100
Minimun 2000

NumericUpDown2
Nombre NUDSEC
Maximun 100
Minimun 0

NumericUpDown3
Nombre NUDLIMITE
Enabled False

Maskedtextbox1
Nombre Mtxtrne
Mask 9999999999999

Maskedtextbox2
Nombre Mtxtnombre
Mask >LLLLLLLLLLLLLLLLLLLLLLLLL

Maskedtextbox3
Nombre Mtxtapellido
Mask >LLLLLLLLLLLLLLLLLLLLLLLLL

Maskedtextbox4
Nombre Mtxtsexo
Mask >L
Maskedtextbox5
Nombre Mtxtfecha
Mask 00/00/0000
Maskedtextbox6
Nombre Mtxtalu_tel
Mask 0000-0000
Maskedtextbox7

Elieser Núñez Eliesns08@hotmail.com 43


Nombre Mtxtalu_email
Mask

Datagridview1
Nombre Datagridview1

El código asociado a la aplicación lo iremos describiendo en


partes, este primer código que aparece en la imagen debajo, tiene
comentarios en cada línea de código para que tenga una mejor
comprensión, el procedimiento cargar (definido por el usuario) se
encarga de depositar los nombres de las modalidades en el combo
de modalidad, ningún procedimiento creado por el usuario puede
auto ejecutarse por eso como puedes observar se le llama desde el
procedimiento load, para que al inicializarse el formulario ya se
visualicen las modalidades dentro del combo (cbomodalidad2), a
continuación presentamos el siguiente código:

Elieser Núñez Eliesns08@hotmail.com 44


El siguiente código se produce en el combo (cbomodalidad2) en el
evento SelectedIndexChanged (que se produce cuando seleccionamos un elemento del control
mencionado). Lo que hace este código es que busca la modalidad seleccionada en la tabla de
modalidades y luego compara el código de la modalidad de la tabla de modalidades con el
código de modalidad de la tabla de cursos, para obtener los códigos de cursos, los cuales son
depositados en el combo (cbocurcod2). Aquí el código:

El código que presentamos a continuación se produce en el combo


(cbocurcod2), tiene como objetivo visualizar el número de curso y la
descripción del mismo de acuerdo al código de curso seleccionado, el
código tiene los comentarios para una mejor comprensión.

El próximo código se escribe en el control numérico (NUDSEC) en el


evento valuechanged(se produce con cada cambio de valor en el
control), tiene como objetivo mostrar el límite de alumnos y la
jornada de la sección seleccionada, así como visualizar todos los

Elieser Núñez Eliesns08@hotmail.com 45


alumnos que están matriculados en dicha sección. Para que entienda
mejor el código me tome el tiempo de escribir comentarios en casi
todas las líneas, así que espero le sea de mucha utilidad.

El procedimiento limpiar que presentamos a continuación, tiene como


objetivo quitar los datos específicos del alumno de los controles que
se encuentra en el groupbox2.

El siguiente código se produce en el botón Add, tiene como objetivo


agregar registros de alumnos a la tabla de alumnos y al
datagridview.la explicación al código se refleja en los comentarios
sobre líneas.

Elieser Núñez Eliesns08@hotmail.com 46


Este código permite eliminar registros de alumnos, para lograrlo
bastara con seleccionar la fila en el datagridview y luego haciendo
clic en el botón Eliminar. Este código no permite que se eliminen
registros de a;os anteriores al actual. A parte de eliminar el
registro de la tabla de alumnos también lo elimina del datagridview.

Elieser Núñez Eliesns08@hotmail.com 47


El código que veremos a continuación permite actualizar o registrar
los cambios que se realizan en una fila especifica del datagridview,
por ejemplo: si el nombre de un alumno está mal escrito, ubíquese en
la fila y columna donde se encuentra el nombre realice el cambio y
luego haga clic en el botón actualizar y listo. El código está muy
bien descrito.

Nos queda por programar el botón Vista Previa y el botón Imprimir, por
ahora lo dejamos hasta aquí, ya que primero tenemos que diseñar el
informe. Crear un conjunto de registros (dataset) y otras cosas que
veremos a continuación. Si trabajas con visual estudio 2008, el
cristal report viene integrado, si trabajas con versiones 2010 en
adelante tendrás que instalar Crystal Report. Si no le tienes aquí te
dejo este enlace para que lo descargues.
Elieser Núñez Eliesns08@hotmail.com 48
www.vidaenlinea2010.blogspot.com

Haz que mi esfuerzo y el tuyo valgan la pena. “Siempre adelante”


Continuemos, después de descargar Sap Crystal Report 2010 instálelo,
no ocupa ciencia para hacerlo, siga la lógica para lograrlo. Una vez
instalado, abramos el proyecto que estamos trabajando y realicemos la
siguiente configuración para poder utilizar el Crystal Report en
versiones mayores a visual estudio 2008.
Si tienes visual estudio 2010
como puedes ver en la imagen no
aparecen ningún elemento
relacionado con cristal report,
si lees el mensaje que aparece
en el recuadro marcado en la
imagen, nos describe porque no
aparecen los controles y nos
indica cómo hacer para
mostrarlos.
Para lograrlo
 haz clic derecho sobre el
nombre del proyecto.
 Luego en la opción
propiedades.
 En la ventana propiedades
haz clic en la ficha
Compilar.

 Haz clic en las opciones


de compilación avanzadas

 Luego cambiamos la versión de


NET Framework y seleccionamos “NET Framework 4”

Elieser Núñez Eliesns08@hotmail.com 49


 Por ultimo hacemos clic en aceptar y listo ya disponemos de los
controles CRYSTAL REPORT en nuestro proyecto.

Observa los controles en la siguiente imagen

Hoy si disponemos de esta herramienta así que ya podemos empezar a


diseñar el reporte. Para ello es necesario seguir un proceso el cual
te muestro paso a paso a continuación:

Creando el DataSet (conjunto de datos)


Un dataset es un conjunto de datos provenientes de consultas,
controles y tablas. Lo usaremos para crear los reportes en Crystal
Report. Así que manos a la obra.

Como crear un Data Set


 En el explorador de soluciones, haz clic derecho sobre el
nombre del proyecto.
 Luego seleccionamos la opción Agregar
 Luego clic en la opción nuevo elemento
 Aparecerá la siguiente ventana

Elieser Núñez Eliesns08@hotmail.com 50


 En esta ventana seleccionaremos “Conjunto de datos”, tal
como se observa en la imagen. Cambiamos el nombre al
dataset, le llamaremos “DsAlumno” como se muestra en la
imagen.
 Luego hacemos clic en Agregar y listo.

Esta es la ventana que nos aparecerá después de hacer clic en agregar,


un conjunto de datos vacío, así que el siguiente paso es crear
DataTable, para almacenar los datos que queremos visualizar en el
informe.

Elieser Núñez Eliesns08@hotmail.com 51


Crear un DataTable (tabla de datos) en el DataSet

 Ubícate en el Dataset
 Haz clic derecho y selecciona la opción agregar
 Luego haz clic en tabla de datos.
 Aparecerá la ventana que permite definir la estructura de
la datatable que estamos creando.

 La estructura alumnos que podemos observar es la que


crearemos. Así debe de quedar al final, así que comencemos.

 Comenzaremos asignándole nombre al datatable, para ello


solo haz doble clic sobre la parte superior de la ventana
datatable y asígnale el nombre “alumnos”

Para agregar columnas al DataTable: Alumnos. Haz lo siguiente

 Haz clic derecho sobre el Datatable: Alumnos


 Luego selecciona la opción agregar
 Después haz clic en columna
 Digita el nombre de la columna en esta caso: “Nombre” y listo
ya tenemos columna agregada. Asi debe de agregar las demás
columnas, tal como se observa en la estructura siguiente.

Elieser Núñez Eliesns08@hotmail.com 52


El campo nombre, código y teléfono son propios del instituto o
colegio, modalidad, curso y sección para identificar donde está
matriculado el alumno, los demás datos son del alumno(a).

Bien hasta aquí ya tenemos la tabla de datos creada, cabe mencionar


que esta tabla solo funciona de forma temporal, es decir que su
contenido se destruye al cerrar la aplicación que contiene los datos.

Seguro vamos avanzando muy bien, continuemos pues, el siguiente paso


es agregar un nuevo elemento (Crystal Report), crearemos el diseño del
reporte.

Creando el diseño del Informe (Crystal Report)


 En el explorador de soluciones, haz clic derecho sobre el
nombre del proyecto.
 Luego seleccionamos la opción Agregar
 Luego clic en la opción nuevo elemento
 Aparecerá la siguiente ventana

 En el panel de la izquierda elige Reporting


Elieser Núñez Eliesns08@hotmail.com 53
 Luego selecciona Crystal Report
 Asígnale nombre en este caso digita “CRalumno”
 Haz clic en Agregar
 Aparecerá la ventana Galería de Crystal Report

 Selecciona la opción “como informe en blanco”


 Haz clic en el botón aceptar
 Ahora si nos debe de aparecer la ventana diseño de informe.

Ya falta poco, el siguiente paso es diseñar el informe, es decir


prepararlo tal cual deseamos que se imprima en pantalla o impresora.
Así que manos a la obra. Ya verás cómo cada uno de los elementos que
hemos ido creando se conjuntan para lograr el objetivo final; que es
crear un reporte de alumnos por sección.

Elieser Núñez Eliesns08@hotmail.com 54


Una vez dentro del diseñador de informe, lo primero que haremos es
agregar campos de la tabla de datos en este caso la que creamos en el
dataset (dsalumnos) y cuyo nombre es alumnos.

Haz lo siguiente:

 En el explorador de campos haz clic derecho sobre Campos de base


de datos.
 Luego clic en asistente de base de datos
 aparece la siguiente ventana

 nos vamos donde dice datos del proyecto y configuramos tal como
te muestro en la siguiente imagen

Elieser Núñez Eliesns08@hotmail.com 55


 lo que hacemos aquí es seleccionar la tabla de alumnos para
disponer de sus campos o columnas y así poder agregarlas al
informe que estamos creando.
 Haz clic en el botón Aceptar, para agregar la tabla.

Si quieres comprobar si los campos se agregaron haz clic campos de


base de datos y veras que ya dispones de todos los campos de la
tabla de datos alumnos. Tal como te muestro en esta imagen.

Ahora vamos arrastrar los campos hacia el diseñador de informe para


ir dándole forma al reporte.
El proceso es sencillo, haces clic sostenido sobre la columna o
campo y lo llevas hasta el informe.
Cabe mencionar que los datos que van en forma de lista se ubican en
la columna detalle. Generalmente estos datos provienen de controles
(listview, datagridview, listbox entre otros) y de consultas sql.

Elieser Núñez Eliesns08@hotmail.com 56


Así que los campos que ubicaremos en la columna detalle son
(rne, nombrea, apellido, sexo). Agrégalos. deben de quedar
como lo veras en la siguiente imagen.

En la sección encabezado de informe. Colocaremos la siguiente


información. Aquí debe de ir el nombre del colegio, el código
y el número de teléfono, además agregaremos el título “Lista
de alumnos por sección”. Este título lo agregaremos desde el
panel Cuadro de herramientas con la herramienta o control
Objeto de texto de Crystal Report.

Cuando estamos digitando texto en el diseñador de informe debe de


aparecer esta barra de herramienta.

La cual te permite modificar el tipo y tamaño de la fuente.

El encabezado del informe debe de quedarte más o menos así. Trata


de que sea igual o mejor.

Elieser Núñez Eliesns08@hotmail.com 57


Falta agregar algunos campo como la modalidad, curso y seccion y el a;o, esto lo haremos en la seccion
encabezado de pagina.

Así que procedamos a realizarlo. Debe de quedarte parecido al que


te muestro en la siguiente imagen.

Fijate que los nuevos elementos que agregamos al informe aparecen


duplicados, le aplique negrita a las etiquetas de referencias las
cuales agregamos con el control objeto de texto, los que no tienen
negrita son los campos que agregamos de la tabla alumnos.

También utilice el objeto de línea, para dibujar un par de líneas


solo para mejorar la estética o presentación del informe.

En la sección Pie de página haremos que aparezca el número de


página: hazlo de la siguiente manera:

 En el explorador de campos, selecciona campos especiales


 Luego elegí el campo Numero de página y arrástralo hasta la
sección pie de página.
 A la par del campo número de página, pon un objeto de texto y
escribe “No. Pag. ”

Así quedaría el reporte después de agregar el pie de página.

Elieser Núñez Eliesns08@hotmail.com 58


En la sección pie de informe, puedes insertar un campo especial para
mostrar la fecha en la que se está imprimiendo el informe.

También puedes insertar un campo especial en la sección detalles antes


del campo rne, para que enumere los alumnos que estas visualizando en
el informe.es opcional al menos inténtalo.

Ya tenemos el informe listo. Guardemos todos los cambios en el


proyecto, es más deberías de hacerlo cada 10 minutos, y recuerda ir
haciendo una copia de seguridad de tu proyecto. Por cualquier
problemita, da la casualidad que siempre aparecen.

Ya falta muy poco, todo lo que haremos ahora será desde el formulario

Agreguemos un nuevo formulario: asignémosle el nombre de FrmReporte,


la función que cumplirá este formulario será de visualizar el reporte
en pantalla, a este formulario le agregaremos un control de Crystal
Report que permite dicha función.

Para lograrlo insertar este control en el formulario que acabamos de


crear (FrmReporte) haz lo siguiente:

 En el cuadro de herramientas
 En la seccion Creacion de informes
 Seleccione el control CrystalReportViewer y arrástralo al
formulario.

El formulario debe de quedar tal como se muestra en la siguiente


imagen.

Elieser Núñez Eliesns08@hotmail.com 59


Listo guardemos los cambios, ahora iremos al formulario de Alumnos
(FrmAlumno).

En el formulario de alumnos que ya tenemos codificado en un 90%, nos


hace falta codificar el botón Vista Previa y el Botón Imprimir. No lo
habíamos hecho antes, porque necesitábamos crear el reporte, todo el
proceso que acabamos de hacer. Ahora si comenzaremos con el botón
Vista Previa.

Elieser Núñez Eliesns08@hotmail.com 60


Este es el código que lleva el botón Vista Previa, tiene los
comentarios necesarios para su comprensión. Pero de forma general
podría decir que define una estructura idéntica a la tabla de datos
(Alumnos) que fue creada en el dataset (dsalumno) y que utilizamos en
el reporte para asociar los datos provenientes del formulario de
alumnos (frmalumnos). La tabla dt recibe esos datos y los envía al
reporte, en el reporte los recibe la tabla (alumnos) y de esa forma es
que es posible visualizar los datos y mandarlos al reporte.

Ahora codificaremos el botón Imprimir

Elieser Núñez Eliesns08@hotmail.com 61


Como puedes ver es casi una replica del boton Vista Previa, lo unico
cambia es la linea marcada en rojo, que manda el reporte a una ventana
de dialogo, donde podemos seleccionar la impresora y el número de
copias que deseamos imprimir.

Bueno es hora de probar, hazlo…

Seguro te apareció este mensaje de error cuando hiciste clic en Vista


Previa o Imprimir. En caso de que tengas Visual Estudio 2010, seguro
te aparece este error.

Tranquilo(a) tiene solución, para solucionarlo haremos lo siguiente:

En su proyecto abra el archivo app.config aparecerá la siguiente


estructura de código:

Elieser Núñez Eliesns08@hotmail.com 62


Pues es aquí donde corregiremos el problema, agregando el siguiente
código.

El código que debemos agregar es el que aparece dentro del rectángulo


de color rojo.
Guarde los cambios y ejecute de nuevo, seleccione una sección que
tenga alumnos registrados y haga clic en el botón vista previa para
poder visualizar el informe.

Elieser Núñez Eliesns08@hotmail.com 63


Elieser Núñez Eliesns08@hotmail.com 64

También podría gustarte