Primero abrimos una base de dato en Access
Después de crear la base de datos en blanco le ponemos el
nombre que en este caso seria sta
Lugo de eso nos vamos a la opción ver y escogemos vista de diseño
de esa manera se abrirá una tabla a la cual le llamaremos Encuesta luego
empezaremos a llena lo que es nuestra
base de datos con todos los campos de la
encuesta.
Nombre de campo
|
Tipo de datos
|
Descripcion
|
idEncuesta
|
Autonumerico
|
|
Nombre
|
Texto
|
Nombre del encuestado
|
Edad
|
Numero
|
Edad del encuestado
|
Sexo
|
Texto
|
Sexo del encustado
|
Curso
|
Texto
|
Curso en que esta el encuestado
|
Preg1
|
Texto
|
Te gusta el deporte
|
Preg2
|
Texto
|
Te gustan las clases de educación
física de tu colegio
|
Preg3
|
Texto
|
Practicas algún deporte por la tarde, fuera de clases
|
Preg4
|
Texto
|
Cambiarias la clase de educación física por hacer otra cosa
|
Preg5
|
Texto
|
Practica alguno de tus padres algún deporte
|
Preg6
|
Texto
|
Si pudieras elegir entre ir o no ir a la clase de educación física
irías
|
De esta manera quedara nuestra vista de diseño
Luego nos vamos a la opción ver hoja de Datos y de esa forma empezaremos a
llenarla de registros.
Nos vamos a Visual Studio y abrimos un nuevo proyecto en
Windows Form y a este le pondremos
Encuesta.
Nos vamos al explorador de soluciones y en nuestro nombre
del proyecto damos clic derecho Agregar
Nueva Carpeta, la nombraremos
Formularios. Luego como nuestro primer formulario lo
arrastramos a nuestra carpeta formularios y nos quedara almacenado.
Luego le damos clic derecho a nuestro proyecto y le damos
agregar Control de usuarios y de nombre
le pondremos Entorno.
Después en el cuadro de herramientas seleccionamos Datos y
ahí aremos clic derecho elegir elementos.
Luego de haber sido elegido se abrirá una ventana y en filtro le ponemos Oledb. Y elegimos oleDbConnection y el oleDbDataAdapter Esto es porque en nuestro entorno no lo
tenemos como un objeto esta selección nos permite ahorrar líneas de código.
Luego aceptar
en nuestro cuadro de herramientas en DATOS nos quedó
Después pegmos el oledbconecction
para hacer una conexión directa se puede decir así le pegaremos al entorno
nuestro oledbconnection. Y a este objeto le cambiaremos el name y le pondremos
oConexion.
También cambiamos el connectionStrim por una nueva conexión.
A esta ventana le cambiaremos: El origen de datos Archivo de base de datos de Microsoft Access, Aceptar.
Luego nos quedara una ventana donde tendremos el nombre del archivo de la base de datos le
damos Examinar: hay buscaremos nuestra
base de datos de Access ósea la base Encuesta. Nos quedara de la siguiente manera,
luego si queremos saber si
nuestra conexión funcionara bien le damos clic a la opción Probar
Conexión. Luego le damos Aceptar.
Después vamos a pegar
nuestro objeto oleDbDataAdapter, una vez pegado el objeto se nos aparecerá un
cuadro Asistente de configuración del adaptador de datos y ahí le damos
Siguiente, se nos aparecerá el siguiente
cuadro:
Haremos clic en no, porque no queremos que se nos hagan
varias copias en nuestra base de datos y
luego tendremos errores.
Ahora nos iremos a la
siguiente ventana donde tendremos que dar clic en el Generador de Consultas, se nos mostrar una ventana.
Al objeto
oleDbDataAdapter le cambiaremos la propiedad Name: daEncuesta.
La
seleccionamos deEncuesta y en la
propiedad DeleteCommand –Clic en command
text y hay borraremos el codigo y nos
quedara asy:
Y damos aceptar y elegimos Si.
Luego en la propiedad
update la expandimos y damos clic en command text hay tendremos que borrar código y nos quedara
asy:
Luego aceptar en el siguiente ventana daremos Si.
Ahora en el oledbdataAdaptar le cambiamos el nombre y le
ponemos daEncuesta luego damos clic hay y Generar conjunto de datos hay
crearemos el data set se nos aparecerá el cuadro y elegiremos las opciones del nombre del
dataset y le ponemos dstablas y deshabilitamos la ultiima opción nos quedara
asy:
Ahora pegaremos el objeto error: nos vamos al cuadro de
herramientas en la pestana Componentes encontraremos el ErroProvider lo único que
cambiaremos de este objeto es su propiedad name: err.
Una ves creados todo esto iremos a programar el entorno
pondremos el siguiente código:
Public Shared Datos As New Entorno
Public Sub Conectar()
If oConexion.State <> ConnectionState.Open Then
oConexion.Open()
End If
End Sub
Public Function
ObtenerDatos() As DataSet
Dim ds As New DataSet
Conectar()
daEncuesta.Fill(ds, "Encuesta")
oConexion.Close()
Return ds
End Function
Public Sub
salvarencuesta(ByVal ds As DataSet)
Conectar()
daEncuesta.Update(ds)
oConexion.Close()
End Sub
|
Nos vamos a nuestro
formulario y en el origen de datos vamos
a arrastra todos los campos hacia el formulario y y la preguntas las
cambiaremos a un combobox una vez
arrastrados los campos tendremos que programar los botones nuevo agregar y
eliminar en el botón nuevo daremos clic
derecho y la opción enabled.
Para empezar daremos doble clic en el formulario declareremos
la valiable
Imports
Encuesta.Entorno
lo primero que haremos es programar el evento load del
formulario para ello daremos doble clic en una parte limpia del formulario y se
nos abrirá el evento load el cual hay pondremos:
Dstablas.Merge(Datos.ObtenerDatos, False)
|
Estamos poblando el data set y al mismo tiempo le estamos haciendo un
llamado para poder obtener los datos.
|
Ahora procederemos aprogramar el el evento prívate fuction
para declarar los campos que queremos que tengan un mensaje a la hora de
ejecutarlo:
Emprezaremos declarando:
Private Function validar() As Boolean
|
|
If NombreTextBox.Text = "" Then
err.SetError(NombreTextBox, "Por
favor escriba el nombre del encuestado")
Return False
End If
|
|
If Val(EdadTextBox.Text) = 0 Then
err.SetError(EdadTextBox, "por favor
escriba la edad del encuestado")
Return False
End If
|
|
If Lugar_de_trabajoTextBox.Text = ""
Then
err.SetError(Lugar_de_trabajoTextBox, "por
favor escriba el lugar de trabajo del encuestado")
Return False
End If
|
|
err.SetError(NombreTextBox, "")
err.SetError(EdadTextBox, "")
err.SetError(Lugar_de_trabajoTextBox, "")
Return True
End Function
|
|
Unas ves habilitadas el botón nuevo daremos doble clic sobre
el y pegaremos el siguiente código:
If validar() = True Then
EncuestaBindingSource.EndEdit()
Datos.salvarencuesta(Dstablas)
Dstablas.AcceptChanges()
MsgBox("Los datos se han almacenado
correctamente", MsgBoxStyle.Information,
"Salvar")
End If
|
|
En botón eliminar daremos doble clic y el código que ira hay
es:
If MsgBox("Desea
eliminar este registro", MsgBoxStyle.Question
+ MsgBoxStyle.YesNo, "Eliminar") Then
EncuestaBindingSource.EndEdit()
EncuestaBindingSource.RemoveCurrent()
Datos.salvarencuesta(Dstablas)
Dstablas.AcceptChanges()
MsgBox("el registro se ha eliminado de manera
permanentemente", MsgBoxStyle.Information,
"confirmado")
IdEncuestaTextBox.Focus()
End If
|
|
En el botón Agregar pondremos:
EncuestaBindingSource.EndEdit()
EncuestaBindingSource.AddNew()
IdEncuestaTextBox.Focus()
|
|
Una vez programado todo este paso lo ejecutaremos para saber
si nuestro código está funcionando damos ctrl+f5
Paso a Paso
Gafico.
nos vamos a nuestro
dataset ay crearemos otra tabla para enlazar las gráficas, daremos clic agregar
tabla de datos y le ponemos como nombre: EncuestaGrafico en ese nombre damos
clic derecho agregar columna y a esa le columna le llamaremos Categoría y esa es llave primero le
daremos clic derecho agregar llave, luego clic derecho agregar columna y a esta
le llamaremos Total, guardamos
cambios.
Ahora damos clic
derecho en el nombre del proyecto y damos agregar Windows form le ponemos en el
nombre Grafico, en el origen de
datos encontraremos la tabla que creamos en el dataset entonces esa tabla la
arrastramos hacia el formulario y una vez que la arrastramos damos doble clic
en ella y arriba de Public Class Grafico
Ponemos: Imports Encuesta.Entorno
Imports System.Data.OleDb
Ahora nos vamos al
formulario gráfico y borramos lo que está pegado hay y una ves borrado
pegaremos un chart área para la representación de la gráfica, para ello nos
vamos al cuadro de herramientas en la pestaña Datos elegimos el chartárea en la
propiedad name le cambiaremos a: ografico.
Ahora pegaremos un
botón en su propiedad name: cmdActualizar y en text: Actualizar.
Ahora damos clic en
Actualizar y pondremos el código que alimentara la gráfica para desarrollar
todos los registros que hay en la tabla de Access.
'crear la SQL-select para obtener los datos del rubro
Dim cSQL As String = "Select
Preg1, count(Preg1) as Total from Encuesta group by Preg1"
Datos.Conectar()
Dim comando As New OleDbCommand(cSQL,
Datos.oConexion)
Dim lector As OleDbDataReader = comando.ExecuteReader
If lector.HasRows Then
'Generar
la grafica
ografico.Series.Clear()
ografico.Titles.Clear()
ografico.DataBindTable(lector, "Preg1")
ografico.Series(0).ChartType =
DataVisualization.Charting.SeriesChartType.Pie
ografico.Series(0).IsValueShownAsLabel
= True
ografico.Titles.Add("Hace uso permanente de la Internet de la
Empresa")
Else
MsgBox("No
se ha generado la grafica, porque no se encontro informacion "
& " para crear la misma", MsgBoxStyle.Information, "sin datos")
End If
End Sub
|