B4A=true Group=Default Group ModulesStructureVersion=1 Type=Activity Version=6.8 @EndOfDesignText@ #Region Activity Attributes #FullScreen: False #IncludeTitle: True #End Region Sub Process_Globals 'These global variables will be declared once when the application starts. 'These variables can be accessed from all modules. Dim ruta As String Dim q_buscar As String End Sub Sub Globals 'These global variables will be redeclared each time the activity is created. 'These variables can only be accessed from this module. ' Dim skmt As SQL Dim c As Cursor Dim c2 As Cursor Dim s As Cursor Dim ListView1 As ListView Dim entro As String Dim gest As Button Dim lfila As Label Dim busca As EditText Dim colonia As String Private b_qr As Button Private qr As QRCode Dim sc As Zxing_scanner Dim CODIGO As String Dim STIME As String End Sub Sub Activity_Create(FirstTime As Boolean) 'Do not forget to load the layout file created with the visual designer. For example: 'Activity.LoadLayout("Layout1") Activity.LoadLayout("fila") 'Dim ruta As String entro ="2" ' valido donde escribo el archivo de la base de datos de kmt ' If File.ExternalWritable Then ' ruta = File.DirDefaultExternal ' Else ' ruta = File.DirInternal ' End If ' se crea o no el archivo de la base de ddatos de kmt 'NOTAS SI SE MODIFICA LA ESTRUCTURA SE QUITA EL IF Y SE VA DIRECTO A LA SENTENCIA FILE.COPY PARA QUE 'TOME LA NUEVA ESTRUCTURA ES MUY IMPORTANTE TENER EL IF DE LO CONTRARIO SOLO LO ESCRIBE UNA VEZ Y LO BORRA 'SI SE REGRESA A ESTE ACTIVIDAD. ' If File.Exists(ruta, "kmt.db") = False Then ' File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db") ' End If qr.initialize End Sub Sub Activity_Resume 'b_qr.Visible = True busca.Text = "" 'skmt.Initialize(ruta,"kmt.db", True) entro ="2" colonia = 0 ' esto es para rutas se quito por colonia c=starter.skmt.execQuery("select CAT_CL_RUTA, count(*) as cuantos from kmt_info where gestion = 0 group by CAT_CL_RUTA order by CAT_CL_RUTA asc") 'SE COMENTA EL SIGUIENTE CODIGO PARA QUE TODAS LAS TIENDAS APARESCAN. ' c=starter.skmt.execQuery("select CAT_CL_COLONIA, count(*) as cuantos from kmt_info where gestion = 0 group by CAT_CL_COLONIA order by CAT_CL_COLONIA asc") c=Starter.skmt.execQuery("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where gestion = 0 ORDER BY CAT_CL_CODIGO") ListView1.Clear lfila.Text = "NOMBRE" If c.RowCount>0 Then For i=0 To c.RowCount -1 c.Position=i Dim label1 As Label label1 = ListView1.TwoLinesLayout.Label label1.TextSize = 13 label1.TextColor = Colors.Black Dim label2 As Label label2 = ListView1.TwoLinesLayout.SecondLabel label2.TextSize = 13 label2.TextColor = Colors.Black ListView1.AddTwoLines(c.GetString("CAT_CL_CODIGO"), c.GetString("CAT_CL_NOMBRE")) Next End If entro = "4" ' ESTE FUE EL FIN DEL CODIGO COMENTADO End Sub Sub Activity_Pause (UserClosed As Boolean) End Sub Sub ListView1_ItemClick (Position As Int, Value As Object) If colonia = 0 Then colonia = Value End If If entro = "2" Then c2=starter.skmt.execQuery2("select CAT_CL_CALLE, CAT_CL_COLONIA, count(*) as cuantos from kmt_info where gestion = 0 and CAT_CL_COLONIA = ? GROUP BY CAT_CL_CALLE, CAT_CL_COLONIA order by CAT_CL_CALLE ", Array As String(Value)) ListView1.Clear lfila.text = "Calle" If c2.RowCount>0 Then For i=0 To c2.RowCount -1 c2.Position=i ListView1.AddTwoLines(c2.GetString("CAT_CL_CALLE"),c2.GetString("cuantos") ) Next End If entro = "3" Else If entro = "3" Then c2=starter.skmt.execQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where gestion = 0 and CAT_CL_CALLE = ? AND CAT_CL_COLONIA = ? order by CAT_CL_NOMBRE ", Array As String(Value, colonia)) ListView1.Clear lfila.text = "Nombre" If c2.RowCount>0 Then For i=0 To c2.RowCount -1 c2.Position=i ListView1.AddTwoLines(c2.GetString("CAT_CL_CODIGO"), c2.GetString("CAT_CL_NOMBRE")) Next End If entro = "4" Else If entro = "4" Then starter.skmt.execNonQuery("delete from CUENTAA") starter.skmt.execNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(Value)) DateTime.TimeFormat = "HHmmss" STIME=DateTime.Time(DateTime.Now) s=starter.skmt.execQuery2("SELECT COUNT(*) AS CUANTOS FROM HIST_STAY_STORE WHERE HSS_IN = ? AND HSS_CODIGO In (select cuenta from cuentaa)", Array As String("0")) s.Position = 0 If s.GetString("CUANTOS") = 1 Then starter.skmt.execNonQuery2("UPDATE HIST_STAY_STORE set HSS_IN = ? where HSS_IN = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(STIME)) Else starter.skmt.execNonQuery2("INSERT INTO HIST_STAY_STORE(HSS_CODIGO, HSS_IN , HSS_OUT , HSS_TOT) VALUES (?,0,0,0)", Array As Object (Value)) starter.skmt.execNonQuery2("UPDATE HIST_STAY_STORE set HSS_IN = ? where HSS_IN = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(STIME)) End If starter.skmt.execNonQuery2("UPDATE HIST_STAY_OUT set HSO_INI = ? where HSO_INI = 0 ", Array As Object(STIME)) DateTime.TimeFormat = "HH:mm:ss" StartActivity(fila) End If End Sub Sub Activity_KeyPress (key As Int) As Boolean ' BACK key pressed If key=KeyCodes.KEYCODE_BACK Then ' If entro = "3" Then 'entro = "2" 'Activity_Resume 'Return True 'Else If entro = "2" Then 'entro = "1" 'Activity_Resume 'Return True 'Else If entro = "1" Then ' I want to capture the key here so I return True StartActivity(seleccion) Return False 'End If End If ' Returning False signals the system to handle the key End Sub Sub BUSCA_TextChanged (Old As String, New As String) q_buscar = "%" & busca.Text & "%" ' skmt.Initialize(ruta,"kmt.db", True) c2=starter.skmt.execQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where (CAT_CL_NOMBRE like ? OR CAT_CL_CODIGO LIKE ? OR CAT_CL_CALLE LIKE ?)and gestion = 0 order by CAT_CL_NOMBRE ", Array As String(q_buscar,q_buscar,q_buscar)) ListView1.Clear lfila.text = "Nombre y Calle" If c2.RowCount>0 Then For i=0 To c2.RowCount -1 c2.Position=i Dim label1 As Label label1 = ListView1.TwoLinesLayout.Label label1.TextSize = 9 label1.TextColor = Colors.White Dim label2 As Label label2 = ListView1.TwoLinesLayout.SecondLabel label2.TextSize = 17 label2.TextColor = Colors.White ListView1.AddTwoLines(c2.GetString("CAT_CL_CODIGO"), c2.GetString("CAT_CL_NOMBRE") &" CALLE: "& c2.GetString("CAT_CL_CALLE")) Next End If entro = "4" c2.Close End Sub Sub b_qr_Click 'StartActivity(QR_MODULE) Dim scan_width As Int Dim scan_height As Int scan_width = 400 scan_height = 400 sc.BeginScan("sc","CODIGO CLIENTE",scan_width,scan_height) End Sub Sub sc_result(atype As String,Values As String) 'Log("Type : " & atype) 'Log("Value : " & Values) CODIGO = Values c2=starter.skmt.execQuery2("select COUNT(*) AS ENCONTRADO from kmt_info where CAT_CL_NUM_SERIEFISICO = ? order by CAT_CL_NOMBRE ", Array As String(CODIGO)) c2.Position =0 If c2.GetString("ENCONTRADO") > 0 Then s=starter.skmt.execQuery2("select CAT_CL_CODIGO from kmt_info where CAT_CL_NUM_SERIEFISICO = ? order by CAT_CL_NOMBRE ", Array As String(CODIGO)) s.Position =0 starter.skmt.execNonQuery("delete from CUENTAA") starter.skmt.execNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(s.GetString("CAT_CL_CODIGO"))) s.Close b_qr.Visible = False StartActivity(fila) Else Msgbox("CODIGO " & CODIGO & " NO ENCONTRADO","AVISO") End If End Sub Sub sc_noScan Log("nothing returned from the scan !!!!!") End Sub Sub calc_ean_checksum(number As String) As String 'this has now become redundant as I am only interested in QR Codes Dim i As Int Dim cO As Char Dim soma As Int Dim n As Int Dim digit As Float soma = 0 For i=0 To number.Length - 1 digit = number.SubString2(i,i+1) n= digit * ((i Mod 2) * 2 + 1) soma=soma+n Next Return number & ( ( 10 - ( soma Mod 10 )) Mod 10 ) End Sub