Sei sulla pagina 1di 67

3-8-2015 BASE DE DATOS Y

VISUAL STUDIO 2010


REVISTA CON CONOCIEMINETOS BASICOS Y
EJEMPLOS

LENGUAJE DE PROGRAMACION
JHOSELYN ZAPATA

0
CONTENIDO
INTRODUCCION ............................................................................................................................................... 1
USO DE CONTROLES ....................................................................................................................................... 1
EVENTOS............................................................................................................................................................ 2
CUADRO DE HERRAMIENTAS........................................................................................................................ 2
COMO ACTIVAR UN PDF EN VISUAL STUDIO ............................................................................................ 3
ACCESS. .............................................................................................................................................................. 4
CREAR UNA BASE DE DATOS ......................................................................................................................... 4
CREAR UNA BASE DE DATOS EN BLANCO ............................................................................................ 4
Agregar una tabla .................................................................................................................................. 5
CREAR BASE DE DATOS EN SQL SERVER 2005/2008 ............................................................................... 6
PROGRAMA 1 ................................................................................................................................................. 13
PROGRAMA 3 ................................................................................................................................................. 26
PROGRAMA 4 ................................................................................................................................................. 32
PROGRAMA 5 ................................................................................................................................................. 39
PROGRAMA 6 ................................................................................................................................................. 49
PROGRAMA 7 ................................................................................................................................................. 56
BIBLIOGRAFIA................................................................................................................................................. 65

1
INTRODUCCION
La combinación de Microsoft Access y Microsoft Visual Basic nos proporciona una excelente
herramienta para la creación de bases de datos (Access) y su acceso (Visual Basic) que nos
permite administrar nuestras colecciones de audio, libros, video, etc. este ejercicio nos
permitirá concebir y construir bases de datos que se amolden a nuestras necesidades
particulares.
Explica cómo crear una base de datos de escritorio mediante una plantilla y cómo crear una
base de datos desde SQLSERVER desde cero creando sus propias tablas, formularios, informes
y otros objetos de base de datos.

USO DE CONTROLES

PROPIEDADES METODOS EVENTOS


• Todos los controles • Son procedimientos • Son acciones que
disponen de una serie asociados a los pueden ser motivadas
de propiedades las controles, es decir, por el propio usuario o
cuales podemos rutinas ya establecidas por mismo sistema
cambiar al incluirlos en que podemos invocar operactivo. Ejemplos
nuestras aplicaciones. desde nuestras pueden ser el
Ejemplos de aplicaciones para que movimiento del raton o
propiedades son el se realice alguna hacer click sobre su
color, el tipo de letra, operación sobre el botón.
el nombre, el texto, control. • En Visual Basic digamos
etc... que se utiliza la
programación
orientada a eventos, lo
cual es una de las
diferencias más
importantes respecto a
la programación lineal
de MS DOS.

1
EVENTOS

MouseMove Al mover el ratón por encima del control.


Mousedown Al pulsar cualquier botón del ratón.
Change Al cambiar el contenido del control.
Click Al hacer clic con el botón izquierdo del ratón sobre el control.
Doubleclick Al hacer doble clic con él con el botón izquierdo del ratón sobre el
control.
Getfocus Este evento se activa cuando el control recibe el enfoque, es decir,
cuando se activa el control en tiempo de ejecución para introducir
datos en él o realizar alguna operación.
Lostfocus Es el contrario del anterior evento, se activa cuando el control pierde
el enfoque, es decir, se pasa a otro control para seguir introduciendo
datos.

CUADRO DE HERRAMIENTAS

Este control es también uno de los más utilizados, aunque su


utilidad queda restringida a la visualización de datos en el mismo,
no permitiendo la introducción de datos por parte del usuario.
Mediante este control podremos realizar tanto la entrada como la
salida de datos en nuestras aplicaciones.
Permite al usuario hacer clic en él para ejecutar una acción.
Nos permiten seleccionar varias opciones marcando el cuadrito
que aparece a su izquierda. El cuadrito pulsado equivale a un "sí" y
sin pulsar a un "no" o, lo que es lo mismo, a "true" o "false".
Permite a los usuarios seleccionar uno o varios elementos de una
lista predefinida.
Se utiliza para mostrar datos en un cuadro combinado desplegable.
De forma predeterminada, el control ComboBox aparece en dos
partes.
Se utiliza para mostrar y cargar archivos de imagen

Permite al usuario seleccionar una única opción de un grupo de


opciones cuando está emparejado con otros controles de
RadioButton.

El control TabControl de Windows Forms muestra múltiples fichas,


similares a los divisores de un cuaderno o a las etiquetas de un
conjunto de carpetas de un archivador. Las fichas pueden contener
imágenes y otros controles. Use TabControl para crear páginas de
propiedades.
Me permite mostrar vistas de solo lectura de una pequeña
cantidad de datos, o puede ampliarlo para mostrar vistas editables
de conjuntos de datos muy grandes.
Puede almacenar el informe en una aplicación Web o para
Windows, con uno de los controles de visores de Crystal Reports
para Visual Studio. La presentación de informes, tanto en clientes

2
Windows como en HTML 3.2 ó 4.0, es muy interactiva y
proporciona funciones como la profundización en gráficos, la
exploración de informes y la búsqueda de texto.
Con esta opción puedo ingresar documentos PDF en un formulario
de Visual Studio
Es un control real que se ubica en un formulario en tiempo de
diseño; sin embargo, no se ve en tiempo de ejecución.

COMO ACTIVAR UN PDF EN VISUAL STUDIO

 Damos click derecho en el cuadro de herramientas y escogemos la opción elegir


elementos.

 Ingresamos a la opción de componentes COM y escogemos la opción Adobe PDF


Reader.

 En el cuadro de herramientas se aparece el siguiente icono.

3
ACCESS.
Al iniciarse Access por primera vez o al cerrarse una base de datos sin que se cierre Access, se
muestra la vista Backstage de Microsoft Office.

CREAR UNA BASE DE DATOS


Una base de datos en blanco Puede comenzar desde cero si lo desea. Es una buena opción si
tiene requisitos de diseño muy específicos o si dispone de datos que necesita adaptar o
incorporar.

CREAR UNA BASE DE DATOS EN BLANCO


1. En la ficha Archivo, haga clic en Nuevo y después en Base de datos en blanco.
2. En el panel derecho, en Base de datos en blanco, escriba un nombre de archivo en el
cuadro Nombre de archivo. Para cambiar la ubicación predeterminada del archivo, haga clic

en Buscar una ubicación donde colocar la base de datos (situado junto al cuadro Nombre
de archivo), busque la nueva ubicación y, a continuación, haga clic en Aceptar.
3. Haga clic en Crear.
Access crea la base de datos con una tabla vacía denominada Tabla1 y, a continuación, abre
Tabla1 en la vista Hoja de datos. El cursor se sitúa en la primera celda vacía de la columna Haga
clic para agregar.
4. Comience a escribir para agregar datos o pegue datos desde otro origen, tal y como se
describe en la secciónCopiar los datos de otro origen en una tabla de Access.
Escribir datos en la vista Hoja de datos es muy similar a trabajar en una hoja de cálculo de
Excel. La estructura de la tabla se crea conforme se escriben los datos. Cuando se agrega una
nueva columna a la hoja de datos, se define un nuevo campo en la tabla. Access define
automáticamente el tipo de datos de cada campo en función de los datos que escribe.

Si, de momento, no desea escribir datos en Tabla1, haga clic en Cerrar . Si realizó cambios
en la tabla, Access le pedirá que guarde los cambios. Haga clic en Sí para guardar los cambios,
en No para descartarlos o en Cancelarpara dejar la tabla abierta.
Si cierra Tabla1 sin guardar los cambios al menos una vez, Access elimina toda la tabla,
aunque haya escrito datos en ella.

4
Agregar una tabla
Puede agregar nuevas tablas a una base de datos existente mediante los comandos del
grupo Tablas en la pestañaCrear.

Crear una tabla empezando en la vista Hoja de datos En la vista Hoja de datos, puede escribir
datos inmediatamente y dejar que Access cree la estructura de la tabla en segundo plano. Los
nombres de los campos se asignan mediante números (Campo1, Campo2, etc.) y Access define
automáticamente el tipo de datos de cada campo en función de los datos que escribe.

1. En el grupo Tablas de la ficha Crear, haga clic en Tabla.


Access crea la tabla y selecciona la primera celda vacía de la columna Haga clic para agregar.
2. En la ficha Campos, en el grupo Agregar y eliminar, haga clic en el tipo de campo que desee

agregar. Si no ve el tipo que desea, haga clic en Más campos .


