From 010df93244466a029b47b89b29c1dd7adbac51ed Mon Sep 17 00:00:00 2001 From: cvaldes1201 Date: Mon, 1 Jul 2024 13:27:47 -0600 Subject: [PATCH] VERSION 4.06.30 --- B4A/B4XMainPage.bas | 328 +++++++++++++++++++++++++++++++++++++++- B4A/C_Clientes.bas | 4 +- B4A/C_NuevoCliente.bas | 4 +- B4A/C_Principal.bas | 107 +++---------- B4A/C_Productos.bas | 108 ++++++++----- B4A/Files/login.bal | Bin 11660 -> 18428 bytes B4A/Files/principal.bal | Bin 51261 -> 50015 bytes B4A/Files/proditem.bal | Bin 8245 -> 8254 bytes B4A/MARQUEZ.b4a | 2 +- B4A/MARQUEZ.b4a.meta | 4 +- 10 files changed, 417 insertions(+), 140 deletions(-) diff --git a/B4A/B4XMainPage.bas b/B4A/B4XMainPage.bas index 6337149..d828fd8 100644 --- a/B4A/B4XMainPage.bas +++ b/B4A/B4XMainPage.bas @@ -101,6 +101,23 @@ Sub Class_Globals Dim device As Phone Private et_server As EditText Private b_guardar As Button + Private Panel11 As Panel + Private CLV_PICK_CIEGO As CustomListView + Private P_PICK_CIEGO As Panel + Dim ET_PICK_CIEGO As EditText + Private L_PICK_CIEGO As Label + Private P_CIEGO As Panel + Dim Panel4 As Panel + Dim q_buscar As String + Private et_buspc As EditText + Dim d As Cursor + Dim a As Cursor + Dim f As Cursor + Dim idenviar As String + Private et_codigo As EditText + Private b_cancelarcodigo As Button + Private b_aceptar As Button + Private p_validacion As Panel End Sub Public Sub Initialize @@ -160,6 +177,7 @@ Private Sub B4XPage_Created (Root1 As B4XView) skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_CUOTAS (HC_META6 TEXT, HC_META5 TEXT, HC_META4 TEXT, HC_META3 TEXT, HC_META2 TEXT, HC_META1 TEXT, HC_RUTA TEXT, HC_CUOTA1 TEXT, HC_CUOTA2 TEXT, HC_CUOTA3 TEXT, HC_CUOTA4 TEXT, HC_CUOTA5 TEXT, HC_CUOTA6 TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_GPS (HGDATE TEXT, HGLAT TEXT, HGLON TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_GIRO(GIRO TEXT)") + skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS PICKCIEGO_HECHO(HECHO TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_GUNAPROD2 (CAT_GP_INICIATIVA TEXT, CAT_GP_TIPOPROD TEXT, CAT_GP_DEV TEXT, CAT_GP_ALMACEN NUMERIC, CAT_GP_ID TEXT, CAT_GP_NOMBRE TEXT, CAT_GP_IMP1 TEXT, CAT_GP_IMP2 TEXT, CAT_GP_PRECIO TEXT, CAT_GP_CLASIF TEXT, CAT_GP_STS TEXT, CAT_GP_TIPO TEXT, CAT_GP_SUBTIPO TEXT, CAT_GP_IMG BLOB)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_STAY_STORE (HSS_CODIGO TEXT, HSS_IN TEXT, HSS_OUT TEXT, HSS_TOT TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_STAY_OUT (HSO_INI TEXT, HSO_FIN TEXT)") @@ -481,6 +499,47 @@ Sub JobDone(Job As HttpJob) Next End If End If + + If Job.JobName = "DBRequest" Then + Dim result As DBResult = reqManager.HandleJob(Job) + If result.Tag.As(String).IndexOf("PICK_C_") > -1 Then 'query tag + Subs.logJobDoneResultados(result) + Private id As String= result.Tag + id = id.SubString(id.IndexOf("_")+3) + For Each records() As Object In result.Rows + Dim CUENTA As String = records(result.Columns.Get("CUENTA")) + Log(CUENTA) + Log(id) + If CUENTA = 0 Then + c = Starter.skmt.ExecQuery2("SELECT * FROM PICK_CIEGO WHERE PC_ID_PROD = ?", Array As String (id)) + If c.RowCount > 0 Then +' For i=0 To c.RowCount -1 + c.Position=0 + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_PICKCIEGO_MARQUEZ" + cmd.Parameters = Array As Object(c.GetString("PC_ID_PROD"), c.GetString("PC_NOM_PROD"), c.GetString("PC_CANT"), c.GetString("PC_ALMACEN"), c.GetString("PC_RUTA"), c.GetString("PC_FECHA")) + reqManager.ExecuteCommand(cmd , "ins_PC") +' Next + End If + c.Close + Else if CUENTA > 0 Then + c = Starter.skmt.ExecQuery2("SELECT * FROM PICK_CIEGO WHERE PC_ID_PROD= ?", Array As String (id)) + If c.RowCount > 0 Then +' For i=0 To c.RowCount -1 + c.Position = 0 + cmd.Initialize + cmd.Name = "update_PICKCIEGO_MARQUEZ" + cmd.Parameters = Array As Object(c.GetString("PC_CANT"), c.GetString("PC_ID_PROD"), c.GetString("PC_ALMACEN"), c.GetString("PC_RUTA"), c.GetString("PC_FECHA")) + reqManager.ExecuteCommand(cmd, "update_PC") +' Next + End If + c.Close + End If + + Next + End If + End If If Job.JobName = "DBRequest" Then Dim result As DBResult = reqManager.HandleJob(Job) @@ -523,6 +582,23 @@ Sub JobDone(Job As HttpJob) End If End If + If Job.JobName = "DBRequest" Then + Dim result As DBResult = reqManager.HandleJob(Job) + If result.Tag = "contrasena" Then 'query tag + For Each records() As Object In result.Rows + Dim CAT_PA_PASS As String = records(result.Columns.Get("CAT_PA_PASS")) + If CAT_PA_PASS = et_codigo.Text Then + Log(CAT_PA_PASS) + p_validacion.Visible = False + et_codigo.Text = "" + Subs.panelVisible(P_CIEGO,0,0) + Else + MsgboxAsync("Contraseña incorrecta","Atención") + End If + Next + End If + End If + If result.Tag = "ruta" Then 'query tag Log("JOBDONE PRINCIPAL MAINPAGE") For Each records() As Object In result.Rows @@ -533,7 +609,6 @@ Sub JobDone(Job As HttpJob) Next End If - Job.Release End If Log($"Paso1 = ${paso1} - Name: ${name} - IMEI: ${IMEI} - IMEI_BASE: ${IMEI_BASE}"$) @@ -584,7 +659,14 @@ End Sub Private Sub B4XPage_CloseRequest As ResumableSub Log("closreq") Sleep(0) - If p_appUpdate.IsInitialized And p_appUpdate.Visible Then + + If p_validacion.IsInitialized And p_validacion.Visible Then + p_validacion.Visible = False + Return False + Else If P_CIEGO.IsInitialized And P_CIEGO.Visible Then + MsgboxAsync("Debes de terminar el proceso para regresar a la pantalla principal","Atención") + Return False + Else If p_appUpdate.IsInitialized And p_appUpdate.Visible Then p_appUpdate.Visible = False Return False End If @@ -761,8 +843,248 @@ Private Sub b_importarBD_Click ToastMessageShow("¡BD importada!", False) End Sub - Private Sub b_guardar_Click Starter.reinicializaReqManager(et_server.Text.Trim) p_appUpdate.Visible = False +End Sub + +Private Sub b_arqueocieego_Click + c = skmt.ExecQuery("SELECT * FROM CAT_GUNAPROD") + If c.RowCount > 0 Then + Subs.panelVisible(p_validacion,0,0) + Else + MsgboxAsync("No hay ruta cargada, favor de cargar día","Atención") + End If + + +End Sub + +Private Sub et_buspc_TextChanged (Old As String, New As String) + If New = "" Then + CLV_PICK_CIEGO.Clear + Else + CLV_PICK_CIEGO.Clear + + q_buscar = "%" & et_buspc.Text & "%" + Log(q_buscar) + c=B4XPages.MainPage.skmt.ExecQuery2($"select CAT_GP_NOMBRE, CAT_GP_ID , ifnull(PC_CANT,0) AS PC_CANT FROM CAT_GUNAPROD INNER JOIN PICK_CIEGO ON PC_ID_PROD = CAT_GP_ID AND PC_NOM_PROD = CAT_GP_NOMBRE WHERE (CAT_GP_NOMBRE LIKE ? OR CAT_GP_ID LIKE ? ) and CAT_GP_CLASIF <> 'PROMOS'"$, Array As String(q_buscar,q_buscar)) + If c.RowCount > 0 Then + + + For i = 0 To c.RowCount - 1 + c.Position = i + CLV_PICK_CIEGO.Add(CreateListItem(c.GetString("CAT_GP_ID"), c.GetString("CAT_GP_NOMBRE"), c.GetString("PC_CANT")),i) +' Log(c.GetString("CAT_GP_ID") & ", " & c.GetString("CAT_GP_NOMBRE") & " ," & c.GetString("PC_CANT")) + Next + c.Close + + d=B4XPages.MainPage.skmt.ExecQuery2($"select CAT_GP_NOMBRE, CAT_GP_ID FROM CAT_GUNAPROD WHERE (CAT_GP_NOMBRE LIKE ? OR CAT_GP_ID LIKE ? ) and CAT_GP_CLASIF <> 'PROMOS'"$, Array As String(q_buscar,q_buscar)) + + For i = 0 To d.RowCount - 1 + d.Position = i + CLV_PICK_CIEGO.Add(CreateListItem2(d.GetString("CAT_GP_ID"), d.GetString("CAT_GP_NOMBRE")),i) +' Log(d.GetString("CAT_GP_ID") & ", " & d.GetString("CAT_GP_NOMBRE")) + Next + d.Close + + Else If c.RowCount = 0 Then + d=B4XPages.MainPage.skmt.ExecQuery2($"select CAT_GP_NOMBRE, CAT_GP_ID FROM CAT_GUNAPROD WHERE (CAT_GP_NOMBRE LIKE ? OR CAT_GP_ID LIKE ? ) and CAT_GP_CLASIF <> 'PROMOS'"$, Array As String(q_buscar,q_buscar)) + + For i = 0 To d.RowCount - 1 + d.Position = i + CLV_PICK_CIEGO.Add(CreateListItem2(d.GetString("CAT_GP_ID"), d.GetString("CAT_GP_NOMBRE")),i) +' Log(d.GetString("CAT_GP_ID") & ", " & d.GetString("CAT_GP_NOMBRE")) + Next + d.Close + End If + End If +End Sub + +Sub CreateListItem(Id_prod As String, Prod As String,cant As String) As Panel + Dim pa As B4XView = xui.CreatePanel("") + pa.SetLayoutAnimated(0, 0, 0, 1, 10) + pa.LoadLayout("PANEL_PICK_CIEGO") + pa.Height = 55dip + pa.Width = 298dip + 'pa.Width = clv_orden.GetBase.Width + L_PICK_CIEGO.Text = Id_prod & CRLF & Prod + L_PICK_CIEGO.TextSize = 12 + L_PICK_CIEGO.Gravity = Bit.Or(Gravity.CENTER_VERTICAL, Gravity.CENTER_HORIZONTAL) + ET_PICK_CIEGO.Text = cant + 'cxc.Id_prod = mostrar3 + 'Log(pa.Width) + Return pa +End Sub + +Sub CreateListItem2(Id_prod As String, Prod As String) As Panel + Dim pa As B4XView = xui.CreatePanel("") + pa.SetLayoutAnimated(0, 0, 0, 1, 10) + pa.LoadLayout("PANEL_PICK_CIEGO") + pa.Height = 55dip + pa.Width = 298dip + 'pa.Width = clv_orden.GetBase.Width + L_PICK_CIEGO.Text = Id_prod & CRLF & Prod + L_PICK_CIEGO.TextSize = 12 + L_PICK_CIEGO.Gravity = Bit.Or(Gravity.CENTER_VERTICAL, Gravity.CENTER_HORIZONTAL) + 'cxc.Id_prod = mostrar3 + 'Log(pa.Width) + Return pa +End Sub + +Sub ET_PICK_CIEGO_TextChanged (Old As String, New As String) + Dim et As EditText = Sender + If New.Length > 4 Then + et.Text = Old + End If +End Sub + +Private Sub B_PC_ENV_Click + + Dim sDate As String + DateTime.DateFormat = "MM/dd/yyyy" + sDate = DateTime.Date(DateTime.Now) + + For i = 0 To CLV_PICK_CIEGO.Size - 1 + ' Retrieve the panel and child views for the current item + Dim itemPanel As B4XView = CLV_PICK_CIEGO.GetPanel(i) + Dim innerPanel As B4XView = itemPanel.GetView(0) + Dim editText As B4XView = innerPanel.GetView(1) + Dim inputText As String = editText.As(EditText).Text + + ' Check if the input text matches the regex pattern for zeros or if it's empty + If Regex.IsMatch("^[0]+$", inputText) Or inputText = "" Then + inputText = "0" + End If + + ' Retrieve and process the ID label + Dim idLabel As B4XView = innerPanel.GetView(0) + Dim idText As String = idLabel.As(Label).Text + Dim idParts() As String = Regex.Split(CRLF, idText) + Log(idParts(1)) + a=B4XPages.MainPage.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") + If a.RowCount>0 Then + a.Position=0 + End If + Log(a.GetString("ID_ALMACEN")) + Log(f.GetString("CAT_CL_RUTA")) + + If inputText <> 0 Then + c = Starter.skmt.ExecQuery2("SELECT * FROM PICK_CIEGO where PC_ID_PROD = ?", Array As String (idParts(0))) + If c.RowCount = 0 Then + ' Insert data into the database + skmt.ExecNonQuery2("INSERT INTO PICK_CIEGO(PC_ID_PROD, PC_NOM_PROD, PC_CANT, PC_ALMACEN, PC_RUTA, PC_FECHA) VALUES(?,?,?,?,?,?)", Array As String(idParts(0), idParts(1), inputText, a.GetString("ID_ALMACEN"), f.GetString("CAT_CL_RUTA"), sDate)) + Else + B4XPages.MainPage.skmt.ExecNonQuery2("Update PICK_CIEGO set PC_CANT = ? WHERE PC_ID_PROD = ?" , Array As String(inputText ,idParts(0))) + End If + End If + f.Close + a.Close + Log("Processed item " & i) + Next + et_buspc.Text = "" + CLV_PICK_CIEGO.Clear + +End Sub + +Private Sub b_terpc_Click + Msgbox2Async("Una vez enviada la información no podras hacer modificaciones","Atención","SI","", "",LoadBitmap(File.DirAssets,"alert2.png"), False) + Wait For Msgbox_Result (resultado As Int) + If resultado = DialogResponse.POSITIVE Then + Msgbox2Async("Estas seguro de enviar la información?","Atención","SI","", "NO",LoadBitmap(File.DirAssets,"alert2.png"), False) + Wait For Msgbox_Result (resultado As Int) + If resultado = DialogResponse.POSITIVE Then + + Dim sDate As String + DateTime.DateFormat = "MM/dd/yyyy" + sDate = DateTime.Date(DateTime.Now) + + For i = 0 To CLV_PICK_CIEGO.Size - 1 + ' Retrieve the panel and child views for the current item + Dim itemPanel As B4XView = CLV_PICK_CIEGO.GetPanel(i) + Dim innerPanel As B4XView = itemPanel.GetView(0) + Dim editText As B4XView = innerPanel.GetView(1) + Dim inputText As String = editText.As(EditText).Text + + ' Check if the input text matches the regex pattern for zeros or if it's empty + If Regex.IsMatch("^[0]+$", inputText) Or inputText = "" Then + inputText = "0" + End If + + ' Retrieve and process the ID label + Dim idLabel As B4XView = innerPanel.GetView(0) + Dim idText As String = idLabel.As(Label).Text + Dim idParts() As String = Regex.Split(CRLF, idText) +' Log(idParts(1)) + f=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info") + f.Position=0 + + a=B4XPages.MainPage.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") + If a.RowCount>0 Then + a.Position=0 + End If + Log(a.GetString("ID_ALMACEN")) + Log(f.GetString("CAT_CL_RUTA")) + + If inputText <> 0 Then + c = Starter.skmt.ExecQuery2("SELECT * FROM PICK_CIEGO where PC_ID_PROD = ?", Array As String (idParts(0))) + If c.RowCount = 0 Then + ' Insert data into the database + skmt.ExecNonQuery2("INSERT INTO PICK_CIEGO(PC_ID_PROD, PC_NOM_PROD, PC_CANT, PC_ALMACEN, PC_RUTA, PC_FECHA) VALUES(?,?,?,?,?,?)", Array As String(idParts(0), idParts(1), inputText, a.GetString("ID_ALMACEN"), f.GetString("CAT_CL_RUTA"), sDate)) + Else + B4XPages.MainPage.skmt.ExecNonQuery2("Update PICK_CIEGO set PC_CANT = ? WHERE PC_ID_PROD = ?" , Array As String(inputText ,idParts(0))) + End If + End If + f.Close + a.Close + Log("Processed item " & i) + Next + + Log("Finished processing all items") + P_CIEGO.Visible = False + et_buspc.Text = "" + CLV_PICK_CIEGO.Clear + + c = Starter.skmt.ExecQuery("SELECT PC_ID_PROD, PC_ALMACEN, PC_RUTA, PC_FECHA FROM PICK_CIEGO") + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position = i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "select_HIST_PICKCIEGO_MARQUEZ" ' + cmd.Parameters = Array As Object(c.GetString("PC_ID_PROD"), c.GetString("PC_ALMACEN"), c.GetString("PC_RUTA"), c.GetString("PC_FECHA")) + reqManager.ExecuteQuery(cmd , 0, $"PICK_C_${c.GetString("PC_ID_PROD")}"$) + + Next + End If + 'PC_ID_PROD TEXT, PC_NOM_PROD TEXT, PC_CANT TEXT, PC_ALMACEN TEXT, PC_RUTA TEXT, PC_FECHA TEXT + + c.close + Else + + End If + End If +End Sub + +Private Sub b_aceptar_Click + f=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info") + f.Position=0 + + a=B4XPages.MainPage.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") + If a.RowCount>0 Then + a.Position=0 + End If + Log(a.GetString("ID_ALMACEN")) + Log(f.GetString("CAT_CL_RUTA")) + + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "select_CAT_PASS_ARQUEO_MARQUEZ" + cmd.Parameters = Array As Object(f.GetString("CAT_CL_RUTA"),a.GetString("ID_ALMACEN")) + reqManager.ExecuteQuery(cmd , 0, "contrasena") + f.Close + a.Close +End Sub + +Private Sub b_cancelarcodigo_Click + p_validacion.Visible = False End Sub \ No newline at end of file diff --git a/B4A/C_Clientes.bas b/B4A/C_Clientes.bas index 83cb81c..ab29e68 100644 --- a/B4A/C_Clientes.bas +++ b/B4A/C_Clientes.bas @@ -369,7 +369,7 @@ Private Sub b_buscar_Click busca.Text = "" entro ="2" colonia = 0 - c=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info2 where gestion = 0 ORDER BY CAT_CL_CODIGO") + c=B4XPages.MainPage.skmt.ExecQuery($"select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info2 where gestion = 0 AND CAT_CL_CODIGO <> ${"0"} ORDER BY CAT_CL_CODIGO"$) ListView1.Clear lfila.Text = "NOMBRE" ListView1.Clear @@ -408,7 +408,7 @@ Private Sub b_buscar_Click busca.Text = "" entro ="2" colonia = 0 - c=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where gestion = 0 ORDER BY CAT_CL_CODIGO") + c=B4XPages.MainPage.skmt.ExecQuery($"select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where gestion = 0 AND CAT_CL_CODIGO <> ${"0"} ORDER BY CAT_CL_CODIGO"$) ListView1.Clear lfila.Text = "NOMBRE" ListView1.Clear diff --git a/B4A/C_NuevoCliente.bas b/B4A/C_NuevoCliente.bas index 1439e2d..edd4545 100644 --- a/B4A/C_NuevoCliente.bas +++ b/B4A/C_NuevoCliente.bas @@ -201,8 +201,8 @@ Sub GUARDA_Click c.Position = 0 usuario = c.GetString("USUARIO") c.Close - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_FOTO_CLIENTE(CODIGO, ALMACEN, RUTA) VALUES(?,?,?)", Array As Object(no_cliente, ALMACEN, no_ruta)) - Starter.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_LAT,NV_LON,NV_NOMBRE,NV_DIRECCION) VALUES(?,?,?,?,?,?,?,?) ", Array As Object (no_cliente,sDate & sTime, usuario, "NUEVO CLIENTE", lat, lon, E_NOMBRE.Text,et_direccion.Text)) +' Starter.skmt.ExecNonQuery2("INSERT INTO HIST_FOTO_CLIENTE(CODIGO, ALMACEN, RUTA) VALUES(?,?,?)", Array As Object(no_cliente, ALMACEN, no_ruta)) +' Starter.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_LAT,NV_LON,NV_NOMBRE,NV_DIRECCION) VALUES(?,?,?,?,?,?,?,?) ", Array As Object (no_cliente,sDate & sTime, usuario, "NUEVO CLIENTE", lat, lon, E_NOMBRE.Text,et_direccion.Text)) DateTime.DateFormat = "dd/MM/yyyy" DateTime.Timeformat = "HH:mm:ss" diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas index 7ac5681..644a5c4 100644 --- a/B4A/C_Principal.bas +++ b/B4A/C_Principal.bas @@ -220,6 +220,8 @@ Sub Class_Globals Private L_PICK_CIEGO As Label Private P_CIEGO As Panel Dim Panel4 As Panel + Dim q_buscar As String + Private et_buspc As EditText End Sub 'You can add more parameters here. @@ -553,87 +555,7 @@ Sub B4XPage_Appear End Sub -Sub ET_PICK_CIEGO_TextChanged (Old As String, New As String) - Dim et As EditText = Sender - If New.Length > 4 Then - et.Text = Old - End If -End Sub - -Private Sub B_PC_ENV_Click - - Dim sDate As String - DateTime.DateFormat = "MM/dd/yyyy" - sDate = DateTime.Date(DateTime.Now) - - For i = 0 To CLV_PICK_CIEGO.Size - 1 - ' Retrieve the panel and child views for the current item - Dim itemPanel As B4XView = CLV_PICK_CIEGO.GetPanel(i) - Dim innerPanel As B4XView = itemPanel.GetView(0) - Dim editText As B4XView = innerPanel.GetView(1) - Dim inputText As String = editText.As(EditText).Text - - ' Check if the input text matches the regex pattern for zeros or if it's empty - If Regex.IsMatch("^[0]+$", inputText) Or inputText = "" Then - inputText = "0" - End If - - ' Retrieve and process the ID label - Dim idLabel As B4XView = innerPanel.GetView(0) - Dim idText As String = idLabel.As(Label).Text - Dim idParts() As String = Regex.Split(CRLF, idText) - Log(idParts(1)) - - ' Insert data into the database - Log($"Inserting: PC_ID_PROD=${idParts(0)}, PC_NOM_PROD=${idParts(1)}, PC_CANT=${inputText}, PC_ALMACEN=${ALMACEN}, PC_RUTA=${l_ruta.Text}, PC_FECHA=${sDate}"$) - B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO PICK_CIEGO(PC_ID_PROD, PC_NOM_PROD, PC_CANT, PC_ALMACEN, PC_RUTA, PC_FECHA) VALUES(?,?,?,?,?,?)", Array As String(idParts(0), idParts(1), inputText, ALMACEN, l_ruta.Text, sDate)) - - Log("Processed item " & i) - Next - - Log("Finished processing all items") - P_CIEGO.Visible = False -End Sub - - - Sub Subir_Click - Msgbox2Async("Parara hacer el envio de tu Informacion, antes debes revisar tu inventario abordo, ¿Deceas revisarlo?", "ATENCION","SI","", "NO",LoadBitmap(File.DirAssets,"alert2.png"), False) - Wait For Msgbox_Result (resultado As Int) - If resultado = DialogResponse.POSITIVE Then - P_CIEGO.Visible=True - Log(2) - d = B4XPages.MainPage.skmt.ExecQuery("SELECT CAT_GP_ID, CAT_GP_NOMBRE FROM CAT_GUNAPROD2 WHERE CAT_GP_CLASIF <> 'PROMOS'") - CLV_PICK_CIEGO.Clear - For i = 0 To d.RowCount - 1 - d.Position = i - CLV_PICK_CIEGO.Add(CreateListItem(d.GetString("CAT_GP_ID"), d.GetString("CAT_GP_NOMBRE")),i) -' Log(d.GetString("CAT_GP_ID")) -' Log(d.GetString("CAT_GP_NOMBRE")) - Next - d.Close - - Else - - End If -End Sub - -Sub CreateListItem(Id_prod As String, Prod As String) As Panel - Dim pa As B4XView = xui.CreatePanel("") - pa.SetLayoutAnimated(0, 0, 0, 1, 10) - pa.LoadLayout("PANEL_PICK_CIEGO") - pa.Height = 55dip - pa.Width = 298dip - 'pa.Width = clv_orden.GetBase.Width - L_PICK_CIEGO.Text = Id_prod & CRLF & Prod - L_PICK_CIEGO.TextSize = 12 - L_PICK_CIEGO.Gravity = Bit.Or(Gravity.CENTER_VERTICAL, Gravity.CENTER_HORIZONTAL) - 'cxc.Id_prod = mostrar3 - 'Log(pa.Width) - Return pa -End Sub - -Sub envio_info CARGA = "SUBIR" p_mandaInfo.Width = Root.Width p_mandaInfo.Height = Root.Height @@ -923,6 +845,7 @@ Sub envio_info End If End Sub + Sub cargar_Click Dim pedidodiaanterior As Boolean = False Dim cp As Cursor = B4XPages.MainPage.skmt.ExecQuery("select * from PEDIDO") @@ -1067,10 +990,10 @@ Sub cargar_Click cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) reqManager.ExecuteQuery(cmd , 0, "kmt_datos") -' cmd.Initialize -' cmd.Name = "select_cat_clientes_todos_MARQUEZ" -' cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) -' reqManager.ExecuteQuery(cmd , 0, "kmt_datos_todos") + cmd.Initialize + cmd.Name = "select_cat_clientes_todos_MARQUEZ" + cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) + reqManager.ExecuteQuery(cmd , 0, "kmt_datos_todos") cmd.Initialize cmd.Name = "select_hist_datos_MARQUEZ" @@ -1110,10 +1033,10 @@ Sub cargar_Click cmd.Parameters = Array As Object(E_RUTA2.text, ALMACEN) reqManager.ExecuteQuery(cmd , 0, "kmt_datos") -' cmd.Initialize -' cmd.Name = "select_cat_clientes_todos_MARQUEZ" -' cmd.Parameters = Array As Object(E_RUTA2.text, ALMACEN) -' reqManager.ExecuteQuery(cmd , 0, "kmt_datos_todos") + cmd.Initialize + cmd.Name = "select_cat_clientes_todos_MARQUEZ" + cmd.Parameters = Array As Object(E_RUTA2.text, ALMACEN) + reqManager.ExecuteQuery(cmd , 0, "kmt_datos_todos") cmd.Initialize cmd.Name = "select_hist_datos_MARQUEZ" @@ -1663,9 +1586,12 @@ Sub JobDone(Job As HttpJob) ' Dim CAT_GP_DEV As String = records(RESULT.Columns.Get("CAT_GP_DEV")) Dim CAT_GP_TIPOPROD As Int = records(RESULT.Columns.Get("CAT_GP_TIPOPROD")) Dim CAT_GP_INICIATIVA As Int = records(RESULT.Columns.Get("CAT_GP_INICIATIVA")) + Dim CAT_DP_PRECIO4 As Int = records(RESULT.Columns.Get("CAT_DP_PRECIO4")) + Dim CAT_DP_CONVERSION1 As Int = records(RESULT.Columns.Get("CAT_DP_CONVERSION1")) + ' CAT_GP_INICIATIVA = 5 ' skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_DEV) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_DEV)) - B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD2(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_TIPOPROD,CAT_GP_INICIATIVA,CAT_DP_PRECIO4,CAT_DP_CONVERSION1) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_TIPOPROD, CAT_GP_INICIATIVA,0,1)) + B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD2(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_TIPOPROD,CAT_GP_INICIATIVA,CAT_DP_PRECIO4,CAT_DP_CONVERSION1) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_TIPOPROD, CAT_GP_INICIATIVA,CAT_DP_PRECIO4,CAT_DP_CONVERSION1)) Next Listo2=1 If PB2.Progress = 0 Then @@ -2067,6 +1993,8 @@ End Sub Private Sub B4XPage_CloseRequest As ResumableSub 'Return True to close, False to cancel + + If SCROLL_RESDIA.Visible Then SCROLL_RESDIA.Visible = False B_OK_RES_Click @@ -2160,6 +2088,7 @@ Sub e_ruta_EnterPressed e_ruta.Text = "" Starter.skmt.ExecNonQuery("delete from CAT_GIRO") B4XPages.MainPage.skmt.ExecNonQuery("delete from CLIENTE_NUEVO") + B4XPages.MainPage.skmt.ExecNonQuery("delete from PICKCIEGO_HECHO") B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente") B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido") B4XPages.MainPage.skmt.ExecNonQuery("delete from PAGARES") diff --git a/B4A/C_Productos.bas b/B4A/C_Productos.bas index d0b7fcb..40592b6 100644 --- a/B4A/C_Productos.bas +++ b/B4A/C_Productos.bas @@ -895,10 +895,10 @@ Private Sub lv_promos_ItemLongClick (Position As Int, Value As Object) l_info.Visible = True End Sub -Private Sub b_buscar_Click - forzarBusqueda = True - Busca_TextChanged("",BUSCA.Text) -End Sub +'Private Sub b_buscar_Click +' forzarBusqueda = True +' Busca_TextChanged("",BUSCA.Text) +'End Sub Private Sub lv_tipo_ItemClick (Position As Int, Value As Object) ' lfila.text = "SUB TIPO" @@ -1090,9 +1090,6 @@ Private Sub clv_prods_ll_VisibleRangeChanged (FirstIndex As Int, LastIndex As In Private cs As CSBuilder cs.Initialize l_prodX.SetTextSizeAnimated(0, 13) - - - If clv_prods_ll.GetValue(i).As(Map).Get("cant") <> Null And clv_prods_ll.GetValue(i).As(Map).Get("cant") > 0 Then p_prods.Color=0xFFE2EEFF et_pCant.TextColor=Colors.Red @@ -1108,20 +1105,38 @@ Private Sub clv_prods_ll_VisibleRangeChanged (FirstIndex As Int, LastIndex As In Private precio As String=NumberFormat2(clv_prods_ll.GetValue(i).As(Map).Get("precio").As(Double),1,2,2,False) ' Log(clv_prods_ll.GetValue(i).As(Map)) - If clv_prods_ll.GetValue(i).As(Map).Get("b_caja").As(String) = "0" Then - If clv_prods_ll.GetValue(i).As(Map).Get("cant") <> Null Then et_pCant.Text = clv_prods_ll.GetValue(i).As(Map).Get("cant") - p_botMasMen.Visible = True - p_botMasMenc.Visible = False - Else If clv_prods_ll.GetValue(i).As(Map).Get("b_caja").As(String) = "1" Then - If clv_prods_ll.GetValue(i).As(Map).Get("cant") <> Null Then et_pCantc.Text = clv_prods_ll.GetValue(i).As(Map).Get("cant") - p_botMasMen.Visible = False - p_botMasMenc.Visible = True -' Log("visible verdadero") - Else IF clv_prods_ll.GetValue(i).As(Map).Get("b_caja").As(String) = "null" Then + c = Starter.skmt.ExecQuery2("SELECT PE_BCAJAS FROM PEDIDO WHERE PE_PROID = ? AND PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA)",Array As String(clv_prods_ll.GetValue(i).As(Map).Get("id"))) +' Log(clv_prods_ll.GetValue(i).As(Map).Get("id")) + If c.RowCount = 0 Then p_botMasMen.Visible = True p_botMasMenc.Visible = True -' Log("visible verdadero") + Else If c.RowCount > 0 Then + c.Position = 0 + If c.GetString("PE_BCAJAS") = "0" Then + If clv_prods_ll.GetValue(i).As(Map).Get("cant") <> Null Then et_pCant.Text = clv_prods_ll.GetValue(i).As(Map).Get("cant") + p_botMasMen.Visible = True + p_botMasMenc.Visible = False + Else If c.GetString("PE_BCAJAS") = "1" Then + If clv_prods_ll.GetValue(i).As(Map).Get("cant") <> Null Then et_pCantc.Text = clv_prods_ll.GetValue(i).As(Map).Get("cant") + p_botMasMen.Visible = False + p_botMasMenc.Visible = True + End If End If + +' If clv_prods_ll.GetValue(i).As(Map).Get("b_caja").As(String) = "0" Then +' If clv_prods_ll.GetValue(i).As(Map).Get("cant") <> Null Then et_pCant.Text = clv_prods_ll.GetValue(i).As(Map).Get("cant") +' p_botMasMen.Visible = True +' p_botMasMenc.Visible = False +' Else If clv_prods_ll.GetValue(i).As(Map).Get("b_caja").As(String) = "1" Then +' If clv_prods_ll.GetValue(i).As(Map).Get("cant") <> Null Then et_pCantc.Text = clv_prods_ll.GetValue(i).As(Map).Get("cant") +' p_botMasMen.Visible = False +' p_botMasMenc.Visible = True +' Log("visible verdadero") +' Else IF clv_prods_ll.GetValue(i).As(Map).Get("b_caja").As(String) = "null" Then +' p_botMasMen.Visible = True +' p_botMasMenc.Visible = True +' Log("visible verdadero") +' End If l_prodX.Text = cs.Color(Colors.red).append(clv_prods_ll.GetValue(i).As(Map).Get("prod")).pop.append(CRLF).Append("Existencias: " & clv_prods_ll.GetValue(i).As(Map).Get("almacen")).Color(0xFF017F01).Append($" $${precio}"$).Popall 'aqui si lo comentamos aparece la parte de cajas If clv_prods_ll.GetValue(i).As(Map).Get("conversion") = "1" Or clv_prods_ll.GetValue(i).As(Map).Get("precio_caja") = "0" Then @@ -1149,7 +1164,8 @@ Sub Busca_TextChanged (Old As String, New As String) listaProds.Initialize listaHints.Initialize Sleep(0) - Dim p As ResultSet = B4XPages.MainPage.skmt.ExecQuery($"select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD from ${Starter.tabla} where CAT_GP_NOMBRE like '%${New}%' and CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_CLASIF <> 'PROMOS' order by CAT_GP_NOMBRE"$) +' Dim p As ResultSet = B4XPages.MainPage.skmt.ExecQuery($"select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD from ${Starter.tabla} where CAT_GP_NOMBRE like '%${New}%' and CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_CLASIF <> 'PROMOS' order by CAT_GP_NOMBRE"$) + Dim p As ResultSet = B4XPages.MainPage.skmt.ExecQuery($"select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD, CAT_DP_CONVERSION1, CAT_DP_PRECIO4, PE_BCAJAS from ${Starter.tabla} LEFT JOIN PEDIDO ON CAT_GP_ID = PE_PROID where CAT_GP_NOMBRE like '%${New}%' AND CAT_GP_PRECIO > 0 And CAT_GP_ALMACEN > 0 And CAT_GP_CLASIF <> 'PROMOS' union all select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD, CAT_DP_CONVERSION1, CAT_DP_PRECIO4 , PE_BCAJAS from ${Starter.tabla} LEFT JOIN PEDIDO ON CAT_GP_ID = PE_PROID where CAT_GP_PRECIO > 0 And CAT_GP_ALMACEN = 0 And CAT_GP_CLASIF <> 'PROMOS' and cat_gp_id in (select pe_proid from pedido where pe_cliente in (select cuenta from cuentaa)) order by 2"$) Log("Llamamos LlenaProdsLL") LlenaProdsLL(p) ' Do While p.NextRow @@ -1289,6 +1305,9 @@ Sub b_prodMenosc_Click Private id As String=clv_prods_ll.GetValue(index).As(Map).Get("id") Private tmpMap As Map = CreateMap("precio":precio, "cant":laCant2.Text, "almacen":Subs.traeAlmacen) Private nombreX As String = Subs.traeProdNombre(id) + Private conversion As String = clv_prods_ll.GetValue(index).As(Map).Get("conversion") + Private preciocaja As String = clv_prods_ll.GetValue(index).As(Map).Get("precio_caja") + Log(tmpMap) ' prodsMap.Put(id, tmpMap) If laCant2.Text = 0 Then prodsMap.Remove(id) @@ -1303,12 +1322,9 @@ Sub b_prodMenosc_Click ' totalcajasmaspiezas = laCant2.Text ' End If LogColor("prodsMap="&prodsMap, Colors.blue) - c = Starter.skmt.ExecQuery2("SELECT CAT_DP_PRECIO4, CAT_DP_CONVERSION1 FROM CAT_GUNAPROD WHERE CAT_GP_ID = ?",Array As String(id)) - c.Position = 0 - ' (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, c.GetString("CAT_DP_PRECIO4"),(laCant2.Text * c.GetString("CAT_DP_CONVERSION1")), 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) cuentaProds LogColor("prodsMap="&prodsMap, Colors.blue) Log($"Total Prods: ${totalProds}, Total Compra: $$1.2{totalCompra}"$) @@ -1327,7 +1343,7 @@ Sub b_prodMenosc_Click If Subs.totalPedido < 1 Then laCant2.Text = "0" invTotal = totalcajasmaspiezas + Subs.traeinventario(id) ' LogColor("InvTotal PRODMAS: " & invTotal, Colors.Red) - c.Close + End Sub Sub b_prodMasc_Click @@ -1347,6 +1363,9 @@ Sub b_prodMasc_Click Private precio As String=clv_prods_ll.GetValue(index).As(Map).Get("precio") Private inv As String=clv_prods_ll.GetValue(index).As(Map).Get("almacen") Private existencias As String = clv_prods_ll.GetValue(index).As(Map).Get("almacen") + Private conversion As String = clv_prods_ll.GetValue(index).As(Map).Get("conversion") + Private preciocaja As String = clv_prods_ll.GetValue(index).As(Map).Get("precio_caja") + Log(conversion) Log($"Existencias: ${existencias}"$) If laCant2.Text = "" Then laCant2.Text = 0 Private id As String=clv_prods_ll.GetValue(index).As(Map).Get("id") @@ -1366,19 +1385,21 @@ Sub b_prodMasc_Click ' Log((Subs.totalPedido - precio > 1)) ' Log((Subs.totalPedido)) ' Log(precio) - - - If Subs.traeinventario(id) > 0 And (laCant2.Text <= (laCant2.Text + Subs.traeinventario(id))) Then 'And (Subs.totalPedido - precio > 1) + Log(Subs.traeinventario(id)) + Log((laCant2.Text * conversion) + conversion) + Log((laCant2.Text *conversion)+ Subs.traeinventario(id)) + If Subs.traeinventario(id) > 0 And ((laCant2.Text * conversion) + conversion <= ((laCant2.Text *conversion)+ Subs.traeinventario(id))) Then 'And (Subs.totalPedido - precio > 1) ' Log(clv_prods_ll.GetValue(index).As(Map)) - clv_prods_ll.GetValue(index).As(Map).Put("almacen", (inv - 1)) - inv = inv - 1 + clv_prods_ll.GetValue(index).As(Map).Put("almacen", (inv - conversion)) + inv = inv - conversion ' laCant.Text = $"$1.0{laCant.Text+1}"$ laCant2.Text = NumberFormat2((laCant2.Text + 1), 1, 0, 0, False) ' Log(clv_prods_ll.GetValue(index).As(Map)) + Log("cuando entro aqui?") End If Private nombreX As String = Subs.traeProdNombre(id) ' Subs.actualizaProducto(Subs.traeAlmacen, laCant.text, id, clienteId) - + Log((laCant2.Text * conversion)) If laCant2.Text > 0 Then panelpiezas.Visible = False Else If laCant2.Text = 0 Then @@ -1391,9 +1412,8 @@ Sub b_prodMasc_Click ' Else ' totalcajasmaspiezas = laCant2.Text ' End If - c = Starter.skmt.ExecQuery2("SELECT CAT_DP_PRECIO4, CAT_DP_CONVERSION1 FROM CAT_GUNAPROD WHERE CAT_GP_ID = ?",Array As String(id)) - c.Position = 0 - Subs.actualizaProducto(Subs.traeAlmacen, c.GetString("CAT_DP_PRECIO4"),(laCant2.Text * c.GetString("CAT_DP_CONVERSION1")), 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) cuentaProds ' Log($"Total Prods: ${totalProds}, Total Compra: $$1.2{totalCompra}"$) If 1 = 1 Then @@ -1410,7 +1430,7 @@ Sub b_prodMasc_Click End If invTotal = totalcajasmaspiezas + Subs.traeinventario(id) ' LogColor("InvTotal PRODMAS: " & invTotal, Colors.Red) - c.Close + End Sub Private Sub et_pCantc_FocusChanged (HasFocus As Boolean) @@ -1438,7 +1458,7 @@ End Sub Private Sub et_pCantc_TextChanged (Old As String, New As String) Log(etCantHasFocus) -' Log("InvTotal: " & invTotal) + Log("InvTotal: " & invTotal) If etCantHasFocus = True Then LogColor($"txt changed: ${Old}|${New}, hasfocus=${etCantHasFocus}"$,Colors.Magenta) Dim index As Int = clv_prods_ll.GetItemFromView(Sender) @@ -1454,6 +1474,8 @@ Private Sub et_pCantc_TextChanged (Old As String, New As String) Private nombreX As String = Subs.traeProdNombre(id) Dim panelcajas As B4XView = pnl.GetView(3) Dim panelpiezas As B4XView = pnl.GetView(2) + Private conversion As String = clv_prods_ll.GetValue(index).As(Map).Get("conversion") + Private preciocaja As String = clv_prods_ll.GetValue(index).As(Map).Get("precio_caja") If(New = "" Or New = Null Or New = "-") Then New = 0 @@ -1478,14 +1500,18 @@ Private Sub et_pCantc_TextChanged (Old As String, New As String) ' Else ' totalcajasmaspiezas = laCant2.Text ' End If - c = Starter.skmt.ExecQuery2("SELECT CAT_DP_PRECIO4, CAT_DP_CONVERSION1 FROM CAT_GUNAPROD WHERE CAT_GP_ID = ?",Array As String(id)) - c.Position = 0 + Log("InvTotal: " & invTotal) If Not(Old = "0" And New = "") And laCant2.Text <> Null And laCant2.Text <> "" And etCantHasFocus Then - Log("actualizamos producto") - Subs.actualizaProducto(Subs.traeAlmacen, c.GetString("CAT_DP_PRECIO4"),(laCant2.Text * c.GetString("CAT_DP_CONVERSION1")), Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,laCant2.Text,1) - cuentaProds + If invTotal - (laCant2.Text * conversion) > 0 Then + 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) + cuentaProds + Else + Private totalcajaspermi As Int = invTotal / conversion + laCant2.Text = totalcajaspermi + End If End If - c.Close + ' If New <> "" And New.SubString2(0,0) = "0" Then ' New.SubString(1) ' End If diff --git a/B4A/Files/login.bal b/B4A/Files/login.bal index 39f2734a9d58bbe410e633c6a0c65a79e8172c0e..c0c2e8cbdf0096af520166202b62f52e95a8b7e0 100644 GIT binary patch delta 4071 zcmb7Hdr*|u72nHCc6kPt*8Xb>FjBPaSA4#W^$;eb&qfMaa+-2Es6{m)o z^YOdqo_p@^o_o%@aAeyT$5=wNN~NlfQK>ZeyL>PqKS7P4%`P}Zk57;XD|7s0feO!# z!~l@Hdqm0M6vYlHnQI(^+abCH*&($%JEXvR(cSBmYU<*-fwRja$>^=7E*8f%_QqO! z{ic?Hp)7WYUO}dbHoI4pdqsHx$39W^IB?4bRqcirdt*cGdV6g{{hB9IaJHD8g>K+6g`T35ilRkHQ{Z$3 z&On@rl7*rRVZSOH2RSIYD0&6XQ(%Jv8x?pV;(U|>ltPpu6cdVBfh`JLtiX#n-V#_) zqL?UE;4%eXtiV>p!4p4@I2f(31@-WL#2aie3`CmzV*@)zT)*{sCbD<_^x|jl9=gr? zwH3PC+fy>qkAL~)H$Ji6T=Vyub+1iYi#y)dTz)<-J^S2=h{C1T56xp&hK3{0z4?wm za#_)x&?O%(}#EeyS@Kh!p$GcW~pDFHFCK` z*A;nnZCXrPk7dYza!b{2^M4~-PYrc%yp?nWCd*>Q7PvV6%@Z?K|Cyd*-l6x(^c8n6 zsr|)Q7uqNP@{6(Y^7X%2aQo<)jwe?oHP%LN&G{Fc-)jFT(L9~I@5;LDLr+T|u5Wri15|Mk6s6?a<`e{i?p^Qc#b zv_}UcRH|1d-iZ29w25JyDjqCtN<14cbpzIVhXhBNe&V2J4~th6fgZZ!GM0wwZvNV& z9Ch%5ZImUfRi9JzmeNXpXyu{+tP^~~8rj)SoZN0fu+PT>wOD@Wwt#H3)7b^I&KG<&B&USMG&6aG|2Of(qX*W(Qk8Us< z;GQuBt`&XfzNJu!i~8Y1la4Pnqkl5Kxkv-+%m?o?W_#}2XU~KCF#p8QEf*NuI~S9^ z_Zd-4_QKSnqmLewedvP6q-sARdVQ!N@u!HjBcKA}f#rdszQ8kpj1^%RD(#133pH>z zzB$ogqqK}>WUD?viK7AZ$(J2~!wGp2zh>}}B^|o;8T3r@H;`4M3H2Fvn^D&KpGM5D z;UI!%Py&~FD5$1K_b`h3S^Rt#C1&Q@2REKWz-ZYK0ww74dkEA=@pB9%W@gXp_XbEa zh@T;pXnxwLIZwg#fgPqK7|2Lu5m1t#gK?9V0S~*+m{K(t7vjd_(urUNikfKglLCTJ zfDYg&urJSndq$0B>hl@;1AzTf1#e|8%b{rTF*&Ed3OIWnk^S(;cpYrdj)t!%*CVM+ zuxG?VjztZ987tvd){?pLpVP9~@N9OZl+V#DMt7X%1q9(Vhf$-TNmZqN9(6X9m>K-x zoQgTeI5OnpDHYU}SXl#Dv+DjYq2phP(D8W)op>0b^WlU*N~IJm&i>+HRRK=%Oo&Cm zPf|#lXqd{)VI!24#ag_3epe$nqX+_y=pp5I$&c#=TW(CJx`a6!=wYsgd#^ zJPI#`Z-_}_RR_C>1ripn3SEa7+;9p3zYgncEV7_7Yo+2I=5HcnNQa)?`I^Ws3~xBG zu`ptz)I?HWMx6~M)I_eso0%0=bVEF2=$+x$^)u9Piunk56=CA?|A82q@SiC9Mm<`) kIs28UpGC)^%nDHdKI-P7UPeU2sT2Q)Q3qzoz~W5)AO93lDgXcg delta 1230 zcmey<&)5^q%gVsOuz`hvfeT10PvlkR1PLU?Cl+K+w3V6IAvJCNkDL-nC?GK} zHOCle5ko;@aWOMU#KjH7Ed?4THhB$GbUina#{(Ok z=oZ_;Q&OAydf$DTfBX@@yn(vu+ed}7|Ihxg{E^P2uDyGuSE&`Js4gh~V{`adYD1LP z$%hl>mmGfftIXl!dybf^$Evpc)of>fTe*ABq~q;(9vl3*nZvmGAOBNErU#6Z0}UiM{}VLeot&b$ zoH1pxor>~geI-sH%TnnzV=9O*p#uy}P&9L<0tpQu<^e@GXUgOR<-3e&KqWf-X(%$O zlRv0AOx~#y!k9jJqq*p0IU6;`jL8SpO($C@@iC@t?o(A`oNTLN4K)9Q+LXz>s-2s8 zHSRGo<^WaeO!kpc;m<)cPryPAC|e-qIeE91zg{j-7U&%Y&O9Ii$_k)(XW+~S5@6v1 zAfpf@QUoN5C*L)aU@VzjC?}-|QV&XWj6e+WQVEcO?4=&Gcwk~!?hMo5hz@1Co3BD l5g(>?KqDYwT0i-r3sRVZ3MX(fsYkQK(70x@y)7RwNCA^qDs=z= diff --git a/B4A/Files/principal.bal b/B4A/Files/principal.bal index 9a00e9fa92be729e056902d906964d8b73622aa8..be71ca6a50846825f1fd6ad3f5a745e17e9da8ba 100644 GIT binary patch delta 1402 zcmYk+$x;(h6vpw}A)zeFFespaf($Y!3OEZg8IVCl0Syiy3ZkL{Y6vJI?SSY~Dr>4- zxOLTQ7QTUR;MT|R>m)b)7hmOf`lOS4?oE2K}^C#Ds9KC+q3a@S@2KNNz z$WXK;@w>D**Kb7Pv8BcN=-ljzSLT!iz0T02{A>ipzK!) zl_I5BvF|?sACya!Ql$(&1RsXWckP;r-NGD!E8!}*8m^J;LXYBlt!x)v2iL<5NxP}Z zj-hcJZiG+BCzU3p8P{9jQ}Ai{415+or|-|K^gMh4z6iI%ZSWHQtFJNE(p2!E14D;vre q#ooK=Ki=$zepMs+bo1Kx{tGzGUTxlRzW1x5{%7LHb|{@-z?lCSHDB}q delta 1785 zcmZA1$x{!~jBq5JAO=8!9R)sEBC9h1Dtz{U_+n zDlICWEInA3XU|;JqeqThD14pJ;o;#WzwVytWhVK4Pepxw6O|NW7)JIM!?56cK9Dq? z7!Nf0+)iI}hc__Ynqo!U+3xkZUCuV2)79M48CWWej}G_R7FRQ)6XMWthsT2HG5tb} z$auK;0)*CIM{!&iw%%FrXUi zzCgZ6zC^xEzCs>^^)LS_tp9%3;Ooc`a)a!@NsU|NVe)PA9r9iB2ziuzk9?o}AZ&kV zM`JYbkUUO)1WzE3ktbyJ1og?D!urIMuznKHVEuHTlV2FM8v`#fFojGbGl;%<7S@x_ z!J$eQTu%6F5;egkYe#aO3B7hl96r|zth!`#IgUqb9$~D_D|S`p#4(6@<+HaYpJAVFejRfo+sAwNv#n0^Quc$+R)XUb$^Ub%G7)(ew-HTzoFrRRO6bl00J ze&KRehJ||Rs`8js0S`@L$84o&B&xEmrkt3wo0nJCRHYVQ*Dov_r zi%Q(1&Mc;c^w@Lca-BuC_GZYR-NnLzMYCjbPhtK?T(NmA$Ny_B_7$a8qf^ze*fqUs axn9+xesZCWe3mOiwgs<6Hhj0@dHw^g6)F0|P^7US>*Sib6`NLRo5FN#f=N4qiUSl+Af!$2kG^tPDZ` delta 32 ocmdnzu+?Eh7zY;{0|P@qW@=Sp@#ahpUcSj6<&8J56r0Kk0IR+VqW}N^ diff --git a/B4A/MARQUEZ.b4a b/B4A/MARQUEZ.b4a index b340077..0d33e5f 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.06.22 + #VersionName: 4.06.30 'SupportedOrientations possible values: unspecified, landscape or portrait. #SupportedOrientations: portrait #CanInstallToExternalStorage: False diff --git a/B4A/MARQUEZ.b4a.meta b/B4A/MARQUEZ.b4a.meta index bda19f3..054e3d7 100644 --- a/B4A/MARQUEZ.b4a.meta +++ b/B4A/MARQUEZ.b4a.meta @@ -88,6 +88,6 @@ ModuleClosedNodes6= ModuleClosedNodes7= ModuleClosedNodes8= ModuleClosedNodes9= -NavigationStack=C_Productos,l_prodx_click,1058,0,Diseñador Visual,proditem.bal,-100,6,Diseñador Visual,proditem1.bal,-100,1,Diseñador Visual,folioabono.bal,-100,1,C_Productos,clv_prods_ll_VisibleRangeChanged,1092,6,C_Promos,CreateListItem,258,0,C_Productos,LlenaProdsLL,1202,6,B4XMainPage,B4XPage_Created,182,0,C_Productos,cuentaProds,776,0,C_Principal,JobDone,1661,0 +NavigationStack=C_Cliente,MODS,0,0,C_Cliente,B_GUARDA_C_Click,1431,0,C_Cliente,Guardar_Click,630,0,Diseñador Visual,productos.bal,-100,2,C_Productos,lv_promos_ItemLongClick,891,0,C_Productos,Busca_TextChanged,1160,0,C_Productos,clv_prods_ll_VisibleRangeChanged,1139,0,Subs,restaFijosPromo,1010,0,B4XMainPage,b_terpc_Click,1048,0,B4XMainPage,JobDone,520,5 SelectedBuild=0 -VisibleModules=1,2,3,4,7,8,9,10,13,14,28,15,16 +VisibleModules=4,1,2,7,8,9,10,14,13,28,5