Files
Salma_Viejo/colonia2.bas

407 lines
16 KiB
QBasic

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
Dim skmt As SQL
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 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 marca As String
Dim tipo As String
Dim subtipo As String
Private BUSCA As EditText
Dim ya_entro As String
Dim TIENE_PROMOS As String
Dim RES As String
Dim S1 As Cursor
Dim ciclo As String
Private b_qr As Button
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
' valido donde escribo el archivo de la base de datos de kmt
ruta = File.DirInternal
' 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
skmt.Initialize(ruta,"kmt.db", True)
c=skmt.ExecQuery("select count(*) as CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
c.Position=0
If c.GetString("CUANTOS") = 0 Then
c2=skmt.ExecQuery2("select CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_CLASIF = ? AND CAT_GP_TIPO = ? AND CAT_GP_SUBTIPO = ? AND CAT_GP_ID IN (SELECT HP_CODIGO_PROMOCION FROM HIST_PROMOS WHERE HP_CLIENTE IN (Select cuenta from cuentaa) )", Array As String(marca, tipo, "PROMOS"))
If c2.RowCount>0 Then
For i=0 To c.RowCount -1
c2.Position =i
RES = Msgbox2(" " & c2.GetString("CAT_GP_NOMBRE"),"IR......", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png"))
If RES = DialogResponse.POSITIVE Then
skmt.ExecNonQuery("delete from PROID")
skmt.ExecNonQuery2("INSERT INTO PROID VALUES (?)", Array As Object(c2.GetString("CAT_GP_NOMBRE")))
StartActivity(pedidos)
i = c2.RowCount
End If
Next
End If
End If
c.Close
ciclo = 1
End Sub
Sub Activity_Resume
skmt.ExecNonQuery2("UPDATE CAT_GUNAPROD SET CAT_GP_TIPOPROD = (?) WHERE CAT_GP_TIPOPROD = (?) ",Array As Object("PAQUETES","6"))
skmt.ExecNonQuery2("UPDATE CAT_GUNAPROD SET CAT_GP_TIPOPROD = (?) WHERE CAT_GP_TIPOPROD = (?) ",Array As Object("PAQUETES CLIENTE","7"))
skmt.ExecNonQuery2("UPDATE CAT_GUNAPROD SET CAT_GP_TIPOPROD = (?) WHERE CAT_GP_TIPOPROD = (?) ",Array As Object("PROMOCIONAL","1"))
skmt.ExecNonQuery2("UPDATE CAT_GUNAPROD SET CAT_GP_TIPOPROD = (?) WHERE CAT_GP_TIPOPROD = (?) ",Array As Object("CATALOGO REGULAR","0"))
skmt.ExecNonQuery2("UPDATE CAT_GUNAPROD SET CAT_GP_TIPOPROD = (?) WHERE CAT_GP_TIPOPROD = (?) ",Array As Object("INICIATIVAS","2"))
skmt.ExecNonQuery2("UPDATE CAT_GUNAPROD SET CAT_GP_TIPOPROD = (?) WHERE CAT_GP_TIPOPROD = (?) ",Array As Object("RECOMENDACIONES","8"))
'skmt.ExecNonQuery2("UPDATE CAT_GUNAPROD SET CAT_GP_TIPOPROD = (?) WHERE CAT_GP_ID IN (SELECT CAT_PA_ID FROM PROMOS_COMP WHERE CAT_PA_BANDERAORO = (?))",Array As Object("PAQUETES ORO","1"))
If ya_entro = "1" And marca = "PROMOS" Then
ya_entro = 0
End If
If ya_entro <> "1" Then
BUSCA.Text =""
skmt.Initialize(ruta,"kmt.db", True)
entro ="3"
ya_entro ="1"
'c=skmt.ExecQuery2("select CAT_GP_CLASIF, count(*) as cuantos from cat_gunaprod where CAT_GP_ALMACEN > 0 and CAT_GP_CLASIF <> ? group by CAT_GP_CLASIF order by CAT_GP_CLASIF asc", Array As String("PROMOS") )
If ciclo = 1 Then
' c=skmt.ExecQuery2("select CAT_GP_TIPOPROD, count(*) as cuantos from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and (CAT_GP_TIPOPROD = (?) or CAT_GP_TIPOPROD = (?)) group by CAT_GP_TIPOPROD order by CAT_GP_CLASIF asc", Array As String("INICIATIVAS","PAQUETES") )
c=skmt.ExecQuery2("select (?) AS CAT_GP_TIPOPROD, count(*) as cuantos from CAT_NEXTBESTSKU where CAT_TIENDA IN (SELECT CUENTA FROM CUENTAA) ", Array As String("RECOMENDACIONES") )
else if ciclo = 2 Then
c=skmt.ExecQuery2("select CAT_GP_TIPOPROD, count(*) as cuantos from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and (CAT_GP_TIPOPROD = (?) or CAT_GP_TIPOPROD = (?)) group by CAT_GP_TIPOPROD order by CAT_GP_CLASIF asc", Array As String("INICIATIVAS","PAQUETES") )
' c=skmt.ExecQuery2("select CAT_GP_TIPOPROD, count(*) as cuantos from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_TIPOPROD = (?) group by CAT_GP_TIPOPROD order by CAT_GP_CLASIF asc", Array As String("INICIATIVAS") )
'c=skmt.ExecQuery2("select CAT_GP_TIPOPROD, count(*) as cuantos from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and (CAT_GP_TIPOPROD = (?) or CAT_GP_TIPOPROD = (?)) group by CAT_GP_TIPOPROD order by CAT_GP_CLASIF asc", Array As String("INICIATIVAS","PAQUETES") )
' Else IF ciclo = 3 Then
'c=skmt.ExecQuery2("select CAT_GP_TIPOPROD, count(*) as cuantos from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and (CAT_GP_TIPOPROD = (?) or CAT_GP_TIPOPROD = (?) or CAT_GP_TIPOPROD = (?)) group by CAT_GP_TIPOPROD order by CAT_GP_CLASIF asc", Array As String("PROMOCIONAL","PAQUETES CLIENTE") )
' c=skmt.ExecQuery2("select CAT_GP_TIPOPROD, count(*) as cuantos from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and (CAT_GP_TIPOPROD = (?) or CAT_GP_TIPOPROD = (?) or CAT_GP_TIPOPROD = (?)) group by CAT_GP_TIPOPROD order by CAT_GP_CLASIF asc", Array As String("PROMOCIONAL","PAQUETES CLIENTE") )
else if ciclo = 3 Then
c=skmt.ExecQuery2("select CAT_GP_TIPOPROD, count(*) as cuantos from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and (CAT_GP_TIPOPROD = (?) ) group by CAT_GP_TIPOPROD order by CAT_GP_CLASIF asc", Array As String("CATALOGO REGULAR") )
Else
'c=skmt.ExecQuery2("select CAT_GP_TIPOPROD, count(*) as cuantos from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and (CAT_GP_TIPOPROD = (?) ) group by CAT_GP_TIPOPROD order by CAT_GP_CLASIF asc", Array As String("CATALOGO REGULAR") )
c=skmt.ExecQuery2("select CAT_GP_TIPOPROD, count(*) as cuantos from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and (CAT_GP_TIPOPROD = (?) or CAT_GP_TIPOPROD = (?) or CAT_GP_TIPOPROD = (?)) group by CAT_GP_TIPOPROD order by CAT_GP_CLASIF asc", Array As String("PROMOCIONAL","PAQUETES CLIENTE") )
'c=skmt.ExecQuery2("select (?) AS CAT_GP_TIPOPROD, count(*) as cuantos from CAT_NEXTBESTSKU where CAT_TIENDA IN (SELECT CUENTA FROM CUENTAA) ", Array As String("RECOMENDACIONES") )
'c=skmt.ExecQuery2("select CAT_GP_TIPOPROD, count(*) as cuantos from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and (CAT_GP_TIPOPROD = (?) ) group by CAT_GP_TIPOPROD order by CAT_GP_CLASIF asc", Array As String("PAQUETES CLIENTE") )
End If
'ESTO ES PARA NO VER PROCTER
'c=skmt.ExecQuery2("select CAT_GP_CLASIF, count(*) as cuantos from cat_gunaprod where CAT_GP_ALMACEN > 0 and cat_gp_clasif NOT IN (?,?,?,?,?,?,?,?,?,?) group by CAT_GP_CLASIF order by CAT_GP_CLASIF asc", Array As String("PROCTER","PROMOS","TRES MONTES","CAMPARI","CAMPARI-PRO","CLOROX DE MEXICO","MARS","CONAGRA","VERDE VALLE","MEAD JOHNSON"))
ListView1.Clear
lfila.Text = "CATALOGOS"
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
Dim label13 As Label
label13 = ListView1.TwoLinesAndBitmap.Label
label13.TextSize = 13
label13.TextColor = Colors.Black
Dim label14 As Label
label14 = ListView1.TwoLinesAndBitmap.SecondLabel
label14.TextSize = 13
label14.TextColor = Colors.Black
' If c.GetString("CAT_GP_TIPOPROD") = "PROMOS" Then
' ListView1.AddTwoLines(c.GetString("CAT_GP_CLASIF")," ")
'Else
ListView1.AddTwoLines(c.GetString("CAT_GP_TIPOPROD"),c.GetString("cuantos"))
'End If
Next
End If
End If
End Sub
Sub Activity_Pause (UserClosed As Boolean)
End Sub
Sub ListView1_ItemClick (Position As Int, Value As Object)
'Sub ListView1_ItemLongClick (Position As Int, Value As Object)
'que_colonia = Value
'StartActivity(fila)
b_qr.Visible = True
b_qr.Text = "SIGUIENTE"
If Value = "PAQUETES" Or Value = "PAQUETES CLIENTE" Or Value = "PAQUETES ORO" Then
entro = "3"
marca = "PROMOS"
tipo = "PROMOS"
End If
' entro = "3"
If entro = "3" Then
entro = "4"
skmt.Initialize(ruta,"kmt.db", True)
If marca = "PROMOS" Then
c2=skmt.ExecQuery2("select CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_TIPOPROD = ? AND CAT_GP_TIPO = ? AND CAT_GP_SUBTIPO = ? AND CAT_GP_ID NOT IN (SELECT PE_PROID FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa) )", Array As String(Value,marca, tipo))
ELSE IF Value = "RECOMENDACIONES" Then
c2=skmt.ExecQuery("select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG, CAT_GP_INICIATIVA from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_ID IN (SELECT CAT_CODIGO FROM CAT_NEXTBESTSKU WHERE CAT_TIENDA IN (SELECT CUENTA FROM CUENTAA) ORDER BY CAT_RANK) ")
Else
c2=skmt.ExecQuery2("select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG, CAT_GP_INICIATIVA from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_TIPOPROD = ? ", Array As String(Value))
'c2=skmt.ExecQuery2("select CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_TIPOPROD = ? AND CAT_GP_TIPO = ? AND CAT_GP_SUBTIPO = ? ", Array As String(marca, tipo, Value))
End If
' AND CAT_GP_ID IN (SELECT HP_CODIGO_PROMOCION FROM HIST_PROMOS WHERE HP_CLIENTE = (Select cuenta from cuentaa))
If Value = "INICIATIVAS" Then
ListView1.Clear
lfila.text = "INICIATIVAS"
Dim ins As InputStream
Dim bmp As Bitmap
Dim jpeg() As Byte
If c2.RowCount>0 Then
For i=0 To c2.RowCount -1
c2.Position=i
'jpeg = LoadBitmap(File.DirAssets, "ROJO.png")
'c2.GetBlob("CAT_GP_IMG")
'ins.InitializeFromBytesArray(jpeg, 0, jpeg.Length)
'bmp.Initialize2(ins)
S1=skmt.ExecQuery2("select COUNT(*) AS CUANTOS from HIST_VENTAS where HVD_PRONOMBRE =? and HVD_CLIENTE IN (Select cuenta from cuentaa)", Array As String(c2.GetString("CAT_GP_NOMBRE")))
S1.Position =0
If S1.GetString("CUANTOS") > 0 Then
s=skmt.ExecQuery2("select sum(HVD_CANT) AS SUMA from HIST_VENTAS where HVD_PRONOMBRE =? and HVD_CLIENTE IN (Select cuenta from cuentaa)", Array As String(c2.GetString("CAT_GP_NOMBRE")))
s.Position =0
'Msgbox(s.GetString("SUMA"),"DATO")
If s.GetString("SUMA") >= c2.GetString("CAT_GP_INICIATIVA") Then
bmp = LoadBitmap(File.DirAssets, "VERDE.png")
Else If s.GetString("SUMA") < c2.GetString("CAT_GP_INICIATIVA") And s.GetString("SUMA") > 0 Then
bmp = LoadBitmap(File.DirAssets, "AMARILLO.png")
Else
bmp = LoadBitmap(File.DirAssets, "ROJO.png")
End If
s.Close
Else
bmp = LoadBitmap(File.DirAssets, "ROJO.png")
End If
ListView1.AddTwoLinesAndBitmap(c2.GetString("CAT_GP_NOMBRE"),"# " & c2.GetString("CAT_GP_ALMACEN") & " $ " & c2.GetString("CAT_GP_PRECIO"),bmp)
Next
End If
c2.Close
Else if Value = "RECOMENDACIONES" Then
ListView1.Clear
lfila.text = "PRODUCTO"
Dim ins As InputStream
Dim bmp As Bitmap
Dim jpeg() As Byte
If c2.RowCount>0 Then
For i=0 To c2.RowCount -1
c2.Position=i
jpeg = c2.GetBlob("CAT_GP_IMG")
ins.InitializeFromBytesArray(jpeg, 0, jpeg.Length)
bmp.Initialize2(ins)
ListView1.AddTwoLinesAndBitmap(c2.GetString("CAT_GP_NOMBRE"),"# " & c2.GetString("CAT_GP_ALMACEN") & " $ " & c2.GetString("CAT_GP_PRECIO"),bmp)
Next
End If
c2.Close
Else
ListView1.Clear
lfila.text = "PRODUCTO"
Dim ins As InputStream
Dim bmp As Bitmap
Dim jpeg() As Byte
If c2.RowCount>0 Then
For i=0 To c2.RowCount -1
c2.Position=i
jpeg = c2.GetBlob("CAT_GP_IMG")
ins.InitializeFromBytesArray(jpeg, 0, jpeg.Length)
bmp.Initialize2(ins)
ListView1.AddTwoLinesAndBitmap(c2.GetString("CAT_GP_NOMBRE"),"# " & c2.GetString("CAT_GP_ALMACEN") & " $ " & c2.GetString("CAT_GP_PRECIO"),bmp)
Next
End If
c2.Close
End If
' c2=skmt.ExecQuery2("select CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_IMP2 = ? AND CAT_GP_CLASIF <> ? ", Array As String("0", "PROMOS"))
' Dim ins As InputStream
' Dim bmp As Bitmap
' Dim jpeg() As Byte
' If c2.RowCount>0 Then
' For i=0 To c2.RowCount -1
' c2.Position=i
' jpeg = c2.GetBlob("CAT_GP_IMG")
' ins.InitializeFromBytesArray(jpeg, 0, jpeg.Length)
' bmp.Initialize2(ins)
'
' ListView1.AddTwoLinesAndBitmap(c2.GetString("CAT_GP_NOMBRE"),"# " & c2.GetString("CAT_GP_ALMACEN") & " $ " & c2.GetString("CAT_GP_PRECIO"),bmp)
' Next
' End If
' c2.Close
entro = "4"
Else If entro = "4" Then
skmt.ExecNonQuery("delete from PROID")
skmt.ExecNonQuery2("INSERT INTO PROID VALUES (?)", Array As Object(Value))
StartActivity(pedidos)
End If
End Sub
Sub Activity_KeyPress (key As Int) As Boolean
' BACK key pressed
If key=KeyCodes.KEYCODE_BACK Then
ya_entro ="0"
If entro = "4" Then
entro = "3"
Activity_Resume
Return True
Else 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(fila)
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)
' c=skmt.ExecQuery2("select CAT_GP_NOMBRE from cat_gunaprod where CAT_GP_ALMACEN > 0 and CAT_GP_NOMBRE like ? AND cat_gp_clasif NOT IN (?,?,?,?,?,?,?,?,?,?) order by CAT_GP_NOMBRE asc", Array As String(q_buscar, "PROCTER","PROMOS","TRES MONTES","CAMPARI","CAMPARI-PRO","CLOROX DE MEXICO","MARS","CONAGRA","VERDE VALLE","MEAD JOHNSON"))
c=skmt.ExecQuery2("select CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO,CAT_GP_IMG from cat_gunaprod where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_NOMBRE like ? and CAT_GP_CLASIF <> ? order by CAT_GP_NOMBRE asc", Array As String(q_buscar,"PROMOS"))
'and CAT_GP_CLASIF <> ? group by CAT_GP_CLASIF order by CAT_GP_CLASIF asc", Array As String("PROMOS") )
ListView1.Clear
Dim ins As InputStream
Dim bmp As Bitmap
Dim jpeg() As Byte
If c.RowCount>0 Then
For i=0 To c.RowCount -1
c.Position=i
jpeg = c.GetBlob("CAT_GP_IMG")
ins.InitializeFromBytesArray(jpeg, 0, jpeg.Length)
bmp.Initialize2(ins)
ListView1.AddTwoLinesAndBitmap(c.GetString("CAT_GP_NOMBRE"),"Existencia " & c.GetString("CAT_GP_ALMACEN") & " Precio $" & c.GetString("CAT_GP_PRECIO"),bmp)
Next
End If
' If c.RowCount>0 Then
' For i=0 To c.RowCount -1
' c.Position=i
' Dim label1 As Label
' label1 = ListView1.SingleLineLayout.Label
' label1.TextSize = 13
' ListView1.AddSingleLine(c.GetString("CAT_GP_NOMBRE"))
' Next
' End If
c.Close
entro= "4"
End Sub
Sub b_QR_Click
If ciclo = 1 Then
ciclo = 2
b_qr.Visible = False
ya_entro = "0"
'entro = 3
Activity_Resume
else if ciclo = 2 Then
ciclo = 3
' ya_entro = 0
ya_entro = "0"
Activity_Resume
b_qr.Visible = False
else if ciclo = 3 Then
ciclo = 4
' ya_entro = 0
ya_entro = "0"
Activity_Resume
b_qr.Visible = False
else if ciclo = 4 Then
ciclo = 1
' ya_entro = 0
ya_entro = "0"
Activity_Resume
b_qr.Visible = False
End If
End Sub