Access muestra una lista de tipos de campo usados regularmente. Haga clic en el tipo de
campo que desee y Access agrega el nuevo campo a la hoja de datos en el punto de inserción.
Puede mover el campo arrastrándolo. Al arrastrar un campo a una hoja de datos, aparece una
barra de inserción vertical, que le indica dónde se colocará el campo.
3. Para agregar datos, comience a escribir en la primera celda vacía o pegue datos de otro origen,
tal y como se describe en la sección Copiar los datos de otro origen en una tabla de Access.
4. Para cambiar el nombre de una columna (campo), haga doble clic en el encabezado de
columna y escriba el nuevo nombre.
Debería asignar un nombre significativo a cada campo que le permita saber qué contiene
cuando lo examine en el panel Lista de campos.
5. Para mover una columna, haga clic en su encabezado para seleccionar la columna y, a
continuación, arrastre la columna a la ubicación que desee.
Puede seleccionar también varias columnas contiguas y arrastrarlas todas de una vez a una
nueva ubicación. Para seleccionar varias columnas contiguas, haga clic en el título de la
primera columna y, a continuación, con la tecla MAYÚS presionada, haga clic en el título de la
última columna.
Propiedad Descripción
Tamaño del Para los campos de texto, esta propiedad define el número máximo de caracteres que se

5
campo puede almacenar en el campo. El valor máximo es 255. Para los campos numéricos, esta
propiedad define el tipo de número que se va a almacenar (Entero largo, Doble, etc.). Para
permitir un almacenamiento de los datos más eficaz, es aconsejable asignar la menor
cantidad de espacio prevista para los datos. Puede aumentar ese valor posteriormente si
cambian sus necesidades.
Esta propiedad define el modo en que se muestran los datos. No afecta a los datos reales
Formato cuando se almacenan en el campo. Puede seleccionar un formato predefinido o especificar
un formato personalizado.
Utilice esta propiedad para especificar un modelo para todos los datos que se incluyan en
este campo. De este modo, se asegurará de que todos los datos se escriben correctamente y
Máscara de
contienen el número de caracteres necesario. Para obtener ayuda en la creación de una
entrada
máscara de entrada, haga clic en situado en el margen derecho del cuadro de
propiedades.
Utilice esta propiedad para especificar el valor predeterminado que aparecerá en este
Valor campo cada vez que se agregue un nuevo registro. Por ejemplo, si hay un campo de
predeterminado fecha/hora en el que siempre desea registrar la fecha en la que se agregó el registro, puede
escribir "Fecha()" (sin las comillas dobles) como valor predeterminado.
Esta propiedad indica si un valor es necesario en este campo. Si establece esta propiedad
Requerido enSí, Access no permite que se agregue un nuevo registro a menos que se especifique un
valor para este campo.
CREAR BASE DE DATOS EN SQL SERVER 2005/2008
Para el ejemplo vamos a crear una base de datos llamada “bd2010” la cual contendrá 3 tablas
(estudiantes, cursos y matriculas).
Abrimos SQL Managment Studio (Inicio – Todos los programas – Microsoft SQL Server 2005 –
SQL Server Management Studio Express) como se muestra en la siguiente imagen:

Al momento de conectar al servidor, cambiemos el nombre del servidor


a (local)\SQLEXPRESScomo se muestra en la imagen:

6
Luego creamos la base de datos con sus respectivas tablas:

Ingresamos el nombre de la base de datos en este ejemplo “bd2010” y presionamos el botón


aceptar, como se muestra en la imagen:

Creación de la tabla estudiantes


Luego en el explorador de objetos buscamos la nueva base de datos que acabamos de crear,
desplegamos el arbol y en la carpeta tablas hacemos clic derecho “Nueva tabla…”

7
Creamos la tabla estudiantes con los siguientes campos: identificacion, pri_nom, seg_nom,
pri_ape, seg_ape, genero, telefono, direccion, los tipos de datos son como se muestra en la
siguiente imagen:

Establecemos como identificación principal la cedula:

Presionamos el botón guardar y digitamos el nombre de la tabla en este caso “estudiantes”


Creación de la tabla cursos:
Nuevamente hacemos clic derecho sobre la carpeta tablas y seleccionamos la opción “Nueva
tabla…” como se ilustra a continuación:

La tabla contara con dos campos id y nombre, los tipos de datos son como se muestra en la
siguiente imagen:

Establecemos la cedula como clave principal ¸

8
Presionamos guardar y escribimos el nombre de la tabla “cursos”
Creación de la tabla matriculas
La tabla matriculas tendra 4 campos id, id_estudiante, id_curso y fecha_matricula,
nuevamente hacemos clic derecho sobre la carpeta tablas y seleccionamos la opción “Nueva
tabla…” como se ilustra a continuación:

Luego de crear la tabla hacemos clic derecho sobre el campo id y seleccionamos la opción
establecer clave principal:

Por ultimo hacemos clic en la opción guardar y escribimos el nombre de la tabla “matriculas”
Creación del diagrama de la base de datos

9
Hacemos clic derecho sobre la carpeta “Diagramas de bases de datos”, nos aparecerá una
ventana haciendo una pregunta a la cual responderemos “yes”

Nuevamente hacemos clic derecho sobre la carpeta “Diagramas de bases de datos” y


seleccionamos la opción “Nuevo diagrama de bases de datos”

Seleccionamos las tres tablas, pulsamos el botón agregar y luego cerrar:

Luego organizamos las 3 tablas de esta manera:

Seleccionamos la llave principal (llave primaria) de la tabla estudiantes (identificación) y


presionando el botón izquierdo del Mouse arrastramos la llave (identificación) hasta la tabla
matriculas

10
Presionamos el botón aceptar, y repetimos los mismos pasos con la tabla cursos, el resultado
final se muestra en la siguiente imagen:

Damos clic en cambiar correspondiente al campo origen de datos y se no mostrará unaventana


como la de abajo, ahí verificamos que este seleccionado Microsoft SQL Server y damos en
aceptar.Una vez de haber seleccionado el origen de dato, continuamos con la ventana
de propiedades de conexión

Seleccionamos el nombre del servidor con que deseamos trabajar para nuestro
caso el nombre de nuestro servidor tiene el nombre de: (local).Una forma de darnos cuenta
cual es el nombre de nuestro servidor es iniciando SQLServer 2008 y la primer ventana que se
nos muestra podemos visualizar el nombre del servidor, como en el ejemplo que se muestra

11
Otra forma de conocer el nombre de nuestro servidor es, situándonos en nuestrainterfaz de
sql, seleccionamos la opción conectar y luego seleccionamos la opciónMotor de Bases de
datos..

12
PROGRAMA 1

ENUNCIADO
Diseñe una base de datos para solicitar los datos básicos del usuario, concatenarla con Visual
Studio mediante formularios y agregue los botones eliminar, actualizar, buscar y editar.
ANÁLISIS
Creamos una base de datos en Acces, en la cual vamos incluir 6 campos de datos personales en
donde ingresaremos la información requerida de una empresa, información que enlazaremos a
nuestro aplicativo de visual Studio.
Una vez creada nuestra base de datos en Access, creamos los formularios necesarios en Visual
Studio 2010, en los que programaremos nuestra aplicación, además de esto utilizaremos
labels, textboxes, botones, pictures boxes e imágenes para desarrollar el diseño.
DOCUMENTACIÓN EN ACCESS
En Access, crearemos una base de datos llamada datospersonales.
En nuestra tabla por defecto agregamos los campos que vamos a necesitar:
En cada campo escogemos el tipo de dato que vamos a utilizar en este caso utilizaremos tipos
de dato de texto y numero.

Guardamos todos los cambios realizados en nuestra tabla bajo esta condición:
La base de datos debe guardarse como Microsoft Access Database (.mdb) o base de datos
2000-2003, de esta manera podrá ser compatible con nuestro aplicativo de VS10.
DOCUMENTACIÓN EN VISUAL STUDIO 2010
Creamos un nuevo proyecto para empezar, guardándolo donde sea de nuestro agrado, en este
caso lo nombraremos “3.datos”.
Una vez realizado esto debemos irnos a las propiedades de nuestro aplicativo: A la opción de
compilación/opciones de compilación avanzadas

13
Nos aparecerá una ventana en la que debemos cambiar la opción de .NET Framework Cliente
Profile únicamente por .NET Framework:
De esta forma:

Una vez realizado eso podremos unir nuestra base de datos de la siguiente manera:
En el menú Datos, escogemos la opción: agregar nuevo origen de datos:

Especificamos el tipo de dato de origen, en este caso una base de datos:

En nueva conexión escogemos la opción de “Nueva Conexión” y aceptamos

En esta ventana escogemos las tablas y las vistas para presentar en nuestro aplicativo y
finalizamos.

