Files
Durakelo/B4A - Copy/C_Clientes.bas
Jose Alberto Guerra Ugalde eb76cd60b7 Merge branch 'master' of https://github.com/KeymonSoft/Durakelo
# Conflicts:
#	B4A/B4XMainPage.bas
#	B4A/C_Cliente.bas
#	B4A/C_Clientes.bas
#	B4A/C_Historico.bas
#	B4A/C_NoVenta.bas
#	B4A/C_Nota.bas
#	B4A/C_Principal.bas
#	B4A/C_Productos.bas
#	B4A/C_TicketsDia.bas
#	B4A/CameraExClass.bas
#	B4A/DBRequestManager.bas
#	B4A/Durakelo.b4a
#	B4A/Durakelo.b4a.meta
#	B4A/Files/cliente.bal
#	B4A/Files/clientes.bal
#	B4A/Files/detalle_promo.bal
#	B4A/Files/foto.bal
#	B4A/Files/guardagestion.bal
#	B4A/Files/historico.bal
#	B4A/Files/kelloggs.png
#	B4A/Files/kmt.db
#	B4A/Files/login.bal
#	B4A/Files/mapa.bal
#	B4A/Files/mapa_rutas.bal
#	B4A/Files/noventa.bal
#	B4A/Files/nuevocliente.bal
#	B4A/Files/palomita_verde.png
#	B4A/Files/pedido.bal
#	B4A/Files/principal.bal
#	B4A/Files/productos.bal
#	B4A/Files/tache_rojo.png
#	B4A/Starter.bas
#	B4A/Tracker.bas
2023-10-16 19:04:22 -06:00

213 lines
6.4 KiB
QBasic

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