- Se agregó "CHECKLIST" en el nombre cuando se envia el evento de "Salida de almacen".

- Se agregó el evento de "Fin Dia" a la bitacora.
This commit is contained in:
2024-05-10 21:54:22 -06:00
parent 2a17d65160
commit aeeaeb9f00
6 changed files with 21 additions and 4 deletions

View File

@@ -339,6 +339,7 @@ Sub restaFijosPromo(idPromo As String, promoMap As Map) As Map 'ignore
Log($"Prods fijos requeridos ${prodsFijos.Size}"$)
If prodsFijos.Size = 0 Then inventariosDisponiblesParaEstaPromo.Put("resultado", "ok") 'Si no lleva prods fijos la promo, entonces ponemos FIJOS OK.
For p = 0 To prodsFijos.Size - 1
Log(555)
Private t As String = prodsFijos.Get(p) 'Obtenemos el Id de este producto desde la lista de productos fijos.
Private p2 As Map = prodsmap.Get(t) 'Obtenemos un mapa con los datos de este producto (id, precio, almacen, tipo, piezas, etc.)
If thisLog Then Log($"T: ${t}, prod ${p2.Get("idProducto")}, piezas: ${p2.Get("piezas")}"$) 'Producto y piezas requeridas
@@ -354,6 +355,10 @@ Sub restaFijosPromo(idPromo As String, promoMap As Map) As Map 'ignore
If thisLog Then LogColor("Sin suficiente inventario fijo: " & t, Colors.Blue)
Exit
End If
'Aqui necesitamos el inventario del produccto de "t"
traeInventario(t, "CAT_GUNAPROD2") 'Hay que poner codigo para seleccionar la tabla dependiendo de si es venta o abordo
If i - p2.Get("piezas") < 0 Then
inventariosDisponiblesParaEstaPromo.Put("resultado", "No hay suficiente producto para la promocion.") 'Si el inventario de este producto sale negativo, quiere decir que no tenemos suficiente inventario para la promoción.
Exit
@@ -455,4 +460,14 @@ Sub traeListFromPromo(col As String, promo As String) As List
res.Initialize
End If
Return res
End Sub
'Regresa el inventario de un producto dado de la tabla dada.
Sub traeInventario(id As String, tabla As String) As Int
Private inv As Int = 0
Private c As ResultSet = db.ExecQuery($"select CAT_GP_ALMACEN from ${tabla} where CAT_GP_ID = ${id}"$)
Do While c.NextRow
inv = c.GetInt("CAT_GP_ALMACEN")
Loop
Return inv
End Sub