Seguido a ello llamamos los datos de nuestra base a nuestro aplicativo. Mediante la misma
opción de Datos, en la opción Mostrar orígenes de datos.

Ahora proseguiremos a documentar la codificación de cada uno de los formularios y objetos.

14
CODIFICACIÓN
Public Class Form1
Private Sub DatosBindingNavigatorSaveItem_Click(ByVal sender
As System.Object, ByVal e As System.EventArgs) Handles DatosBindingNavigatorSaveItem.Click
Me.Validate()
Me.DatosBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.DatospersonalesDataSet)
Este código carga
End Sub datos en la tabla
'DatospersonalesData
Private Sub Form1_Load(ByVal sender As System.Object, ByVal Set.datos' se puede
e As System.EventArgs) Handles MyBase.Load moverla o quitar
según sea necesario
'TODO: esta línea de código carga datos en la tabla 'Datospersonales
DataSet.datos' Puede moverla o quitarla según sea necesario.
Me.DatosTableAdapter.Fill(Me.DatospersonalesDataSet.datos)
End Sub
End Class
Public Class Form2
Private Sub DatosBindingNavigatorSaveItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles DatosBindingNavigatorSaveItem.Click
Me.Validate()
Este código carga
Me.DatosBindingSource.EndEdit() datos en la tabla
Me.TableAdapterManager.UpdateAll(Me.DatospersonalesDataSet) 'DatospersonalesData
Set.datos' se puede
End Sub moverla o quitar
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As según sea necesario

System.EventArgs) Handles MyBase.Load


'TODO: esta línea de código carga datos en la tabla 'Datospersonales
DataSet.datos' Puede moverla o quitarla según sea necesario.
Me.DatosTableAdapter.Fill(Me.DatospersonalesDataSet.datos)
End Sub
Private Sub editar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles editar.Click Este código nos va a
permitir editar los
Me.DatosTableAdapter.editar(CedulaTextBox.Text, NombreTextBox. datos guardados en
Text, ApellidoTextBox.Text, EdadTextBox.Text, DireccionTextBox.Text, la base de datos

TelefonoTextBox.Text, CedulaTextBox.Text)
Me.DatosTableAdapter.Fill(Me.DatospersonalesDataSet.datos)

15
End Sub
Este código nos va a
permitir eliminar los
Private Sub eliminar_Click(ByVal sender As System.Object, ByVal e As
datos que ya no nos
System.EventArgs) Handles eliminar.Click sirve en la base de
datos
MsgBox("Seguro Desea eliminar", MsgBoxStyle.OkCancel)
If MsgBoxStyle.OkCancel = 0 Then
Me.DatosTableAdapter.eliminar(CedulaTextBox.Text)
'Para actualizar la tabla' Esta línea de código
Me.DatosTableAdapter.Fill(Me.DatospersonalesDataSet.datos) es para actualizar la
tabal
End If
End Sub
Private Sub buscar_Click(ByVal sender As System.Object, ByVal e
Este código nos va a
As System.EventArgs) Handles buscar.Click
permitir buscar los
Me.DatosTableAdapter.FillBy(Me.DatospersonalesDataSet.datos, datos que de la
persona que
CedulaTextBox.Text) necesitemos
End Sub
Private Sub actualizar_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles actualizar.Click
Me.DatosTableAdapter.Fill(Me.DatospersonalesDataSet.datos)
End Sub
Private Sub CedulaTextBox_KeyPress(ByVal sender As Object,
ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Este código nos va a
CedulaTextBox.KeyPress permitir bloquear el
ingreso de letras en el
If Char.IsDigit(e.KeyChar) Then TexBox
e.Handled = False
ElseIf Char.IsControl(e.KeyChar) Then
e.Handled = False
Else
e.Handled = True
End If
End Sub
Private Sub NombreTextBox_KeyPress(ByVal sender As Object,
ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles
Este código nos va a
permitir bloquear el

16
ingreso de letras en el
TexBox
NombreTextBox.
KeyPress
If Char.IsLetter(e.KeyChar) Then
e.Handled = False
ElseIf Char.IsControl(e.KeyChar) Then
e.Handled = False
Else
e.Handled = True Fin de la clse
End If
End Sub
End Class
CORRIDO DEL PROGRAMA

17
PROGRAMA 2

ENUNCIADO:
Diseñe una base de datos para solicitar información básica del usuario y concatenarla con
visual studio mediante formularios.
ANÁLISIS
Para realizar esta aplicación primero debemos crear una base de datos en acces, en la cual
vamos incluir 7 campos de datos personales en donde ingresaremos la información requerida
de una empesa, información que enlazaremos a nuestro aplicativo de visual studio.
Una vez creada nuestra base de datos en Access, creamos los formularios necesarios en Visual
Studio 2010, en los que programaremos nuestra aplicación, además de esto utilizaremos
labels, textboxes, botones, pictures boxes e imágenes para desarrollar el diseño.
DOCUMENTACIÓN EN ACCESS
En Access, crearemos una base de datos llamada Base de datos1

En nuestra tabla por defecto agrareamos los campos que vamos a necesitar:

En cada campo escogemos el tipo de dato que vamos a utilizar en este caso utilzaremos tipos
de dato de texto “corto”

De igual forma en las propiedades generales de cada campo establecemos el tamaño de dato
que vamos a utilizar

18
Una vez listos nuestros campos, guardamos la tabla creada, dando clic derecho en la opción
“Vista Diseño”. La llamaremos “datos generales”

Llenamos los datos de cada campo.

Guardamos todos los cambios realizados en nuestra tabla bajo esta condición:
La base de datos debe guardarse como Microsoft Access Database (.mdb) o base de datos
2000-2003, de esta manera podrá ser compatible con nuestro aplicativo de VS10.
Documentación en Visual Studio 2010:
Creamos un nuevo proyecto para empezar, guardándolo donde sea de nuestro agrado, en este
caso lo nombraremos “3.datos”.
Una vez realizado esto debemos irnos a las propiedades de nuestro aplicativo: A la opción de
compilación/opciones de compilación avanzadas

19
Nos aparecerá una ventana en la que debemos cambiar la opción de .NET Framework Cliente
Profile únicamente por .NET Framework:
De esta forma:

Una vez realizado eso podremos unir nuestra base de datos de la siguiente manera:
En el menú Datos, escogemos la opción: agregar nuevo origen de datos:

Especificamos el tipo de dato de origen, en este caso una base de datos:

En nueva conexión escogemos la opción de “Nueva Conexión” y aceptamos

20
En esta ventana escogemos las tablas y las vistas para presentar en nuestro aplicativo y
finalizamos.

Seguido a ello llamamos los datos de nuestra base a nuestro aplicativo. Mediante la misma
opción de Datos, en la opción Mostrar orígenes de datos.

Ahora proseguiremos a documentar la codificación de cada uno de los formularios y objetos.


CODIFICACIÓN

Private Sub IngresosToolStripMenuItem_Click(ByVal sender As


System.Object, ByVal e As System.EventArgs)
Handles IngresosToolStripMenuItem.Click
Form1.Show()
End Sub
Private Sub EditorToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) A través del
Handles EditorToolStripMenuItem.Click menú strip
llamamos en
Form4.Show() cada opción
End Sub a cada
formulario
Private Sub GeneralToolStripMenuItem_Click(ByVal sender As que usemos
en el
System.Object, ByVal e As System.EventArgs)
aplicativo.
Handles GeneralToolStripMenuItem.Click
Form2.Show()
End Sub
Private Sub CiudadToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs)
Handles CiudadToolStripMenuItem.Click
Form5.Show() End Sub
Private Sub NOMBRETextBox_KeyPress(ByVal sender As

21
Object, ByVal e As System.Windows.Forms.KeyPress Validamos el
EventArgs) Handles NOMBRETextBox.KeyPress textbox
nombre del
If Char.IsLetter(e.KeyChar) Then primer
e.Handled = False formulario
para que
ElseIf Char.IsControl(e.KeyChar) Then permite solo
ingreso de
e.Handled = False
texto
Else
e.Handled = True
End If
End Sub
Private Sub APELLIDOTextBox_KeyPress(ByVal sender As Validamos
Object, ByVal e As System.Windows.Forms.KeyPress textbox
apellido del
EventArgs) Handles APELLIDOTextBox.KeyPress primer
If Char.IsLetter(e.KeyChar) Then formulario
para que
e.Handled = False permite solo
ingreso de
ElseIf Char.IsControl(e.KeyChar) Then
texto
e.Handled = False
Else
e.Handled = True
End If
End Sub
Private Sub CIUDADTextBox_KeyPress(ByVal sender As
Validamos
Object, ByVal e As System.Windows.Forms.KeyPress
textbox
EventArgs) Handles CIUDADTextBox.KeyPress ciudad del
primer
If Char.IsLetter(e.KeyChar) Then formulario
e.Handled = False para que
permite solo
ElseIf Char.IsControl(e.KeyChar) Then ingreso de
e.Handled = False texto

