Sección de código fuente Visual basic


Sistema de Video Club en Visual Basic - parte 4




Descargar el código fuente

<- Anterior : Siguiente ->

 

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:

 

Descargar el código fuente

<- Anterior : Siguiente ->




Buscar en Recursos vb