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 */ span.acssf146f{color:#ff0000;}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 *******/
Continuando con la parte del Formulario de Cartera de Clientes que nos muestra las facturas en mora del cliente seleccionado, vamos a seguir los siguientes puntos:
Siguiente los puntos anterior primero obtenemos los datos del cliente y lo tomamos del formulario de búsqueda que es desde el cual abrimos el formulario de Facturas.
Este código va en el formulario frmFacturasCliente
Sub DatosCliente()
Fila = frmBuscarCliente.msGrid.Row
txtCodigoCli.Text = frmBuscarCliente.msGrid.TextMatrix(Fila, 1)
txtNombre_Cli.Text = frmBuscarCliente.msGrid.TextMatrix(Fila, 2)
End Sub
Luego lo llamaos desde el evento load y en esta misma parte llenamos el campo de Fecha de la siguiente manera:
Private Sub Form_Load()
txtFecha.Text = Format(Date, "dd/mm/yyyy")
cmbTipo.ListIndex = 0
Call DatosCliente
End Sub
En esta parte vamos a listar las facturas (Sin Pagar, Pagas y Vencidas) el código seria el siguiente:
Sub Listado_Facturas()
Dim Sql As String
Dim Filtro As String
Dim Columnas As Integer
Tipo = cmbTipo.ListIndex
Filtro = ""
Select Case Tipo
Case 0: 'sin pagar
Filtro = " and SaldoFactura > 0 "
Case 1: 'facturas pagas
Filtro = " and SaldoFactura = 0 "
Case 2: 'vencidas
Filtro = " and now > DateAdd('d',Dias,FechaHora) and SaldoFactura > 0 "
End Select
Sql = "Select Num_Factura, FechaHora, Dias, DateAdd('d', Dias, FechaHora) AS Fechav, TotalFactura, SaldoFactura, '' as abono From tblVentas Where EstadoFact = 1 and IdCliente = " & txtCodigoCli & Filtro
Columnas = 7
Call LlenarGrid(msGrid, Sql, Columnas)
msGrid.ColWidth(0) = 0
msGrid.ColWidth(1) = 1300
msGrid.ColWidth(2) = 1600
msGrid.ColWidth(3) = 1100
msGrid.ColWidth(4) = 1400
msGrid.ColWidth(5) = 1800
msGrid.ColWidth(6) = 1800
msGrid.ColWidth(7) = 1800
msGrid.TextMatrix(0, 1) = "No. Factura"
msGrid.TextMatrix(0, 2) = "Fecha"
msGrid.TextMatrix(0, 3) = "Dias"
msGrid.TextMatrix(0, 4) = "Fecha V."
msGrid.TextMatrix(0, 5) = "Valor Factura"
msGrid.TextMatrix(0, 6) = "Saldo"
msGrid.TextMatrix(0, 7) = "Abono"
For I = 1 To msGrid.Rows - 1
msGrid.Col = 1
msGrid.CellAlignment = flexAlignCenterCenter
msGrid.Col = 3
msGrid.CellAlignment = flexAlignCenterCenter
msGrid.TextMatrix(I, 5) = Format(msGrid.TextMatrix(I, 5), "currency")
msGrid.TextMatrix(I, 6) = Format(msGrid.TextMatrix(I, 6), "currency")
msGrid.TextMatrix(I, 2) = Format(msGrid.TextMatrix(I, 2), "dd/mm/yyyy")
msGrid.TextMatrix(I, 4) = Format(msGrid.TextMatrix(I, 4), "dd/mm/yyyy")
Next I
End Sub Explicación:
Explicare las parte que considero no están claras lo demás ya lo he explicado en lecciones anteriores.
Los filtros:
Tipo = cmbTipo.ListIndex
Filtro = ""
Select Case Tipo
Case 0: 'sin pagar
Filtro = " and SaldoFactura > 0 "
Case 1: 'facturas pagas
Filtro = " and SaldoFactura = 0 "
Case 2: 'vencidas
Filtro = " and now > DateAdd('d',Dias,FechaHora) and SaldoFactura > 0 "
End Select Para saber las facturas que estan sin pagar simplemente valido que el campo SaldoFactura sea mayo a cero.
Para saber las facturas pagas simplemente valido que el campo SaldoFactura sea igual a cero.
Para saber las facturas vencidas ya esto si es un poquito mas trabajado usamos una función de sql llamada DateAdd para sumar días a la fecha de la facturas, entonces.
DateAdd(‘d’,Dias, FechaHora).
la ‘d’ le indico que voy a sumar días, el siguiente dato es los días a incrementas le pasamos el campo Dias, por ultimo a que campo se le va a sumar los días en este caso seria FechaHora.
La función Now es para traer la fecha actual. entonces valida que la fecha actual sea mayor a la fecha de la factura mas los días, así se obtienen la facturas vencidas.
En la consulta sql:
Sql = "Select Num_Factura, FechaHora, Dias, DateAdd('d', Dias, FechaHora) AS Fechav, TotalFactura, SaldoFactura, '' as abono From tblVentas Where EstadoFact = 1 and IdCliente = " & txtCodigoCli & lo unico raro es calcular la fecha de vencimiento que lo hago de las siguiente manera DateAdd(‘d’, Dias, FechaHora) que ya explique arriba se le suman los días a la fecha de la factura.
Evento Clic del boton Buscar Factura:
Private Sub cmdBuscarFacturas_Click()
Call Listado_Facturas
End Sub Se llama al procedimiento que lista las facturas.
No te olvides de Compartir
Saludos, en este tutorial aprenderás a integrar tu aplicación de Visual Basic 6 con un…
Recientemente, muchos usuarios de Hotmail (ahora Outlook.com) han reportado un error al intentar iniciar sesión…
En este proyecto, vamos a desarrollar una calculadora sencilla usando Visual Basic 6, que permite…
6 de septiembre de 2024 - La demanda de desarrolladores de software sigue en aumento,…
En un movimiento histórico, la Unión Europea ha aprobado la primera ley de inteligencia artificial…
¿Sigues trabajando con Visual Basic 6 y necesitas una forma eficiente de acceder a tus…
Este sitio utiliza cookies desea activarlas
Leave a Comment