Else
e.Handled = True
End If
End Sub
Private Sub DIRECCIONTextBox_KeyPress(ByVal sender As
Object, ByVal e As System.Windows.Forms.KeyPress

22
EventArgs) Handles DIRECCIONTextBox.KeyPress
If Char.IsLetter(e.KeyChar) Then
Validamos
e.Handled = False textbox
direccion del
ElseIf Char.IsControl(e.KeyChar) Then primer
e.Handled = False formulario
para que
Else permite solo
e.Handled = True ingreso de
texto
End If End Sub
Private Sub CEDULATextBox_KeyPress(ByVal sender As
Object, ByVal e As System.Windows.Forms.KeyPress
Validamos
EventArgs) Handles CEDULATextBox.KeyPress textbox
cedula del
If Char.IsDigit(e.KeyChar) Then
primer
e.Handled = False formulario
para que
ElseIf Char.IsControl(e.KeyChar) Then permite solo
e.Handled = False ingreso de
numeros
Else
e.Handled = True
End If
End Sub
Private Sub TELEFONOTextBox_KeyPress(ByVal sender As
Object, ByVal e As System.Windows.Forms.KeyPress Validamos
EventArgs) Handles TELEFONOTextBox.KeyPress textbox
teléfono para
If Char.IsDigit(e.KeyChar) Then que permite
e.Handled = False solo ingreso
de numeros
ElseIf Char.IsControl(e.KeyChar) Then
e.Handled = False
Else
e.Handled = True End If End Sub
Private Sub Button1_Click(ByVal sender As System.Object,
Programamos
ByVal e As System.EventArgs) Handles Button1.Click nuestro botón
de modificar,
Me.Datos_generalesTableAdapter.EDITAR(CEDULA
que editara
TextBox.Text, NOMBRETextBox.Text, APELLIDOTextBox.Text, de igual
forma los
TELEFONOTextBox.Text, CIUDADTextBox.Text, DIRECCION datos de
TextBox.Text, CORREOTextBox.Text, CEDULATextBox.Text) nuestra BD

23
Me.Datos_generalesTableAdapter.Fill(Me.Base_de_datos1
DataSet.datos_generales)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, Programamos
ByVal e As System.EventArgs) Handles Button2.Click nuestro botón
de buscar
Me.Datos_generalesTableAdapter.FillBy(Me.Base_de_
datos1DataSet.datos_generales, CEDULATextBox.Text)
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, Programamos


ByVal e As System.EventArgs) Handles Button3.Click nuestro botón
eliminar, que
MsgBox("El registro sera borrado") borrara de
Me.Datos_generalesTableAdapter.BORRAR(CEDULA igual forma
los datos de
TextBox.Text) nuestra BD
Me.Datos_generalesTableAdapter.Fill(Me.Base_de_datos1
DataSet.datos_generales)
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, Programamos
ByVal e As System.EventArgs) Handles Button4.Click nuestro botón
actualizar
Me.Datos_generalesTableAdapter.Fill(Me.Base_de_datos1
DataSet.datos_generales)
End Sub
CORRIDO DEL PROGRAMA

24
25
PROGRAMA 3

ENUNCIADO:

Diseñe una guía telefónica

ANÁLISIS:

Para realizar esta aplicación primero debemos crear una base de datos en access, en la cual
vamos incluir 8 campos de datos personales en donde ingresaremos la información de cada
usuario de un teléfono esta información enlazaremos a nuestro aplicativo de visual studio.

Una vez creada nuestra base de datos en Access, creamos los formularios necesarios en Visual
Studio 2010 el cual tendrá 4 formularios.

 El primer formulario consta de un menú Strip.


 El segundo formulario consta de un TabControl, 8 label y 8 textbox.
 El tercer formulario consta de 8 label, 8 textbox, un DataGridView y 4 button

BASE DE DATOS EN ACCES

En Access, crearemos una base de datos llamada Base de datos1

En nuestra tabla por defecto agregamos los campos que vamos a necesitar:

En cada campo escogemos el tipo de dato que vamos a utilizar en este caso los dato serán de
texto “corto”

26
De igual forma en las propiedades generales de cada campo establecemos el tamaño de dato
que vamos a utilizar

Una vez listos nuestros campos, guardamos la tabla creada, dando clic derecho en la opción
“Vista Diseño”. La llamaremos “guia”

Guardamos todos los cambios realizados en nuestra tabla bajo esta condición:

La base de datos debe guardarse como Microsoft Access Database (.mdb) o base de datos
2000-2003, de esta manera podrá ser compatible con nuestro aplicativo de VS10.

DOCUMENTACIÓN EN VISUAL STUDIO 2010:

Creamos un nuevo proyecto para empezar, guardándolo el disco c, en este caso lo


nombraremos “guía telefónica”.

Una vez realizado eso podremos unir nuestra base de datos de la siguiente manera:
En el menú Datos, escogemos la opción: agregar nuevo origen de datos:

27
Especificamos el tipo de dato de origen, en este caso una base de datos:

En nueva conexión escogemos la opción de “Nueva Conexión” y aceptamos

En esta ventana escogemos las tablas y las vistas para presentar en nuestro aplicativo y
finalizamos.

Seguido a ello llamamos los datos de nuestra base a nuestro aplicativo. Mediante la misma
opción de Datos, en la opción Mostrar orígenes de datos.

En vista diseño realizamos la programación para los cuatro botones de eliminar, editar,
buscar, actualizar

Elegimos el tipo de consulta que deseamos realizar

28
Select

Delete

Update

Insert

Codificación de cada uno de los formularios y objetos.


Public Class Form1

Private Sub DatosToolStripMenuItem_Click(ByVal Esta línea de código realiza el


sender As System.Object, ByVal e As proceso para ingresar al
System.EventArgs) Handles DatosToolStripMenuItem formulario 2
.Click
Form2.Show()
End Sub
Private Sub SalirToolStripMenuItem_Click(ByVal
Esta línea de código realiza el
proceso para salir del programa

29
sender As System.Object, ByVal e As System.EventArgs)
Handles SalirToolStripMenuItem.Click
End
End Sub
Private Sub EdicionToolStripMenuItem_Click(ByVal Esta línea de código realiza el
sender As System.Object, ByVal e As System.EventArgs) Handles proceso para ingresar al
EdicionToolStripMenuItem.Click formulario 3
Form3.Show()

End Sub
End Class
Public Class Form2
Private Sub GuiaBindingNavigatorSaveItem_Click(ByVal Esta línea de código realiza el
sender As System.Object, ByVal e As System.EventArgs) proceso para ingresar al
Handles GuiaBindingNavigatorSaveItem.Click formulario 2
Me.Validate()
Me.GuiaBindingSource.EndEdit()

Me.TableAdapterManager.UpdateAll
(Me.Base_de_datos1DataSet)
End Sub Esta línea de código carga
datos en la tabla
Private Sub Form2_Load(ByVal sender As System. 'Base_de_datos1DataSet.gui
Object, ByVal e As System.EventArgs) Handles MyBase.Load a' Puede moverla o quitarla
según sea necesario.
Me.GuiaTableAdapter.Fill(Me.Base_de_datos1DataSet.guia)
End Sub

Private Sub TabPage1_Click(ByVal sender As System.Object,


ByVal e As System.EventArgs) Handles TabPage1.Click

End Sub
End Class
Public Class Form3
Esta línea de código
Private Sub Form3_Load(ByVal sender As System.Object,
carga datos en la tabla
ByVal e As System.EventArgs) Handles MyBase.Load
Me.GuiaTableAdapter.Fill(Me.Base_de_datos1DataSet 'Base_de_datos1DataSet.
.guia) guia' Puede moverla o
End Sub quitarla según sea
Private Sub refrescar_Click(ByVal sender As System.Object, necesario.
ByVal e As System.EventArgs) Handles refrescar.Click
Me.GuiaTableAdapter.Fill(Me.Base_de_datos1DataSet.guia) Estas líneas de
End Sub código mediante un
button me permite
Private Sub buscar_Click(ByVal sender As System.Object, buscar mediante el
ByVal e As System.EventArgs) Handles buscar.Click código.
Me.GuiaTableAdapter.FillBy(Me.Base_de_datos1DataSet.guia,
CodigoTextBox.Text)
End Sub

30
Private Sub eliminar_Click(ByVal sender As System.Object, Estas líneas de
ByVal e As System.EventArgs) Handles eliminar.Click código mediante un
MsgBox("Este registro sera elliminado") button me permite
Me.GuiaTableAdapter.borrar(CodigoTextBox.Text) eliminar mediante el
Me.GuiaTableAdapter.Fill(Me.Base_de_datos1DataSet.guia) código.

