Requisitos
- Visual Studio 2010
- Microsoft Access 2007/2010
Creación del Proyecto Creamos un proyecto llamado PVenta2012 a través de Visual Studio 2010:
Organizamos nuestro proyecto:
Agregaremos tres carpetas y eliminaremos el formulario predeterminado (Form1.vb) pues no lo necesitamos. Además, a las carpetas les agregamos dos formularios y un módulo respectivamente, como se muestra en la imagen. Formulario de Inicio de Sesión (frmLogin.vb) Agregamos dos directivas:
Imports System.Data Imports System.Data.OleDbAgregamos las siguientes variables:
Dim Intentos As Integer = 0 Public Shared UserLogin As String Public Shared Nombre As String Public Shared Apellidos As String Public Shared Ventas As Boolean Public Shared Reportes As Boolean Public Shared Administrar As Boolean Public Shared Catalogos As Boolean Public Shared Acceso As BooleanPonemos el siguiente código en modMain.vb:
Module modMain Public CnnStr As String = "Provider=Microsoft.ACE.OLEDB.12.0;" & _ "Data Source=C:\Users\ddi-gcastillo\" & _ "Documents\tyrodeveloper\PVenta2012\PVenta2012.accdb;" & _ "Persist Security Info=False;" Sub Main() Dim _frmLogin As New frmLogin _frmLogin.StartPosition = FormStartPosition.CenterScreen Application.Run(_frmLogin) If (frmLogin.Acceso = True) Then Dim _mdiMain As New mdiMain _mdiMain.StartPosition = FormStartPosition.CenterScreen _mdiMain.WindowState = FormWindowState.Maximized Application.Run(_mdiMain) Else Application.Exit() End If End Sub End ModuleRegresamos a frmLogin.vb, escribimos la siguiente función:
Protected Function Login() As Boolean Dim cnn As New OleDbConnection(CnnStr) Try cnn.Open() Dim cmd As New OleDbCommand cmd.Connection = cnn cmd.CommandText = "SELECT * FROM USERS " & _ " WHERE USER_LOGIN=@user_login " & _ " AND USER_PASSWORD=@user_password" cmd.Parameters.Add("@user_login", OleDbType.VarChar, _ 50).Value = txtUserLogin.Text cmd.Parameters.Add("@user_password", OleDbType.VarChar, _ 255).Value = txtUserPassword.Text Dim dr As OleDbDataReader = cmd.ExecuteReader If dr.Read Then UserLogin = dr("USER_LOGIN").ToString() Nombre = dr("NOMBRE").ToString() Apellidos = dr("APELLIDOS").ToString() Ventas = CBool(dr("VENTAS")) Reportes = CBool(dr("REPORTES")) Administrar = CBool(dr("ADMINISTRAR")) Catalogos = CBool(dr("CATALOGOS")) Else Intentos += 1 Throw (New Exception( _ "Nombre de Usuario o contraseña incorrectos")) End If dr.Close() Return True Catch ex As Exception Throw (ex) Finally cnn.Close() End Try End FunctionLuego ponemos el código del botón “Aceptar”:
Private Sub btnOk_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles btnOk.Click Try If (Intentos >= 3) Then Acceso = False MessageBox.Show("Numero de Intentos Excedidos", _ "Información del Sistema", _ MessageBoxButtons.OK, _ MessageBoxIcon.Error) Me.Close() Else Acceso = Login() If (Acceso) Then Me.Close() End If End If Catch ex As Exception MessageBox.Show(ex.Message, "Información del Sistema", _ MessageBoxButtons.OK, MessageBoxIcon.Error) End Try End SubA continuación configuramos el proyecto, nos vamos a las propiedades y establecemos el objeto inicial:
esta muy interesante tu programa estoy siguiendolo espero tu nueva actualizacion para reportes gracias
ResponderEliminarNo pusiste como luce el form del login ni que elementos debe de llevar a excepción del botón, uhm... muy buena guía por cierto pero sólo ese detalle.
ResponderEliminarupsssn espero y me sirva si no ya vali
ResponderEliminarHola buenas tardes.
ResponderEliminarExcelente tu trabajo. Justo es lo que andaba buscando. Ahora me falta entenderlo para realmente considerar que he aprendido.
Gracias por ser tan generoso (a)
Esta muy bueno eso se puede utilizar como para guardar tan bien a la base de datos en access.
ResponderEliminarEXCELENTE PERO M DA UN ERROR EN Public Shared
ResponderEliminarHola! Quisiera saber los tipos de los campos de la base de datos
ResponderEliminarHola! Quisiera saber los tipos de los campos de la base de datos
ResponderEliminarhola Juan Gabriel Castillo
ResponderEliminarcomo puedo actualizar la cantidad de ventas
Hola Juan Gabriel castillo buenos
ResponderEliminarDías tu aplicación de ejemplo es muy buena me gusta la entiendo y la he realizado me sale muy bien claro q me toco declara algunas variable que no estaban definidas y bn ya me guarda la venta y todo pero me gustaría que me dieras un tic par que el descuento se reste al momento de la venta mostrarlo
Resolví la opción de hacer la venta de varios productos con el mismo código y el en la misma venta el código de usted no tiene este tic de segmentos de códigos para crear compatibilidad y estabilidad al usuario
Hola, gracias por tu comentario.
EliminarSi me explicas detalladamente como es que definirás el descuento, yo te explico como mostrarlo (ya descontado). aunque pienso que en el momento que definas como lo mostrarás será muy sencillo hacer que se muestre correctamente.
Saludos
una pregunta en que carpeta guardas el documento de access en el proyecto de VB m sale este error:
EliminarC:\Users\Alvin\" & _ "Documents\Visual Studio 2012\Projects\PVenta2012\PVenta2012.accdb;" & _
"Persist Security Info=False;"
Hola que tal? Muy buenios tutoriales! Una pregunta, se puede modificar la bases de datos luego de conectarla?
ResponderEliminargraciaas
muy bueno este contenido si funciona
ResponderEliminarmuy bueno este contenido si funciona
ResponderEliminarYA LO LO PROBÉ PERO NO ME FUNCIONA, PODRÍAS COMPARTIR TU EJEMPLO PORFAVOR.
EliminarNO ME FUNCIONO, AYUDA
ResponderEliminar