B4A=true
Group=Default Group
ModulesStructureVersion=1
Type=Class
Version=11.5
@EndOfDesignText@
Sub Class_Globals
	Private Root As B4XView 'ignore
	Private xui As XUI 'ignore
	'//Process Globals
	Dim ruta As String
	Dim q_buscar As String
	'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
End Sub

Sub initialize
	
End Sub

Private Sub B4XPage_Created (Root1 As B4XView)
	'Do not forget to load the layout file created with the visual designer. For example:
	'Activity.LoadLayout("Layout1")
	Root = Root1
	Root.LoadLayout("Clientes")
	entro ="2"
	' valido donde escribo el archivo de la base de datos de kmt
	ruta = File.DirInternal
	If File.Exists(ruta, "kmt.db") = False Then
		File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db")
	End If
'	qr.initialize
End Sub

Sub B4XPage_Appear
	b_qr.Visible = False  ' No usamos el lector QR en esta app - CHV
	busca.Text = ""
	skmt.Initialize(ruta,"kmt.db", True)
	entro ="2"
	colonia = 0
	' esto es para rutas se quito por colonia c=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=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=skmt.ExecQuery("select  CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO,CAT_CL_NUM_SERIEFISICO from kmt_info where  gestion = 0 and cat_cl_codigo <> 0 ORDER BY  CAST(CAT_CL_NUM_SERIEFISICO AS DECIMAL)")
	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 = 10
			label1.TextColor = Colors.Black
			Dim label2 As Label
			label2 = ListView1.TwoLinesLayout.SecondLabel
			label2.TextSize = 10
			label2.TextColor = Colors.Black
			ListView1.AddTwoLines(c.GetString("CAT_CL_CODIGO"), c.GetString("CAT_CL_NUM_SERIEFISICO") & " " & c.GetString("CAT_CL_NOMBRE"))
		Next
	End If
	entro = "4"
	' ESTE FUE EL FIN DEL CODIGO COMENTADO
	   
End Sub

Sub ListView1_ItemClick (Position As Int, Value As Object)
	If colonia = 0 Then
		colonia = Value
	End If
	If entro = "2" Then
		c2=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=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
		skmt.ExecNonQuery("delete from CUENTAA")
		skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(Value))
'		StartActivity(fila)
		B4XPages.ShowPage("Cliente")
	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"
		'B4XPage_Appear
		'Return True
		'Else If entro = "2" Then
		'entro = "1"
		'B4XPage_Appear
		'Return True
		'Else If entro = "1" Then
	   
		' I want to capture the key here so I return True
			
'		StartActivity(seleccion)
		B4XPages.ShowPage("Principal")
		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=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 ?)and gestion = 0 order by CAT_CL_NOMBRE ", Array As String(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 = 10
			label1.TextColor = Colors.White
			Dim label2 As Label
			label2 = ListView1.TwoLinesLayout.SecondLabel
			label2.TextSize = 10
			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=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=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
		skmt.ExecNonQuery("delete from CUENTAA")
		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