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