Sección de código fuente Visual basic
Formularios de Entrada y Baja de productos
En esta sección se detalla sobre los formularios que se encargan de actualizar el Stock de productos cuando presionamos en los siguientes botones: Entrada de Productos y Baja de Productos
Al seleccionar Entrada de Productos se carga el Formulario llamado FormProd que es el siguiente:
Desde acá seleccionamos un producto y al seleccionarlo nos muestra el código, el Stock actual, el costo por unidad y abajo el Proveedor asociado.
Al cargarse este formulario se llama a una rutina que está dentro de este Formulario llamada Cargardatos:
Private Sub cargarDatos()
Dim SqlEntradaPro As String
'Ejecutamos la consulta para traer de
la tabla Productos Todos los datos necesarios
'para mostrar
SqlEntradaPro = "Select nombre,codigo,proveedor,costo,precio
FROM productos ORDER BY nombre"
Set recEntradaPro = Base_de_datos.OpenRecordset(SqlEntradaPro,
dbOpenDynamic, 0, dbOptimistic)
'Cargamos en el ComboBox los Nombres de cada producto
Do Until recEntradaPro.EOF
Combo1.AddItem UCase$(recEntradaPro!Nombre)
'Siguiente
recEntradaPro.MoveNext
Loop
End Sub
Después cuando seleccionamos un elemento o sea un producto en el Combo, se ejecuta una Sub llamada MostrarDatosSelect, que muestra los datos de ese producto:
Private Sub MostrarDatoSelet()
Dim dato As String
Dim sq As String
'Dato para pasar al sql
dato = Combo1.List(Combo1.ListIndex)
sq = "Select proveedor,codigo,stock,costo FROM productos WHERE
nombre='" & dato & "'"
'Ejecutamos la consulta
Set recEntradaPro = Base_de_datos.OpenRecordset(sq, dbOpenDynamic,
0, dbOptimistic)
'Nombre del Proveedor
Label1(3) = "Proveedor: " & UCase$(recEntradaPro!proveedor)
'el stock Actual
Label1(4) = "Stock Actual: " & CInt(recEntradaPro!stock)
'Mostramos el código
Label1(7) = CInt(recEntradaPro!Codigo)
'Mostramos en el Text el costo
de ese producto
Text1(0) = recEntradaPro!costo
End Sub
Una vez que aceptamos para guardar los cambios se ejecuta el procedimiento GuardarCambios, el cual lleva 3 parámetros con los datos del producto que se está actualizando. La actualización la hacemos mediante la función Update de Sql
'Para actualizar los datos de ese
producto se le envían a esta rutina el código del producto _
'el nuevo Costo y el Nuevo Stock (si es que se cambió)
Private Sub guardarCambios(Cod As Integer, cos As Double, sto As Integer)
Dim sql As String
'Antes de guardar validamos
If Text1(0) = "" Or Text1(1) = "" Then
MsgBox "Los campos Costo y cantidad no pueden estar vacíos",
vbInformation + vbOKOnly, "GestorVideo"
Exit Sub
End If
'Preguntamos si está seguro de guardar los cambios
If MsgBox("¿Está seguro de guardar los cambios", vbQuestion + vbOKCancel,
"GestorVideo") = vbNo Then
Exit Sub
Else
'Consulta que utiliza un Update para guardar los cambios
sql = "UPDATE Productos SET costo = '" & FormatCurrency(cos) & "',
stock = stock + '" & sto & "' WHERE codigo = " & Cod & ""
Set recEntradaPro = Base_de_datos.OpenRecordset(sql, dbOpenDynamic, 0, dbOptimistic)
FormPrincipal.Primer_Registro recProductos, "Productos"
End If
End Sub
El formulario de Baja de productos es prácticamente igual y se llama FormBajaProd. Podría haber utilizado el mismo, es decir uno solo, por eso, esto se puede optimizar en un solo formulario que se encargue de todo. En este formulario indicamos la cantidad de Productos que queremos dar de baja. La imagen de esta pantalla:
Buscar en Recursos vb
Recursos visual basic - Buscar - Privacidad - Copyright © 2005 - 2009 - www.recursosvisualbasic.com.ar