- VERSION 4.10.02

- Se agregó el almacen a todas las tablas necesarias y a los queries de envio de información.
This commit is contained in:
Jose Alberto Guerra Ugalde
2024-10-03 15:24:11 -06:00
parent e85f953e73
commit ead56c8758
16 changed files with 2900 additions and 358 deletions

View File

@@ -75,7 +75,7 @@ Sub B4XPage_Appear
Existe = C.GetString("EXISTE")
C.Close
' c=Starter.skmt.ExecQuery("select distinct hist_ventas.hvd_num_registro, HIST_VENTAS.HVD_CLIENTE, HIST_VENTAS.HVD_PRONOMBRE, HIST_VENTAS.HVD_PROID, HIST_VENTAS.HVD_CANT, HIST_VENTAS2.HVD_CANT as HVD_CANT2, HIST_VENTAS.HVD_COSTO_TOT, HIST_VENTAS.HVD_CODPROMO from HIST_VENTAS inner join HIST_VENTAS2 on HIST_VENTAS.HVD_PROID = HIST_VENTAS2.HVD_PROID and HIST_VENTAS.HVD_CLIENTE = HIST_VENTAS2.HVD_CLIENTE WHERE HIST_VENTAS.HVD_CLIENTE IN (Select CUENTA from cuentaa) and HIST_VENTAS.HVD_RECHAZO = 0 order by HIST_VENTAS.HVD_CODPROMO desc, HIST_VENTAS.HVD_PRONOMBRE asc")
c=Starter.skmt.ExecQuery("select hvd_num_registro, HVD_CLIENTE, HVD_PRONOMBRE, HVD_PROID, HVD_CANT, HVD_COSTO_TOT, HVD_CODPROMO from HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) and HVD_RECHAZO = 0 and hvd_cant > 0 order by HVD_CODPROMO desc, HVD_PRONOMBRE asc")
c=Starter.skmt.ExecQuery("select hvd_num_registro, HVD_CLIENTE, HVD_PRONOMBRE, HVD_PROID, HVD_IDALMACEN, HVD_CANT, HVD_COSTO_TOT, HVD_CODPROMO from HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) and HVD_RECHAZO = 0 and hvd_cant > 0 order by HVD_CODPROMO desc, HVD_PRONOMBRE asc")
ListView1.Clear
clv_pedido.Clear
Subs.SetDivider(ListView1, Colors.LightGray, 2)
@@ -111,7 +111,7 @@ Sub B4XPage_Appear
End If
' Log($"Agregamos prod a lista1 | ${c.GetString("HVD_CANT")} - ${c.GetString("HVD_CANT2")}"$) 'HVD_CANT2 es la original de la orden.
' ListView1.AddTwoLines(c.GetString("HVD_PRONOMBRE"),"Cantidad #"& c.GetString("HVD_CANT")& " SubTotal $"& c.GetString("HVD_COSTO_TOT"))
clv_pedido.Add(CreateListItem(c.GetString("HVD_PRONOMBRE"), Subs.traePrecio(c.GetString("HVD_PROID"), c.GetString("HVD_CODPROMO")), c.GetString("HVD_CANT"), 0, clv_pedido.AsView.Width, 50dip, bmp, c.GetString("HVD_PROID"), bgColor, textColor, c.GetString("HVD_CODPROMO"),Subs.traeCliente), c.GetString("HVD_PRONOMBRE"))
clv_pedido.Add(CreateListItem(c.GetString("HVD_PRONOMBRE"), Subs.traePrecio(c.GetString("HVD_PROID"), c.GetString("HVD_CODPROMO")), c.GetString("HVD_CANT"), 0, clv_pedido.AsView.Width, 50dip, bmp, c.GetString("HVD_PROID"), bgColor, textColor, c.GetString("HVD_CODPROMO"),Subs.traeCliente, c.GetString("HVD_IDALMACEN")), c.GetString("HVD_PRONOMBRE"))
Next
' cuentaProds("")
End If
@@ -135,7 +135,7 @@ Sub B4XPage_Appear
cantCO = Subs.traeCantidadRechazada(vc.GetString("REP_CLI_ORIG"), vc.GetString("REP_PRODID"))
' Log($"${vc.GetString("REP_CLI_ORIG")}, ${vc.GetString("REP_CLIENTE")}, ${vc.GetString("REP_PRODID")}, ${vc.GetString("REP_PRONOMBRE")}, ${vc.GetString("REP_RECHAZO")}, ${vc.GetString("REP_CANT")}, ${vc.GetString("REP_PRECIO")}, ${cantCO}, ${cco.GetString("REP_CANT")}, ${vc.GetString("REP_CANT")}"$)
clv_pedido.Add(CreateListItem(vc.GetString("REP_PRONOMBRE"), Subs.traePrecio(vc.GetString("REP_PRODID"), 1), vc.GetString("REP_CANT"), cantCO, clv_pedido.AsView.Width, 50dip, bmp, vc.GetString("REP_PRODID"), bgColor, textColor, 1, vc.GetString("REP_CLI_ORIG")), vc.GetString("REP_PRONOMBRE"))
clv_pedido.Add(CreateListItem(vc.GetString("REP_PRONOMBRE"), Subs.traePrecio(vc.GetString("REP_PRODID"), 1), vc.GetString("REP_CANT"), cantCO, clv_pedido.AsView.Width, 50dip, bmp, vc.GetString("REP_PRODID"), bgColor, textColor, 1, vc.GetString("REP_CLI_ORIG"), c.GetString("HVD_IDALMACEN")), vc.GetString("REP_PRONOMBRE"))
Next
cco.Close
vc.Close
@@ -314,7 +314,7 @@ End Sub
'***************** PARA EL MAS/MENOS *************************************
'****************************************************************************
Sub CreateListItem(Text As String, precioU As String, inv As Int, inv2 As Int, Width As Int, Height As Int, img As Bitmap, prodId As String, bc As Int, tc As Int, promo As String, cliente_original As String) As Panel
Sub CreateListItem(Text As String, precioU As String, inv As Int, inv2 As Int, Width As Int, Height As Int, img As Bitmap, prodId As String, bc As Int, tc As Int, promo As String, cliente_original As String, idAlmacen As String) As Panel
Dim p As B4XView = xui.CreatePanel("")
Private cs As CSBuilder
cs.Initialize
@@ -329,8 +329,8 @@ Sub CreateListItem(Text As String, precioU As String, inv As Int, inv2 As Int, W
End If
l_prodX.Tag = $"ID: ${prodId}${CRLF}${Text}${CRLF}Precio: $$1.2{precioU}${CRLF}Inv: ${inv} pzs"$
' l_pCant.Text = 0
l_pCant.Tag = Round2(precioU,2)&"|"&inv&"|"&prodId&"|"&promo&"|"&inv2&"|"&cliente_original
et_pCant.Tag = Round2(precioU,2)&"|"&inv&"|"&prodId&"|"&promo&"|"&inv2&"|"&cliente_original
l_pCant.Tag = Round2(precioU,2)&"|"&inv&"|"&prodId&"|"&promo&"|"&inv2&"|"&cliente_original&"|"&idAlmacen
et_pCant.Tag = Round2(precioU,2)&"|"&inv&"|"&prodId&"|"&promo&"|"&inv2&"|"&cliente_original&"|"&idAlmacen
p_prods.Tag = l_pCant.tag
' Log($"Ponemos la cant en ${inv}"$)
l_pCant.Text = inv
@@ -380,7 +380,7 @@ Sub b_prodMenos_Click
' L_CANT.Text = L_CANT.Text - 1
' End If
' b_guardar.Visible = True
Subs.prodRechazo(esteTag.Get(5), esteTag.Get(2))
Subs.prodRechazo(esteTag.Get(5), esteTag.Get(2), esteTag.Get(6))
Private cym As Map = Subs.traemosCantYMonto(clv_pedido)
L_CANT.Text = cym.Get("cantidad")
L_TOTAL.Text = Round2(cym.Get("monto"), 2)
@@ -411,7 +411,7 @@ Sub b_prodMas_Click
laCant.Text = $"$1.0{laCant.Text + 1}"$
Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen - 1 where cat_gp_id = ?", Array As Object(esteTag.Get(2)))
Subs.prodVenta(esteTag.Get(5), esteTag.Get(2))
Subs.prodVenta(esteTag.Get(5), esteTag.Get(2), esteTag.Get(6))
Private cym As Map = Subs.traemosCantYMonto(clv_pedido)
L_CANT.Text = cym.Get("cantidad")
L_TOTAL.Text = Round2(cym.Get("monto"), 2)
@@ -455,6 +455,7 @@ Sub cuentaProds(accion As String)
Private esteCliente = Subs.traeCliente
Private esteProdNombre = Subs.traeNombre(esteProd)
Private esteClienteOriginal As Int = esteTag.Get(5)
Private esteIdAlmacen As String = esteTag.Get(6)
Private fechaReparto As String = Subs.traeFechaReparto
Private maxProds = Subs.traeMaxCantidad(esteTag.Get(5), esteTag.Get(2))
@@ -479,8 +480,8 @@ Sub cuentaProds(accion As String)
' Log($"HayRechazo=${rr.GetString("hayRechazo")}"$)
If rr.GetString("hayRechazo") = 0 Then
Log("INSERTAMOS EN REPARTO")
Starter.skmt.ExecNonQuery2("insert into reparto(REP_CLIENTE, REP_PRONOMBRE, REP_CANT, REP_COSTO_TOT, REP_FECHA, REP_RECHAZO, REP_PRODID, REP_PRECIO, REP_CLI_ORIG) VALUES (?,?,?,?,?,1,?,?,?) ", Array As String(esteCliente, esteProdNombre, 0, estePrecio, fechaReparto, esteProd, estePrecio, esteCliente))
Starter.skmt.ExecNonQuery2("insert into reparto(REP_CLIENTE, REP_PRONOMBRE, REP_CANT, REP_COSTO_TOT, REP_FECHA, REP_RECHAZO, REP_PRODID, REP_PRECIO, REP_CLI_ORIG) VALUES (?,?,?,?,?,0,?,?,?) ", Array As String(esteCliente, esteProdNombre, cantRechazada, 0, fechaReparto, esteProd, estePrecio, esteCliente))
Starter.skmt.ExecNonQuery2("insert into reparto(REP_CLIENTE, REP_PRONOMBRE, REP_CANT, REP_COSTO_TOT, REP_FECHA, REP_RECHAZO, REP_PRODID, REP_PRECIO, REP_CLI_ORIG, REP_IDALMACEN) VALUES (?,?,?,?,?,1,?,?,?,?) ", Array As String(esteCliente, esteProdNombre, 0, estePrecio, fechaReparto, esteProd, estePrecio, esteCliente, esteIdAlmacen))
Starter.skmt.ExecNonQuery2("insert into reparto(REP_CLIENTE, REP_PRONOMBRE, REP_CANT, REP_COSTO_TOT, REP_FECHA, REP_RECHAZO, REP_PRODID, REP_PRECIO, REP_CLI_ORIG, REP_IDALMACEN) VALUES (?,?,?,?,?,0,?,?,?,?) ", Array As String(esteCliente, esteProdNombre, cantRechazada, 0, fechaReparto, esteProd, estePrecio, esteCliente, esteIdAlmacen))
Else if esteClienteOriginal = "0" Then 'Actualizamos el rechazo en el cliente actual.
' Log($"Actualizamos REP_CANT=${cantRechazada}"$)
' Starter.skmt.ExecNonQuery($"update reparto set REP_CANT = '${cantRechazada}', REP_PRECIO = '${estePrecio}', REP_COSTO_TOT = '${estePrecio * cantRechazada}' where REP_CLIENTE in (Select CUENTA from cuentaa) and REP_CLI_ORIG = '${esteClienteOriginal}' and REP_RECHAZO = 1 and REP_PRODID = '${esteProd}'"$)
@@ -494,7 +495,7 @@ Sub cuentaProds(accion As String)
' totalCompra = totalCompra + (esteTag.get(0) * cant1.text)
' Log($"Cant: ${cant1.Text}, Suma: ${totalCompra}"$)
Private m As Map
m=CreateMap("cant":cant1.Text, "cant2":esteTag.get(4), "precio":esteTag.get(0), "promo":esteTag.get(3), "nombre":Subs.traeNombre(esteTag.Get(2)), "cli_orig":esteTag.get(5))
m=CreateMap("cant":cant1.Text, "cant2":esteTag.get(4), "precio":esteTag.get(0), "promo":esteTag.get(3), "nombre":Subs.traeNombre(esteTag.Get(2)), "cli_orig":esteTag.get(5), "idAlmacen":esteTag.get(6))
' LogColor("PUT:" & esteTag.Get(2), Colors.Red)
prodsMap.Put(esteTag.Get(2), m)
End If
@@ -528,7 +529,7 @@ Sub cuentaProds(accion As String)
bgColor = Colors.White
End If
Log($"CLI: ${pr1.Get("nombre")}, ${newPrecio}, ${pr1.Get("cant")}, ${pr1.Get("cant2")}"$)
clv_pedido.Add(CreateListItem(pr1.Get("nombre"), newPrecio, pr1.Get("cant"), pr1.Get("cant2"), clv_pedido.AsView.Width, 50dip, bmp, pr, bgColor, textColor, newPromo, pr1.Get("cli_orig")), pr1.Get("nombre"))
clv_pedido.Add(CreateListItem(pr1.Get("nombre"), newPrecio, pr1.Get("cant"), pr1.Get("cant2"), clv_pedido.AsView.Width, 50dip, bmp, pr, bgColor, textColor, newPromo, pr1.Get("cli_orig"), pr1.Get("idAlmacen")), pr1.Get("nombre"))
reconstruirPedido = False
Next
promoABorrar = ""