End Sub
Private Sub actualizar_Click(ByVal sender As System.Object,
Estas líneas de
ByVal e As System.EventArgs) Handles editar.Click código mediante un
Me.GuiaTableAdapter.editar(CodigoTextBox.Text, NombreTextBox button me permite
.Text, ApellidoTextBox.Text, TelefonoTextBox.Text, actualizar las líneas
CiudadTextBox.Text, DireccionTextBox.Text, CelularTextBox.Text, CorreoTextBox.Text, de texto
CodigoTextBox.Text)
Me.GuiaTableAdapter.Fill(Me.Base_de_datos1DataSet.guia)

End Sub

End Class

CORRIDO DEL PROGRAMA

31
PROGRAMA 4

ENUNCIADO
En un consultorio médico se necesita llenar el control de las citas de los pacientes según los
distintos médicos que atienden allí, se necesita obtener reportes que visualicen las citas por
fechas con el total acumulado. Arme las relaciones entre tablas y el diseño de la aplicación.
ANÁLISIS
Para realizar esta aplicación lo primero que hicimos fue crear una base de datos en access, la
cual contienes tres tablas los cuales son médicos, citas, pacientes con sus respectivos campos.
Posteriormente vamos a enlazar nuestra base de datos con nuestro proyecto en visual studio.
Debemos recordar que debemos guardar nuestra base de datos en de tipo “2002 – 2003” para
que funcione con visual studio.
DOCUMENTACIÓN EN ACCESS.

Creamos una base de datos y le damos un nombre.


Damos un nombre a nuestra tabla y llenamos los campos con los cuales vamos a trabajar.

32
Por ejemplo voy a crear una tabla con el nombre médico y con los siguientes campos, y en tipo
de datos le damos a todos “Texto corto”.

Y en las propiedades de campo le damos un tamaño en este caso de 25.

La base de datos debe guardarse como Microsoft Access Database (.mdb) o base de datos
2000-2003, de esta manera podrá ser compatible con nuestro aplicativo de VS10.
Documentación en Visual Studio 2010.
Abrimos visual studio y creamos un nuevo proyecto y lo guardamos en una carpeta en el disco
c donde también debemos tener nuestra base de datos. Al crear nuestro nuevo proyecto
debemos ingresar a la pestaña proyecto y escoger la opción propiedades del proyecto, y en la
opción versión de .NET framework escoger la opción .NET framework 4

33
Para enlazar nuestra base de datos al proyecto hacemos lo siguiente clic Datos escogemos
mostrar origen de datos

Escogemos la opción base de datos:

En nueva conexión escogemos la opción de “Nueva Conexión” y aceptamos

En la siguiente ventana escogemos las tablas y las vistas para que aparezcan en nuestro
proyecto y damos en finalizar.

CODIFICACIÓN

Public Class Form1

Private Sub MEDICOSToolStripMenuItem2_Click(ByVal sender As


System.Object, ByVal e As System.EventArgs) Handles MEDICOSToolStripMenuItem2.Click
Form2.Show()
End Sub
Private Sub PACIENTESToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles PACIENTESToolStripMenuItem1.Click
Form3.Show()
End Sub
Private Sub CITASToolStripMenuItem1_Click(ByVal sender As

34
System.Object, ByVal e As System.EventArgs) Handles CITASToolStripMenuItem1.Click
Form4.Show()
End Sub
Private Sub MEDICOSToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MEDICOSToolStripMenuItem1.Click
Form5.Show()
End Sub
Private Sub PACIENTESToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles PACIENTESToolStripMenuItem.Click A través del
menú strip
Form6.Show() llamamos en
End Sub cada opción
a cada
Private Sub CITASToolStripMenuItem_Click(ByVal sender As formulario
System.Object, ByVal e As System.EventArgs) Handles CITASToolStripMenuItem.Click que usemos
en el
Form7.Show() aplicativo.
End Sub
End Class
Public Class Form2

Private Sub MEDICOSBindingNavigatorSaveItem_Click(ByVal


sender As System.Object, ByVal e As System.EventArgs) Handles
MEDICOSBindingNavigatorSaveItem.Click
Me.Validate()
Me.MEDICOSBindingSource.EndEdit() En el siguiente
Me.TableAdapterManager.UpdateAll FORM2,
ingresamos los
(Me.Base_de_datos1DataSet) datos del doctor
End Sub con respectiva
conexión a
Private Sub Form2_Load(ByVal sender As System.Object, nuestra de base
de datos.
ByVal e As System.EventArgs) Handles MyBase.Load
'TODO: esta línea de código carga datos en la tabla 'Base_de_datos1DataSet.MEDICOS'
Puede moverla
o quitarla según sea necesario.
Me.MEDICOSTableAdapter.Fill
(Me.Base_de_datos1DataSet.MEDICOS)
End Sub

35
End Class
Public Class Form3
Private Sub PACIENTEBindingNavigatorSaveItem_
Click(ByVal sender As System.Object, ByVal e As
System.EventArgs)
Handles PACIENTEBindingNavigatorSaveItem.Click
Me.Validate()
Me.PACIENTEBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll
(Me.Base_de_datos1DataSet)
End Sub En el siguiente FORM3,
Private Sub Form3_Load(ByVal sender As ingresamos los datos del
paciente con respectiva
System.Object, ByVal e As System.EventArgs) Handles conexión a nuestra de
MyBase.Load base de datos.

'TODO: esta línea de código carga datos en la tabla 'Base_de_datos1DataSet.CITAS' Puede


moverla o quitarla
según sea necesario.

Me.CITASTableAdapter.Fill

(Me.Base_de_datos1DataSet.CITAS)

'TODO: esta línea de código carga datos en la tabla 'Base_de_datos1DataSet.PACIENTE'


Puede moverla

o quitarla según sea necesario.

Me.PACIENTETableAdapter.Fill

(Me.Base_de_datos1DataSet.PACIENTE)

End Sub

End Class

Public Class Form4

Private Sub CITASBindingNavigatorSaveItem_Click(ByVal sender As Hacemos un evento al clic


System.Object, ByVal e As System.EventArgs) Handles para poder validar los
datos que hemos ingresado
CITASBindingNavigatorSaveItem.Click en nuestra base de datos.

Me.Validate()

Me.CITASBindingSource.EndEdit()

36
Me.TableAdapterManager.UpdateAll(Me.Base_de_datos1DataSet)

End Sub

