base de datos

June 1, 2017 | Autor: Jaime Zuniga | Categoria: Visual Basic 6.0
Share Embed


Descrição do Produto

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 [email protected] Elieser Núñez

[email protected]

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

[email protected]

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

[email protected]

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

Mod_cod

T

03

Código de modalidad

Mod_nom

T

50

Nombre de modalidad

Tipo

Ancho

Campo

TABLA CURSOS Nombre del

Descripción

Campo Elieser Núñez

[email protected]

4

Cur_cod

T

Cur_no

N

Cur_desc

T

Cur_nsec

N

Mod_cod

T

03

Código de Curso

Entero Numero de Curso 12

Descripción

Entero Cantidad secciones 03

Código de modalidad

TABLA SECCIONES Nombre del

Tipo

Ancho

Descripción

Campo Sec_id

AutoNumera cion

Sec_no

N

Entero

sec_jorn

T

20

Sec_limite

N

Entero

Limite alumnos

Sec_year

N

Entero

Año sección

Cur_cod

T

03

Numero de Sección Jornada

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.

Elieser Núñez

[email protected]

5

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

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 decir

un

modo

de

acceso

a

datos

desconectado. Esto quiere

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

[email protected]

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

[email protected]

7

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



HAGA



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:

CLIC EN AGREGAR REFERECIA

Elieser Núñez

[email protected]

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

[email protected]

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

[email protected]

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

recibir

la

línea

activa

conexión

a

la

variable

heredándole

CONEc

todos

los

para

que

pueda

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

[email protected]

11

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

Elieser Núñez

[email protected]

12

Desde

el

procedimiento

configurado

para

que

sub

sea

la

main(el primer

cual

más

aplicación

adelante que

será

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

[email protected]

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

[email protected]

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

[email protected]

15

APLICACIÓN Nº 1 (FRM-MODALIDAD) Elaborar editar

áreas

una o

aplicación

modalidades

que

permita

tomando

en

agregar,

cuenta

eliminar

los

y

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 la

a

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

[email protected]

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

Nombre

Txtcodigo

Nombre

TxtMododalidad

Text1

Text2

Button1 Nombre

BtnOk

Text

Ok

Button2 Nombre Elieser Núñez

BtnAyuda [email protected]

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

Elieser Núñez

de

una

tabla

temporal

que

almacenara

datos

[email protected]

18

provenientes

de

una

consulta,

pero

sus

valores

solo

se

mantendrán en tiempo de ejecución. 

El

procedimiento

todas

las

Cargar

modalidades

(),

tiene

existentes

como en

objetivo la

mostrar

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

[email protected]

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

[email protected]

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

[email protected]

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

[email protected]

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

[email protected]

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

[email protected]

24

Para modificar ancho de columnas haga lo siguiente

Aparece la siguiente imagen

Elieser Núñez

[email protected]

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

[email protected]

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

[email protected]

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

[email protected]

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

[email protected]

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

[email protected]

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

[email protected]

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

desplegarse curso,

los

datos

descripción

y

un

código

del

curso

cantidad

de como

de

curso el

debe

numero

secciones,

de

estos

controles deben de estar en solo lectura.

Agregue los siguientes controles al formulario: Elieser Núñez

[email protected]

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

[email protected]

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

[email protected]

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

[email protected]

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

[email protected]

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

[email protected]

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

[email protected]

38

APLICACIÓN Nº 4 (FRMALUMNOS) Elaborar editar

e

una

aplicación

imprimir

listado

que

de

permita

alumnos

agregar,

tomando

en

eliminar, 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. o Cuando seleccionemos una modalidad debe desplegar los códigos de cursos de la modalidad seleccionada. o Cuando

seleccionemos

desplegarse

los

datos

un

código

del

curso

de como

curso el

debe

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

[email protected]

39

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 Elieser Núñez

[email protected]

40

Texto Optiongroup3 Texto Optiongroup4 Texto Label1 Texto

Modalidad

Label2 Texto

Código de curso

Label3 Texto

Numero de Curso

Label4 Texto

Descripción

Label5 Texto

Seccion

Label6 Texto

Año

Label7 Texto

Limite alumnos

Label8 Texto

Jornada

TextBox1 Nombre

Txtcurno2

readonly

true

enabled

False

Elieser Núñez

[email protected]

41

Combobox1 Nombre

Cbomodalidad2

Combobox2 Nombre

Cbocurcod2

Combobox3 Nombre

Cbodesc2

Enabled

False

Combobox4 Nombre

Cbojor

Enabled

False

NumericUpDown1 Nombre

NUDano

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

Elieser Núñez

[email protected]

42

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 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

[email protected]

43

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.

Elieser Núñez

[email protected]

44

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 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.

Elieser Núñez

[email protected]

45

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

[email protected]

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.

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.

Elieser Núñez

[email protected]

47

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. 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.



Elieser Núñez

Haz clic en las opciones de compilación avanzadas

[email protected]

48



Luego cambiamos la versión de NET Framework y seleccionamos “NET Framework 4”



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

[email protected]

49





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

[email protected]

50

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 Luego selecciona Después haz clic Digita el nombre ya tenemos columna columnas, tal como

Elieser Núñez

sobre el Datatable: Alumnos la opción agregar en columna de la columna en esta caso: “Nombre” y listo agregada. Asi debe de agregar las demás se observa en la estructura siguiente.

[email protected]

51

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

[email protected]

52

   

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

[email protected]

53

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

[email protected]

54

 

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

[email protected]

55

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

[email protected]

56

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

[email protected]

57

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

[email protected]

58

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

[email protected]

59

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

[email protected]

60

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

[email protected]

61

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

[email protected]

62

Elieser Núñez

[email protected]

63

Lihat lebih banyak...

Comentários

Copyright © 2017 DADOSPDF Inc.