amp-web-push-widget button.amp-subscribe { display: inline-flex; align-items: center; border-radius: 5px; border: 0; box-sizing: border-box; margin: 0; padding: 10px 15px; cursor: pointer; outline: none; font-size: 15px; font-weight: 500; background: #4A90E2; margin-top: 7px; color: white; box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.5); -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } .amp-logo amp-img{width:190px} .amp-menu input{display:none;}.amp-menu li.menu-item-has-children ul{display:none;}.amp-menu li{position:relative;display:block;}.amp-menu > li a{display:block;} /* Inline styles */ div.acss138d7{clear:both;}div.acssf5b84{--relposth-columns:3;--relposth-columns_m:2;--relposth-columns_t:2;}div.acssa8a3d{aspect-ratio:1/1;background:transparent no-repeat scroll 0% 0%;height:300px;max-width:300px;}div.acss13836{color:#333333;font-family:Arial;font-size:14px;height:75px;}span.acss47fcd{background:#FFFFFF;color:#000000;}div.acss0f1bf{display:none;}a.acssf23c5{font-size:8pt;}a.acss24ea4{font-size:16.4pt;}a.acss066f0{font-size:22pt;} .ampforwp_wc_shortcode{margin-top: 0;padding:0;display:inline-block;width: 100%;} .ampforwp_wc_shortcode li{position: relative;width:29%; font-size:12px; line-height: 1; float: left;list-style-type: none;margin:2%;} .ampforwp_wc_shortcode .onsale{position: absolute;top: 0;right: 0;background: #ddd;padding: 7px;font-size: 12px;} .single-post .ampforwp_wc_shortcode li amp-img{margin:0} .ampforwp-wc-title{margin: 8px 0px 10px 0px;font-size: 13px;} .ampforwp-wc-price{color:#444} .wc_widgettitle{text-align:center;margin-bottom: 0px;} .ampforwp-wc-price, .ampforwp_wc_star_rating{float:left;margin-right: 10px;} .icon-widgets:before {content: "\e1bd";}.icon-search:before {content: "\e8b6";}.icon-shopping-cart:after {content: "\e8cc";} /******* Paste your Custom CSS in this Editor *******/
Creación Software de Ventas Vb6

Curso de Software de Ventas Parte 33, Ventana de Ventas 8 – Mostrar Detalle de Productos

En esta lección muestro como mostrar los productos ingresados en la tabla detalle de productos en un Grid.

Colabora y Suscribete a mi canal de

Primero se corregio el procedimiento para inicializar el grid para tomara el color azul del titulo que se vea igual a otros que ya hemos usado:

Sub InicializarGrip()
    msGrid.Cols = 9
    msGrid.Rows = 1
    msGrid.ColWidth(0) = 0
    msGrid.ColWidth(1) = 0
    msGrid.ColWidth(2) = 900 'codigo
    msGrid.ColWidth(3) = 4300 'nombre
    msGrid.ColWidth(4) = 800 'cantidad
    msGrid.ColWidth(5) = 1300 'preciov
    msGrid.ColWidth(6) = 1300 'imp
    msGrid.ColWidth(7) = 1300 'subtotal
    msGrid.ColWidth(8) = 1300 'Desc

    msGrid.TextMatrix(0, 0) = "ID"
    msGrid.TextMatrix(0, 1) = "IdPro"
    msGrid.TextMatrix(0, 2) = "Código"
    msGrid.TextMatrix(0, 3) = "Nombre Producto"
    msGrid.TextMatrix(0, 4) = "Cant"
    msGrid.TextMatrix(0, 5) = "Precio V"
    msGrid.TextMatrix(0, 6) = "Impuesto"
    msGrid.TextMatrix(0, 7) = "Subtotal"
    msGrid.TextMatrix(0, 8) = "Descuento"
    
    'recorre las celdas del titulo del grid y le da color
    For I = 1 To msGrid.Cols - 1
        msGrid.Row = 0
        msGrid.Col = I 'va recorriendo las celdas de la primera fila
        msGrid.CellBackColor = &H8C5828 'color azul para el fondo
        msGrid.CellAlignment = flexAlignCenterCenter 'texto centrado
        msGrid.CellForeColor = vbWhite 'color blanco para el texto
        msGrid.CellFontBold = True 'Negrita
    Next I
    
End Sub

 

Para eso se crea un sub procedimiento llamado LlenarGridProductos en el cual se hace la consulta la base de datos y luego se le da formato al control Grid.

Sub LlenarGridProductos()
    Dim Sql As String
    Dim Columnas As Integer
    Columnas = 9
    
    Sql = "SELECT tblDetalle_Venta.Id_detalle, tblDetalle_Venta.IdProducto, tblProductos.CodigoPro, tblProductos.NombrePro, tblDetalle_Venta.Cantidad_dv, tblDetalle_Venta.P_Venta_dv, tblDetalle_Venta.Impuesto_dv, 0 as Subtotal, tblDetalle_Venta.Descuento_dv " _
        & " FROM tblProductos INNER JOIN tblDetalle_Venta ON tblProductos.IdProducto = tblDetalle_Venta.IdProducto WHERE tblDetalle_Venta.Num_VentaTemp = " & ConsecutivoTemp
    
    Call LlenarGrid(msGrid, Sql, Columnas)
    
    
    msGrid.ColWidth(0) = 0
    msGrid.ColWidth(1) = 0 'ID
    msGrid.ColWidth(2) = 0 'item
    msGrid.ColWidth(3) = 900 'codigo
    msGrid.ColWidth(4) = 4300 'nombre
    msGrid.ColWidth(5) = 800 'cantidad
    msGrid.ColWidth(6) = 1300 'preciov
    msGrid.ColWidth(7) = 1300 'imp
    msGrid.ColWidth(8) = 1300 'subtotal
    msGrid.ColWidth(9) = 1300 'Desc

    
    msGrid.TextMatrix(0, 2) = "IdPro"
    msGrid.TextMatrix(0, 3) = "Código"
    msGrid.TextMatrix(0, 4) = "Nombre Producto"
    msGrid.TextMatrix(0, 5) = "Cant"
    msGrid.TextMatrix(0, 6) = "Precio V"
    msGrid.TextMatrix(0, 7) = "Impuesto"
    msGrid.TextMatrix(0, 8) = "Subtotal"
    msGrid.TextMatrix(0, 9) = "Descuento"
    
    msGrid.ColAlignment(5) = flexAlignCenterCenter
    TotalVenta = 0
    TotalDescuento = 0
    For Filas = 1 To msGrid.Rows - 1
          Cantidad = msGrid.TextMatrix(Filas, 5)
          PrecioVp = CCur(msGrid.TextMatrix(Filas, 6))
          DescuentoP = CCur(msGrid.TextMatrix(Filas, 9))
          SubTotal = (Cantidad * PrecioVp) - DescuentoP
          
          msGrid.TextMatrix(Filas, 6) = Format(msGrid.TextMatrix(Filas, 6), "currency")
          msGrid.TextMatrix(Filas, 7) = Format(msGrid.TextMatrix(Filas, 7), "currency")
          msGrid.TextMatrix(Filas, 8) = Format(SubTotal, "currency")
          msGrid.TextMatrix(Filas, 9) = Format(msGrid.TextMatrix(Filas, 9), "currency")
          TotalVenta = TotalVenta + SubTotal
          TotalDescuento = TotalDescuento + DescuentoP
    Next Filas
    
    txtTotalFactura.Text = Format(TotalVenta, "currency")
    txtTotalDescuento.Text = Format(TotalDescuento, "currency")
    
    NArticulos.Text = msGrid.Rows - 1
    
End Sub

Después que se ingresa el producto se debe limpiar los campos que contienen los datos del producto ingresaro:

Sub LimpiarDatosProducto()
    txtCodigoPro.Text = ""
    txtNombrePro.Text = ""
    txtCant_Pro.Text = 0
    txtPrecioV_Pro.Text = 0
    txtValorTotalPro.Text = 0
    txtPorcDescuentoPro.Text = 0
    txtDesuentoVPro.Text = 0
    txtPrecioMinimoPro.Text = 0
    txtExistPro.Text = 0
    txtNombrePro.SetFocus
End Sub

Otro procedimiento que se actualizo fue el evento KeyUp del control txtCant_Pro para que al presionar Enter ingrese el producto:

Private Sub txtCant_Pro_KeyUp(KeyCode As Integer, Shift As Integer)
    If txtCant_Pro.Text <> "" Then
       Call CalcularVTotal(0)
    End If
    If KeyCode = 13 Then
       Call cmdIngresarPro_Click
    End If
End Sub

De la misma manera se agrego al evento KeyUp del campo txtPrecioV:

Private Sub txtPrecioV_Pro_KeyUp(KeyCode As Integer, Shift As Integer)
    If KeyCode = 13 Then
       Call cmdIngresarPro_Click
    End If
End Sub

Apóyanos siguiendo las redes sociales:

Suscribete a Youtube

Siguenos en Twitter

Siguenos en Facebook

Total Page Visits: 5396 - Today Page Visits: 1
Luis F. Martinez

Leave a Comment

Ver Comentarios

  • BUENAS NOCHES GRACIAS POR LOS APORTES

    QUIERO AGREGAR MAS COLUMNAS AL Grid Y NO DEJA USTED LO TIENE ASI

    Dim Columnas As Integer
    Columnas = 9

    Y YO LO QUIERO ASI
    Dim Columnas As Integer
    Columnas = 14

    Y SE DETIENE EN LA COLUMNA 9 Y NO SIGUE MAS, CAMBIO LA COLUMNA A OTRO VALOR 10 Y LO MISMO
    SOLO FUNCIONA ASTA LA 9
    COMO HAGO PARA AGRAGAR MAS COLUMNAS

    • Hola pues debes enviarme el código y el error que te saca para yo probarlo acá y decirte cual es el problema

Compartir
Publicado por
Luis F. Martinez

Publicaciones Recientes

CRUD Enviar y Recibir datos de Visual Basic 6 a PHP

Saludos, en este tutorial aprenderás a integrar tu aplicación de Visual Basic 6 con un…

4 meses hace

Problemas para acceder a Hotmail o Live.com desde el navegador web

Recientemente, muchos usuarios de Hotmail (ahora Outlook.com) han reportado un error al intentar iniciar sesión…

6 meses hace

Calculadora Básica en Visual Basic 6, Aprende a usar variables

En este proyecto, vamos a desarrollar una calculadora sencilla usando Visual Basic 6, que permite…

1 año hace

Lenguajes de Programación Más Demandados en 2024

6 de septiembre de 2024 - La demanda de desarrolladores de software sigue en aumento,…

1 año hace

La Unión Europea Aprueba la Primera Ley de Inteligencia Artificial del Mundo

En un movimiento histórico, la Unión Europea ha aprobado la primera ley de inteligencia artificial…

1 año hace

Sincronización de Datos en Línea VB6: Lleva tu Proyecto al Siguiente Nivel

¿Sigues trabajando con Visual Basic 6 y necesitas una forma eficiente de acceder a tus…

1 año hace

Este sitio utiliza cookies desea activarlas