Private Sub Form4_Load(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles MyBase.Load Esta parte de la


codificación está
'TODO: esta línea de código carga datos en la tabla
orientada en
'Base_de_datos1DataSet.PACIENTE' Puede moverla o quitarla según sea necesario. donde está
gravada o
Me.PACIENTETableAdapter.Fill(Me.Base_de_datos1DataSet.PACIENTE) direccionada la
base de datos.
'TODO: esta línea de código carga datos en la tabla

'Base_de_datos1DataSet.MEDICOS' Puede moverla o quitarla según sea necesario.

Me.MEDICOSTableAdapter.Fill(Me.Base_de_datos1DataSet.MEDICOS)

'TODO: esta línea de código carga datos en la tabla

'Base_de_datos1DataSet.CITAS' Puede moverla o quitarla según sea necesario.

Me.CITASTableAdapter.Fill(Me.Base_de_datos1DataSet.CITAS) En nuestro primer data


gridView , ingresamos
End Sub la siguiente línea de
código para que se
Private Sub DataGridView1_CellClick(ByVal sender As
pueda visualizar
Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) nuestros códigos en la
tabla de las citas.
Handles DataGridView1.CellClick

Dim fila, columna As Integer

fila = DataGridView1.CurrentRow.Index

Codigo_medicoTextBox.Text = DataGridView1.Item(columna, fila).Value

MsgBox(DataGridView1.Item(columna, fila).Value)

End Sub

Private Sub DataGridView2_CellContentClick(ByVal sender As En nuestro segundo


data gridView ,
System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs)
ingresamos la siguiente
Handles DataGridView2.CellContentClick línea de código para
que se pueda visualizar
Dim fila, columna As Integer nuestros códigos en la
tabla de las citas.
fila = DataGridView2.CurrentRow.Index

Codigo_pacienteTextBox.Text = DataGridView2.Item(columna, fila).Value

MsgBox(DataGridView2.Item(columna, fila).Value)

End Sub

37
End Class
CORRIDO DEL PROGRAMA

38
PROGRAMA 5

ENUNCIADO
La EMPRESA TABAVELA se necesita conocer y saber un listado de todos sus empleados por
departamentos con sus respectivos valores totales que perciben considerando que la empresa
paga un sueldo fijo acorde a su departamento y se genera un descuento del 11,25% de este
salario por concepto de ISE, y un bono de movilización que representa el 2% de su salario.
• Se necesita listar los empleados por departamento
• Se necesita conocer los costos totales agrupados por departamentos
ANÁLISIS
Todo lo que necesitamos para crear este programa es primero elaborar una base de datos en
Access, en la cual vamos incluir 3 tablas cada una con sus campos necesarios en donde
ingresaremos la información requerida de una empresa, información que enlazaremos a
nuestro aplicativo de visual studio.
Una vez creada nuestra base de datos en Access, creamos las pantallas necesarias en Visual
Studio 2010, en los que programaremos nuestra aplicación, además de esto utilizaremos
labels, textboxs, botones, pictures boxs e imágenes para desarrollar un diseño adecuado para
el usuario.
DOCUMENTACIÓN EN ACCESS:
En Access, crearemos una base de datos llamada “empleados”

En nuestra tabla agregaremos los campos que vamos a necesitar:

En cada campo escogemos el tipo de dato que vamos a utilizar en este caso utilizaremos tipos
de dato de texto “corto”

39
De igual forma en las propiedades generales de cada campo establecemos el tamaño de dato
que vamos a utilizar

Una vez listos nuestros campos, guardamos la tabla creada, dando clic derecho en la opción
“Vista Diseño”. La llamaremos “datos generales”

Guardamos todos los cambios realizados en nuestra tabla bajo esta condición:
La base de datos debe guardarse como Microsoft Access Database (.mdb) o base de datos
2000-2003, de esta manera podrá ser compatible con nuestro aplicativo de VS10.
DOCUMENTACIÓN EN VISUAL STUDIO 2010:
Creamos un nuevo proyecto para empezar, guardándolo en una carpeta llamada “empresa”
localizada en el disco C: /. Una vez realizado esto debemos irnos a las propiedades de nuestro
aplicativo: A la opción de compilación/opciones de compilación avanzadas

40
Nos aparecerá una ventana en la que debemos cambiar la opción de .NET Framework Cliente
Profile únicamente por .NET Framework:
De esta forma:

Una vez realizado esto, podemos continuar con la unión de nuestra base de datos de la
siguiente manera: En el menú Datos, escogemos la opción: agregar nuevo origen de datos:

Especificamos el tipo de dato de origen, en este caso una base de datos:

En nueva conexión escogemos la opción de “Nueva Conexión” y aceptamos

En esta ventana escogemos las tablas y las vistas para presentar en nuestro aplicativo y
finalizamos.

41
Seguido a ello llamamos los datos de nuestra base a nuestro aplicativo. Mediante la misma
opción de Datos, en la opción Mostrar orígenes de datos.

CODIFICACIÓN
Private Sub EMPLEADOSToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles EMPLEADOSToolStripMenuItem1.Click
Form2.Show()
End Sub
Private Sub DEPARTAMENTOSToolStripMenuItem_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles DEPARTAMENTOSToolStripMenuItem.Click
Form3.Show()
End Sub
Private Sub PAGOSToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles PAGOSToolStripMenuItem.Click Dentro de la
Form4.Show() herramienta
menú strip
End Sub llamamos a
Private Sub EMPLEDOSToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As cada de los
formularios
System.EventArgs) Handles EMPLEDOSToolStripMenuItem.Click que forman
Form5.Show() parte de
nuestro
End Sub programa.
Private Sub GENERALToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles GENERALToolStripMenuItem.Click
Form6.Show()
End Sub
Private Sub EMPLEADOSToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles EMPLEADOSToolStripMenuItem.Click
End Sub
End Class

42
Public Class Form2 Permite
Private Sub EMPLEADOSBindingNavigatorSaveItem_Click(ByVal sender As System.Object, obtener
todos los
ByVal e As System.EventArgs) Handles EMPLEADOSBindingNavigatorSaveItem.Click datos
Me.Validate() ingresados
con
Me.EMPLEADOSBindingSource.EndEdit() anterioridad
en nuestra
Me.TableAdapterManager.UpdateAll(Me.EmpleadosDataSet)
base de
End Sub datos.
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Permite
Handles MyBase.Load cargar los
Me.EMPLEADOSTableAdapter.Fill(Me.EmpleadosDataSet.EMPLEADOS) datos en la
tabla, los
End Sub cuales
pueden
Private Sub Ci_EmpledoTextBox_KeyPress(ByVal sender As Object,
moverlos o
ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Ci_EmpledoTextBox.KeyPress quitarlos
según sea
If Char.IsDigit(e.KeyChar) Then Validamos
necesarioel
e.Handled = False ci_empleado
para que
ElseIf Char.IsControl(e.KeyChar) Then permita solo
e.Handled = False ingreso de
números
Else
e.Handled = True
End If
End Sub
Private Sub Nombre_EmpleadoTextBox_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles Nombre_EmpleadoTextBox.KeyPress
If Char.IsLetter(e.KeyChar) Then Validamos el
nombre_empl
e.Handled = False
eado para
ElseIf Char.IsControl(e.KeyChar) Then que permita
solo ingreso
e.Handled = False
de letras
Else
e.Handled = True
End If
End Sub

43
Private Sub Apellido_EmpleadoTextBox_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles Apellido_EmpleadoTextBox.KeyPress Validamos el
If Char.IsLetter(e.KeyChar) Then apellido_emp
leado para
e.Handled = False que permita
ElseIf Char.IsControl(e.KeyChar) Then solo ingreso
de letras
e.Handled = False
Else
e.Handled = True
End If
End Sub
Private Sub Titulo_EmpleadoTextBox_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles Titulo_EmpleadoTextBox.KeyPress Validamos el
If Char.IsLetter(e.KeyChar) Then titulo_emplea
do para que
e.Handled = False permita solo
ElseIf Char.IsControl(e.KeyChar) Then ingreso de
letras
e.Handled = False
Else
e.Handled = True
End If
End Sub
Este botón
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) permite
Handles Button3.Click buscar los
registros que
Me.EMPLEADOSTableAdapter.FillBy(Me.EmpleadosDataSet.EMPLEADOS, se encuentran
Ci_EmpledoTextBox.Text) en nuestra
base de
End Sub datos
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Mediante
Handles Button1.Click este botón
podemos
Me.EMPLEADOSTableAdapter.editar(Ci_EmpledoTextBox.Text,
editar los
Nombre_EmpleadoTextBox.Text, Apellido_EmpleadoTextBox.Text, registros que
se encuentran
Titulo_EmpleadoTextBox.Text, Ci_EmpledoTextBox.Text)
en nuestra
Me.EMPLEADOSTableAdapter.Fill(Me.EmpleadosDataSet.EMPLEADOS) base de
datos
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Mediante
Handles Button2.Click este botón

44 podemos
eliminar los
registros que
se encuentran
en nuestra
MsgBox("EL REGISTRO SE HA ELIMINADO")
Me.EMPLEADOSTableAdapter.Fill(Me.EmpleadosDataSet.EMPLEADOS)
Me.EMPLEADOSTableAdapter.eliminar(Ci_EmpledoTextBox.Text)
End Sub
Mediante
este botón
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) podemos
refrescar los
Handles Button4.Click registros que
Me.EMPLEADOSTableAdapter.Fill(Me.EmpleadosDataSet.EMPLEADOS) se encuentran
en nuestra
End Sub base de
End Class datos

Public Class Form3


Permite
Private Sub DEPARTAMENTOBindingNavigatorSaveItem_Click(ByVal sender As System.Object,
obtener
ByVal e As System.EventArgs) Handles DEPARTAMENTOBindingNavigatorSaveItem.Click todos los
datos
Me.Validate() ingresados
Me.DEPARTAMENTOBindingSource.EndEdit() con
anterioridad
Me.TableAdapterManager.UpdateAll(Me.EmpleadosDataSet) en nuestra
End Sub base de
datos.
Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Permite
Handles MyBase.Load
cargar los
Me.DEPARTAMENTOTableAdapter.Fill(Me.EmpleadosDataSet. datos en la
tabla, los
DEPARTAMENTO) cuales
End Sub pueden
moverlos o
Private Sub Nombre_DepartamentoTextBox_KeyPress(ByVal sender As Object, ByVal e As quitarlos
System.Windows.Forms.KeyPressEventArgs) Handles según sea
necesario
Nombre_DepartamentoTextBox.KeyPress Validamos el
nombre_dep
If Char.IsLetter(e.KeyChar) Then artamento
e.Handled = False para que
permita solo
ElseIf Char.IsControl(e.KeyChar) Then ingreso de
e.Handled = False letras

Else
e.Handled = True
End If
End Sub

