mirror of
https://github.com/KeymonSoft/Durakelo.git
synced 2026-04-17 19:36:12 +00:00
- VERSION 5.05.13
- Se corrigen los montos y piezas que semuestran en Resumen Dia del abordo - Se agrega la funcion "Subs/agrupaProdsPromo" que agrupa los productos fijos y variables de las promos, esto para el caso de que los fijos y variables sean iguales en monto y cantidad y el pasarInfoMovil no los tire!
This commit is contained in:
@@ -2557,9 +2557,13 @@ Sub Resumen_Click
|
||||
Private montoAbordo As String = 0
|
||||
Private px As Cursor = Starter.skmt.ExecQuery("select cat_gp_almacen, cat_gp_precio from cat_gunaprod2 where cat_gp_tipo <> 'PROMOS'")
|
||||
If px.RowCount > 0 Then
|
||||
px.Position = 0
|
||||
pzasAbordo = pzasAbordo + px.GetString("CAT_GP_ALMACEN")
|
||||
montoAbordo = montoAbordo + (px.GetString("CAT_GP_PRECIO") * px.GetInt("CAT_GP_ALMACEN"))
|
||||
For i = 0 To px.RowCount - 1
|
||||
px.Position = i
|
||||
pzasAbordo = pzasAbordo + px.GetString("CAT_GP_ALMACEN")
|
||||
montoAbordo = montoAbordo + (px.GetString("CAT_GP_PRECIO") * px.GetInt("CAT_GP_ALMACEN"))
|
||||
Log(pzasAbordo)
|
||||
Log(montoAbordo)
|
||||
Next
|
||||
End If
|
||||
Log(pzasAbordo)
|
||||
Log(montoAbordo)
|
||||
|
||||
@@ -390,6 +390,7 @@ Private Sub b_terminar1_Click
|
||||
Next
|
||||
lv_prodsFijos.Clear
|
||||
B4XPages.MainPage.bTerminarClicked = True
|
||||
Subs.agrupaProdsPromo(Subs.traeCliente)
|
||||
B4XPages.ShowPage("productos")
|
||||
B4XPages.MainPage.productos.b_terminar1_Click
|
||||
End Sub
|
||||
@@ -415,6 +416,7 @@ Private Sub b_continuar_Click
|
||||
prodspage.lv_promos.Visible = False
|
||||
prodspage.clv_productos.AsView.Visible = False
|
||||
End If
|
||||
Subs.agrupaProdsPromo(Subs.traeCliente)
|
||||
B4XPages.MainPage.bTerminarClicked = True
|
||||
B4XPages.ShowPage("productos")
|
||||
End Sub
|
||||
|
||||
@@ -1408,7 +1408,7 @@ Version=12.8
|
||||
#Region Project Attributes
|
||||
#ApplicationLabel: Durakelo
|
||||
#VersionCode: 1
|
||||
#VersionName: 5.05.07
|
||||
#VersionName: 5.05.13
|
||||
'SupportedOrientations possible values: unspecified, landscape or portrait.
|
||||
#SupportedOrientations: portrait
|
||||
#CanInstallToExternalStorage: False
|
||||
|
||||
@@ -73,6 +73,6 @@ ModuleClosedNodes6=
|
||||
ModuleClosedNodes7=
|
||||
ModuleClosedNodes8=
|
||||
ModuleClosedNodes9=
|
||||
NavigationStack=C_Principal,Resumen_Click,2543,6,C_Cliente,Class_Globals,22,0,Diseñador Visual,principal.bal,-100,1,Diseñador Visual,Cliente.bal,-100,1,C_Cliente,B_IMP_Click,781,0,C_Cliente,B_IMP2_Click,981,6,C_Principal,Subir_Click,576,0,C_Principal,cargar_Click,883,0,C_Principal,SUBIR_P_Click,2721,0,Starter,ENVIA_ULTIMA_GPS,100,0,C_Principal,Class_Globals,9,0
|
||||
NavigationStack=C_Principal,Class_Globals,20,0,C_Principal,B_PROXIMA_Click,2568,0,C_Productos,b_prodMenos_Click,626,0,Subs,traeTablaProds,1361,0,C_Promos,Class_Globals,0,0,C_Principal,Resumen_Click,2551,6,Subs,traemosInventarioDisponibleParaPromo,897,0,C_Promos,b_continuar_Click,412,0,C_Promos,b_terminar1_Click,386,6,Subs,agrupaProdsPromo,1529,2
|
||||
SelectedBuild=0
|
||||
VisibleModules=22,2,10,4,19,9,11,23,12,8
|
||||
|
||||
61
B4A/Subs.bas
61
B4A/Subs.bas
@@ -1510,4 +1510,65 @@ Sub revisaFechaVigenciaPromo(pm As Map) As Boolean
|
||||
' Log(Starter.tipov & "|" & vigencia & "|" & DateTime.Date(DateTime.Now))
|
||||
LogColor("Promo vigente: " & vigente, Colors.red)
|
||||
Return vigente
|
||||
End Sub
|
||||
|
||||
' Agrupa los productos de las promociones, porque si tenemos un producto fijo a precio x y un producto variabe al mismo precio
|
||||
' y las mismas cantidades, el pasarInfoMovil las detecta como duplicados y las tira, con esta funcion en lugar de dos registros,
|
||||
' solo va uno con cantidades y totales sumados.
|
||||
Sub agrupaProdsPromo (cliente As String)
|
||||
Starter.skmt.ExecNonQuery($"CREATE TEMP TABLE IF NOT EXISTS PEDIDO_AGRUPADOR (
|
||||
PE_PRECIO2,
|
||||
PE_TIPO,
|
||||
PE_FOLIO TEXT,
|
||||
PE_DESC TEXT,
|
||||
PE_COSTO_SIN REAL,
|
||||
PE_RUTA TEXT,
|
||||
PE_CEDIS TEXT,
|
||||
PE_COSTO_TOT REAL,
|
||||
PE_COSTOU REAL,
|
||||
PE_CANT INTEGER,
|
||||
PE_PRONOMBRE TEXT,
|
||||
PE_PROID TEXT,
|
||||
PE_CLIENTE TEXT,
|
||||
PE_FECHA TEXT,
|
||||
PE_USUARIO TEXT
|
||||
)"$)
|
||||
|
||||
Starter.skmt.BeginTransaction
|
||||
|
||||
'-- Vaciar la tabla temporal.
|
||||
Starter.skmt.ExecNonQuery($"DELETE FROM PEDIDO_AGRUPADOR"$)
|
||||
|
||||
'-- Ponemos los datos agrupados en la tabla temporal.
|
||||
Starter.skmt.ExecNonQuery($"
|
||||
INSERT INTO PEDIDO_AGRUPADOR
|
||||
Select
|
||||
PE_PRECIO2,
|
||||
PE_TIPO,
|
||||
PE_FOLIO,
|
||||
PE_DESC,
|
||||
PE_COSTO_SIN,
|
||||
PE_RUTA,
|
||||
PE_CEDIS,
|
||||
SUM(PE_COSTO_TOT) As PE_COSTO_TOT,
|
||||
PE_COSTOU,
|
||||
SUM(PE_CANT) As PE_CANT,
|
||||
PE_PRONOMBRE,
|
||||
PE_PROID,
|
||||
PE_CLIENTE,
|
||||
PE_FECHA,
|
||||
PE_USUARIO
|
||||
FROM
|
||||
pedido
|
||||
WHERE
|
||||
PE_CLIENTE = '${cliente}'
|
||||
GROUP BY
|
||||
PE_PROID, PE_PRONOMBRE, PE_COSTOU, PE_RUTA, PE_CEDIS, PE_CLIENTE, PE_FECHA, PE_USUARIO"$)
|
||||
|
||||
'-- Reemplazar los datos originales en pedido.
|
||||
Starter.skmt.ExecNonQuery($"DELETE FROM PEDIDO WHERE PE_CLIENTE = '${cliente}'"$)
|
||||
Starter.skmt.ExecNonQuery($"INSERT INTO PEDIDO SELECT * FROM PEDIDO_AGRUPADOR"$)
|
||||
Starter.skmt.TransactionSuccessful 'Si no se pone TransactionSuccessful no se escribe NADA!!
|
||||
Starter.skmt.EndTransaction
|
||||
Log("LISTO!!")
|
||||
End Sub
|
||||
Reference in New Issue
Block a user