From cf1c725303766bd904a49917ca05b589034d7db2 Mon Sep 17 00:00:00 2001 From: cvaldes1201 Date: Fri, 13 Mar 2026 15:43:13 -0600 Subject: [PATCH] 6.02.20... --- B4A/B4XMainPage.bas | 1 + B4A/C_Cliente.bas | 76 +++++------ B4A/C_DetalleVenta.bas | 279 ++++++++++++++++++++++++++++++++++++++ B4A/C_Principal.bas | 19 ++- B4A/guna_reparto.b4a | 2 +- B4A/guna_reparto.b4a.meta | 2 +- 6 files changed, 332 insertions(+), 47 deletions(-) diff --git a/B4A/B4XMainPage.bas b/B4A/B4XMainPage.bas index fd8450b..d324822 100644 --- a/B4A/B4XMainPage.bas +++ b/B4A/B4XMainPage.bas @@ -1421,6 +1421,7 @@ Private Sub B4XPage_Created (Root1 As B4XView) Subs.agregaColumna("RECHAZOS", "R_PRECIO", "TEXT") Subs.agregaColumna("VENTAS", "V_PRECIO", "TEXT") Subs.agregaColumna("HIST_VENTAS","PLACA","TEXT") + Subs.agregaColumna("HIST_VENTAS","HVD_RUTA","TEXT") Subs.agregaColumna("HIST_VENTAS","HVD_RECHAZOCANT","TEXT") Subs.agregaColumna("HIST_VENTAS","CONSECUTIVO","TEXT") Subs.agregaColumna("HIST_VENTAS","HVD_RECHAZOCANT","TEXT") diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas index 0e271e2..7647e6d 100644 --- a/B4A/C_Cliente.bas +++ b/B4A/C_Cliente.bas @@ -5437,47 +5437,47 @@ Private Sub p_tipopago_Click End Sub Sub mandaAbonosPendientes -' Log("--->>>> MANDAMOS ABONO MANDAPENDIENTES") -'' almacen = 99999999 -' Private ab As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_enviado is null and a_tipoabono IS NULL"$) -' Log(ab.RowCount) -' If ab.RowCount > 0 Then -' For i=0 To ab.RowCount -1 -' ab.Position = i -' Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}' and a_tipoabono IS NULL"$) -' ab1.Position = 0 -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "insert_abono_REP_GUNA_VN2" -' cmd.Parameters = Array As Object( ab.GetString("a_usuario"), ab.GetString("a_ruta"), ab.GetString("a_cliente"), NumberFormat2(ab.GetString("a_abono"),0,2,2,False), ab.GetString("a_fecha"), almacen, "REPARTO", Subs.traeRutaReparto, "", ab.GetString("TIPO_PAGO"), ab.GetString("a_ticket"), ab.GetString("a_numpago")) -' reqManager.ExecuteCommand(cmd , $"mandaAbonosPendientes_${ab.GetString("a_cliente")}"$) -' ab1.Close -' Log($"ins_abonosPendientes_${ab.GetString("a_cliente")}"$) -' Next -' End If -' ab.Close + Log("--->>>> MANDAMOS ABONO MANDAPENDIENTES") +' almacen = 99999999 + Private ab As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_enviado is null and a_tipoabono IS NULL"$) + Log(ab.RowCount) + If ab.RowCount > 0 Then + For i=0 To ab.RowCount -1 + ab.Position = i + Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}' and a_tipoabono IS NULL"$) + ab1.Position = 0 + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_abono_REP_GUNA_VN2" + cmd.Parameters = Array As Object( ab.GetString("a_usuario"), ab.GetString("a_ruta"), ab.GetString("a_cliente"), NumberFormat2(ab.GetString("a_abono"),0,2,2,False), ab.GetString("a_fecha"), almacen, "REPARTO", Subs.traeRutaReparto, "", ab.GetString("TIPO_PAGO"), ab.GetString("a_ticket"), ab.GetString("a_numpago")) + reqManager.ExecuteCommand(cmd , $"mandaAbonosPendientes_${ab.GetString("a_cliente")}"$) + ab1.Close + Log($"ins_abonosPendientes_${ab.GetString("a_cliente")}"$) + Next + End If + ab.Close End Sub Sub mandaAbonosPANUEPendientes -' Log("--->>>> MANDAMOS ABONO MANDAPENDIENTES") -'' almacen = 99999999 -' Private ab As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_enviado is null and a_tipoabono IS NOT NULL"$) -' Log(ab.RowCount) -' If ab.RowCount > 0 Then -' For i=0 To ab.RowCount -1 -' ab.Position = i -' Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}' and a_tipoabono IS NOT NULL"$) -' ab1.Position = 0 -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "insert_abono_REP_GUNA_VN2" -' cmd.Parameters = Array As Object( ab.GetString("a_usuario"), ab.GetString("a_ruta"), ab.GetString("a_cliente"), NumberFormat2(ab.GetString("a_abono"),0,2,2,False), ab.GetString("a_fecha"), almacen, "REPARTO", Subs.traeRutaReparto, "1", ab.GetString("TIPO_PAGO"), ab.GetString("a_ticket"), ab.GetString("a_numpago")) -' reqManager.ExecuteCommand(cmd , $"mandaAbonosPendientes_${ab.GetString("a_cliente")}"$) -' ab1.Close -' Log($"ins_abonosPendientes_${ab.GetString("a_cliente")}"$) -' Next -' End If -' ab.Close + Log("--->>>> MANDAMOS ABONO MANDAPENDIENTES") +' almacen = 99999999 + Private ab As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_enviado is null and a_tipoabono IS NOT NULL"$) + Log(ab.RowCount) + If ab.RowCount > 0 Then + For i=0 To ab.RowCount -1 + ab.Position = i + Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}' and a_tipoabono IS NOT NULL"$) + ab1.Position = 0 + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_abono_REP_GUNA_VN2" + cmd.Parameters = Array As Object( ab.GetString("a_usuario"), ab.GetString("a_ruta"), ab.GetString("a_cliente"), NumberFormat2(ab.GetString("a_abono"),0,2,2,False), ab.GetString("a_fecha"), almacen, "REPARTO", Subs.traeRutaReparto, "1", ab.GetString("TIPO_PAGO"), ab.GetString("a_ticket"), ab.GetString("a_numpago")) + reqManager.ExecuteCommand(cmd , $"mandaAbonosPendientes_${ab.GetString("a_cliente")}"$) + ab1.Close + Log($"ins_abonosPendientes_${ab.GetString("a_cliente")}"$) + Next + End If + ab.Close End Sub Private Sub iv_comentario_Click diff --git a/B4A/C_DetalleVenta.bas b/B4A/C_DetalleVenta.bas index 9c09480..6c9f62f 100644 --- a/B4A/C_DetalleVenta.bas +++ b/B4A/C_DetalleVenta.bas @@ -1375,4 +1375,283 @@ Private Sub B_IMP_Click ProgressDialogHide ' Guardado +End Sub + +Private Sub b_prodMenos_LongClick + + If Subs.traeAlmacen = "94" Then + + Dim x2 As Cursor =Starter.skmt.ExecQuery("SELECT gestion FROM kmt_info where CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + x2.Position = 0 + If x2.GetString("gestion") = 2 Then + MsgboxAsync("Ya se gestiono el cliente, no se pueden hacer modificaciones","Atención") +' Wait For Msgbox_Result (result2 As Int) +' If result= DialogResponse.NEGATIVE Then +' B4XPages.ShowPage("Principal") +' End If + +' b_prodMas.Enabled = False +' b_prodMenos.Enabled = False + Else + + etCantHasFocus = False + Log("etCantHasFocus=" & etCantHasFocus) + LogColor("b_prodMenos_Click", Colors.Magenta) + Dim index As Int = clv_pedido.GetItemFromView(Sender) + Dim pnl0 As B4XView = clv_pedido.GetPanel(index) + Dim pnl As B4XView = pnl0.GetView(0) + Dim laCant As B4XView = pnl.GetView(2).GetView(3) +' Log(pnl.GetView(2).GetView(0) & "|" & pnl.GetView(2).GetView(1) & "|" & pnl.GetView(2).GetView(2)) + Dim esteTag As List = Regex.Split("\|", laCant.Tag) + Log("LC_TEXT:"&laCant.Text&"|PROMO:"&esteTag.Get(3)&"|LC_TAG:"&laCant.Tag&"|ET:"&esteTag) + Private minimoadesc As String + Dim minimos As Cursor = Starter.skmt.ExecQuery2("SELECT * FROM CAT_GUNAPROD3 WHERE CAT_GP_ID = ?", Array As String(esteTag.Get(2))) + If minimos.RowCount > 0 Then + minimos.Position = 0 + minimoadesc = minimos.GetString("CAT_DP_CANT_MIN_VENTA") + Else + minimoadesc = "10" + End If + minimos.Close + '*'${minimoadesc}') + minimoadesc = "10" + If esteTag.Get(7) = "1" Then + If laCant.Text = "" Then laCant.Text = 0 + laCant.Text = $"$1.0{laCant.Text-10}"$ + If laCant.Text < 0 Then laCant.Text = 0 + Private c3 As Cursor = Starter.skmt.ExecQuery2("SELECT PE_CANT FROM PEDIDO WHERE PE_PROID = ? AND PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND CONSECUTIVO = ?", Array As String(esteTag.Get(2),esteTag.Get(8))) + If c3.RowCount > 0 Then + c3.Position = 0 + If c3.GetString("PE_CANT") > minimoadesc Then + Private c2 As Cursor = Starter.skmt.ExecQuery2("SELECT * FROM CAT_GUNAPROD WHERE CAT_GP_ID = ?", Array As String(esteTag.Get(2))) + If c2.RowCount > 0 Then + c2.Position = 0 +' Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_RECHAZOCANT - 1 WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente = '${esteTag.Get(5)}'"$) + Starter.skmt.ExecNonQuery($"update PEDIDO set PE_CANT = IFNULL(PE_CANT,0)-(1*'${minimoadesc}'), PE_COSTO_TOT= ((IFNULL(PE_CANT,0) -(1*'${minimoadesc}'))*'${c2.GetString("CAT_GP_PRECIO")}') WHERE PE_PROID = '${esteTag.Get(2)}' and PE_CLIENTE in (Select CUENTA from cuentaa) and CONSECUTIVO = '${esteTag.Get(8)}'"$) + End If + Else If c3.GetString("PE_CANT") = minimoadesc Then + Private c2 As Cursor = Starter.skmt.ExecQuery2("SELECT * FROM CAT_GUNAPROD WHERE CAT_GP_ID = ?", Array As String(esteTag.Get(2))) + If c2.RowCount > 0 Then + c2.Position = 0 +' Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_RECHAZOCANT - 1 WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente = '${esteTag.Get(5)}'"$) +' Starter.skmt.ExecNonQuery($"update PEDIDO set PE_CANT = IFNULL(PE_CANT,0)-1, PE_COSTO_TOT= ((IFNULL(PE_CANT,0) -1)*'${c2.GetString("CAT_GP_PRECIO")}') WHERE PE_PROID_PROID = '${esteTag.Get(2)}' and PE_CLIENTE in (Select CUENTA from cuentaa)"$) + Starter.skmt.ExecNonQuery($"delete from PEDIDO where PE_PROID = '${esteTag.Get(2)}' and PE_CLIENTE in (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$) + End If + End If + End If + B4XPage_Appear + Else + If esteTag.Get(5) = esteTag.Get(6) Then + If laCant.Text-10 > 0 Then + If esteTag.Get(3) <> Subs.traeAlmacen Then 'Si es PROMO entonces ... + Private c2 As Cursor =Starter.skmt.ExecQuery($"select HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_PROID = '${esteTag.Get(2)}' AND HVD_CLIENTE IN (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$) + c2.Position = 0 + If c2.GetString("HVD_RECHAZO") = "0" Then + Log("ES PROMO") + Log(esteTag.Get(3)) + result = Msgbox2("Si se modifica una promoción, la promoción se rompe y solo quedarán los productos sueltos, ¿seguro que desea continuar?","Modificar Promoción", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore + If result = DialogResponse.POSITIVE Then 'Quitamos esta promo + prodsMap.Remove(esteTag.Get(3)) +' c=Starter.skmt.ExecQuery($"select HVD_CODPROMO FROM HIST_VENTAS WHERE HVD_CODPROMO = '${esteTag.Get(2)}' AND HVD_cliente IN (Select CUENTA from cuentaa)"$) +' For i = 0 To c.RowCount -1 +' c.Position = i + LogColor(esteTag.Get(3),Colors.Blue) +' Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_RECHAZOCANT + 1 WHERE HVD_CODPROMO = '${esteTag.Get(3)}' and HVD_CLIENTE in (Select CUENTA from cuentaa)"$) +' Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 2, HVD_RECHAZOCANT = HVD_RECHAZOCANT + 1 WHERE HVD_PROID = '${esteTag.Get(3)}' and HVD_CODPROMO = '${esteTag.Get(3)}' and HVD_CLIENTE in (Select CUENTA from cuentaa)"$) + Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_CANT WHERE HVD_CODPROMO = '${esteTag.Get(3)}' and HVD_CLIENTE in (Select CUENTA from cuentaa)"$) + Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 2, HVD_RECHAZOCANT = HVD_CANT WHERE HVD_PROID = '${esteTag.Get(3)}' and HVD_CODPROMO = '${esteTag.Get(3)}' and HVD_CLIENTE in (Select CUENTA from cuentaa)"$) +' Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_CODPROMO = '${Subs.traeAlmacen}' WHERE HVD_cliente in (Select CUENTA from cuentaa) AND HVD_CODPROMO = '${esteTag.Get(3)}'"$) +' Next + c.Close + LogColor(prodsMap, Colors.red) + reconstruirPedido = True + promoABorrar = esteTag.Get(3) + B4XPage_Appear + End If + Else + If laCant.Text = "" Then laCant.Text = 0 + laCant.Text = $"$1.0{laCant.Text-1}"$ + If laCant.Text < 0 Then laCant.Text = 0 + Log("NO ES promo") + Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = IFNULL(HVD_RECHAZOCANT,0) + (1*'${minimoadesc}') WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente in (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$) + Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + 1 where cat_gp_id = ?", Array As Object(esteTag.Get(2))) + B4XPage_Appear + End If + Else +' If laCant.Text = "" Then laCant.Text = 0 +' laCant.Text = NumberFormat2(($"$1.0{laCant.Text-1}"$),0,0,0,False) + + If laCant.Text = "" Then laCant.Text = 0 + + ' Realizamos la resta de forma segura + Dim valorActual As Double = laCant.Text + Dim resultado As Double = valorActual - 1 + If resultado < 0 Then resultado = 0 + + ' Asignamos al Label/EditText sin comas de miles + laCant.Text = NumberFormat2(resultado, 1, 0, 0, False) + + If laCant.Text < 0 Then laCant.Text = 0 + Log("NO ES promo") + Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = IFNULL(HVD_RECHAZOCANT,0) + (1*'${minimoadesc}'), BCAJAS = 0, CANTC = 0 WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente in (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$) + Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + 1 where cat_gp_id = ?", Array As Object(esteTag.Get(2))) + B4XPage_Appear + End If + End If + Else + If laCant.Text = "" Then laCant.Text = 0 + laCant.Text = $"$1.0{laCant.Text-10}"$ + If laCant.Text < 0 Then laCant.Text = 0 + Log("NO ES promo") +' Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = IFNULL(HVD_RECHAZOCANT,0) + 1 WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente = '${esteTag.Get(6)}'"$) +' Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + 1 where cat_gp_id = ?", Array As Object(esteTag.Get(2))) +' Starter.skmt.ExecNonQuery2("update PEDIDO set cat_gp_almacen = cat_gp_almacen + 1 where cat_gp_id = ?", Array As Object(esteTag.Get(2))) + + Private c3 As Cursor = Starter.skmt.ExecQuery2("SELECT PE_CANT FROM PEDIDO WHERE PE_PROID = ? AND PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND CONSECUTIVO = ?", Array As String(esteTag.Get(2), esteTag.Get(8))) + If c3.RowCount > 0 Then + c3.Position = 0 + If c3.GetString("PE_CANT") > 1 Then + Private c2 As Cursor = Starter.skmt.ExecQuery2("SELECT * FROM CAT_GUNAPROD WHERE CAT_GP_ID = ?", Array As String(esteTag.Get(2))) + If c2.RowCount > 0 Then + c2.Position = 0 + Starter.skmt.ExecNonQuery($"update PEDIDO set PE_CANT = IFNULL(PE_CANT,0)-(1*'${minimoadesc}'), PE_COSTO_TOT= ((IFNULL(PE_CANT,0) -(1*'${minimoadesc}'))*'${c2.GetString("CAT_GP_PRECIO")}') WHERE PE_PROID = '${esteTag.Get(2)}' and PE_CLIENTE in (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$) + End If + Else If c3.GetString("PE_CANT") = 1 Then + Private c2 As Cursor = Starter.skmt.ExecQuery2("SELECT * FROM CAT_GUNAPROD WHERE CAT_GP_ID = ?", Array As String(esteTag.Get(2))) + If c2.RowCount > 0 Then + c2.Position = 0 + Starter.skmt.ExecNonQuery($"delete from PEDIDO where PE_PROID = '${esteTag.Get(2)}' and PE_CLIENTE in (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$) + End If + End If + End If + B4XPage_Appear + End If + End If + Dim preciou As Float = esteTag.Get(0)/esteTag.Get(1) + Log("PU: " & preciou) +' LogColor("estamos aqui mmenos " & laCant.Text& " , " & (preciou * laCant.Text),Colors.Green ) +' If L_CANT.Text - 1 >= 0 Then +' L_CANT.Text = L_CANT.Text - 1 +' End If +' b_guardar.Visible = True +' Subs.prodRechazo(esteTag.Get(5), esteTag.Get(2)) +' Private cym As Map = Subs.traemosCantYMonto(clv_pedido) +' L_CANT.Text = cym.Get("cantidad") +' L_TOTAL.Text = Round2(cym.Get("monto"), 2) +' cuentaProds("-") + End If + End If +End Sub + +Private Sub b_prodMas_LongClick + + If Subs.traeAlmacen = "94" Then + + Dim x2 As Cursor =Starter.skmt.ExecQuery("SELECT gestion FROM kmt_info where CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + x2.Position = 0 + If x2.GetString("gestion") = 2 Then + MsgboxAsync("Ya se gestiono el cliente, no se pueden hacer modificaciones","Atención") +' Wait For Msgbox_Result (result2 As Int) +' If result= DialogResponse.NEGATIVE Then +' B4XPages.ShowPage("Principal") +' End If + +' b_prodMas.Enabled = False +' b_prodMenos.Enabled = False + Else + + + + etCantHasFocus = False +' Log("etCantHasFocus=" & etCantHasFocus) + LogColor("b_prodMas_Click", Colors.Magenta) + Dim index As Int = clv_pedido.GetItemFromView(Sender) + Dim pnl0 As B4XView = clv_pedido.GetPanel(index) + Dim pnl As B4XView = pnl0.GetView(0) + Dim laCant As B4XView = pnl.GetView(2).GetView(3) +' Log(pnl.GetView(2).GetView(1).text&"|"&pnl.GetView(2).GetView(2)&"|"&pnl.GetView(2).GetView(4).text) +' Log($"precio|stock:${laCant.tag}"$) +' Log($"Indice: ${index}, cant:${laCant.Text+1}, precioU: ${laCant.tag}"$) + Dim esteTag As List = Regex.Split("\|", laCant.Tag) + Log("LC_TEXT:"&laCant.Text&"|LC_TAG:"&laCant.Tag&"|ET:"&esteTag) + If laCant.Text = "" Then laCant.Text = 0 + Private maxProds = esteTag.Get(1) + esteTag.Get(4) 'Prods disponibles + prods comprados + + LogColor($"++++++++++++++++++++++++++ ${esteTag}"$, Colors.Green) +' Log(esteTag.get(4)) + + Private minimoadesc As String + Dim minimos As Cursor = Starter.skmt.ExecQuery2("SELECT * FROM CAT_GUNAPROD3 WHERE CAT_GP_ID = ?", Array As String(esteTag.Get(2))) + If minimos.RowCount > 0 Then + minimos.Position = 0 + minimoadesc = minimos.GetString("CAT_DP_CANT_MIN_VENTA") + Else + minimoadesc = "10" + End If + minimos.Close + '*'${minimoadesc}') + minimoadesc = "10" + If esteTag.Get(7) <> "1" Then + If esteTag.Get(5) = esteTag.Get(6) Then + If laCant.Text + 10 <= maxProds Then + Log($"NuevaCant = ${laCant.Text + 1}"$) + 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))) + 'checar este por si las dudas + Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_RECHAZOCANT - (1*'${minimoadesc}') WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente in (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$) + Subs.prodVenta(esteTag.Get(5), esteTag.Get(2)) +' Private cym As Map = Subs.traemosCantYMonto(clv_pedido) +' L_CANT.Text = cym.Get("cantidad") +' L_TOTAL.Text = Round2(cym.Get("monto"), 2) +' cuentaProds("+") + B4XPage_Appear + End If + Else + If laCant.Text + 1 <= maxProds Then + Log($"NuevaCant = ${laCant.Text + 1}"$) + 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 String(esteTag.Get(2))) + c = Starter.skmt.ExecQuery2("SELECT * FROM PEDIDO WHERE PE_PROID = ? and PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND CONSECUTIVO = ?", Array As String(esteTag.Get(2),esteTag.Get(8))) + If c.RowCount > 0 Then + Private c2 As Cursor = Starter.skmt.ExecQuery2("SELECT * FROM CAT_GUNAPROD WHERE CAT_GP_ID = ?", Array As String(esteTag.Get(2))) + If c2.RowCount > 0 Then + c2.Position = 0 +' Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_RECHAZOCANT - 1 WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente = '${esteTag.Get(5)}'"$) + Starter.skmt.ExecNonQuery($"update PEDIDO set PE_CANT = IFNULL(PE_CANT,0)+(1*'${minimoadesc}'), PE_COSTO_TOT= ((IFNULL(PE_CANT,0)+(1*'${minimoadesc}'))*'${c2.GetString("CAT_GP_PRECIO")}') WHERE PE_PROID = '${esteTag.Get(2)}' and PE_CLIENTE in (Select CUENTA from cuentaa) AND CONSECUTIVO = '${esteTag.Get(8)}'"$) + End If + Else + Private c2 As Cursor = Starter.skmt.ExecQuery2("SELECT * FROM CAT_GUNAPROD WHERE CAT_GP_ID = ?", Array As String(esteTag.Get(2))) + If c2.RowCount > 0 Then + c2.Position = 0 +' Starter.skmt.ExecNonQuery($"update HIST_VENTAS set HVD_RECHAZO = 1, HVD_RECHAZOCANT = HVD_RECHAZOCANT - 1 WHERE HVD_PROID = '${esteTag.Get(2)}' and HVD_cliente = '${esteTag.Get(5)}'"$) + Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO(PE_PROID,PE_PRONOMBRE,PE_CANT,PE_CLIENTEOR,PE_CLIENTE,PE_COSTOU,PE_COSTO_TOT,PE_CAJAS,PE_BCAJAS,CONSECUTIVO) VALUES (?,?,?,?,?,?,?,0,0,?)", Array As String(esteTag.Get(2),c2.GetString("CAT_GP_NOMBRE"),1*minimoadesc,esteTag.Get(5),Subs.traeCliente,c2.GetString("CAT_GP_PRECIO"),c2.GetString("CAT_GP_PRECIO"),esteTag.Get(8))) + End If + End If + Subs.prodVenta(esteTag.Get(5), esteTag.Get(2)) +' Private cym As Map = Subs.traemosCantYMonto(clv_pedido) +' L_CANT.Text = cym.Get("cantidad") +' L_TOTAL.Text = Round2(cym.Get("monto"), 2) +' cuentaProds("+") + B4XPage_Appear + End If + End If + End If +' Dim preciou As Float = esteTag.Get(0)/esteTag.Get(1) +' Log(preciou) +' LogColor("estamos aquii mas " & laCant.Text& " , " & (preciou * laCant.Text) ,Colors.Green ) +' b_guardar.Visible = True +' Log($"Total Prods: ${totalProds}, Total Compra: $$1.2{totalCompra}"$) +' c = Starter.skmt.ExecQuery($"SELECT HVD_CANT FROM HIST_VENTAS2 WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND HVD_PROID = '${esteTag.Get(2)}' "$) +' c.Position = 0 +' Dim cantoriginal As String = 0 +' If c.RowCount > 0 Then +' cantoriginal = c.GetString("HVD_CANT") +' End If +' If cantoriginal <= esteTag.Get(1) Then +' L_CANT.Text = L_CANT.Text + 1 +' End If + + End If + + End If End Sub \ No newline at end of file diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas index 9bd72c1..865a7a6 100644 --- a/B4A/C_Principal.bas +++ b/B4A/C_Principal.bas @@ -1088,7 +1088,7 @@ Sub envioinfo - c = Starter.skmt.ExecQuery("SELECT IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_CLIENTE, HVD_PROID, HVD_FECHA, HVD_CODPROMO, HVD_NUM_TICKET, HVD_CANT, CONSECUTIVO, BCAJAS, CANTC FROM HIST_VENTAS where HVD_PRONOMBRE <> 'Cobranza Pendiente'") + c = Starter.skmt.ExecQuery("SELECT IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_RUTA, HVD_CLIENTE, HVD_PROID, HVD_FECHA, HVD_CODPROMO, HVD_NUM_TICKET, HVD_CANT, CONSECUTIVO, BCAJAS, CANTC FROM HIST_VENTAS where HVD_PRONOMBRE <> 'Cobranza Pendiente'") If c.RowCount > 0 Then For i=0 To c.RowCount -1 @@ -1119,14 +1119,15 @@ Sub envioinfo cmd.Initialize cmd.Name = "update_HVD_GUNA_VN2" - cmd.Parameters = Array As String(c.GetString("HVD_RECHAZOCANT"),sDate& " "& sTime,1,Subs.traeUsuario, c.GetString("HVD_CLIENTE"), c.GetString("HVD_PROID"),fecha3&" "&hora(0), d4.GetString("CAT_CL_RUTA"),ALMACEN,l_ruta.Text,c.GetString("HVD_CODPROMO"),c.GetString("HVD_NUM_TICKET"), c.GetString("HVD_CANT")) +' cmd.Parameters = Array As String(c.GetString("HVD_RECHAZOCANT"),sDate& " "& sTime,1,Subs.traeUsuario, c.GetString("HVD_CLIENTE"), c.GetString("HVD_PROID"),fecha3&" "&hora(0), c.GetString("HVD_RUTA"),ALMACEN,l_ruta.Text,c.GetString("HVD_CODPROMO"),c.GetString("HVD_NUM_TICKET"), c.GetString("HVD_CANT")) + cmd.Parameters = Array As String(c.GetString("HVD_RECHAZOCANT"),sDate& " "& sTime,1,Subs.traeUsuario, c.GetString("HVD_CLIENTE"), c.GetString("HVD_PROID"),fecha3&" "&hora(0), Subs.traeRuta(c.GetString("HVD_CLIENTE")),ALMACEN,l_ruta.Text,c.GetString("HVD_CODPROMO"),c.GetString("HVD_NUM_TICKET"), c.GetString("HVD_CANT")) reqManager.ExecuteCommand(cmd, "update_hvd") ' Log("ENVIE RECHAZO") Else cmd.Initialize cmd.Name = "update_HVD_GUNA_VN2" ' Log( c.GetString("CANTC")& c.GetString("HVD_CLIENTE")& c.GetString("HVD_PROID")&fecha3&" "&hora(0)& d4.GetString("CAT_CL_RUTA")&ALMACEN&l_ruta.Text&c.GetString("HVD_CODPROMO")&c.GetString("HVD_NUM_TICKET")& c.GetString("HVD_CANT")) - cmd.Parameters = Array As String("","","0",Subs.traeUsuario, c.GetString("HVD_CLIENTE"), c.GetString("HVD_PROID"),fecha3&" "&hora(0), d4.GetString("CAT_CL_RUTA"),ALMACEN,l_ruta.Text,c.GetString("HVD_CODPROMO"),c.GetString("HVD_NUM_TICKET"), c.GetString("HVD_CANT")) + cmd.Parameters = Array As String("","","0",Subs.traeUsuario, c.GetString("HVD_CLIENTE"), c.GetString("HVD_PROID"),fecha3&" "&hora(0), Subs.traeRuta(c.GetString("HVD_CLIENTE")),ALMACEN,l_ruta.Text,c.GetString("HVD_CODPROMO"),c.GetString("HVD_NUM_TICKET"), c.GetString("HVD_CANT")) reqManager.ExecuteCommand(cmd, "update_hvd") End If d4.Close @@ -1475,7 +1476,7 @@ Sub JobDone(Job As HttpJob) For Each records() As Object In result.Rows Dim HVD_IMPRESO_RECHAZO As String = records(result.Columns.Get("HVD_IMPRESO_RECHAZO")) Log(HVD_IMPRESO_RECHAZO) - HVD_IMPRESO_RECHAZO=0 +' HVD_IMPRESO_RECHAZO=0 If HVD_IMPRESO_RECHAZO = 0 Then LogColor($"ReqServer = ${B4XPages.MainPage.server}"$, Colors.red) If Not(IsConnectedToInternet) Then MsgboxAsync("No hay conexión a conexión a Internet", "Revisa tu conexión") @@ -1483,12 +1484,15 @@ Sub JobDone(Job As HttpJob) Dim checaruta As Boolean Dim cr As Cursor = Starter.skmt.ExecQuery("select RUTAA from RUTAA") If cr.RowCount > 0 Then + cr.Position=0 + If cr.GetString("RUTAA") = e_ruta.Text Then checaruta = True Else checaruta = False End If + Else checaruta = True End If @@ -1545,7 +1549,7 @@ Sub JobDone(Job As HttpJob) For Each records() As Object In result.Rows Dim HVD_IMPRESO_RECHAZO As String = records(result.Columns.Get("HVD_IMPRESO_RECHAZO")) Log(HVD_IMPRESO_RECHAZO) - HVD_IMPRESO_RECHAZO=0 +' HVD_IMPRESO_RECHAZO=0 If HVD_IMPRESO_RECHAZO = 0 Then LogColor($"ReqServer = ${B4XPages.MainPage.server}"$, Colors.red) If Not(IsConnectedToInternet) Then MsgboxAsync("No hay conexión a conexión a Internet", "Revisa tu conexión") @@ -1887,6 +1891,7 @@ Sub JobDone(Job As HttpJob) Dim HVD_NUM_TICKET As String = records(result.Columns.Get("HVD_NUM_TICKET")) Dim HVD_NUM_REGISTRO As String = records(result.Columns.Get("HVD_NUM_REGISTRO")) Dim HVD_RECHAZO As String = records(result.Columns.Get("HVD_RECHAZO")) + Dim HVD_RUTA As String = records(result.Columns.Get("HVD_RUTA")) ' Dim HVD_PLACA As String = records(result.Columns.Get("HVD_PLACA")) Dim bcajas As String = 0 ' records(result.Columns.Get("HVD_BCAJAS")) Dim cantc As String = 0 'records(result.Columns.Get("HVD_CANTC")) @@ -1894,14 +1899,14 @@ Sub JobDone(Job As HttpJob) consecutivo = consecutivo +1 If l_ruta.Text = "0" Then 'Si no hay ruta cargada, guardamos todos los clientes ' Log("No hay ruta, guardamos todos") - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_VENTAS(HVD_CLIENTE, HVD_PRONOMBRE, HVD_CANT,HVD_COSTO_TOT, HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, HVD_ESTATUS, HVD_PARCIAL, BCAJAS,CANTC,CONSECUTIVO,BCAJAS_OR,CANTC_OR) VALUES (?,?,?,?,?,?,?,?,?,?,0,0,?,?,?,?,?)", Array As Object (HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT,HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, bcajas,cantc,consecutivo,bcajas,cantc)) + Starter.skmt.ExecNonQuery2("INSERT INTO HIST_VENTAS(HVD_CLIENTE, HVD_PRONOMBRE, HVD_CANT,HVD_COSTO_TOT, HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, HVD_ESTATUS, HVD_PARCIAL, BCAJAS,CANTC,CONSECUTIVO,BCAJAS_OR,CANTC_OR,HVD_RUTA) VALUES (?,?,?,?,?,?,?,?,?,?,0,0,?,?,?,?,?,?)", Array As Object (HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT,HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, bcajas,cantc,consecutivo,bcajas,cantc,HVD_RUTA)) Starter.skmt.ExecNonQuery2("INSERT INTO HIST_VENTAS2(HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT, HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, HVD_ESTATUS, HVD_PARCIAL) VALUES (?,?,?,?,?,?,?,?,?,?,0,0)", Array As Object (HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT,HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO)) Else 'Si ya hay ruta cargada, solo guardamos los clientes nuevos. ' Log("Hay ruta, guardamos los nuevos") Private tc As Cursor = Starter.skmt.ExecQuery($"select HVD_CLIENTE from HIST_VENTAS where HVD_CLIENTE = '${HVD_CLIENTE}' and HVD_PROID = '${HVD_PROID}' AND HVD_CANT = '${HVD_CANT}' AND HVD_CODPROMO = '${HVD_CODPROMO}' AND HVD_COSTO_TOT = '${HVD_COSTO_TOT}' "$) If tc.RowCount = 0 Then ' Log($"Guardamos ${HVD_CLIENTE}"$) - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_VENTAS(HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT, HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, HVD_ESTATUS, HVD_PARCIAL, BCAJAS,CANTC,CONSECUTIVO,BCAJAS_OR,CANTC_OR) VALUES (?,?,?,?,?,?,?,?,?,?,0,0,?,?,?,?,?)", Array As Object (HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT,HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, bcajas,cantc,consecutivo,bcajas,cantc)) + Starter.skmt.ExecNonQuery2("INSERT INTO HIST_VENTAS(HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT, HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, HVD_ESTATUS, HVD_PARCIAL, BCAJAS,CANTC,CONSECUTIVO,BCAJAS_OR,CANTC_OR,HVD_RUTA) VALUES (?,?,?,?,?,?,?,?,?,?,0,0,?,?,?,?,?,?)", Array As Object (HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT,HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, bcajas,cantc,consecutivo,bcajas,cantc,HVD_RUTA)) Starter.skmt.ExecNonQuery2("INSERT INTO HIST_VENTAS2(HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT, HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO, HVD_ESTATUS, HVD_PARCIAL) VALUES (?,?,?,?,?,?,?,?,?,?,0,0)", Array As Object (HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT,HVD_FECHA, HVD_CODPROMO, HVD_PROID,HVD_NUM_TICKET, HVD_NUM_REGISTRO, HVD_RECHAZO)) End If End If diff --git a/B4A/guna_reparto.b4a b/B4A/guna_reparto.b4a index 3d32ba8..10aa983 100644 --- a/B4A/guna_reparto.b4a +++ b/B4A/guna_reparto.b4a @@ -262,7 +262,7 @@ Version=12.8 #Region Project Attributes #ApplicationLabel: Guna Reparto #VersionCode: 1 - #VersionName: 6.02.18 + #VersionName: 6.02.20 'SupportedOrientations possible values: unspecified, landscape or portrait. #SupportedOrientations: portrait #CanInstallToExternalStorage: False diff --git a/B4A/guna_reparto.b4a.meta b/B4A/guna_reparto.b4a.meta index d8f2898..00eabcf 100644 --- a/B4A/guna_reparto.b4a.meta +++ b/B4A/guna_reparto.b4a.meta @@ -97,6 +97,6 @@ ModuleClosedNodes6= ModuleClosedNodes7= ModuleClosedNodes8= ModuleClosedNodes9= -NavigationStack=C_Principal,e_ruta_EnterPressed,2357,0,C_Principal,cargar_Click,1289,6,C_Principal,JobDone,1525,6,C_Cliente,Class_Globals,0,0,C_Cliente,gest_Click,799,0,C_Cliente,JobDone,2296,0,C_Cliente,b_aceptarFD_Click,5898,0,C_Cliente,esPagoACreditoGuardamosPagare,1090,0,C_Cliente,checacredito,941,0,Diseñador Visual,cliente.bal,-100,5 +NavigationStack=B4XMainPage,JobDone,1555,0,B4XMainPage,Class_Globals,1281,0,B4XMainPage,B4XPage_Created,1299,1,B4XMainPage,Initialize,1298,0,C_Principal,B_carga_Click,2277,0,C_Principal,e_ruta_EnterPressed,2397,0,C_Principal,envioinfo,1116,2,Subs,traeRuta,800,0,C_Principal,trabajar_Click,827,0,C_Principal,JobDone,1472,0 SelectedBuild=0 VisibleModules=2,17,5,6,8,10,31,30,28,7