45
Private Sub Cod_departamentoTextBox_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles Cod_departamentoTextBox.KeyPress
Validamos el
If Char.IsDigit(e.KeyChar) Then cod_departa
mento para
e.Handled = False
que permita
ElseIf Char.IsControl(e.KeyChar) Then solo ingreso
de numeros
e.Handled = False
Else
e.Handled = True
End If
End Sub
Private Sub Sueldo_DepartamentoTextBox_KeyPress(ByVal senderAs
Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles
Validamos el
Sueldo_DepartamentoTextBox.KeyPress sueldo_depar
tamento para
If Char.IsDigit(e.KeyChar) Then que permita
e.Handled = False solo ingreso
de números
ElseIf Char.IsControl(e.KeyChar) Then
e.Handled = False
Else
e.Handled = True
End If
End Sub Este botón
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) permite
buscar los
Handles Button3.Click registros que
Me.EMPLEADOSTableAdapter.FillBy(Me.EmpleadosDataSet.EMPLEADOS, se encuentran
en nuestra
Ci_EmpledoTextBox.Text) base de
datos
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Mediante
Handles Button1.Click este botón
podemos
Me.EMPLEADOSTableAdapter.editar(Ci_EmpledoTextBox.Text,
editar los
Nombre_EmpleadoTextBox.Text, Apellido_EmpleadoTextBox.Text, registros que
se encuentran
Titulo_EmpleadoTextBox.Text, Ci_EmpledoTextBox.Text)
en nuestra
Me.EMPLEADOSTableAdapter.Fill(Me.EmpleadosDataSet.EMPLEADOS) base de
datos

End Sub

46
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Mediante
Handles Button2.Click este botón
MsgBox("EL REGISTRO SE HA ELIMINADO") podemos
eliminar los
Me.EMPLEADOSTableAdapter.Fill(Me.EmpleadosDataSet.EMPLEADOS) registros que
Me.EMPLEADOSTableAdapter.eliminar(Ci_EmpledoTextBox.Text) se encuentran
en nuestra
base de
datos
End Sub
Mediante
este botón
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) podemos
refrescar los
Handles Button4.Click registros que
Me.EMPLEADOSTableAdapter.Fill(Me.EmpleadosDataSet.EMPLEADOS) se encuentran
en nuestra
End Sub base de
End Class datos

CORRIDO DEL PROGRAMA

47
48
PROGRAMA 6

ENUNCIADO
Una empresa distribuidora de productos de informáticos necesita diseñar una aplicación que
le permita controlar:
• Los distintos proveedores de sus productos
• Los distintos productos con sus respectivos países de orígenes
• Las importaciones que realiza de cada producto, con su fecha y valores respectivos
Necesita obtener los siguientes reportes
• Listado de productos agrupados pos países de procedencia
• Listado de proveedores
• Listado de importaciones realizadas agrupadas por fechas y proveedor en la que se liste
todos los productos importados y sus valores respectivos
Determine el modelo entidad relación correspondiente
Aplique un diseño que permita el ingreso de los datos en forma adecuada, valide el ingreso de
los mismos
Presente los resultados con datos ingresados
Verifique la asertividad de la información
ANÁLISIS
En este programa podemos controlar los productos de una empresa donde vamos a enlistar
los proveedores los productos con sus respectivos países de origen las importaciones que
realiza cada producto además en este programa vamos a obtener los reportes de los
productos agrupados por su país un listado de los proveedores y también las importaciones
agrupados por fecha y proveedor con sus valores respectivos
CODIGO
Public Class Form1
Private Sub SalirToolStripMenuItem_Click(sender
As System.Object, e As System.EventArgs) Handles
SalirToolStripMenuItem.Click
End
End Sub
Private Sub ProveedoresToolStripMenuItem_Click(sender Enlazar el menú de inicio con
los formularios
As System.Object, e As System.EventArgs) Handles
ProveedoresToolStripMenuItem.Click

49
Form2.Show()
End Sub
Private Sub ProductoToolStripMenuItem_Click(sender
As System.Object, e As System.EventArgs) Handles
ProductoToolStripMenuItem.Click
Form3.Show()
End Sub
Private Sub ImportacionesToolStripMenuItem_Click(sender
As System.Object, e As System.EventArgs) Handles ImportacionesToolStripMenuItem.Click
Form4.Show()
End Sub
Private Sub RepProveedorToolStripMenuItem_Click(sender
As System.Object, e As System.EventArgs) Handles
RepProveedorToolStripMenuItem.Click
Form7.Show()
End Sub
Private Sub RepProductosToolStripMenuItem_Click(sender
Con este
As System.Object, e As System.EventArgs) Handles RepProductosToolStripMenuItem.Click
código
Form6.Show() solo
puede
End Sub
ingresar
Private Sub RepImportacionesToolStripMenuItem_Click(sender números y
letras
As System.Object, e As System.EventArgs) Handles RepImportacionesToolStripMenuItem.Click
Form8.Show()
End Sub
End Class
Public Class Form2
Private Sub Cod_proveTextBox_KeyPress(sender
As Object, e As System.Windows.Forms.KeyPressEventArgs)
Handles Cod_proveTextBox.KeyPress
If Char.IsDigit(e.KeyChar) Then
e.Handled = False
ElseIf Char.IsControl(e.KeyChar) Then
e.Handled = False
Else

50
e.Handled = True
End If
End Sub
Private Sub Cod_proveTextBox_TextChanged(sender
As System.Object, e As System.EventArgs) Handles
Cod_proveTextBox.TextChanged
End Sub
Private Sub Nom_proveTextBox_KeyPress(sender
As Object, e As System.Windows.Forms.KeyPressEventArgs)
Handles Nom_proveTextBox.KeyPress
If Char.IsLetter(e.KeyChar) Then
e.Handled = False
ElseIf Char.IsControl(e.KeyChar) Then
e.Handled = False
Else
e.Handled = True
End If
End Sub
Private Sub Nom_proveTextBox_TextChanged(sender
As System.Object, e As System.EventArgs) Handles
Nom_proveTextBox.TextChanged
End Sub
Private Sub Ape_proveTextBox_KeyPress(sender
As Object, e As System.Windows.Forms.KeyPressEventArgs)
Handles Ape_proveTextBox.KeyPress
If Char.IsLetter(e.KeyChar) Then
e.Handled = False
ElseIf Char.IsControl(e.KeyChar) Then
e.Handled = False
Else
e.Handled = True
End If
End Sub
Private Sub Ape_proveTextBox_TextChanged(sender

51
As System.Object, e As System.EventArgs) Handles
Ape_proveTextBox.TextChanged

End Sub
Private Sub Prod_proveTextBox_KeyPress(sender
As Object, e As System.Windows.Forms.KeyPressEventArgs)
Handles Prod_proveTextBox.KeyPress En esta codificación no
permite el ingreso de
If Char.IsLetter(e.KeyChar) Then letras a nuestra caja de
e.Handled = False texto

ElseIf Char.IsControl(e.KeyChar) Then


e.Handled = False
Else
e.Handled = True
End If
End Sub
Private Sub Cod_producTextBox_KeyPress(sender
As Object, e As System.Windows.Forms.KeyPressEventArgs) En esta codificación no
Handles Cod_producTextBox.KeyPress permite el ingreso de
números a nuestra caja
If Char.IsDigit(e.KeyChar) Then de texto
e.Handled = False
ElseIf Char.IsControl(e.KeyChar) Then
e.Handled = False
Else
e.Handled = True
End If
End Sub
Private Sub Cod_producTextBox_TextChanged(sender As System.Object, e As
System.EventArgs) Handles Cod_producTextBox.TextChanged
End Sub
Private Sub Cantidad_producTextBox_KeyPress(sender As
Object, e As System.Windows.Forms.KeyPressEventArgs) Handles En esta codificación no
permite el ingreso de
Cantidad_producTextBox.KeyPress letras a nuestra caja de
If Char.IsDigit(e.KeyChar) Then texto

e.Handled = False

