mirror of
https://github.com/KeymonSoft/Marquez.git
synced 2026-04-20 22:29:28 +00:00
VERSION 4.06.30
This commit is contained in:
@@ -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
|
||||
Reference in New Issue
Block a user