From 3c6719cabc60c16993b7871195cbd28a028cbfd0 Mon Sep 17 00:00:00 2001 From: cvaldes1201 Date: Mon, 29 Jul 2024 15:59:27 -0600 Subject: [PATCH] .... --- B4A/C_Productos.bas | 8 +++++--- B4A/MARQUEZ.b4a | 2 +- B4A/MARQUEZ.b4a.meta | 4 ++-- B4A/Subs.bas | 38 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 46 insertions(+), 6 deletions(-) diff --git a/B4A/C_Productos.bas b/B4A/C_Productos.bas index e21d895..a4ebfab 100644 --- a/B4A/C_Productos.bas +++ b/B4A/C_Productos.bas @@ -1383,7 +1383,8 @@ Sub b_prodMenosc_Click LogColor("prodsMap="&prodsMap, Colors.blue) ' (Subs.traeAlmacen, p1.Get("precio"), p1.Get("cant"), pn, p, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta) Log($"${Subs.traeAlmacen}, ${precio}, ${laCant2.text}, ${Subs.traeProdNombre(id)}, ${id}, ${clienteId}"$) - Subs.actualizaProducto(Subs.traeAlmacen, preciocaja,(laCant2.Text * conversion), Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,laCant2.Text,1) +' Subs.actualizaProducto(Subs.traeAlmacen, preciocaja,(laCant2.Text * conversion), Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,laCant2.Text,1) + Subs.actualizaProducto2(Subs.traeAlmacen, preciocaja,(laCant2.Text * conversion), Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,laCant2.Text,1) cuentaProds LogColor("prodsMap="&prodsMap, Colors.blue) Log($"Total Prods: ${totalProds}, Total Compra: $$1.2{totalCompra}"$) @@ -1479,7 +1480,8 @@ Sub b_prodMasc_Click ' totalcajasmaspiezas = laCant2.Text ' End If - Subs.actualizaProducto(Subs.traeAlmacen,preciocaja,(laCant2.Text * conversion), Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,laCant2.Text,1) +' Subs.actualizaProducto(Subs.traeAlmacen,preciocaja,(laCant2.Text * conversion), Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,laCant2.Text,1) + Subs.actualizaProducto2(Subs.traeAlmacen,preciocaja,(laCant2.Text * conversion), Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,laCant2.Text,1) cuentaProds ' Log($"Total Prods: ${totalProds}, Total Compra: $$1.2{totalCompra}"$) If 1 = 1 Then @@ -1590,7 +1592,7 @@ Private Sub et_pCantc_TextChanged (Old As String, New As String) If invTotal - (laCant2.Text * conversion) >= 0 Then LogColor("validacion inventariio " & (invTotal - (laCant2.Text * conversion)), Colors.Blue) Log("actualizamos producto") - Subs.actualizaProducto(Subs.traeAlmacen, preciocaja,(laCant2.Text * conversion), Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,laCant2.Text,1) + Subs.actualizaProducto2(Subs.traeAlmacen, preciocaja,(laCant2.Text * conversion), Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,laCant2.Text,1) cuentaProds Else Private totalcajaspermi As Int = invTotal / conversion diff --git a/B4A/MARQUEZ.b4a b/B4A/MARQUEZ.b4a index f6ca8ca..82e67cd 100644 --- a/B4A/MARQUEZ.b4a +++ b/B4A/MARQUEZ.b4a @@ -194,7 +194,7 @@ Version=12.8 #Region Project Attributes #ApplicationLabel: Marquez #VersionCode: 1 - #VersionName: 4.07.11 + #VersionName: 4.07.20 'SupportedOrientations possible values: unspecified, landscape or portrait. #SupportedOrientations: portrait #CanInstallToExternalStorage: False diff --git a/B4A/MARQUEZ.b4a.meta b/B4A/MARQUEZ.b4a.meta index d4f8a39..393ac54 100644 --- a/B4A/MARQUEZ.b4a.meta +++ b/B4A/MARQUEZ.b4a.meta @@ -88,6 +88,6 @@ ModuleClosedNodes6= ModuleClosedNodes7= ModuleClosedNodes8= ModuleClosedNodes9= -NavigationStack=C_Productos,LlenaProdsLL,1299,6,Main,Activity_Create,28,0,C_TicketsDia,Class_Globals,0,0,C_TicketsDia,B4XPage_Appear,52,2,C_TicketsDia,B4XPage_Created,32,0,C_Principal,B4XPage_CloseRequest,1991,0,C_Principal,B_OK_RES_Click,2273,3,DiseƱador Visual,principal.bal,-100,6,DiseƱador Visual,resdia.bal,-100,2,C_Principal,resdia_Click,2303,1 +NavigationStack=C_Productos,b_prodMenos_Click,560,0,Subs,guardaProductoSinGestion2,804,4,Subs,actualizaProducto2,831,6,Subs,actualizaProducto,784,0,Subs,guardaProductoSinGestion,763,0,C_Productos,b_prodMenosc_Click,1380,0,C_Productos,b_prodMasc_Click,1477,0,C_Productos,et_pCantc_TextChanged,1588,0,C_Nota,B4XPage_Appear,57,0,C_Cliente,MODS,0,0,C_Cliente,Class_Globals,35,0 SelectedBuild=0 -VisibleModules=1,2,13,4,7,8,9,10,14,28,18 +VisibleModules=1,2,13,4,7,8,9,10,14,28 diff --git a/B4A/Subs.bas b/B4A/Subs.bas index 42d2b9f..35bee40 100644 --- a/B4A/Subs.bas +++ b/B4A/Subs.bas @@ -805,6 +805,44 @@ Sub actualizaProducto(cedis As String, costoU As String, cant As Int, nombre As c.Close End Sub +Sub guardaProductoSinGestion2(cedis As String, costoU As String, cant As String, nombre As String, prodId As String, clienteId As String, fecha As String, usuario As String, rutaV As String, precioSin As String, tipoVenta As String, cantc As String, bcajas As String) +' LogColor("guardaProducto: "&prodId&", cant="&cant, Colors.Magenta) + Private c As Cursor + B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN,PE_FOLIO,PE_ENVIO_OK,PE_CANTC,PE_BCAJAS) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,0,?,?) ", Array As Object (cedis, (cantc * costoU), costoU, cant, nombre, prodId, clienteId, fecha, usuario, rutaV, precioSin, tipoVenta,cantc,bcajas)) + B4XPages.MainPage.skmt.ExecNonQuery2($"update ${Starter.tabla} set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? "$, Array As Object(cant, prodId)) + c=B4XPages.MainPage.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") + c.Position=0 + B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") + B4XPages.MainPage.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT,PC_ALMACEN,PC_RUTA,PC_COSTO_SIN) VALUES (?,?,?,?,?,?,?,?,?,?)", Array As Object(clienteId, fecha, usuario, c.GetString("CANT_CLIE"), c.GetString("TOTAL_CLIE"), B4XPages.MainPage.lon_gps, B4XPages.MainPage.lat_gps, cedis, c.GetString("TOTAL_CLIE_SIN"))) +End Sub + +Sub actualizaProducto2(cedis As String, costoU As String, cant As Int, nombre As String, prodId As String, clienteId As String, fecha As String, usuario As String, rutaV As String, precioSin As String, tipoVenta As String, cantc As String, bcajas As String) + Private c As Cursor=B4XPages.MainPage.skmt.ExecQuery($"select * from pedido where pe_cedis = '${cedis}' and pe_proid = '${prodId}' and pe_cliente = '${clienteId}' AND PE_FOLIO = '${B4XPages.MainPage.tipo_venta}'"$) +' Log($"ROWCOUNT: ${c.RowCount}, ${cant}"$) + LogColor($"actualizaProducto, c=${clienteId}, p=${prodId}, nombre=${nombre}, cant=${cant}, cedis=${cedis}, tipo=${tipoVenta}"$, Colors.Magenta) + + If c.RowCount > 0 Then + c.Position=0 + Private antCant As Int = 0 + If IsNumber(c.GetInt("PE_CANT")) Then antCant=c.GetInt("PE_CANT") + Private difCant As Int = cant - antCant + B4XPages.MainPage.skmt.ExecNonQuery($"update pedido set pe_cant = ${cant}, pe_costo_tot = ${(cantc*c.GetString("PE_COSTOU"))}, PE_CANTC = ${cantc}, PE_BCAJAS = ${bcajas} where pe_cedis = '${cedis}' and pe_proid = '${prodId}' and pe_cliente = '${clienteId}' AND PE_FOLIO = '${B4XPages.MainPage.tipo_venta}'"$) + B4XPages.MainPage.skmt.ExecNonQuery($"update ${Starter.tabla} set cat_gp_almacen = cat_gp_almacen - (${difCant}) where cat_gp_id = '${prodId}' "$) +' Log($"CANT=${cant}"$) + If cant = 0 Then + Log("BORRAMOS PROD") + B4XPages.MainPage.skmt.ExecNonQuery($"delete from pedido where pe_cedis = '${cedis}' and pe_proid = '${prodId}' and pe_cliente = '${clienteId}' AND PE_FOLIO = '${B4XPages.MainPage.tipo_venta}'"$) + Private pe As Cursor = B4XPages.MainPage.skmt.ExecQuery("select count(pe_cliente) as cuantosPedidos from pedido where pe_cliente In (select cuenta from cuentaa)") + pe.Position=0 + If pe.GetString("cuantosPedidos") = 0 Then B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") + End If + Else + 'INSERTAMOS + If cant <> 0 Then guardaProductoSinGestion2(cedis, costoU, cant, nombre, prodId, clienteId, fecha, usuario, rutaV, precioSin, tipoVenta,cantc,bcajas) + End If + c.Close +End Sub + Sub traeTotalCliente As Double Private sumaTotal As Double Private cursorprueba As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select PE_COSTO_TOT from pedido where PE_CLIENTE <> 0 ")