52
ElseIf Char.IsControl(e.KeyChar) Then
e.Handled = False
Else
e.Handled = True
End If
End Sub
Private Sub Cantidad_producTextBox_TextChanged(sender As System.Object, e As
System.EventArgs) Handles Cantidad_producTextBox.TextChanged
End Sub
Private Sub Costo_producTextBox_KeyPress(sender As Object, e As
System.Windows.Forms.KeyPressEventArgs) Handles Costo_producTextBox.KeyPress
If Char.IsDigit(e.KeyChar) Then
e.Handled = False
En esta codificación no
ElseIf Char.IsControl(e.KeyChar) Then permite el ingreso de
números a nuestra caja
e.Handled = False
de texto
Else
e.Handled = True
End If End Sub
Public Class Form4
Private Sub DataGridView1_CellClick(sender As Object, e
As System.Windows.Forms.DataGridViewCellEventArgs) Handles
DataGridView1.CellClick
Dim fila, columna As Integer
fila = DataGridView1.CurrentRow.Index
En esta parte declaramos
Cod_proveTextBox.Text = DataGridView1.Item(columna, variables Inter y luego
fila).Value iguales nuestras variables
a datagridview1
MsgBox(DataGridView1.Item(columna, fila).Value)
End Sub
Private Sub DataGridView1_CellContentClick(sender As
System.Object, e As System.Windows.Forms.
DataGridViewCellEventArgs) Handles DataGridView1.
CellContentClick
End Sub
Private Sub DataGridView2_CellClick(sender As Object,
En esta parte declaramos

53
variables Inter y luego
iguales nuestras variables
a datagridview2
e As System.Windows.Forms.DataGridViewCellEventArgs) Handles
DataGridView2.CellClick
Dim fila, columna As Integer
fila = DataGridView2.CurrentRow.Index
Cod_producTextBox.Text = DataGridView2.Item(columna,
fila).Value
Costo_tot_importTextBox.Text = Val
(Cantidad_producTextBox.Text) * (Val(Costo_producTextBox.Text))
MsgBox(DataGridView2.Item(columna, fila).Value)
End Sub
Private Sub DataGridView2_CellContentClick(sender As
System.Object, e As System.Windows.Forms.DataGridViewCellEventArgs)
Handles DataGridView2.CellContentClick
End Sub
Private Sub DataGridView3_CellClick(sender As Object, e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles
DataGridView3.CellClick
Dim fila, columna As Integer
fila = DataGridView3.CurrentRow.Index En esta parte realizamos
cálculos para obtener el
Cod_producTextBox.Text = DataGridView3.Item costo total de la
(columna, fila).Value importación

Costo_tot_importTextBox.Text = Val
(Cantidad_producTextBox.Text) * (Val(Costo_producTextBox.Text))
MsgBox(DataGridView3.Item(columna, fila).
Value)
End Sub
Private Sub DataGridView3_CellContentClick(sender As
System.Object, e As System.Windows.Forms.DataGridViewCellEventArgs)
Handles DataGridView3.CellContentClick
End Sub

54
CORRIDO DEL PROGRAMA

55
PROGRAMA 7

ENUNCIADO
Diseñe un programa en el cual podamos buscar, mostrar, modificar y añadir un nuevo
estudiante para un carnet estudiantil utilizando una base de datos en sql server.
ANÁLISIS
En el siguiente programa podremos ya tener una base de datos en la cual seguiremos
almacenando todo los datos de los estudiantes de cualquier institución para un mejor archivo
de los mismo con esto lograremos reducir el tiempo de ingreso de datos manuales al tener ya
una base de datos con la cual la complementaremos con un previo diseño en visual studio
2010 la cual será la parte principal de nuestro trabajo.
CREACIÓN DE LA BASE DE DATOS

56
Creación de vista

57
Creación de procedimientos almacenados

USE [prueba]
GO
/****** Object: StoredProcedure [dbo].[buscarfin]
Script Date: 07/27/2015 10:27:49 ******/
SET ANSI_NULLS ON
En estas líneas de
GO código nos ayudan
para poder saber en
SET QUOTED_IDENTIFIER ON base a que llamamos a
GO la BD.

ALTER PROCEDURE [dbo].[buscarfin]


@carnet int
AS
BEGIN
SET NOCOUNT ON;
SELECT * from dbo.datos where carnet = @carnet
END

58
USE [prueba]
GO
/****** Object: StoredProcedure [dbo].[listar]
Script Date: 07/27/2015 10:28:22 ******/
Usamos un código
SET ANSI_NULLS ON sencillo para llamar a
GO todos los datos de
nuestra tabla
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[listar]
AS
BEGIN
select * from dbo.datos
END

Public Class Form3


Private Sub SALIRToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs)
Handles SALIRToolStripMenuItem.Click

59
End
End Sub
Private Sub REPORTEToolStripMenuItem_Click(ByVal sender
As System.Object, ByVal e As System.EventArgs) Handles REPORTEToolStripMenuItem.Click
End Sub Empezamos la
Private Sub DATOSToolStripMenuItem_Click(ByVal sender programación
haciendo un
As System.Object, ByVal e As System.EventArgs) menú de
Handles DATOSToolStripMenuItem.Click opciones y en el
cual enlazamos
Form1.Show() las siguientes
ventanas
End Sub
Private Sub REPORTEGENERALToolStripMenuItem_Click(ByVal
sender As System.Object, ByVal e As System.EventArgs) Handles
REPORTEGENERALToolStripMenuItem.Click
Form2.Show()
End Sub
Private Sub REPORTEFILTRADOToolStripMenuItem_Click(ByVal
sender As System.Object, ByVal e As System.EventArgs) Handles
REPORTEFILTRADOToolStripMenuItem.Click
Form4.Show()
End Sub
End Class

Imports System.Data.SqlClient
Public Class Form1
En esta parte de la
Private odbadapter As SqlDataAdapter programación lo
Private odataset As DataSet vamos a realizar en
un botón en el cual
Private cc As SqlConnection llamaremos o
enlazaremos ya
Private iposicionfilacolumnaactual As Integer
nuestra base de
datos con nuestro
programa 60
Private Sub habilitar()
txtnombre.Enabled = True
txtapellido.Enabled = True
txtcorreo.Enabled = True
txttelefono.Enabled = True
txtdireccion.Enabled = True
txtnombre.Clear()
txtapellido.Clear()
txtcorreo.Clear()
txttelefono.Clear()
txtdireccion.Clear()
txtcarnet.Clear()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles Button1.Click
cc = New SqlConnection
En este botón
cc.ConnectionString = My.MySettings.Default.cadenaconeccion
realizaremos la
Dim ocommand As New SqlCommand("exec Buscarfin'" + codificación para que
cuando pulsemos se nos
Trim(txtcarnet.Text) + "'", cc) visualice la información
Dim odatareader As SqlDataReader requerida

cc.Open()
odatareader = ocommand.ExecuteReader
While odatareader.Read
Me.txtnombre.AppendText(Trim(odatareader("nombre")))
Me.txtapellido.AppendText(Trim(odatareader("apellido")))
Me.txtcorreo.AppendText(Trim(odatareader("amail")))
Me.txttelefono.AppendText(Trim(odatareader("telefono")))
Me.txtdireccion.AppendText(Trim(odatareader("direccion")))
End While
odatareader.Close()
cc.Close()
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, En el botón nuevo solo
ByVal e As System.EventArgs) Handles Button2.Click necesitaremos esta

61
codificación
Call habilitar()
txtcarnet.Focus()
End Sub
Private Sub Button4_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles Button4.Click
cc = New SqlConnection
If Trim(txtnombre.Text) = "" Or Trim(txtcarnet.Text) =
"" Then MsgBox("falta datos") : Exit Sub
Este es para
cc.ConnectionString = My.MySettings.Default.cadenaconeccion guardar datos
odbadapter = New SqlDataAdapter("insert into dbo.datos nuevos en la BD

values ('" + Trim(txtcarnet.Text) + "','" + txtnombre.Text


+ "','" + txtapellido.Text + "','" + txtcorreo.Text + "','"
+ txttelefono.Text + "','" + txtdireccion.Text + "')", cc)
Dim acmd As SqlCommandBuilder = New SqlCommandBuilder(odbadapter)
odataset = New DataSet
odbadapter.Fill(odataset, "datos")
MsgBox("datos guardados con exito")
End Sub
Private Sub Button3_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles Button3.Click
habilitar()
cc = New SqlConnection
cc.ConnectionString = My.MySettings.Default.cadenaconeccion
odbadapter = New SqlDataAdapter("select * from dbo.datos
En este botón
where carnet='" + Trim(Txtbuscar.Text) + "'", cc) editaremos los datos
ya existentes en
Dim ocmd As SqlCommandBuilder = New nuestra base de datos
SqlCommandBuilder(odbadapter)
odataset = New DataSet
cc.Open()
odbadapter.Fill(odataset, "datos")
cc.Close()
tabla.DataSource = odataset
tabla.DataMember = "datos"
End Sub

62
End Class

63
CORRIDO DEL PROGRAMA

64
BIBLIOGRAFIA.

https://webtelematica.wordpress.com/2010/02/16/tutorial-desde-0-crear-base-de-datos-en-
sql-server-20052008-usando-sql-server-management-studio-express/
https://support.office.com/es-es/article/Crear-una-nueva-base-de-datos-de-escritorio-
9458c8ab-e8e4-40ad-bb03-7b5ebda9dd26

65

Potrebbero piacerti anche