6 Commits

Author SHA1 Message Date
eebc8a81c1 VERSION 6.01.20
- Se agrego un "mandaPendientes" en bitacora para cuando por problemas de red no se puede enviar el evento.
2026-01-27 16:21:28 -06:00
6875e0a244 VERSION 6.01.11
- Cambios en envi de NoVenta para incluir el comentario en la columna de motivoNoVisita
2026-01-19 11:31:25 -06:00
45361e79c4 VERSION 6.01.10
- Se corrige en resumen dia la venta por marcas
2026-01-15 16:48:55 -06:00
f4fa1e08d1 VERSION 6.01.05
- Se cambio el nombre de las imagenes cuando se realiza a primera venta.
- Se agrego la fecha de la bitacora en todos lados para que siempre ponga inicioi y fin
2026-01-08 20:51:07 -06:00
4ec4846e4e VERSION 6.01.01
- Se cambia e envio de las fotos a una formma para guardarlas en disco y no en BD
- Se agrega la hora de inico a las NO Ventas de la Bitacora!
2026-01-05 17:04:33 -06:00
90373fa40d VERSION 5.12.06
- Correccion porque cuando inicaba Principal, si no habia datos en kmt_info mandaba error!
2025-12-29 18:23:44 -06:00
26 changed files with 524 additions and 374 deletions

View File

@@ -1121,7 +1121,7 @@ Version=12.8
#Region Project Attributes #Region Project Attributes
#ApplicationLabel: ADM #ApplicationLabel: ADM
#VersionCode: 1 #VersionCode: 1
#VersionName: 5.12.04 #VersionName: 6.01.20
'SupportedOrientations possible values: unspecified, landscape or portrait. 'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait #SupportedOrientations: portrait
#CanInstallToExternalStorage: False #CanInstallToExternalStorage: False

View File

@@ -68,9 +68,9 @@ ModuleClosedNodes0=
ModuleClosedNodes1= ModuleClosedNodes1=
ModuleClosedNodes10= ModuleClosedNodes10=
ModuleClosedNodes11= ModuleClosedNodes11=
ModuleClosedNodes12= ModuleClosedNodes12=3
ModuleClosedNodes13= ModuleClosedNodes13=
ModuleClosedNodes14=16 ModuleClosedNodes14=3,4,5,6,16
ModuleClosedNodes15= ModuleClosedNodes15=
ModuleClosedNodes16= ModuleClosedNodes16=
ModuleClosedNodes17= ModuleClosedNodes17=
@@ -88,15 +88,15 @@ ModuleClosedNodes27=
ModuleClosedNodes28= ModuleClosedNodes28=
ModuleClosedNodes29= ModuleClosedNodes29=
ModuleClosedNodes3= ModuleClosedNodes3=
ModuleClosedNodes30= ModuleClosedNodes30=2,3,4,5,6,7,8,9,11,12,14
ModuleClosedNodes31= ModuleClosedNodes31=
ModuleClosedNodes32=15,16,17,18,19 ModuleClosedNodes32=16,17,18,19
ModuleClosedNodes4= ModuleClosedNodes4=5,6,7,8,9,10,11,12,13
ModuleClosedNodes5= ModuleClosedNodes5=2
ModuleClosedNodes6= ModuleClosedNodes6=
ModuleClosedNodes7= ModuleClosedNodes7=
ModuleClosedNodes8= ModuleClosedNodes8=
ModuleClosedNodes9= ModuleClosedNodes9=
NavigationStack=Starter,Service_Create,46,0,Starter,Process_Globals,34,0,C_Principal,B4XPage_Created,253,0,C_BItacora,cargamosPanel,167,0,C_Principal,B4XPage_Appear,540,0,Tracker,flp_LocationChanged,195,0,Tracker,guardaYEnviaUbicacion,302,0,C_Cliente,GPS_LocationChanged,522,0,C_Cliente,B4XPage_Appear,507,0,Starter,JobDone,146,0 NavigationStack=C_BItacora,JobDone,247,6,C_Principal,B4XPage_Created,298,0,C_Principal,getTableColumnList,367,0,C_Principal,JobDone,1250,0,C_Principal,B4XPage_Appear,560,3,C_BItacora,mandaPendientes,289,6,C_BItacora,B4XPage_Created,32,0,C_BItacora,Class_Globals,15,5,C_NoVenta,GUARDA_Click,116,0,C_BItacora,mandaBitacora,78,6,B4XMainPage,B4XPage_Created,209,0
SelectedBuild=0 SelectedBuild=0
VisibleModules=2,14,30,5,6,15,32,4,31,18,27 VisibleModules=2,14,30,12,5,6,32,31,15,11,4

View File

@@ -228,6 +228,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
Subs.agregaColumna("CAT_GUNAPROD2", "CAT_DP_PRECIO4", "TEXT") Subs.agregaColumna("CAT_GUNAPROD2", "CAT_DP_PRECIO4", "TEXT")
Subs.agregaColumna("CAT_GUNAPROD", "CAT_DP_PRECIO4", "TEXT") Subs.agregaColumna("CAT_GUNAPROD", "CAT_DP_PRECIO4", "TEXT")
Subs.agregaColumna("CLIENTES_NUEVOS", "CN_SOLICITA", "TEXT") Subs.agregaColumna("CLIENTES_NUEVOS", "CN_SOLICITA", "TEXT")
Subs.agregaColumna("CLIENTES_NUEVOS", "CN_COMENTARIO", "TEXT")
c=skmt.ExecQuery("select COUNT(*) AS CUANTOS from HIST_STAY_OUT ") c=skmt.ExecQuery("select COUNT(*) AS CUANTOS from HIST_STAY_OUT ")
C.Position = 0 C.Position = 0
If c.GetString("CUANTOS") = 0 Then If c.GetString("CUANTOS") = 0 Then

View File

@@ -16,15 +16,19 @@ Sub Class_Globals
Dim motivoNoVenta, motivoNoVisita As String Dim motivoNoVenta, motivoNoVisita As String
Dim banderaGeoCerca As String Dim banderaGeoCerca As String
Private reqManager As DBRequestManager Private reqManager As DBRequestManager
Private mpCorriendo As Boolean = False
Dim enviandoInfo As Boolean = False
End Sub End Sub
'You can add more parameters here. 'You can add more parameters here.
Public Sub Initialize (vCallback As Object, vEventName As String, vRoot As B4XView, db1 As SQL, DBReq As DBRequestManager) As Object Public Sub Initialize (vCallback As Object, vEventName As String, vRoot As B4XView, db1 As SQL, DBReqServer As String) As Object
db = db1 db = db1
Root2 = vRoot Root2 = vRoot
reqManager = DBReq ' reqManager = DBReq
reqManager.Initialize(Me, DBReqServer)
db.ExecNonQuery("CREATE TABLE IF NOT EXISTS BITACORAGPS(fechab TEXT, usuariob TEXT, almacenb TEXT, rutab TEXT, eventob TEXT, clienteb TEXT, iniciob TEXT, finb TEXT, latitudb TEXT, longitudb TEXT, precision TEXT, motivonoventa TEXT, motivonovisita TEXT, BAN_GEOB TEXT)") db.ExecNonQuery("CREATE TABLE IF NOT EXISTS BITACORAGPS(fechab TEXT, usuariob TEXT, almacenb TEXT, rutab TEXT, eventob TEXT, clienteb TEXT, iniciob TEXT, finb TEXT, latitudb TEXT, longitudb TEXT, precision TEXT, motivonoventa TEXT, motivonovisita TEXT, BAN_GEOB TEXT)")
agregaColumna("BITACORAGPS", "BAN_GEOB", "TEXT") agregaColumna("BITACORAGPS", "BAN_GEOB", "TEXT")
agregaColumna("BITACORAGPS", "enviado", "TEXT")
contadorIniciarVenta = 0 contadorIniciarVenta = 0
cargamosPanel cargamosPanel
Return Me Return Me
@@ -41,7 +45,7 @@ End Sub
'En geocerca si mete la contraseña poner 0 en precision gps y si esta dentro de los 50 mts poner 1 y 2 para eventos que no lo ocupen 'En geocerca si mete la contraseña poner 0 en precision gps y si esta dentro de los 50 mts poner 1 y 2 para eventos que no lo ocupen
'Mandar fecha de sync(sysdate) 'Mandar fecha de sync(sysdate)
Sub mandaBitacora(fechab As String, usuariob As String, almacenb As String, rutab As String, eventob As String, clienteb As String, iniciob As String, finb As String, latitudb As String, longitudb As String, precisionb As String, motivoNoVentab As String, motivoNoVisitab As String, BAN_GEOB As String) Sub mandaBitacora(fechab As String, usuariob As String, almacenb As String, rutab As String, eventob As String, clienteb As String, iniciob As String, finb As String, latitudb As String, longitudb As String, precisionb As String, motivoNoVentab As String, motivoNoVisitab As String, BAN_GEOB As String)
Log(motivoNoVisitab) Log("=== " & motivoNoVisitab & "|" & eventob)
' Log("bitacora") ' Log("bitacora")
Private cmd As DBCommand Private cmd As DBCommand
cmd.Initialize cmd.Initialize
@@ -57,28 +61,34 @@ Sub mandaBitacora(fechab As String, usuariob As String, almacenb As String, ruta
If eventob = "Fin Día" Then nombreCliente = "FIN DIA" If eventob = "Fin Día" Then nombreCliente = "FIN DIA"
If eventob = "Carga día" Then nombreCliente = "CARGA DIA" If eventob = "Carga día" Then nombreCliente = "CARGA DIA"
If eventob = "Carga día suplencia" Then nombreCliente = traeRutasSup If eventob = "Carga día suplencia" Then nombreCliente = traeRutasSup
If eventob <> "Termina Venta" And eventob <> "No Venta" Then If eventob <> "Termina Venta" Then
Log(56)
db.ExecNonQuery($"INSERT INTO BITACORAGPS (fechab, usuariob , almacenb , rutab , eventob , clienteb , iniciob , finb , latitudb, longitudb , precision , motivonoventa , motivonovisita, BAN_GEOB) VALUES ('${fechab}' ,'${usuariob}' , '${almacenb}' , '${rutab}' , '${eventob}' , '${clienteb}' , '${iniciob}' , '${finb}' , '${latitudb}' , '${longitudb}' , '${precisionb}' , '${motivoNoVentab}' , '${motivoNoVisitab}', '${BAN_GEOB}')"$) db.ExecNonQuery($"INSERT INTO BITACORAGPS (fechab, usuariob , almacenb , rutab , eventob , clienteb , iniciob , finb , latitudb, longitudb , precision , motivonoventa , motivonovisita, BAN_GEOB) VALUES ('${fechab}' ,'${usuariob}' , '${almacenb}' , '${rutab}' , '${eventob}' , '${clienteb}' , '${iniciob}' , '${finb}' , '${latitudb}' , '${longitudb}' , '${precisionb}' , '${motivoNoVentab}' , '${motivoNoVisitab}', '${BAN_GEOB}')"$)
Else Else
Log(57)
Private e As Cursor = db.ExecQuery($"select fechab from BITACORAGPS where usuariob = '${usuariob}' and almacenb = '${almacenb}' and rutab = '${rutab}' and clienteb = '${clienteb}' and eventob = 'Inicia Venta' order by fechab desc"$) Private e As Cursor = db.ExecQuery($"select fechab from BITACORAGPS where usuariob = '${usuariob}' and almacenb = '${almacenb}' and rutab = '${rutab}' and clienteb = '${clienteb}' and eventob = 'Inicia Venta' order by fechab desc"$)
If e.RowCount > 0 Then If e.RowCount > 0 Then
e.Position = 0 e.Position = 0
Log("ACTUALIZA BITACORA") Log("ACTUALIZA BITACORA")
If eventob = "Termina Venta" Then If eventob = "Termina Venta" Then
db.ExecNonQuery($"update BITACORAGPS set finb = '${finb}' where rutab = '${rutab}' and almacenb = '${almacenb}' and usuariob = '${usuariob}' and clienteb = '${clienteb}' and fechab = '${e.GetString("fechab")}' "$) db.ExecNonQuery($"update BITACORAGPS set finb = '${finb}', latitudb = '${latitudb}', longitudb = '${longitudb}' where rutab = '${rutab}' and almacenb = '${almacenb}' and usuariob = '${usuariob}' and clienteb = '${clienteb}' and fechab = '${e.GetString("fechab")}' "$)
cmd.Parameters = Array As Object(finb, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab")) cmd.Parameters = Array As Object(finb, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab"))
else if eventob = "No Venta" Then else if eventob = "No Venta" Then
db.ExecNonQuery($"update BITACORAGPS set finb = '${finb}', motivonoventa = '${motivoNoVentab}', motivonovisita = '${motivoNoVisitab}' where rutab = '${rutab}' and almacenb = '${almacenb}' and usuariob = '${usuariob}' and clienteb = '${clienteb}' and fechab = '${e.GetString("fechab")}' "$) Log("-- NV")
db.ExecNonQuery($"update BITACORAGPS set finb = '${finb}', iniciob = '${finb}', motivonoventa = '${motivoNoVentab}', motivonovisita = '${motivoNoVisitab}' where rutab = '${rutab}' and almacenb = '${almacenb}' and usuariob = '${usuariob}' and clienteb = '${clienteb}' and fechab = '${e.GetString("fechab")}' "$)
Log($"update BITACORAGPS set finb = '${finb}', iniciob = '${finb}', motivonoventa = '${motivoNoVentab}', motivonovisita = '${motivoNoVisitab}' where rutab = '${rutab}' and almacenb = '${almacenb}' and usuariob = '${usuariob}' and clienteb = '${clienteb}' and fechab = '${e.GetString("fechab")}' "$)
cmd.Parameters = Array As Object(finb, motivoNoVentab, motivoNoVisitab, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab")) cmd.Parameters = Array As Object(finb, motivoNoVentab, motivoNoVisitab, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab"))
End If End If
End If End If
End If End If
If eventob <> "Inicia Venta" Then If eventob <> "Inicia Venta" Then
Log(58)
Private c As Cursor = db.ExecQuery($"select * from BITACORAGPS where usuariob = '${usuariob}' and almacenb = '${almacenb}' and rutab = '${rutab}' and clienteb = '${clienteb}' order by fechab desc"$) Private c As Cursor = db.ExecQuery($"select * from BITACORAGPS where usuariob = '${usuariob}' and almacenb = '${almacenb}' and rutab = '${rutab}' and clienteb = '${clienteb}' order by fechab desc"$)
If c.RowCount > 0 Then If c.RowCount > 0 Then
c.Position = 0 c.Position = 0
cmd.Parameters = Array As Object(c.GetString("almacenb"), c.GetString("usuariob"), c.GetString("rutab"), c.GetString("eventob"), c.GetString("clienteb"), nombreCliente, c.GetString("iniciob"), c.GetString("finb"), c.GetString("latitudb"), c.GetString("longitudb"), c.GetString("precision"), c.GetString("motivonoventa"), c.GetString("motivonovisita"), c.GetString("fechab"), c.GetString("BAN_GEOB")) cmd.Parameters = Array As Object(c.GetString("almacenb"), c.GetString("usuariob"), c.GetString("rutab"), c.GetString("eventob"), c.GetString("clienteb"), nombreCliente, c.GetString("iniciob"), c.GetString("finb"), c.GetString("latitudb"), c.GetString("longitudb"), c.GetString("precision"), c.GetString("motivonoventa"), c.GetString("motivonovisita"), c.GetString("fechab"), c.GetString("BAN_GEOB"))
reqManager.ExecuteCommand(cmd , "mandaBitacora") reqManager.ExecuteCommand(cmd , $"mandaBitacora_${clienteb}_${eventob}"$)
enviandoInfo = True
End If End If
End If End If
' Log("Mandamos bitacora") ' Log("Mandamos bitacora")
@@ -129,6 +139,8 @@ Sub inicioFin
End Sub End Sub
Private Sub b_Inicio_Fin_venta2_Click Private Sub b_Inicio_Fin_venta2_Click
Log("INICIO/FIN CLICKED")
Log(B4XPages.MainPage.lat_gps & "," & B4XPages.MainPage.lon_gps)
' b_Inicio_Fin_venta.Visible = False ' b_Inicio_Fin_venta.Visible = False
' Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRuta, "Pre-venta", "0", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, "", "") ' Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRuta, "Pre-venta", "0", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, "", "")
contadorIniciarVenta = 0 contadorIniciarVenta = 0
@@ -233,5 +245,58 @@ Sub JobDone(Job As HttpJob)
LogColor("Error: " & Job.ErrorMessage, Colors.red) LogColor("Error: " & Job.ErrorMessage, Colors.red)
Else 'If Job Success then ... Else 'If Job Success then ...
' Log("JOBDONE SUCCESS") ' Log("JOBDONE SUCCESS")
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag.As(String).StartsWith("mandaBitacora") Then
For Each records() As Object In RESULT.Rows
Private temp() As String = Regex.Split("_", RESULT.Tag)
If temp.Length > 2 Then
Private cliente As String = temp(1)
Private evento As String = temp(2)
Log(cliente)
Log(evento)
db.ExecNonQuery($"update BITACORAGPS set enviado = 1 where clienteb = '${cliente}' and eventob = '${evento}'"$)
Log("==========================REGISTROS="&RESULT.Rows.size)
For Each k As String In RESULT.Columns.Keys
Log(RESULT.Tag & ": " & k & ": " & records(RESULT.Columns.Get(k)))
Next
End If
Next
enviandoInfo = False
End If
End If
' mandaBitacora
End If
End Sub
Sub mandaPendientes
LogColor("==> Entramos a mandaPendientes", Colors.red)
If Not(enviandoInfo) Then
Log("mpCorriendo=" & mpCorriendo)
mpCorriendo = True
Private ep As Cursor = db.ExecQuery("select * from BITACORAGPS where enviado is null")
Log("PENDIENTES: " & ep.RowCount)
Dim cmd As DBCommand
If ep.RowCount > 0 Then
For i = 0 To ep.RowCount - 1
ep.Position = i
Log($"Mandamos ${ep.GetString("clienteb")}, ${ep.GetString("eventob")}"$)
' mandaBitacora(ep.GetString("fechab"), ep.GetString("usuariob"), ep.GetString("almacenb"), ep.GetString("rutab"), ep.GetString("eventob"), ep.GetString("clienteb"), ep.GetString("iniciob"), ep.GetString("finb"), ep.GetString("latitudb"), ep.GetString("longitudb"), ep.GetString("precision"), ep.GetString("motivonoventa"), ep.GetString("motivonovisita"), ep.GetString("BAN_GEOB"))
Private nombreCliente As String = traeNombreCliente(ep.GetString("clienteb"))
Private eventob As String = ep.GetString("eventob")
If eventob = "Llega a almacen" Then
nombreCliente = "BOLETA"
End If
If eventob = "Salida almacen" Then nombreCliente = "CHECKLIST"
If eventob = "Fin Día" Then nombreCliente = "FIN DIA"
If eventob = "Carga día" Then nombreCliente = "CARGA DIA"
If eventob = "Carga día suplencia" Then nombreCliente = traeRutasSup
cmd.Initialize
cmd.Name = "mandaBitacora_ADM3"
cmd.Parameters = Array As Object(ep.GetString("almacenb"), ep.GetString("usuariob"), ep.GetString("rutab"), ep.GetString("eventob"), ep.GetString("clienteb"), nombreCliente, ep.GetString("iniciob"), ep.GetString("finb"), ep.GetString("latitudb"), ep.GetString("longitudb"), ep.GetString("precision"), ep.GetString("motivonoventa"), ep.GetString("motivonovisita"), ep.GetString("fechab"), ep.GetString("BAN_GEOB"))
reqManager.ExecuteCommand(cmd , $"mandaBitacora_${ep.GetString("clienteb")}_${ep.GetString("eventob")}"$)
Next
mpCorriendo = False
End If
End If End If
End Sub End Sub

View File

@@ -217,6 +217,8 @@ Private Sub B4XPage_Created (Root1 As B4XView)
File.Copy(File.DirAssets,"mariana1.jpg",xui.DefaultFolder,"mariana1.jpg") File.Copy(File.DirAssets,"mariana1.jpg",xui.DefaultFolder,"mariana1.jpg")
Provider.Initialize Provider.Initialize
s.Position=0 s.Position=0
p_tipopago.Top = 0 : p_tipopago.Left = 0
p_camara.Top = 0 : p_camara.Left = 0
If c.RowCount>0 Then If c.RowCount>0 Then
c.Position=0 c.Position=0
la_cuenta.Text = c.GetString("CAT_CL_CODIGO") la_cuenta.Text = c.GetString("CAT_CL_CODIGO")
@@ -238,7 +240,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
End If End If
c.Close c.Close
s.Close s.Close
bitacora.Initialize("bitacora", "bitacora", Root, Starter.skmt, reqManager) bitacora.Initialize("bitacora", "bitacora", Root, Starter.skmt, Starter.DBReqServer)
btAdmin.Initialize("BlueTeeth") btAdmin.Initialize("BlueTeeth")
cmp20.Initialize("Printer") cmp20.Initialize("Printer")
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA) Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
@@ -297,7 +299,6 @@ Sub B4XPage_Appear
Else Else
b_cxc.Visible = True b_cxc.Visible = True
End If End If
If la_cuenta.Text = "0" Or la_cuenta.Text = "1" Then If la_cuenta.Text = "0" Or la_cuenta.Text = "1" Then
p_cbFactura.Visible = False p_cbFactura.Visible = False
l_factura.Visible = False l_factura.Visible = False
@@ -408,8 +409,8 @@ Sub B4XPage_Appear
CallSubDelayed(Tracker, "Track") CallSubDelayed(Tracker, "Track")
CallSubDelayed(Tracker, "StartFLPSmall") CallSubDelayed(Tracker, "StartFLPSmall")
If Tracker.FLP.IsInitialized And Tracker.FLP.GetLastKnownLocation.IsInitialized Then 'Si tenemos "UltimaUbicaccionConocida" la usamos. If Tracker.FLP.IsInitialized And Tracker.FLP.GetLastKnownLocation.IsInitialized Then 'Si tenemos "UltimaUbicaccionConocida" la usamos.
B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude ' B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude ' B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude
' Log($"Tenemos UUC: ${Tracker.FLP.GetLastKnownLocation.Latitude},${Tracker.FLP.GetLastKnownLocation.Longitude}"$) ' Log($"Tenemos UUC: ${Tracker.FLP.GetLastKnownLocation.Latitude},${Tracker.FLP.GetLastKnownLocation.Longitude}"$)
GPS_LocationChanged(Tracker.FLP.GetLastKnownLocation) GPS_LocationChanged(Tracker.FLP.GetLastKnownLocation)
End If End If
@@ -435,9 +436,6 @@ Sub B4XPage_Appear
' gest.Visible = False ' gest.Visible = False
' b_ventaabordo.Visible = False ' b_ventaabordo.Visible = False
c = skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("MACIMP")) c = skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("MACIMP"))
If c.RowCount > 0 Then If c.RowCount > 0 Then
c.Position = 0 c.Position = 0
@@ -453,11 +451,8 @@ Sub B4XPage_Appear
Else Else
Printer1.DisConnect Printer1.DisConnect
Printer1.Connect Printer1.Connect
Log("2")
End If End If
pre_act = Subs.traeTotalClientepreventaparacredito pre_act = Subs.traeTotalClientepreventaparacredito
'SELECT CAT_CL_BCREDITO, CAT_CL_CODIGO, Ifnull(SALDO_PENDIENTE,0) FROM KMT_INFO INNER JOIN ABONOSP ON CAT_CL_CODIGO = CLIENTE WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA) 'SELECT CAT_CL_BCREDITO, CAT_CL_CODIGO, Ifnull(SALDO_PENDIENTE,0) FROM KMT_INFO INNER JOIN ABONOSP ON CAT_CL_CODIGO = CLIENTE WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)
@@ -514,11 +509,14 @@ End Sub
Sub GPS_LocationChanged (Location1 As Location) Sub GPS_LocationChanged (Location1 As Location)
' LogColor($"Entrando a Cliente.GPS_LocationChanged"$, Colors.red) ' LogColor($"Entrando a Cliente.GPS_LocationChanged"$, Colors.red)
If Tracker.FLP.GetLastKnownLocation.IsInitialized And Tracker.FLP.GetLastKnownLocation.Latitude <> 0 Then ' If Tracker.FLP.GetLastKnownLocation.IsInitialized And Tracker.FLP.GetLastKnownLocation.Latitude <> 0 Then
B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude ' B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude ' B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude
' Log("Coords set to: " & B4XPages.MainPage.lat_gps & " and " & B4XPages.MainPage.lon_gps) '' Log("Coords set to: " & B4XPages.MainPage.lat_gps & " and " & B4XPages.MainPage.lon_gps)
End If ' End If
B4XPages.MainPage.lat_gps = Location1.Latitude
B4XPages.MainPage.lon_gps = Location1.Longitude
' ToastMessageShow(B4XPages.MainPage.lat_gps,False) ' ToastMessageShow(B4XPages.MainPage.lat_gps,False)
@@ -529,6 +527,7 @@ Sub GPS_LocationChanged (Location1 As Location)
If BT_QR.IsInitialized Then BT_QR.Enabled = True If BT_QR.IsInitialized Then BT_QR.Enabled = True
If LA_GPS.IsInitialized Then LA_GPS.TextColor = Colors.Blue If LA_GPS.IsInitialized Then LA_GPS.TextColor = Colors.Blue
Log("CON UBICACION: " & Location1.Latitude & "," & Location1.Longitude)
If LA_GPS.IsInitialized Then LA_GPS.Text = "CON UBICACION GPS" If LA_GPS.IsInitialized Then LA_GPS.Text = "CON UBICACION GPS"
' B_GPS.Enabled = True ' B_GPS.Enabled = True
'now we need the distance between our location and the target location 'now we need the distance between our location and the target location
@@ -538,7 +537,7 @@ Sub GPS_LocationChanged (Location1 As Location)
If LA_GEO.IsInitialized Then LA_GEO.TextColor = Colors.Blue If LA_GEO.IsInitialized Then LA_GEO.TextColor = Colors.Blue
Tels.Visible = True Tels.Visible = True
gest.Visible = True gest.Visible = True
b_ventaabordo.Visible = True ' b_ventaabordo.Visible = True
bitacora.banderaGeoCerca = "1" bitacora.banderaGeoCerca = "1"
Else Else
Tels.Visible = False Tels.Visible = False
@@ -558,15 +557,18 @@ Sub ListView1_ItemLongClick (Position As Int, Value As Object)
End Sub End Sub
Sub gest_Click Sub gest_Click
Private hayFotoinicial As Boolean = False
c = Starter.skmt.ExecQuery("SELECT * FROM FOTOINICIAL") c = Starter.skmt.ExecQuery("SELECT CAT_VA_VALOR FROM CAT_VARIABLES where CAT_VA_DESCRIPCION = 'FOTO_INICIAL'")
If c.RowCount = 0 Then If c.RowCount > 0 Then
c.Position = 0
If c.GetString("CAT_VA_VALOR") = "ENVIADA" Then hayFotoinicial = True
End If
If hayFotoinicial = False Then
p_camara.Visible = True p_camara.Visible = True
InitializeCamera InitializeCamera
Subs.panelVisible(p_camara, 0, 0) Subs.panelVisible(p_camara, 0, 0)
b_foto_inci.Text = "Foto tienda" b_foto_inci.Text = "Foto tienda"
Else Else
If la_cuenta.Text = "0" Then If la_cuenta.Text = "0" Then
B4XPages.MainPage.tipo_venta = "ABORDO" B4XPages.MainPage.tipo_venta = "ABORDO"
Else If la_cuenta.Text = "1" Then Else If la_cuenta.Text = "1" Then
@@ -606,6 +608,8 @@ Sub gest_Click
' If B4XPages.MainPage.productos.prodsMap.IsInitialized And B4XPages.MainPage.productos.prodsMap.Size > 0 Then Subs.borraPedidoClienteActual ' If B4XPages.MainPage.productos.prodsMap.IsInitialized And B4XPages.MainPage.productos.prodsMap.Size > 0 Then Subs.borraPedidoClienteActual
B4XPages.ShowPage("productos") B4XPages.ShowPage("productos")
End If End If
End Sub End Sub
Sub Tels_Click Sub Tels_Click
@@ -891,7 +895,7 @@ Sub GUADAVENTA2
b_cxc.Enabled = True b_cxc.Enabled = True
Tar.Enabled = True Tar.Enabled = True
Tels.Enabled = True Tels.Enabled = True
b_ventaabordo.Enabled = True ' b_ventaabordo.Enabled = True
HIST.Enabled = True HIST.Enabled = True
banderaimp = 0 banderaimp = 0
' B4XPages.ShowPage("Principal") ' B4XPages.ShowPage("Principal")
@@ -1106,18 +1110,16 @@ Sub imprime_preventa
' Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp) ' Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp)
' myimage = Printer1.DitherImage2D(myimage, 128) ' myimage = Printer1.DitherImage2D(myimage, 128)
'
' myimage= Printer1.PackImage(myimage) ' myimage= Printer1.PackImage(myimage)
' Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening ' Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening
' Printer1.WriteString(Printer1.REVERSE) ' Printer1.WriteString(Printer1.REVERSE)
'
' Printer1.PrintImage(myimage) ' Printer1.PrintImage(myimage)
' Printer1.WriteString(Printer1.UNREVERSE) ' Printer1.WriteString(Printer1.UNREVERSE)
' Printer1.Justify = 1 ' Printer1.Justify = 1
'printer.Initialize(cmp20.OutputStream) 'printer.Initialize(cmp20.OutputStream)
' Printer1.WriteString("DISTRIBUIDORA ROCHA TULA PACHUCA" & CRLF) ' Printer1.WriteString("DISTRIBUIDORA ROCHA TULA PACHUCA" & CRLF)
Printer1.WriteString("ADM Distribuciones" & CRLF) Printer1.WriteString("ADM" & CRLF)
' Printer1.WriteString(sucursal & CRLF) ' Printer1.WriteString(sucursal & CRLF)
Printer1.WriteString(sDate & CRLF) Printer1.WriteString(sDate & CRLF)
Printer1.WriteString(sTime & CRLF) Printer1.WriteString(sTime & CRLF)
@@ -1145,9 +1147,7 @@ Sub imprime_preventa
S.Position=i S.Position=i
If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then
Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF)
Else Else
Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF)
LogColor(s.GetLong("L_CANT"),Colors.Magenta) LogColor(s.GetLong("L_CANT"),Colors.Magenta)
LogColor(s.GetLong("L_COSTOU"),Colors.Magenta) LogColor(s.GetLong("L_COSTOU"),Colors.Magenta)
@@ -1175,7 +1175,7 @@ Sub imprime_preventa
' Else ' Else
' TAMANO = s.GetLong("L_COSTOU") + TAMANO ' TAMANO = s.GetLong("L_COSTOU") + TAMANO
' End If ' End If
'
' If s.GetLong("L_COSTO_TOT") = 1 Then ' If s.GetLong("L_COSTO_TOT") = 1 Then
' TAMANO = s.GetLong("L_COSTO_TOT") + TAMANO + 5 ' TAMANO = s.GetLong("L_COSTO_TOT") + TAMANO + 5
' Else If s.GetLong("L_COSTO_TOT") = 2 Then ' Else If s.GetLong("L_COSTO_TOT") = 2 Then
@@ -1210,9 +1210,9 @@ Sub imprime_preventa
Printer1.Justify = 0 Printer1.Justify = 0
Printer1.WriteString(s.GETSTRING("PE_CANT")& BLANCO) Printer1.WriteString(s.GETSTRING("PE_CANT")& BLANCO)
Printer1.Justify = 1 Printer1.Justify = 1
Printer1.WriteString(s.GETSTRING("PE_COSTOU")& BLANCO) Printer1.WriteString(NumberFormat2(s.GETSTRING("PE_COSTOU"),1,2,2,True) & BLANCO)
Printer1.Justify = 2 Printer1.Justify = 2
Printer1.WriteString(s.GETSTRING("PE_COSTO_TOT") & CRLF ) Printer1.WriteString(NumberFormat2(s.GETSTRING("PE_COSTO_TOT"),1,2,2,True) & CRLF )
TAMANO = 0 TAMANO = 0
ESPACIO = 22 ESPACIO = 22
BLANCO = " " BLANCO = " "
@@ -1232,7 +1232,6 @@ Sub imprime_preventa
S.Position=i S.Position=i
If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then
Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF)
Else Else
TAMANO = 0 TAMANO = 0
Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF)
@@ -1270,9 +1269,9 @@ Sub imprime_preventa
Printer1.Justify = 0 Printer1.Justify = 0
Printer1.WriteString( s.GETSTRING("PE_CANT")& BLANCO) Printer1.WriteString( s.GETSTRING("PE_CANT")& BLANCO)
Printer1.Justify = 1 Printer1.Justify = 1
Printer1.WriteString(s.GETSTRING("PE_COSTOU")& BLANCO) Printer1.WriteString(NumberFormat2(s.GETSTRING("PE_COSTOU"),1,2,2,True) & BLANCO)
Printer1.Justify = 2 Printer1.Justify = 2
Printer1.WriteString(s.GETSTRING("PE_COSTO_TOT") & CRLF ) Printer1.WriteString(NumberFormat2(s.GETSTRING("PE_COSTO_TOT"),1,2,2,True) & CRLF )
TAMANO = 0 TAMANO = 0
ESPACIO = 22 ESPACIO = 22
BLANCO = " " BLANCO = " "
@@ -1375,7 +1374,7 @@ Private Sub Label20_LongClick
PDF.outImage(xui.DefaultFolder,"mariana1.jpg",1,pagina-55,70,0) PDF.outImage(xui.DefaultFolder,"mariana1.jpg",1,pagina-55,70,0)
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,"ADM Distribuciones") PDF.outtext(1,pagina-multiplicador*6,"ADM")
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,sDate& " " & sTime) PDF.outtext(1,pagina-multiplicador*6,sDate& " " & sTime)
@@ -1386,8 +1385,8 @@ Private Sub Label20_LongClick
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,"Tienda: " & La_nombre.Text) PDF.outtext(1,pagina-multiplicador*6,"Tienda: " & La_nombre.Text)
multiplicador = multiplicador +1 ' multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,"ID.Cliente: " & la_cuenta.Text) ' PDF.outtext(1,pagina-multiplicador*6,"ID.Cliente: " & la_cuenta.Text)
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,"Calle: " & la_Calle.Text) PDF.outtext(1,pagina-multiplicador*6,"Calle: " & la_Calle.Text)
@@ -1426,17 +1425,17 @@ Private Sub Label20_LongClick
LogColor(s.GetLong("L_COSTOU"),Colors.Magenta) LogColor(s.GetLong("L_COSTOU"),Colors.Magenta)
LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta) LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta)
TAMANO = s.GetLong("L_CANT") + s.GetLong("L_COSTOU") + s.GetLong("L_COSTO_TOT") TAMANO = s.GetLong("L_CANT") + NumberFormat2(s.GetLong("L_COSTOU"), 1,2,2,True) + NumberFormat2(s.GetLong("L_COSTO_TOT"), 1,2,2,True)
ESPACIO = 92 ESPACIO = 92
BLANCO = " " BLANCO = " "
ESPACIO = ESPACIO - TAMANO ESPACIO = ESPACIO - (TAMANO + 6)
ESPACIO = ESPACIO / 2 ESPACIO = ESPACIO / 2
For E = 0 To ESPACIO - 1 For E = 0 To ESPACIO - 1
BLANCO = " " & BLANCO BLANCO = " " & BLANCO
Next Next
PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack) PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack)
multiplicador = multiplicador + 1 multiplicador = multiplicador + 1
PDF.outtext(1,pagina-multiplicador*6, s.GETSTRING("PE_CANT") & BLANCO & s.GETSTRING("PE_COSTOU") & BLANCO & s.GETSTRING("PE_COSTO_TOT")) PDF.outtext(1,pagina-multiplicador*6, s.GETSTRING("PE_CANT") & BLANCO & NumberFormat2(s.GETSTRING("PE_COSTOU"),1,2,2,True) & BLANCO & NumberFormat2(s.GETSTRING("PE_COSTO_TOT"),1,2,2,True))
End If End If
Next Next
End If End If
@@ -1467,7 +1466,7 @@ Private Sub Label20_LongClick
LogColor(s.GetLong("L_COSTOU"),Colors.Magenta) LogColor(s.GetLong("L_COSTOU"),Colors.Magenta)
LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta) LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta)
TAMANO = s.GetLong("L_CANT") + s.GetLong("L_COSTOU") + s.GetLong("L_COSTO_TOT") TAMANO = s.GetLong("L_CANT") + NumberFormat2(s.GetLong("L_COSTOU"), 1,2,2,True) + NumberFormat2(s.GetLong("L_COSTO_TOT"), 1,2,2,True)
ESPACIO = 92 ESPACIO = 92
BLANCO = " " BLANCO = " "
ESPACIO = ESPACIO - TAMANO ESPACIO = ESPACIO - TAMANO
@@ -1477,8 +1476,7 @@ Private Sub Label20_LongClick
Next Next
PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack) PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack)
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6, s.GETSTRING("PE_CANT") & BLANCO & s.GETSTRING("PE_COSTOU") & BLANCO & s.GETSTRING("PE_COSTO_TOT")) PDF.outtext(1,pagina-multiplicador*6, s.GETSTRING("PE_CANT") & BLANCO & NumberFormat2(s.GETSTRING("PE_COSTOU"), 1,2,2,True) & BLANCO & NumberFormat2(s.GETSTRING("PE_COSTO_TOT"), 1,2,2,True))
End If End If
Next Next
End If End If
@@ -1528,8 +1526,6 @@ Private Sub Label20_LongClick
End Sub End Sub
Private Sub PDFGENERAR Private Sub PDFGENERAR
ESPACIO = 0 ESPACIO = 0
DateTime.DateFormat = "MM/dd/yyyy" DateTime.DateFormat = "MM/dd/yyyy"
DateTime.TimeFormat = "HH:mm:ss" DateTime.TimeFormat = "HH:mm:ss"
@@ -1559,7 +1555,7 @@ Private Sub PDFGENERAR
PDF.outImage(xui.DefaultFolder,"mariana1.jpg",1,pagina-55,70,0) PDF.outImage(xui.DefaultFolder,"mariana1.jpg",1,pagina-55,70,0)
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,"ADM Distribuciones") PDF.outtext(1,pagina-multiplicador*6,"ADM")
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,sDate& " " & sTime) PDF.outtext(1,pagina-multiplicador*6,sDate& " " & sTime)
@@ -1570,8 +1566,8 @@ Private Sub PDFGENERAR
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,"Tienda: " & La_nombre.Text) PDF.outtext(1,pagina-multiplicador*6,"Tienda: " & La_nombre.Text)
multiplicador = multiplicador +1 ' multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,"ID.Cliente: " & la_cuenta.Text) ' PDF.outtext(1,pagina-multiplicador*6,"ID.Cliente: " & la_cuenta.Text)
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,"Calle: " & la_Calle.Text) PDF.outtext(1,pagina-multiplicador*6,"Calle: " & la_Calle.Text)
@@ -1612,23 +1608,20 @@ Private Sub PDFGENERAR
LogColor(s.GetLong("L_COSTOU"),Colors.Magenta) LogColor(s.GetLong("L_COSTOU"),Colors.Magenta)
LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta) LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta)
TAMANO = s.GetLong("L_CANT") + s.GetLong("L_COSTOU") + s.GetLong("L_COSTO_TOT") TAMANO = s.GetLong("L_CANT") + NumberFormat2(s.GetLong("L_COSTOU"),1,2,2,True) + NumberFormat2(s.GetLong("L_COSTO_TOT"),1,2,2,True)
ESPACIO = 92 ESPACIO = 92
BLANCO = " " BLANCO = " "
ESPACIO = ESPACIO - TAMANO ESPACIO = ESPACIO - (TAMANO + 6)
ESPACIO = ESPACIO / 2 ESPACIO = ESPACIO / 2
For E=0 To ESPACIO -1 For E=0 To ESPACIO -1
BLANCO = " " & BLANCO BLANCO = " " & BLANCO
Next Next
PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack) PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack)
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6, s.GETSTRING("PE_CANT") & BLANCO & s.GETSTRING("PE_COSTOU") & BLANCO & s.GETSTRING("PE_COSTO_TOT")) PDF.outtext(1,pagina-multiplicador*6, s.GETSTRING("PE_CANT") & BLANCO & NumberFormat2(s.GETSTRING("PE_COSTOU"),1,2,2,True) & BLANCO & NumberFormat2(s.GETSTRING("PE_COSTO_TOT"),1,2,2,True))
' pdf.outtext(1,108-9*6,s.GETSTRING("PE_COSTOU")) ' pdf.outtext(1,108-9*6,s.GETSTRING("PE_COSTOU"))
'
' pdf.outtext(1,108-9*6,s.GETSTRING("PE_COSTO_TOT") ) ' pdf.outtext(1,108-9*6,s.GETSTRING("PE_COSTO_TOT") )
End If End If
Next Next
End If End If
@@ -1658,7 +1651,7 @@ Private Sub PDFGENERAR
LogColor(s.GetLong("L_COSTOU"),Colors.Magenta) LogColor(s.GetLong("L_COSTOU"),Colors.Magenta)
LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta) LogColor(s.GetLong("L_COSTO_TOT"),Colors.Magenta)
TAMANO = s.GetLong("L_CANT") + s.GetLong("L_COSTOU") + s.GetLong("L_COSTO_TOT") TAMANO = s.GetLong("L_CANT") + NumberFormat2(s.GetLong("L_COSTOU"),1,2,2,True) + NumberFormat2(s.GetLong("L_COSTO_TOT"),1,2,2,True)
ESPACIO = 92 ESPACIO = 92
BLANCO = " " BLANCO = " "
ESPACIO = ESPACIO - TAMANO ESPACIO = ESPACIO - TAMANO
@@ -1668,7 +1661,7 @@ Private Sub PDFGENERAR
Next Next
PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack) PDF.sFont(PDF.fontHelvetica,0,10,PDF.colorBlack)
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6, s.GETSTRING("PE_CANT") & BLANCO & s.GETSTRING("PE_COSTOU") & BLANCO & s.GETSTRING("PE_COSTO_TOT")) PDF.outtext(1,pagina-multiplicador*6, s.GETSTRING("PE_CANT") & BLANCO & NumberFormat2(s.GETSTRING("PE_COSTOU"),1,2,2,True) & BLANCO & NumberFormat2(s.GETSTRING("PE_COSTO_TOT"),1,2,2,True))
End If End If
Next Next
@@ -1685,7 +1678,7 @@ Private Sub PDFGENERAR
s=skmt.ExecQuery2("select SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) AND PE_FOLIO = ?", Array As String("PREVENTA")) s=skmt.ExecQuery2("select SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) AND PE_FOLIO = ?", Array As String("PREVENTA"))
s.Position =0 s.Position =0
multiplicador = multiplicador +1 multiplicador = multiplicador +1
PDF.outtext(1,pagina-multiplicador*6,"Total preventa: $" & s.GetString("TOTAL") ) PDF.outtext(1,pagina-multiplicador*6,"Total preventa: $" & NumberFormat2(s.GetString("TOTAL"),1,2,2,True))
s.Close s.Close
c= skmt.ExecQuery2("select sum(PE_CANT) as PC_NOART from PEDIDO where PE_CLIENTE in (Select CUENTA from cuentaa) AND PE_PROID NOT IN (SELECT CAT_PA_ID FROM PROMOS_COMP ) AND PE_FOLIO = ?", Array As String("PREVENTA")) c= skmt.ExecQuery2("select sum(PE_CANT) as PC_NOART from PEDIDO where PE_CLIENTE in (Select CUENTA from cuentaa) AND PE_PROID NOT IN (SELECT CAT_PA_ID FROM PROMOS_COMP ) AND PE_FOLIO = ?", Array As String("PREVENTA"))
C.Position=0 C.Position=0
@@ -1782,7 +1775,6 @@ private Sub openPDF(afile As String)
#End If #End If
End Sub End Sub
Sub imprime_venta Sub imprime_venta
c=skmt.ExecQuery("select USUARIO from usuarioa") c=skmt.ExecQuery("select USUARIO from usuarioa")
c.Position=0 c.Position=0
@@ -1845,7 +1837,7 @@ Sub imprime_venta
' Printer1.Justify = 1 ' Printer1.Justify = 1
'printer.Initialize(cmp20.OutputStream) 'printer.Initialize(cmp20.OutputStream)
' Printer1.WriteString("DISTRIBUIDORA ROCHA TULA PACHUCA" & CRLF) ' Printer1.WriteString("DISTRIBUIDORA ROCHA TULA PACHUCA" & CRLF)
Printer1.WriteString("ADM Distribuciones" & CRLF) Printer1.WriteString("ADM" & CRLF)
' Printer1.WriteString(sucursal & CRLF) ' Printer1.WriteString(sucursal & CRLF)
Printer1.WriteString(sDate & CRLF) Printer1.WriteString(sDate & CRLF)
Printer1.WriteString(sTime & CRLF) Printer1.WriteString(sTime & CRLF)
@@ -2851,19 +2843,17 @@ Sub Camera1_Ready (Success As Boolean)
camEx.SetContinuousAutoFocus camEx.SetContinuousAutoFocus
camEx.CommitParameters camEx.CommitParameters
camEx.StartPreview camEx.StartPreview
Log(camEx.GetPreviewSize) ' Log(camEx.GetPreviewSize)
Else Else
ToastMessageShow("Cannot open camera.", True) ToastMessageShow("Cannot open camera.", True)
End If End If
End Sub End Sub
Sub Camera1_PictureTaken (Data() As Byte) Sub Camera1_PictureTaken (Data() As Byte)
Private cliente As String = Subs.traeCliente
If b_foto_inci.Text = "Foto tienda" Then If b_foto_inci.Text = "Foto tienda" Then
DateTime.DateFormat="ddMMyyyyHHmmss" DateTime.DateFormat="ddMMyyyyHHmmss"
fototomada = DateTime.Now & "_cliente.jpg" fototomada = cliente & "_" & DateTime.Now & "_tienda.jpg"
Dim filename As String = fototomada Dim filename As String = fototomada
Dim dir As String = File.DirInternal Dim dir As String = File.DirInternal
camEx.SavePictureToFile(Data, dir, filename) camEx.SavePictureToFile(Data, dir, filename)
@@ -2875,7 +2865,7 @@ Sub Camera1_PictureTaken (Data() As Byte)
Dim Dir2 As String Dim Dir2 As String
Try Try
File.MakeDir(Dirp,"/adm") File.MakeDir(Dirp,"/adm")
dir = "/amd" dir = "/adm"
Log("creado en promotoria " & Dirp & dir) Log("creado en promotoria " & Dirp & dir)
Catch Catch
dir = "" dir = ""
@@ -2906,12 +2896,18 @@ Sub Camera1_PictureTaken (Data() As Byte)
img.WriteToStream(out, 100, "PNG") img.WriteToStream(out, 100, "PNG")
out.Close out.Close
Starter.skmt.ExecNonQuery2("INSERT INTO FOTOINICIAL (RUTAA, ALMACEN, LATITUD, LONGITUD, FECHAHORA, FOTO, USUARIO) VALUES (?,?,?,?,?,?,?)",Array As Object(LA_RUTA, ALMACEN, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, sDate & " " & sTime, File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD)) LogColor("Mandamos foto tienda: " & fototomada, Colors.red)
Log(dir)
Log(Dir2)
Log($"${Subs.traeAlmacen}, ${Subs.traeRuta}, ${cliente}, ${dir & Dir2 & "/" & fototomada}"$)
Starter.mandaForma(Subs.traeAlmacen, Subs.traeRuta, cliente, dir & Dir2 & "/" & fototomada)
' Starter.skmt.ExecNonQuery2("INSERT INTO FOTOINICIAL (RUTAA, ALMACEN, LATITUD, LONGITUD, FECHAHORA, FOTO, USUARIO) VALUES (?,?,?,?,?,?,?)",Array As Object(LA_RUTA, ALMACEN, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, sDate & " " & sTime, File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD))
b_foto_inci.Text = "Foto usuario" b_foto_inci.Text = "Foto usuario"
ChangeCamera_Click ChangeCamera_Click
Else If b_foto_inci.Text = "Foto usuario" Then Else If b_foto_inci.Text = "Foto usuario" Then
DateTime.DateFormat="ddMMyyyyHHmmss" DateTime.DateFormat="ddMMyyyyHHmmss"
fototomada = DateTime.Now & "_cliente.jpg" fototomada = cliente & "_" & DateTime.Now & "_cliente.jpg"
Dim filename As String = fototomada Dim filename As String = fototomada
Dim dir As String = File.DirInternal Dim dir As String = File.DirInternal
camEx.SavePictureToFile(Data, dir, filename) camEx.SavePictureToFile(Data, dir, filename)
@@ -2954,8 +2950,11 @@ Sub Camera1_PictureTaken (Data() As Byte)
img.WriteToStream(out, 100, "PNG") img.WriteToStream(out, 100, "PNG")
out.Close out.Close
LogColor("Mandamos foto usuario: " & fototomada, Colors.red)
Log($"${Subs.traeAlmacen}, ${Subs.traeRuta}, ${cliente}, ${dir & Dir2 & "/" & fototomada}"$)
Starter.mandaForma(Subs.traeAlmacen, Subs.traeRuta, cliente, dir & Dir2 & "/" & fototomada)
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE FOTOINICIAL set FOTO2 = ? where USUARIO = ? and RUTAA = ? and ALMACEN = ? ", Array As Object (File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD,LA_RUTA, ALMACEN )) ' B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE FOTOINICIAL set FOTO2 = ? where USUARIO = ? and RUTAA = ? and ALMACEN = ? ", Array As Object (File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD,LA_RUTA, ALMACEN ))
b_foto_inci.Text = "Foto tienda" b_foto_inci.Text = "Foto tienda"
ChangeCamera_Click ChangeCamera_Click
p_camara.Visible = False p_camara.Visible = False
@@ -2969,10 +2968,8 @@ Sub Camera1_PictureTaken (Data() As Byte)
End If End If
B4XPages.ShowPage("productos") B4XPages.ShowPage("productos")
End If End If
End Sub End Sub
Sub ChangeCamera_Click Sub ChangeCamera_Click
camEx.Release camEx.Release
frontCamera = Not(frontCamera) frontCamera = Not(frontCamera)
@@ -3156,7 +3153,7 @@ Private Sub b_acept_tp_Click
b_cxc.Enabled = True b_cxc.Enabled = True
Tar.Enabled = True Tar.Enabled = True
Tels.Enabled = True Tels.Enabled = True
b_ventaabordo.Enabled = True ' b_ventaabordo.Enabled = True
HIST.Enabled = True HIST.Enabled = True
banderaimp = 1 banderaimp = 1

View File

@@ -18,6 +18,10 @@ Sub Class_Globals
Dim r_1 As RadioButton Dim r_1 As RadioButton
Dim r_2 As RadioButton Dim r_2 As RadioButton
Dim r_3 As RadioButton Dim r_3 As RadioButton
Dim r_4 As RadioButton
Dim r_5 As RadioButton
Dim r_6 As RadioButton
Dim r_7 As RadioButton
Dim e_comm As EditText Dim e_comm As EditText
Dim motivo As String Dim motivo As String
Dim cuenta As String Dim cuenta As String
@@ -25,11 +29,11 @@ Sub Class_Globals
Dim sDate,sTime As String Dim sDate,sTime As String
' Dim lat_gps, lon_gps As String ' Dim lat_gps, lon_gps As String
Dim tgl As Toggle Dim tgl As Toggle
Dim r_4 As RadioButton
Dim reqManager As DBRequestManager Dim reqManager As DBRequestManager
Private stay_hh As String Private stay_hh As String
Private stay_mi As String Private stay_mi As String
Private stay_ss As String Private stay_ss As String
Dim bitacora As C_BItacora
End Sub End Sub
'You can add more parameters here. 'You can add more parameters here.
@@ -60,10 +64,14 @@ Sub B4XPage_Appear
ToastMessageShow("Es necesario tener el GPS encendido", True) ToastMessageShow("Es necesario tener el GPS encendido", True)
StartActivity(Starter.gps.LocationSettingsIntent) StartActivity(Starter.gps.LocationSettingsIntent)
End If End If
bitacora.Initialize("bitacora", "bitacora", Root, Starter.skmt, Starter.DBReqServer)
r_1.Checked = False r_1.Checked = False
r_2.Checked = False r_2.Checked = False
r_3.Checked = False r_3.Checked = False
r_4.Checked = False r_4.Checked = False
r_5.Checked = False
r_6.Checked = False
r_7.Checked = False
e_comm.Text = "" e_comm.Text = ""
End Sub End Sub
@@ -75,15 +83,22 @@ End Sub
Sub CANCELA_Click Sub CANCELA_Click
B4XPages.ShowPage("Cliente") B4XPages.ShowPage("Cliente")
End Sub End Sub
Sub GUARDA_Click Sub GUARDA_Click
If r_1.Checked Then If r_1.Checked Then
motivo = "CERRADO" motivo = r_1.Text.ToUpperCase
Else If r_2.Checked Then Else If r_2.Checked Then
motivo = "NO COMPRA" motivo = r_2.Text.ToUpperCase
Else If r_3.Checked Then Else If r_3.Checked Then
motivo = "CON PRODUCTO" motivo = r_3.Text.ToUpperCase
Else Else If r_4.Checked Then
motivo = "NO ESTA EL ENCARGADO" motivo = r_4.Text.ToUpperCase
Else If r_5.Checked Then
motivo = r_5.Text.ToUpperCase
Else If r_6.Checked Then
motivo = r_6.Text.ToUpperCase
Else If r_7.Checked Then
motivo = r_7.Text.ToUpperCase
End If End If
DateTime.DateFormat = "MM/dd/yyyy" DateTime.DateFormat = "MM/dd/yyyy"
sDate=DateTime.Date(DateTime.Now) sDate=DateTime.Date(DateTime.Now)
@@ -102,10 +117,11 @@ Sub GUARDA_Click
Next Next
End If End If
' B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)") ' B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)")
' B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido where pe_cliente in (Select CUENTA from cuentaa)") ' B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido where pe_cliente in (Select CUENTA from cuentaa)")
bitacora.mandaBitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRutaBitacora, "No Venta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, 2, motivo, e_comm.Text, "")
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON) VALUES(?,?,?,?,?,?,?) ", Array As Object (cuenta,sDate & sTime, usuario, motivo,e_comm.text, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps)) B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON) VALUES(?,?,?,?,?,?,?) ", Array As Object (cuenta,sDate & sTime, usuario, motivo,e_comm.text, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
B4XPages.MainPage.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)") B4XPages.MainPage.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
DateTime.TimeFormat = "HHmmss" DateTime.TimeFormat = "HHmmss"

View File

@@ -77,6 +77,7 @@ Sub B4XPage_Appear
Existe = C.GetString("EXISTE") Existe = C.GetString("EXISTE")
C.Close C.Close
c=B4XPages.MainPage.skmt.ExecQuery("select PE_PRONOMBRE,PE_COSTO_TOT, PE_CANT, PE_FOLIO, PE_CEDIS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_CEDIS, PE_PRONOMBRE") c=B4XPages.MainPage.skmt.ExecQuery("select PE_PRONOMBRE,PE_COSTO_TOT, PE_CANT, PE_FOLIO, PE_CEDIS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_CEDIS, PE_PRONOMBRE")
' ListView1.
ListView1.Clear ListView1.Clear
vamoaver.Initialize vamoaver.Initialize
Private cs As CSBuilder Private cs As CSBuilder
@@ -104,7 +105,7 @@ Sub B4XPage_Appear
label2 = ListView1.TwoLinesLayout.SecondLabel label2 = ListView1.TwoLinesLayout.SecondLabel
label2.TextSize = 10 label2.TextSize = 10
label2.TextColor = Colors.Blue label2.TextColor = Colors.Blue
ListView1.AddTwoLines(cs.Color(textColor).append(c.GetString("PE_PRONOMBRE")).pop,"Cantidad #"& c.GetString("PE_CANT")& " SubTotal $"& c.GetString("PE_COSTO_TOT")& " Folio "& c.GetString("PE_FOLIO")) ListView1.AddTwoLines(cs.Color(textColor).append(c.GetString("PE_PRONOMBRE")).pop,"Cantidad #"& c.GetString("PE_CANT")& " Monto preventa $"& c.GetString("PE_COSTO_TOT"))
folio = c.GetString("PE_FOLIO") folio = c.GetString("PE_FOLIO")
vamoaver.Add(c.GetString("PE_FOLIO")) vamoaver.Add(c.GetString("PE_FOLIO"))
Next Next

View File

@@ -7,11 +7,9 @@ Version=11.5
Sub Class_Globals Sub Class_Globals
Private Root As B4XView 'ignore Private Root As B4XView 'ignore
Private xui As XUI 'ignore Private xui As XUI 'ignore
Dim g As GPS Dim g As GPS
Dim ruta As String Dim ruta As String
Dim c As Cursor Dim c As Cursor
Dim CANCELA As Button Dim CANCELA As Button
Dim GUARDA As Button Dim GUARDA As Button
Dim cuenta As String Dim cuenta As String
@@ -20,7 +18,6 @@ Sub Class_Globals
Dim sDate2,sTime2 As String Dim sDate2,sTime2 As String
Dim no_cliente As String Dim no_cliente As String
Dim no_ruta As String Dim no_ruta As String
Dim r_4 As RadioButton Dim r_4 As RadioButton
Dim E_NOMBRE As EditText Dim E_NOMBRE As EditText
Dim tgl As Toggle Dim tgl As Toggle
@@ -45,6 +42,9 @@ Sub Class_Globals
Dim giros As String Dim giros As String
Private L_Atiende As Label Private L_Atiende As Label
Private ET_Atiende As EditText Private ET_Atiende As EditText
Dim bitacora As C_BItacora
Dim reqManager As DBRequestManager
Private et_comentarios As EditText
End Sub End Sub
'You can add more parameters here. 'You can add more parameters here.
@@ -62,6 +62,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
If File.Exists(ruta, "kmt.db") = False Then If File.Exists(ruta, "kmt.db") = False Then
File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db") File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db")
End If End If
reqManager.Initialize(Me, Starter.DBReqServer)
' skmt.Initialize(ruta,"kmt.db", True) ' skmt.Initialize(ruta,"kmt.db", True)
' p_camara.Height = Root.Height ' p_camara.Height = Root.Height
' p_camara.Width = Root.Width ' p_camara.Width = Root.Width
@@ -94,9 +95,11 @@ End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. 'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
Sub B4XPage_Appear Sub B4XPage_Appear
bitacora.Initialize("bitacora", "bitacora", Root, Starter.skmt, Starter.DBReqServer)
et_direccion.Text = "" et_direccion.Text = ""
E_NOMBRE.Text = "" E_NOMBRE.Text = ""
ET_Atiende.Text = "" ET_Atiende.Text = ""
et_comentarios.Text = ""
If Not(Starter.gps.GPSEnabled) Then If Not(Starter.gps.GPSEnabled) Then
ToastMessageShow("Es necesario tener el GPS encendido", True) ToastMessageShow("Es necesario tener el GPS encendido", True)
StartActivity(Starter.gps.LocationSettingsIntent) StartActivity(Starter.gps.LocationSettingsIntent)
@@ -113,6 +116,7 @@ Sub B4XPage_Appear
Subs.centraPanel(p_botones, Root.Width) Subs.centraPanel(p_botones, Root.Width)
E_NOMBRE.Left = Round(Root.Width/2)-(E_NOMBRE.Width/2) E_NOMBRE.Left = Round(Root.Width/2)-(E_NOMBRE.Width/2)
et_direccion.Left = Round(Root.Width/2)-(E_NOMBRE.Width/2) et_direccion.Left = Round(Root.Width/2)-(E_NOMBRE.Width/2)
et_comentarios.Left = Round(Root.Width/2)-(et_comentarios.Width/2)
If B4XPages.MainPage.lat_gps <> "0.0" Then If B4XPages.MainPage.lat_gps <> "0.0" Then
GUARDA.Visible = True 'Si hay ubicaccion, mostramos el boton de guardar. GUARDA.Visible = True 'Si hay ubicaccion, mostramos el boton de guardar.
l_sinUbicacion.Visible = True l_sinUbicacion.Visible = True
@@ -125,6 +129,14 @@ Sub B4XPage_Appear
Starter.GPS.Start(0, 0) Starter.GPS.Start(0, 0)
' If Starter.ubicacionActual.Latitude <> 0 Then GPS_LocationChanged(Starter.ubicacionActual) ' If Starter.ubicacionActual.Latitude <> 0 Then GPS_LocationChanged(Starter.ubicacionActual)
End If End If
If Tracker.FLP.IsInitialized And Tracker.FLP.GetLastKnownLocation.IsInitialized Then
lat = Tracker.FLP.GetLastKnownLocation.Latitude
lon = Tracker.FLP.GetLastKnownLocation.Longitude
l_sinUbicacion.Text = ("Latitud: " & lat & ", Longitud: "& lon)
Log("Latitud: " & lat & " - " & "Longuitud: " & lon)
End If
CallSubDelayed(Tracker, "StartFLPSmall") CallSubDelayed(Tracker, "StartFLPSmall")
c = Starter.skmt.ExecQuery("SELECT GIRO FROM CAT_GIRO order by 1") c = Starter.skmt.ExecQuery("SELECT GIRO FROM CAT_GIRO order by 1")
@@ -144,13 +156,13 @@ End Sub
Sub GPS_LocationChanged (Location1 As Location) Sub GPS_LocationChanged (Location1 As Location)
If B4XPages.MainPage.lat_gps <> "0.0" Then If B4XPages.MainPage.lat_gps <> "0.0" Then
' Log("-- LOC CHANGED")
GUARDA.Visible = True 'Si hay ubicaccion, mostramos el boton de guardar. GUARDA.Visible = True 'Si hay ubicaccion, mostramos el boton de guardar.
l_sinUbicacion.Visible = True l_sinUbicacion.Visible = True
lat = Location1.Latitude lat = Location1.Latitude
lon = Location1.Longitude lon = Location1.Longitude
l_sinUbicacion.Text = ("Latitud: " & lat & ", Longotud: "& lon) l_sinUbicacion.Text = ("Latitud: " & lat & ", Longitud: "& lon)
End If End If
b_ubicacion.TextSize = 13 b_ubicacion.TextSize = 13
b_ubicacion.Text = $"Precisión GPS $1.0{Location1.Accuracy} m"$ b_ubicacion.Text = $"Precisión GPS $1.0{Location1.Accuracy} m"$
If Location1.Accuracy > 200 Then If Location1.Accuracy > 200 Then
@@ -158,6 +170,7 @@ Sub GPS_LocationChanged (Location1 As Location)
b_ubicacion.TextSize = 16 b_ubicacion.TextSize = 16
b_ubicacion.Text = $"Mala señal $1.0{Location1.Accuracy} m"$ b_ubicacion.Text = $"Mala señal $1.0{Location1.Accuracy} m"$
End If End If
' Log("Latitud: " & lat & " - " & "Longuitud: " & lon)
End Sub End Sub
Sub CANCELA_Click Sub CANCELA_Click
@@ -172,6 +185,7 @@ Sub GUARDA_Click
' Verifica si la dirección tiene más de 3 caracteres ' Verifica si la dirección tiene más de 3 caracteres
Else If et_direccion.Text.Length > 3 Then Else If et_direccion.Text.Length > 3 Then
' Verifica si la latitud es diferente de 0 ' Verifica si la latitud es diferente de 0
If lat <> 0 Then If lat <> 0 Then
' Verifica si el giro del cliente está seleccionado ' Verifica si el giro del cliente está seleccionado
If giros <> "SELECCIONA UNA OPCIÓN" Or cb_giro.SelectedItem <> "SELECCIONA UNA OPCIÓN" Then If giros <> "SELECCIONA UNA OPCIÓN" Or cb_giro.SelectedItem <> "SELECCIONA UNA OPCIÓN" Then
@@ -216,10 +230,12 @@ Sub GUARDA_Click
sDate2 = DateTime.Date(DateTime.Now) sDate2 = DateTime.Date(DateTime.Now)
sTime2 = DateTime.Time(DateTime.Now) sTime2 = DateTime.Time(DateTime.Now)
Starter.skmt.ExecNonQuery2("INSERT INTO CLIENTES_NUEVOS(CN_ID, CN_FECHA, CN_USER, CN_LAT, CN_LON, CN_NOMBRE, CN_DIRECCION, CN_FOTO, CN_RUTA, CN_GIRO, CN_SOLICITA) VALUES (?,?,?,?,?,?,?,?,?,?,?)", Array As String(no_cliente, sDate2 &" "&sTime2, usuario, lat, lon, E_NOMBRE.Text, et_direccion.Text, ALMACEN, no_ruta, cb_giro.SelectedItem, ET_Atiende.Text)) Starter.skmt.ExecNonQuery2("INSERT INTO CLIENTES_NUEVOS(CN_ID, CN_FECHA, CN_USER, CN_LAT, CN_LON, CN_NOMBRE, CN_DIRECCION, CN_FOTO, CN_RUTA, CN_GIRO, CN_SOLICITA, CN_COMENTARIO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As String(no_cliente, sDate2 &" "&sTime2, usuario, lat, lon, E_NOMBRE.Text, et_direccion.Text, ALMACEN, no_ruta, cb_giro.SelectedItem, ET_Atiende.Text, et_comentarios.text))
' fototomada = "0" ' fototomada = "0"
B4XPages.ShowPage("Cliente") B4XPages.ShowPage("Cliente")
CallSubDelayed(Tracker, "StartFLP") Log("-- XX")
bitacora.mandaBitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRutaBitacora, "Nuevo Cliente", Subs.traeCliente, Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, 2, "", "", "")
' CallSubDelayed(Tracker, "StartFLP")
Else Else
' Mensaje de advertencia si ET_Atiende.Text está vacío ' Mensaje de advertencia si ET_Atiende.Text está vacío
MsgboxAsync("Por favor, debe capturar al encargado que atiende el negocio.","Atención") MsgboxAsync("Por favor, debe capturar al encargado que atiende el negocio.","Atención")
@@ -235,9 +251,6 @@ Sub GUARDA_Click
End If End If
End Sub End Sub
Private Sub p_nuevoCliente_Click Private Sub p_nuevoCliente_Click
End Sub End Sub
@@ -247,7 +260,7 @@ End Sub
' p_camara.Visible = False ' p_camara.Visible = False
'' StopCamera2 '' StopCamera2
'End Sub 'End Sub
'
'Private Sub InitializeCamera2 'Private Sub InitializeCamera2
' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA) ' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
' Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) ' Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
@@ -265,7 +278,7 @@ End Sub
' Else ' Else
' ToastMessageShow("Sin permisos de escritura!!!", True) ' ToastMessageShow("Sin permisos de escritura!!!", True)
' End If ' End If
'
' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_READ_EXTERNAL_STORAGE) ' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_READ_EXTERNAL_STORAGE)
' Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) ' Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
' If Result Then ' If Result Then
@@ -274,7 +287,7 @@ End Sub
' ToastMessageShow("Sin permisos de lectura!!!", True) ' ToastMessageShow("Sin permisos de lectura!!!", True)
' End If ' End If
'End Sub 'End Sub
'
'Sub Camera1_Ready (Success As Boolean) 'Sub Camera1_Ready (Success As Boolean)
' Log("Camara ready") ' Log("Camara ready")
' If Success Then ' If Success Then
@@ -288,7 +301,7 @@ End Sub
' Log("Cannot open camera") ' Log("Cannot open camera")
' End If ' End If
'End Sub 'End Sub
'
'Sub Camera1_PictureTaken (Data()As Byte) 'Sub Camera1_PictureTaken (Data()As Byte)
' Log("tome foto") ' Log("tome foto")
' Dim filename As String = fototomada ' Dim filename As String = fototomada
@@ -303,7 +316,6 @@ End Sub
' Dir = "" ' Dir = ""
' Log("creado en raiz") ' Log("creado en raiz")
' End Try ' End Try
'
' Try ' Try
' File.MakeDir(Dirp & Dir,"/reduccion") ' File.MakeDir(Dirp & Dir,"/reduccion")
' Dir2 = "/reduccion" ' Dir2 = "/reduccion"
@@ -312,24 +324,21 @@ End Sub
' Dir = "" ' Dir = ""
' Log("creado en raiz") ' Log("creado en raiz")
' End Try ' End Try
'
' camEx2.SavePictureToFile(Data, Dirp&Dir, filename) ' camEx2.SavePictureToFile(Data, Dirp&Dir, filename)
' camEx2.StartPreview 'restart preview ' camEx2.StartPreview 'restart preview
' ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(Dir, filename) & Dir &"," & filename, True) ' ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(Dir, filename) & Dir &"," & filename, True)
' Log("Picture saved." & CRLF & "File size: " & File.Size(Dir, filename) & Dir &"," & filename) ' Log("Picture saved." & CRLF & "File size: " & File.Size(Dir, filename) & Dir &"," & filename)
' p_camara.Visible = False ' p_camara.Visible = False
' StopCamera2 ' StopCamera2
'
'End Sub 'End Sub
'
'Private Sub StopCamera2 'Private Sub StopCamera2
'' Capturing = False '' Capturing = False
' If camEx2.IsInitialized Then ' If camEx2.IsInitialized Then
' camEx2.Release ' camEx2.Release
' End If ' End If
'End Sub 'End Sub
'
'
'Private Sub B_FOTO_Click 'Private Sub B_FOTO_Click
' DateTime.DateFormat="ddMMyyyyHHmmss" ' DateTime.DateFormat="ddMMyyyyHHmmss"
' InitializeCamera2 ' InitializeCamera2

View File

@@ -199,7 +199,7 @@ Sub Class_Globals
Private xui As XUI Private xui As XUI
Type TitleData (Title As String) Type TitleData (Title As String)
Private B_MARCAS As Button Private B_MARCAS As Button
Private Panel5 As Panel Private p_marcas As Panel
Private lblTitle As Label Private lblTitle As Label
Private B_OK_PANEL5 As Button Private B_OK_PANEL5 As Button
Private p_principal As Panel Private p_principal As Panel
@@ -223,6 +223,7 @@ Sub Class_Globals
Dim q_buscar As String Dim q_buscar As String
Private et_buspc As EditText Private et_buspc As EditText
Dim bitacora As C_BItacora Dim bitacora As C_BItacora
Private l_Version As Label
End Sub End Sub
'You can add more parameters here. 'You can add more parameters here.
@@ -237,6 +238,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
Root.LoadLayout("principal") Root.LoadLayout("principal")
rd.Initialize rd.Initialize
rd.vacuum rd.vacuum
p_principal.Top = 0 : p_principal.Left = 0 : p_principal.Width = Root.Width : p_principal.Height = Root.Height
EJECUTANDO=1 EJECUTANDO=1
Dim ruta As String Dim ruta As String
img2.Visible =False img2.Visible =False
@@ -244,6 +246,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
If File.Exists(ruta, "kmt.db") = False Then If File.Exists(ruta, "kmt.db") = False Then
File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db") File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db")
End If End If
SCROLL_RESDIA.Height = Root.Height - 10dip
DateTime.DateFormat = "MM/dd/yyyy" DateTime.DateFormat = "MM/dd/yyyy"
fecha=DateTime.Date(DateTime.Now) fecha=DateTime.Date(DateTime.Now)
B4XPages.MainPage.skmt.Initialize(ruta,"kmt.db", True) B4XPages.MainPage.skmt.Initialize(ruta,"kmt.db", True)
@@ -254,20 +257,22 @@ Private Sub B4XPage_Created (Root1 As B4XView)
d=B4XPages.MainPage.skmt.ExecQuery("select count(*) as TOTAL_VISITAR from kmt_info where gestion = 0") d=B4XPages.MainPage.skmt.ExecQuery("select count(*) as TOTAL_VISITAR from kmt_info where gestion = 0")
d.Position=0 d.Position=0
e=B4XPages.MainPage.skmt.ExecQuery("select count(*) as POR_VISITAR from kmt_info") e=B4XPages.MainPage.skmt.ExecQuery("select count(*) as POR_VISITAR from kmt_info")
l_Version.Left = Root.Width - l_Version.Width - 5dip
l_Version.text = Application.VersionName
e.Position=0 e.Position=0
f=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info") ' f=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info")
f.Position=0 ' f.Position=0
' Log("-- A") ' Log("-- A")
l_ruta.Text = f.GetString("CAT_CL_RUTA") ' l_ruta.Text = f.GetString("CAT_CL_RUTA")
f.Close ' f.Close
If l_ruta.Text = 0 Then ' If l_ruta.Text = 0 Then
l_ruta.Text = 0 ' l_ruta.Text = 0
Else ' Else
f=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info") ' f=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info")
f.Position=0 ' f.Position=0
l_ruta.Text = f.GetString("CAT_CL_RUTA") '' l_ruta.Text = f.GetString("CAT_CL_RUTA")
f.Close ' f.Close
End If ' End If
If Cuantos = 0 Then If Cuantos = 0 Then
L_MONTOD.Text =0 L_MONTOD.Text =0
l_cuantosc.Text = 0 l_cuantosc.Text = 0
@@ -310,7 +315,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
l_rutasuplencia.Text = s.GetString("RS_RUTA") l_rutasuplencia.Text = s.GetString("RS_RUTA")
End If End If
Starter.Skmt.ExecNonQuery($"create table if not exists kmt_info2 (${getTableColumnList(Starter.skmt, "kmt_info")})"$) Starter.Skmt.ExecNonQuery($"create table if not exists kmt_info2 (${getTableColumnList(Starter.skmt, "kmt_info")})"$)
bitacora.Initialize("bitacora", "bitacora", Root, Starter.skmt, reqManager) bitacora.Initialize("bitacora", "bitacora", Root, Starter.skmt, Starter.DBReqServer)
p_mandaInfo.Top = 0 : p_mandaInfo.Left = 0 p_mandaInfo.Top = 0 : p_mandaInfo.Left = 0
End Sub End Sub
@@ -423,12 +428,8 @@ Sub B4XPage_Appear
d.Position = 0 d.Position = 0
e=B4XPages.MainPage.skmt.ExecQuery("select count(*) as POR_VISITAR from kmt_info WHERE CAT_CL_CODIGO <> 0 OR CAT_CL_CODIGO <> 1 ") e=B4XPages.MainPage.skmt.ExecQuery("select count(*) as POR_VISITAR from kmt_info WHERE CAT_CL_CODIGO <> 0 OR CAT_CL_CODIGO <> 1 ")
e.Position = 0 e.Position = 0
f=B4XPages.MainPage.skmt.ExecQuery("select count(*) as CAT_CL_RUTA from kmt_info WHERE CAT_CL_CODIGO <> 0 OR CAT_CL_CODIGO <> 1 ") f=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info WHERE CAT_CL_CODIGO <> 0 OR CAT_CL_CODIGO <> 1 ")
f.Position = 0 If f.RowCount = 0 Then
l_ruta.Text = f.GetString("CAT_CL_RUTA")
' Log("-- A:" & l_ruta.Text)
f.Close
If l_ruta.Text = 0 Then
l_ruta.Text = 0 l_ruta.Text = 0
Else Else
f=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info") f=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info")
@@ -437,6 +438,7 @@ Sub B4XPage_Appear
' Log("-- A:" & l_ruta.Text) ' Log("-- A:" & l_ruta.Text)
f.Close f.Close
End If End If
f.Close
If Cuantos = 0 Then If Cuantos = 0 Then
L_MONTOD.Text = 0 L_MONTOD.Text = 0
l_cuantosc.Text = 0 l_cuantosc.Text = 0
@@ -562,7 +564,8 @@ Sub B4XPage_Appear
' Log(d.GetString("CAT_GP_NOMBRE")) ' Log(d.GetString("CAT_GP_NOMBRE"))
' Next ' Next
' d.Close ' d.Close
Sleep(500)
bitacora.mandaPendientes
End Sub End Sub
Sub Subir_Click Sub Subir_Click
@@ -614,7 +617,7 @@ Sub Subir_Click
Dim cmd As DBCommand Dim cmd As DBCommand
cmd.Initialize cmd.Initialize
cmd.Name = "UPDATE_ADM3_ACTUAL2_GPS" cmd.Name = "UPDATE_ADM3_ACTUAL2_GPS"
cmd.Parameters = Array As Object(L_MONTOD.Text, L_CUANTOST.Text, l_cuantosc.Text,l_porvisitar.TEXT,c.GetString("hglat"),c.GetString("hglon"),batterystatus(0),LPT, STEYIN, STEYOUT,ALMACEN,l_ruta.Text ) cmd.Parameters = Array As Object(L_MONTOD.Text, L_CUANTOST.Text, l_cuantosc.Text,l_porvisitar.TEXT,c.GetString("hglat"),c.GetString("hglon"),batterystatus(0),NumberFormat2(LPT,1,5,2,False), STEYIN, STEYOUT,ALMACEN,l_ruta.Text )
reqManager.ExecuteCommand(cmd , "update_gps") reqManager.ExecuteCommand(cmd , "update_gps")
Next Next
End If End If
@@ -672,7 +675,7 @@ Sub Subir_Click
Dim Dir2 As String Dim Dir2 As String
Dir = "/promotoriakmts" Dir = "/promotoriakmts"
c=Starter.skmt.ExecQuery("SELECT CN_ID, CN_FECHA , CN_USER, CN_LAT, CN_LON, CN_NOMBRE, CN_DIRECCION, CN_FOTO, CN_ALMACEN, CN_RUTA, CN_GIRO, CN_SOLICITA FROM CLIENTES_NUEVOS") c=Starter.skmt.ExecQuery("SELECT * FROM CLIENTES_NUEVOS")
If c.RowCount>0 Then If c.RowCount>0 Then
For i = 0 To c.RowCount - 1 For i = 0 To c.RowCount - 1
c.Position = i c.Position = i
@@ -693,7 +696,7 @@ Sub Subir_Click
Dim cmd As DBCommand Dim cmd As DBCommand
cmd.Initialize cmd.Initialize
cmd.Name = "insert_clientesnuevos_ADM3" cmd.Name = "insert_clientesnuevos_ADM3"
cmd.Parameters = Array As Object(c.GetString("CN_ID"), c.GetString("CN_FECHA"), c.GetString("CN_USER"), c.GetString("CN_LAT"), c.GetString("CN_LON"), c.GetString("CN_NOMBRE"), c.GetString("CN_DIRECCION"),ALMACEN, c.GetString("CN_RUTA"), "En espera",c.GetString("CN_GIRO"),dialetra, c.GetString("CN_SOLICITA")) cmd.Parameters = Array As Object(c.GetString("CN_ID"), c.GetString("CN_FECHA"), c.GetString("CN_USER"), c.GetString("CN_LAT"), c.GetString("CN_LON"), c.GetString("CN_NOMBRE"), c.GetString("CN_DIRECCION"),ALMACEN, c.GetString("CN_RUTA"), "En espera",c.GetString("CN_GIRO"),dialetra, c.GetString("CN_SOLICITA"), c.GetString("CN_COMENTARIO"))
reqManager.ExecuteCommand(cmd , "inst_clientesn") reqManager.ExecuteCommand(cmd , "inst_clientesn")
Next Next
End If End If
@@ -957,7 +960,6 @@ Sub cargar_Click
If E_RUTA2.Text <> "" Then If E_RUTA2.Text <> "" Then
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO RUTA_SUPLENCIA(RS_RUTA) VALUES(?)",Array As String(E_RUTA2.Text)) B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO RUTA_SUPLENCIA(RS_RUTA) VALUES(?)",Array As String(E_RUTA2.Text))
E_RUTA2.Text = ""
End If End If
c = B4XPages.MainPage.skmt.ExecQuery2("select count(CAT_VA_DESCRIPCION) as HoraIngreso from cat_variables where CAT_VA_DESCRIPCION = ? ", Array As String("HoraIngreso")) c = B4XPages.MainPage.skmt.ExecQuery2("select count(CAT_VA_DESCRIPCION) as HoraIngreso from cat_variables where CAT_VA_DESCRIPCION = ? ", Array As String("HoraIngreso"))
@@ -1025,7 +1027,7 @@ Sub cargar_Click
reqManager.ExecuteQuery(cmd , 0, "detallepaq") reqManager.ExecuteQuery(cmd , 0, "detallepaq")
cmd.Initialize cmd.Initialize
cmd.Name = "select_cat_clientes_ADM3" cmd.Name = "select_cat_clientes2_ADM3"
cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) cmd.Parameters = Array As Object(e_ruta.text, ALMACEN)
reqManager.ExecuteQuery(cmd , 0, "kmt_datos") reqManager.ExecuteQuery(cmd , 0, "kmt_datos")
@@ -1070,7 +1072,10 @@ Sub cargar_Click
cmd.Initialize cmd.Initialize
cmd.Name = "select_cat_clientes_ADM3" cmd.Name = "select_cat_clientes_ADM3"
cmd.Parameters = Array As Object(E_RUTA2.text, ALMACEN) cmd.Parameters = Array As Object(E_RUTA2.text, ALMACEN)
reqManager.ExecuteQuery(cmd , 0, "kmt_datos") reqManager.ExecuteQuery(cmd , 0, "kmt_datos_sup")
Log("====== PEDIMOS RUTA SUPLENCIA - " & E_RUTA2.text & "|" & ALMACEN)
E_RUTA2.Text = ""
cmd.Initialize cmd.Initialize
cmd.Name = "select_cat_clientes_todos_ADM3" cmd.Name = "select_cat_clientes_todos_ADM3"
@@ -1175,7 +1180,7 @@ Sub JobDone(Job As HttpJob)
Dim RESULT As DBResult = reqManager.HandleJob(Job) Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "update_gps" Then If RESULT.Tag = "update_gps" Then
For Each records() As Object In RESULT.Rows For Each records() As Object In RESULT.Rows
Log("==========================REGISTROS="&RESULT.Rows) Log("==========================REGISTROS="&RESULT.Rows.size)
For Each k As String In RESULT.Columns.Keys For Each k As String In RESULT.Columns.Keys
Log(RESULT.Tag & ": " & k & ": " & records(RESULT.Columns.Get(k))) Log(RESULT.Tag & ": " & k & ": " & records(RESULT.Columns.Get(k)))
Next Next
@@ -1249,6 +1254,52 @@ Sub JobDone(Job As HttpJob)
For Each records() As Object In RESULT.Rows For Each records() As Object In RESULT.Rows
Dim CAT_CL_CODIGO As String = records(RESULT.Columns.Get("CAT_CL_CODIGO")) Dim CAT_CL_CODIGO As String = records(RESULT.Columns.Get("CAT_CL_CODIGO"))
Dim CAT_CL_RUTA As String = records(RESULT.Columns.Get("CAT_CL_RUTA")) Dim CAT_CL_RUTA As String = records(RESULT.Columns.Get("CAT_CL_RUTA"))
' Log("-" &CAT_CL_RUTA)
Dim CAT_CL_NOMBRE As String = records(RESULT.Columns.Get("CAT_CL_NOMBRE"))
Dim CAT_CL_ATIENDE1 As String = records(RESULT.Columns.Get("CAT_CL_ATIENDE1"))
Dim CAT_CL_ATIENTE2 As String = records(RESULT.Columns.Get("CAT_CL_ATIENTE2"))
Dim CAT_CL_TELEFONO As String = records(RESULT.Columns.Get("CAT_CL_TELEFONO"))
Dim CAT_CL_EMAIL As String = records(RESULT.Columns.Get("CAT_CL_EMAIL"))
Dim CAT_CL_CALLE As String = records(RESULT.Columns.Get("CAT_CL_CALLE"))
Dim CAT_CL_NOEXT As String = records(RESULT.Columns.Get("CAT_CL_NOEXT"))
Dim CAT_CL_NOINT As String = records(RESULT.Columns.Get("CAT_CL_NOINT"))
Dim CAT_CL_CALLE1 As String = records(RESULT.Columns.Get("CAT_CL_CALLE1"))
Dim CAT_CL_CALLE2 As String = records(RESULT.Columns.Get("CAT_CL_CALLE2"))
Dim CAT_CL_COLONIA As String = records(RESULT.Columns.Get("CAT_CL_COLONIA"))
Dim CAT_CL_DIAS_VISITA As String = records(RESULT.Columns.Get("CAT_CL_DIAS_VISITA"))
Dim CAT_CL_MUNI As String = records(RESULT.Columns.Get("CAT_CL_MUNI"))
Dim CAT_CL_EDO As String = records(RESULT.Columns.Get("CAT_CL_EDO"))
Dim CAT_CL_CP As String = records(RESULT.Columns.Get("CAT_CL_CP"))
Dim CAT_CL_LONG As String = records(RESULT.Columns.Get("CAT_CL_LONG"))
Dim CAT_CL_LAT As String = records(RESULT.Columns.Get("CAT_CL_LAT"))
Dim CAT_CL_MTOCOMPRA As String = records(RESULT.Columns.Get("CAT_CL_MTOCOMPRA"))
Dim CAT_CL_NUM_SERIEFISICO As String = records(RESULT.Columns.Get("CAT_CL_NUM_SERIEFISICO"))
Dim CAT_CL_BCREDITO As String = records(RESULT.Columns.Get("CAT_CL_BCREDITO"))
Dim CAT_CL_LIMITECREDITO As String = records(RESULT.Columns.Get("CAT_CL_LIMITECREDITO"))
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO kmt_info(CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO, CAT_CL_BCREDITO, CAT_CL_LIMITECREDITO, gestion,CAT_CL_DIAS_VISITA) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,0,?)", Array As Object (CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO, CAT_CL_BCREDITO, CAT_CL_LIMITECREDITO, CAT_CL_DIAS_VISITA))
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_STAY_STORE(HSS_CODIGO, HSS_IN , HSS_OUT , HSS_TOT) VALUES (?,0,0,0)", Array As Object (CAT_CL_CODIGO))
Next
Starter.skmt.ExecNonQuery2("INSERT INTO kmt_info(CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO, gestion) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0,0,0) ",Array As Object ("0",e_ruta.TEXT, "VENTA ABORDO","null","null","null","null","null","null","null","null","null","null","null","null","NULL","null","NULL"))
Starter.skmt.ExecNonQuery2("INSERT INTO kmt_info(CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO, gestion) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0,0,0) ",Array As Object ("1",e_ruta.TEXT, "VENTA RECARGA","null","null","null","null","null","null","null","null","null","null","null","null","NULL","null","NULL"))
Listo1 = 1
S_CC.Text = "LISTO"
If Starter.marcaCel <> "Sony" Then ToastMessageShow("Catalogo Clientes Actualizados." , True)
If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then
B4XPage_Appear
img2.Visible=False
EJECUTANDO=0
End If
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "kmt_datos_sup" Then 'query tag
S_CC.TEXT = "CARGANDO"
For Each records() As Object In RESULT.Rows
Dim CAT_CL_CODIGO As String = records(RESULT.Columns.Get("CAT_CL_CODIGO"))
Dim CAT_CL_RUTA As String = records(RESULT.Columns.Get("CAT_CL_RUTA"))
Log("-" &CAT_CL_RUTA)
Dim CAT_CL_NOMBRE As String = records(RESULT.Columns.Get("CAT_CL_NOMBRE")) Dim CAT_CL_NOMBRE As String = records(RESULT.Columns.Get("CAT_CL_NOMBRE"))
Dim CAT_CL_ATIENDE1 As String = records(RESULT.Columns.Get("CAT_CL_ATIENDE1")) Dim CAT_CL_ATIENDE1 As String = records(RESULT.Columns.Get("CAT_CL_ATIENDE1"))
Dim CAT_CL_ATIENTE2 As String = records(RESULT.Columns.Get("CAT_CL_ATIENTE2")) Dim CAT_CL_ATIENTE2 As String = records(RESULT.Columns.Get("CAT_CL_ATIENTE2"))
@@ -1842,7 +1893,7 @@ Sub JobDone(Job As HttpJob)
datos_iguales = "ok" datos_iguales = "ok"
S_CP.Text = "INFO OK" S_CP.Text = "INFO OK"
Else Else
If Starter.marcaCel <> "Sony" Then ToastMessageShow("No se cargo bien la info P. Sync Nuevamente" & CUANTOSP & " " & cuantos_pedido, True) ' If Starter.marcaCel <> "Sony" Then ToastMessageShow("No se cargo bien la info P. Sync Nuevamente" & CUANTOSP & " " & cuantos_pedido, True)
S_CP.Text = "ENVIAR DATOS (K-2)" S_CP.Text = "ENVIAR DATOS (K-2)"
End If End If
Next Next
@@ -1858,7 +1909,7 @@ Sub JobDone(Job As HttpJob)
' ToastMessageShow("rojo val ok 1 cuantosp." , True) ' ToastMessageShow("rojo val ok 1 cuantosp." , True)
datos_iguales = "ok" datos_iguales = "ok"
Else Else
If Starter.marcaCel <> "Sony" Then ToastMessageShow("No se cargo bien la info C. Sync Nuevamente" & CUANTOSC & " " & cuantos_pedidosc, True) ' If Starter.marcaCel <> "Sony" Then ToastMessageShow("No se cargo bien la info C. Sync Nuevamente" & CUANTOSC & " " & cuantos_pedidosc, True)
End If End If
Next Next
End If End If
@@ -1873,7 +1924,7 @@ Sub JobDone(Job As HttpJob)
' ToastMessageShow("rojo val ok 1 cuantosp." , True) ' ToastMessageShow("rojo val ok 1 cuantosp." , True)
datos_iguales = "ok" datos_iguales = "ok"
Else Else
If Starter.marcaCel <> "Sony" Then ToastMessageShow("No se cargo bien la info N. Sync Nuevamente" & CUANTOSN & " " & cuantos_noventa, True) ' If Starter.marcaCel <> "Sony" Then ToastMessageShow("No se cargo bien la info N. Sync Nuevamente" & CUANTOSN & " " & cuantos_noventa, True)
End If End If
Next Next
End If End If
@@ -2028,29 +2079,26 @@ Sub JobDone(Job As HttpJob)
'Para suplencia 'Para suplencia
If Panel11.Visible = True And E_RUTA2.Visible = True Then If Panel11.Visible = True And E_RUTA2.Visible = True Then
Log("-- AA") Log("-- AA")
bitacora.mandaBitacora(Subs.fechanormal(DateTime.Now),usuario,Subs.traeAlmacen, Subs.traeRuta,"Carga día suplencia","",Subs.fechanormal(DateTime.Now),Subs.fechanormal(DateTime.Now),B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,"2","","", "") bitacora.mandaBitacora(Subs.fechanormal(DateTime.Now),usuario,Subs.traeAlmacen, e_ruta.text,"Carga día suplencia","",Subs.fechanormal(DateTime.Now),Subs.fechanormal(DateTime.Now),B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,"2","","", "")
Else if e_ruta.Text <> "" Then Else if e_ruta.Text <> "" Then
Log("-- BB") Log("-- BB")
bitacora.mandaBitacora(Subs.fechanormal(DateTime.Now),usuario,Subs.traeAlmacen, Subs.traeRuta,"Carga día", "",Subs.fechanormal(DateTime.Now),Subs.fechanormal(DateTime.Now),B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,"2","","", "") bitacora.mandaBitacora(Subs.fechanormal(DateTime.Now),usuario,Subs.traeAlmacen, e_ruta.text,"Carga día", "",Subs.fechanormal(DateTime.Now),Subs.fechanormal(DateTime.Now),B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,"2","","", "")
End If End If
Panel11.Visible = False Panel11.Visible = False
' E_RUTA2.Text = "" ' E_RUTA2.Text = ""
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO RUTAA(RUTAA) VALUES(?)",Array As String(e_ruta.Text)) B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO RUTAA(RUTAA) VALUES(?)",Array As String(e_ruta.Text))
e_ruta.Text = "" e_ruta.Text = ""
End If End If
Job.Release Job.Release
End Sub End Sub
Private Sub B4XPage_CloseRequest As ResumableSub Private Sub B4XPage_CloseRequest As ResumableSub
'Return True to close, False to cancel 'Return True to close, False to cancel
If SCROLL_RESDIA.Visible Then If SCROLL_RESDIA.Visible Then
SCROLL_RESDIA.Visible = False SCROLL_RESDIA.Visible = False
B_OK_RES_Click B_OK_RES_Click
Return False Return False
Else if Panel5.Visible Then Else if p_marcas.Visible Then
B_OK_PANEL5_Click B_OK_PANEL5_Click
Return False Return False
Else Else
@@ -2170,12 +2218,15 @@ Sub e_ruta_EnterPressed
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM CLIENTES_NUEVOS") B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM CLIENTES_NUEVOS")
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENV_MONTO_LIQ") B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENV_MONTO_LIQ")
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_UBICACIONES") B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_UBICACIONES")
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM BITACORAGPS")
Starter.skmt.ExecNonQuery("update CAT_VARIABLES set CAT_VA_VALOR = '' where CAT_VA_DESCRIPCION = 'FOTO_INICIAL'")
B4XPage_Appear B4XPage_Appear
l_rutasuplencia.Visible = False l_rutasuplencia.Visible = False
Label22.Visible = False Label22.Visible = False
l_rutasuplencia.Text = "" l_rutasuplencia.Text = ""
End If End If
End If End If
If e_ruta.Text = "IWL" Then If e_ruta.Text = "IWL" Then
' trabajar.Visible = False ' trabajar.Visible = False
NUEVO.Visible =False NUEVO.Visible =False
@@ -2184,6 +2235,7 @@ Sub e_ruta_EnterPressed
' img3.Visible =True ' img3.Visible =True
Resumen.Visible= False Resumen.Visible= False
End If End If
If e_ruta.Text = "SUPLENCIA" Then If e_ruta.Text = "SUPLENCIA" Then
E_RUTA2.Visible = True E_RUTA2.Visible = True
Panel11.Visible = True Panel11.Visible = True
@@ -2645,103 +2697,49 @@ Sub B_OK_COMISS_Click
Btn_Ubicar.Visible=True Btn_Ubicar.Visible=True
End Sub End Sub
Sub B_MARCAS_Click Sub B_MARCAS_Click
' SCROLL_RESDIA.Visible = False Log("MARCAS")
' Panel5.Visible = True
' pnlTitle.Visible = False
' pnlTitle.SetLayoutAnimated(0, 0, 0, CLV1.AsView.Width, TitleHeight + DividerHeight)
' pnlTitle.LoadLayout("CellTitle")
' c=B4XPages.MainPage.skmt.ExecQuery("Select CAT_GP_CLASIF, sum(pe_costo_tot) As total from CATALOGO, pedido where pe_proid = cat_gp_id And pe_cliente <> 0 group by cat_gp_clasif")
'
' CLV1.Clear
' If c.RowCount>0 Then
' For i=0 To c.RowCount -1
' c.Position=i
' AddTitle(c.GetString("CAT_GP_CLASIF"))
' f=B4XPages.MainPage.skmt.ExecQuery2("select * from HIST_AVANCE where HA_MARCA = ?", Array As String(c.GetString("CAT_GP_CLASIF")))
' f.Position=0
' If f.RowCount > 0 Then
' CLV1.AddTextItem("VENTA = $" & f.GetString("HA_AVANCE"),"1")
' CLV1.AddTextItem("META = $" & f.GetString("HA_OBJETIVO"),"1")
' CLV1.AddTextItem("PORCENTAJE = %" & (f.GetString("HA_PORCENTAJE")) ,"1")
' End If
' f.Close
' Next
' End If
' c.Close
SCROLL_RESDIA.Visible = False SCROLL_RESDIA.Visible = False
Panel5.Visible = True p_marcas.Visible = True
p_marcas.BringToFront
p_marcas.Top = 0 : p_marcas.left = 0
p_marcas.Width = Root.Width : p_marcas.height = Root.height
p_marcas.Visible = True
Log("Panel 5 visible")
pnlTitle.Visible = False pnlTitle.Visible = False
pnlTitle.SetLayoutAnimated(0, 0, 0, CLV1.AsView.Width, TitleHeight + DividerHeight) pnlTitle.SetLayoutAnimated(0, 0, 0, CLV1.AsView.Width, TitleHeight + DividerHeight)
pnlTitle.LoadLayout("CellTitle") pnlTitle.LoadLayout("CellTitle")
c=B4XPages.MainPage.skmt.ExecQuery("Select CAT_GP_CLASIF, SUM(TOTAL) AS TOTAL FROM TOTAL_MARCAS GROUP BY CAT_GP_CLASIF") c = B4XPages.MainPage.skmt.ExecQuery("Select sum(pe_costo_tot) as TOTAL, CAT_GP_TIPO, CAT_GP_SUBTIPO from pedido join cat_gunaprod on cat_gp_id = Pe_proid where cat_gp_tipo like '%GANADOR%' or cat_gp_tipo like '%MININO%' or cat_gp_tipo like '%Top CHOICE%' or cat_gp_tipo like '%FULLLIFE%' group by CAT_GP_SUBTIPO")
CLV1.Clear CLV1.Clear
If c.RowCount > 0 Then If c.RowCount > 0 Then
For i = 0 To c.RowCount - 1 For i = 0 To c.RowCount - 1
c.Position = i c.Position = i
AddTitle(c.GetString("CAT_GP_CLASIF")) AddTitle("TIPOS")
If c.GetString("CAT_GP_CLASIF") = "PROMOS" Then f = B4XPages.MainPage.skmt.ExecQuery("Select sum(pe_costo_tot) as TOTAL, CAT_GP_TIPO, CAT_GP_SUBTIPO from pedido join cat_gunaprod on cat_gp_id = Pe_proid where cat_gp_tipo like '%GANADOR%' or cat_gp_tipo like '%MININO%' or cat_gp_tipo like '%Top CHOICE%' or cat_gp_tipo like '%FULLLIFE%' group by CAT_GP_SUBTIPO")
d=B4XPages.MainPage.skmt.ExecQuery("SELECT SUM(PE_CANT) AS CUANTOS FROM PEDIDO WHERE PE_CEDIS = PE_PROID") If f.RowCount > 0 Then
d.Position=0 For i = 0 To f.RowCount - 1
CLV1.AddTextItem("CANTIDAD DE PROMOS = " & d.GetString("CUANTOS"),"1") f.Position = i
d.Close CLV1.AddTextItem($"${f.GetString("CAT_GP_TIPO")} = $${NumberFormat2(f.GetString("TOTAL"),1,2,2,True)}"$,"1")
Else Next
f=B4XPages.MainPage.skmt.ExecQuery2("select COUNT(*) AS CUANTOS from HIST_MARCAS_CUOTAS where HMC_MARCA = ?", Array As String(c.GetString("CAT_GP_CLASIF")))
f.Position=0
If f.GetString("CUANTOS") > 0 Then
e=B4XPages.MainPage.skmt.ExecQuery2("select HMC_MARCA, HMC_TOTAL from HIST_MARCAS_CUOTAS where HMC_MARCA = ?", Array As String(c.GetString("CAT_GP_CLASIF")))
e.Position=0
d=B4XPages.MainPage.skmt.ExecQuery2("SELECT count(distinct(PE_CLIENTE)) AS CUANTOS FROM PEDIDO WHERE PE_PROID in (select CAT_GP_ID from cat_gunaprod WHERE CAT_GP_CLASIF =?)", Array As String (c.GetString("CAT_GP_CLASIF")))
d.Position=0
CLV1.AddTextItem("TOTAL PREVENTA = $" & c.GetString("TOTAL"),"1")
CLV1.AddTextItem("M E T A = $" & e.GetString("HMC_TOTAL"),"1")
CLV1.AddTextItem("FALTA = $" & (e.GetString("HMC_TOTAL") - c.GetString("TOTAL")) ,"1")
CLV1.AddTextItem("CLIENTES = " & d.GetString("CUANTOS"),"1")
d.Close
e.Close
Else
d=B4XPages.MainPage.skmt.ExecQuery2("SELECT count(distinct(pe_cliente)) AS CUANTOS FROM PEDIDO WHERE PE_PROID in (select CAT_GP_ID from cat_gunaprod WHERE CAT_GP_CLASIF =?)", Array As String (c.GetString("CAT_GP_CLASIF")))
d.Position=0
CLV1.AddTextItem("TOTAL PREVENTA = $" & c.GetString("TOTAL"),"1")
CLV1.AddTextItem("M E T A = $" & "1000","1")
CLV1.AddTextItem("FALTA = $" & (1000 - c.GetString("TOTAL")) ,"1")
CLV1.AddTextItem("CLIENTES = " & d.GetString("CUANTOS"),"1")
d.Close
End If End If
f.Close f.Close
End If
Next Next
End If End If
c.Close c.Close
c=B4XPages.MainPage.skmt.ExecQuery("Select HMC_MARCA, HMC_TOTAL from HIST_MARCAS_CUOTAS where HMC_MARCA not in (SELECT CAT_GP_CLASIF FROM TOTAL_MARCAS )")
If c.RowCount>0 Then
For i=0 To c.RowCount -1
c.Position=i
AddTitle(c.GetString("HMC_MARCA"))
CLV1.AddTextItem("TOTAL PREVENTA = $ 0.00","1")
CLV1.AddTextItem("M E T A = $" & C.GetString("HMC_TOTAL"),"1")
CLV1.AddTextItem("CLIENTES = 0","1")
Next
End If
c.Close
End Sub End Sub
Sub AddTitle (Title As String) Sub AddTitle (Title As String)
Dim p_MARCAS As B4XView = xui.CreatePanel("") Dim p_marcas2 As B4XView = xui.CreatePanel("")
p_MARCAS.SetLayoutAnimated(0, 0, 0, CLV1.AsView.Width, TitleHeight) p_marcas2.SetLayoutAnimated(0, 0, 0, CLV1.AsView.Width, TitleHeight)
p_MARCAS.LoadLayout("CellTitle") p_marcas2.LoadLayout("CellTitle")
lblTitle.Text = Title lblTitle.Text = Title
Dim td As TitleData Dim td As TitleData
td.Title = Title td.Title = Title
CLV1.Add(p_MARCAS, td) CLV1.Add(p_marcas2, td)
End Sub End Sub
Sub B_OK_PANEL5_Click Sub B_OK_PANEL5_Click
Panel5.Visible = False p_marcas.Visible = False
NUEVO.Visible =True NUEVO.Visible =True
BUSCA.Visible=True BUSCA.Visible=True
connecta.Visible=True connecta.Visible=True

View File

@@ -257,12 +257,14 @@ Sub PCLV_AddProds
End Sub End Sub
Sub lv_catalogos_ItemClick (Position As Int, Value As Object) Sub lv_catalogos_ItemClick (Position As Int, Value As Object)
Log("Clic lv_catalogos")
If Value = "CATALOGO" Then If Value = "CATALOGO" Then
' lfila.text = "TIPO" ' lfila.text = "TIPO"
lfila.text = "PRODUCTOS" lfila.text = "PRODUCTOS"
lv_catalogos.Visible = False lv_catalogos.Visible = False
' lv_tipo.Visible = True ' lv_tipo.Visible = True
If clv_prods_ll.Size = 0 Then LlenaProdsLL(Null) ' If clv_prods_ll.Size = 0 Then LlenaProdsLL(Null)
LlenaProdsLL(Null)
clv_prods_ll.AsView.Visible = True clv_prods_ll.AsView.Visible = True
If hayPedido Then p_botonesVenta.Visible = True 'Si ya hay pedido, entonces mostramos los botones. If hayPedido Then p_botonesVenta.Visible = True 'Si ya hay pedido, entonces mostramos los botones.
Else Else
@@ -289,8 +291,6 @@ Sub lv_catalogos_ItemClick (Position As Int, Value As Object)
label14.TextColor = Colors.Black label14.TextColor = Colors.Black
lfila.text = "PROMOS" lfila.text = "PROMOS"
' c2=B4XPages.MainPage.skmt.ExecQuery2($"select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from ${Starter.tabla} 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, Value, Value)) ' c2=B4XPages.MainPage.skmt.ExecQuery2($"select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from ${Starter.tabla} 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, Value, Value))
c2=B4XPages.MainPage.skmt.ExecQuery2($"select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from ${Starter.tabla} where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 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, Value)) c2=B4XPages.MainPage.skmt.ExecQuery2($"select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from ${Starter.tabla} where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 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, Value))
' Log($"res:${c2.RowCount}, ${Value}, ${marca}, ${tipo}"$) ' Log($"res:${c2.RowCount}, ${Value}, ${marca}, ${tipo}"$)
@@ -393,7 +393,6 @@ Sub lv_promos_ItemClick (Position As Int, Value As Object)
B4XPages.ShowPage("Cliente") B4XPages.ShowPage("Cliente")
End If End If
If entro = "3" Then If entro = "3" Then
'xxxxxxxxxxxxxxxxxxxxx
Else If entro = "4" Then Else If entro = "4" Then
' Log("Entro = 4") ' Log("Entro = 4")
B4XPages.MainPage.skmt.ExecNonQuery("delete from PROID") B4XPages.MainPage.skmt.ExecNonQuery("delete from PROID")
@@ -479,8 +478,6 @@ Private Sub B4XPage_CloseRequest As ResumableSub
End If End If
End Sub End Sub
Sub b_QR_Click Sub b_QR_Click
If ciclo = 1 Then If ciclo = 1 Then
ciclo = 2 ciclo = 2
@@ -603,8 +600,6 @@ Sub b_prodMenos_Click
If clv_prods_ll.GetValue(index).As(Map).Get("cant").As(Int) = 0 Then If clv_prods_ll.GetValue(index).As(Map).Get("cant").As(Int) = 0 Then
Log("Aqui debemos ponerlo invisible") Log("Aqui debemos ponerlo invisible")
panelcajas.Visible = False panelcajas.Visible = False
Else
End If End If
' p_botMasMenc.Visible = False ' p_botMasMenc.Visible = False
End If End If
@@ -720,7 +715,6 @@ Private Sub et_pCant_FocusChanged (HasFocus As Boolean)
End If End If
invTotal = totalcajasmaspiezas + Subs.traeinventario(id) invTotal = totalcajasmaspiezas + Subs.traeinventario(id)
' LogColor("InvTotal PRODMAS: " & invTotal, Colors.Red) ' LogColor("InvTotal PRODMAS: " & invTotal, Colors.Red)
cuentaProds cuentaProds
End Sub End Sub
@@ -742,25 +736,20 @@ Private Sub et_pCant_TextChanged (Old As String, New As String)
Private nombreX As String = Subs.traeProdNombre(id) Private nombreX As String = Subs.traeProdNombre(id)
Dim panelcajas As B4XView = pnl.GetView(3) Dim panelcajas As B4XView = pnl.GetView(3)
Dim panelpiezas As B4XView = pnl.GetView(2) Dim panelpiezas As B4XView = pnl.GetView(2)
If(New = "" Or New = Null Or New = "-") Then New = 0 If(New = "" Or New = Null Or New = "-") Then New = 0
' If New < 0 Then New = 0 ' If New < 0 Then New = 0
If(New > invTotal) Then If(New > invTotal) Then
Sender.As(EditText).text = invTotal Sender.As(EditText).text = invTotal
End If End If
' Log($"inventario=${inv}"$) ' Log($"inventario=${inv}"$)
If New = "" Then New = 0 If New = "" Then New = 0
If laCant.Text = "" Then laCant.Text = 0 If laCant.Text = "" Then laCant.Text = 0
LogColor(laCant.Text,Colors.Red) LogColor(laCant.Text,Colors.Red)
If New > 0 Then If New > 0 Then
panelcajas.Visible = False panelcajas.Visible = False
Else If New = 0 Then Else If New = 0 Then
panelcajas.Visible = True panelcajas.Visible = True
End If End If
' If laCant2.IsInitialized Then ' If laCant2.IsInitialized Then
' totalcajasmaspiezas = laCant.Text + laCant2.Text ' totalcajasmaspiezas = laCant.Text + laCant2.Text
' Else ' Else
@@ -771,7 +760,6 @@ Private Sub et_pCant_TextChanged (Old As String, New As String)
Subs.actualizaProducto(Subs.traeAlmacen, precio, laCant.Text, Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,0,0) Subs.actualizaProducto(Subs.traeAlmacen, precio, laCant.Text, Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,0,0)
cuentaProds cuentaProds
End If End If
' If New <> "" And New.SubString2(0,0) = "0" Then ' If New <> "" And New.SubString2(0,0) = "0" Then
' New.SubString(1) ' New.SubString(1)
' End If ' End If
@@ -781,7 +769,6 @@ Private Sub et_pCant_TextChanged (Old As String, New As String)
' laCant.Text = New.SubString(1) ' laCant.Text = New.SubString(1)
' Log(laCant.Text) ' Log(laCant.Text)
' End If ' End If
If 1 = 1 Then If 1 = 1 Then
Private cs As CSBuilder Private cs As CSBuilder
cs.Initialize cs.Initialize
@@ -792,7 +779,6 @@ Private Sub et_pCant_TextChanged (Old As String, New As String)
invActualizado = Subs.traeinventario(id) invActualizado = Subs.traeinventario(id)
Log(Subs.traeinventario(id)) Log(Subs.traeinventario(id))
' End If ' End If
If New = "" Then New = 0 If New = "" Then New = 0
If clv_prods_ll.GetValue(index).As(Map).Get("precio_caja").As(Float) = 0 Or clv_prods_ll.GetValue(index).As(Map).Get("conversion").As(Int) = 1 Then If clv_prods_ll.GetValue(index).As(Map).Get("precio_caja").As(Float) = 0 Or clv_prods_ll.GetValue(index).As(Map).Get("conversion").As(Int) = 1 Then
Private maxcajas As Int = 0 Private maxcajas As Int = 0
@@ -824,7 +810,6 @@ Sub b_terminar1_Click
' Log("b_terminar1_Click") ' Log("b_terminar1_Click")
' ya_entro = "0" : Log("ya_entro=1") ' ya_entro = "0" : Log("ya_entro=1")
B4XPages.MainPage.skmt.ExecNonQuery2("delete from PEDIDO WHERE PE_PRONOMBRE = ? ", Array As Object("N/A") ) B4XPages.MainPage.skmt.ExecNonQuery2("delete from PEDIDO WHERE PE_PRONOMBRE = ? ", Array As Object("N/A") )
lv_promos.Visible = False lv_promos.Visible = False
clv_prods_ll.AsView.Visible = False clv_prods_ll.AsView.Visible = False
lv_catalogos.Visible = True lv_catalogos.Visible = True
@@ -834,7 +819,6 @@ Sub b_terminar1_Click
Private c_prods As Cursor=B4XPages.MainPage.skmt.ExecQuery("select PE_PRONOMBRE,PE_COSTO_TOT, PE_CANT, PE_FOLIO, PE_CEDIS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_CEDIS, PE_PRONOMBRE") Private c_prods As Cursor=B4XPages.MainPage.skmt.ExecQuery("select PE_PRONOMBRE,PE_COSTO_TOT, PE_CANT, PE_FOLIO, PE_CEDIS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_CEDIS, PE_PRONOMBRE")
If c_prods.RowCount > 0 Then If c_prods.RowCount > 0 Then
Private cs As CSBuilder Private cs As CSBuilder
vamoaver.Initialize vamoaver.Initialize
For i=0 To c_prods.RowCount -1 For i=0 To c_prods.RowCount -1
cs.Initialize cs.Initialize
@@ -845,7 +829,6 @@ Sub b_terminar1_Click
label1.TextColor = Colors.Black label1.TextColor = Colors.Black
label1.color = Colors.White label1.color = Colors.White
Private textColor As Int = Colors.black Private textColor As Int = Colors.black
If c_prods.GetString("PE_FOLIO") = "VENTA" Then If c_prods.GetString("PE_FOLIO") = "VENTA" Then
textColor = Colors.RGB(48,3,195) textColor = Colors.RGB(48,3,195)
Else If c_prods.GetString("PE_FOLIO") = "PREVENTA" Or c_prods.GetString("PE_FOLIO") = "ABORDO" Or c_prods.GetString("PE_FOLIO") = "RECARGA" Then Else If c_prods.GetString("PE_FOLIO") = "PREVENTA" Or c_prods.GetString("PE_FOLIO") = "ABORDO" Or c_prods.GetString("PE_FOLIO") = "RECARGA" Then
@@ -860,7 +843,6 @@ Sub b_terminar1_Click
label2 = lv_prodsPedido.TwoLinesLayout.SecondLabel label2 = lv_prodsPedido.TwoLinesLayout.SecondLabel
label2.TextSize = 10 label2.TextSize = 10
label2.TextColor = Colors.Blue label2.TextColor = Colors.Blue
lv_prodsPedido.AddTwoLines(cs.Color(textColor).append(c_prods.GetString("PE_PRONOMBRE")).pop,"Cantidad #"& c_prods.GetString("PE_CANT")& " SubTotal $"& c_prods.GetString("PE_COSTO_TOT")& " Folio "& c_prods.GetString("PE_FOLIO")) lv_prodsPedido.AddTwoLines(cs.Color(textColor).append(c_prods.GetString("PE_PRONOMBRE")).pop,"Cantidad #"& c_prods.GetString("PE_CANT")& " SubTotal $"& c_prods.GetString("PE_COSTO_TOT")& " Folio "& c_prods.GetString("PE_FOLIO"))
vamoaver.Add(c_prods.GetString("PE_FOLIO")) vamoaver.Add(c_prods.GetString("PE_FOLIO"))
folio = c_prods.GetString("PE_FOLIO") folio = c_prods.GetString("PE_FOLIO")
@@ -1135,12 +1117,9 @@ Private Sub clv_prods_ll_VisibleRangeChanged (FirstIndex As Int, LastIndex As In
' b_prodMas.Enabled = False ' b_prodMas.Enabled = False
b_prodMenos.Enabled = False b_prodMenos.Enabled = False
End If End If
End If End If
Private precio As String=NumberFormat2(clv_prods_ll.GetValue(i).As(Map).Get("precio").As(Double),1,2,2,False) Private precio As String=NumberFormat2(clv_prods_ll.GetValue(i).As(Map).Get("precio").As(Double),1,2,2,False)
' Log(clv_prods_ll.GetValue(i).As(Map)) ' Log(clv_prods_ll.GetValue(i).As(Map))
c = Starter.skmt.ExecQuery2("SELECT PE_BCAJAS FROM PEDIDO WHERE PE_PROID = ? AND PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA)",Array As String(clv_prods_ll.GetValue(i).As(Map).Get("id"))) c = Starter.skmt.ExecQuery2("SELECT PE_BCAJAS FROM PEDIDO WHERE PE_PROID = ? AND PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA)",Array As String(clv_prods_ll.GetValue(i).As(Map).Get("id")))
' Log(clv_prods_ll.GetValue(i).As(Map).Get("id")) ' Log(clv_prods_ll.GetValue(i).As(Map).Get("id"))
If c.RowCount = 0 Then If c.RowCount = 0 Then
@@ -1158,7 +1137,6 @@ Private Sub clv_prods_ll_VisibleRangeChanged (FirstIndex As Int, LastIndex As In
p_botMasMenc.Visible = True p_botMasMenc.Visible = True
End If End If
End If End If
' If clv_prods_ll.GetValue(i).As(Map).Get("b_caja").As(String) = "0" Then ' If clv_prods_ll.GetValue(i).As(Map).Get("b_caja").As(String) = "0" Then
' If clv_prods_ll.GetValue(i).As(Map).Get("cant") <> Null Then et_pCant.Text = clv_prods_ll.GetValue(i).As(Map).Get("cant") ' If clv_prods_ll.GetValue(i).As(Map).Get("cant") <> Null Then et_pCant.Text = clv_prods_ll.GetValue(i).As(Map).Get("cant")
' p_botMasMen.Visible = True ' p_botMasMen.Visible = True
@@ -1193,8 +1171,6 @@ Private Sub clv_prods_ll_VisibleRangeChanged (FirstIndex As Int, LastIndex As In
If clv_prods_ll.GetValue(i).As(Map).Get("cant").As(Int) = 0 Then If clv_prods_ll.GetValue(i).As(Map).Get("cant").As(Int) = 0 Then
Log("Aqui debemos ponerlo invisible") Log("Aqui debemos ponerlo invisible")
p_botMasMenc.Visible = False p_botMasMenc.Visible = False
Else
End If End If
' p_botMasMenc.Visible = False ' p_botMasMenc.Visible = False
End If End If
@@ -1247,11 +1223,12 @@ End Sub
Sub LlenaProdsLL(p As ResultSet) Sub LlenaProdsLL(p As ResultSet)
Log("Iniciamos LlenaProdsLL") Log("Iniciamos LlenaProdsLL")
listaProds.Initialize listaProds.Initialize
If hayPedido Then 'Si hay pedido obtenemos las cantidades de los productos para agregarlos al CLV. If Subs.hayPedido Then 'Si hay pedido obtenemos las cantidades de los productos para agregarlos al CLV.
Log("Hay pedido")
Dim cantsMap As Map Dim cantsMap As Map
cantsMap.Initialize cantsMap.Initialize
Dim pe As ResultSet = B4XPages.MainPage.skmt.ExecQuery($"select PE_PROID, PE_CANT, PE_CANTC, PE_BCAJAS from PEDIDO where PE_CLIENTE = '${clienteId}' and PE_CEDIS = '${Subs.traeAlmacen}' and PE_FOLIO = '${B4XPages.MainPage.tipo_venta}'"$) Dim pe As ResultSet = B4XPages.MainPage.skmt.ExecQuery($"select PE_PROID, PE_CANT, PE_CANTC, PE_BCAJAS from PEDIDO where PE_CLIENTE = '${clienteId}' and PE_CEDIS = '${Subs.traeAlmacen}' and PE_FOLIO = '${B4XPages.MainPage.tipo_venta}'"$)
' LogColor("Ponemos productos de pedido anterior: "&pe.RowCount, Colors.red) LogColor("Ponemos productos de pedido anterior: "&pe.RowCount, Colors.red)
Do While pe.NextRow Do While pe.NextRow
Private cant As Int = 0 Private cant As Int = 0
If pe.GetString("PE_BCAJAS") = 0 Then If pe.GetString("PE_BCAJAS") = 0 Then
@@ -1265,19 +1242,17 @@ Sub LlenaProdsLL(p As ResultSet)
End If End If
' Log(p.IsInitialized) ' Log(p.IsInitialized)
If p.IsInitialized Then If p.IsInitialized Then
' Log("YA HAY RESULSET") Log("YA HAY RESULSET")
Else Else
' Log("NO HAY RESULSET") Log("NO HAY RESULSET")
LogColor(Starter.tabla,Colors.blue) LogColor(Starter.tabla,Colors.blue)
' Dim p As ResultSet = B4XPages.MainPage.skmt.ExecQuery($"select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD from ${Starter.tabla} where CAT_GP_PRECIO > 0 And CAT_GP_ALMACEN > 0 And CAT_GP_CLASIF <> 'PROMOS' order by CAT_GP_NOMBRE"$) ' Dim p As ResultSet = B4XPages.MainPage.skmt.ExecQuery($"select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD from ${Starter.tabla} where CAT_GP_PRECIO > 0 And CAT_GP_ALMACEN > 0 And CAT_GP_CLASIF <> 'PROMOS' order by CAT_GP_NOMBRE"$)
Dim p As ResultSet = B4XPages.MainPage.skmt.ExecQuery($"select distinct CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD, CAT_DP_CONVERSION1, CAT_DP_PRECIO4, PE_BCAJAS from ${Starter.tabla} LEFT JOIN PEDIDO ON CAT_GP_ID = PE_PROID where CAT_GP_PRECIO > 0 And CAT_GP_ALMACEN > 0 And CAT_GP_CLASIF <> 'PROMOS' union all select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD, CAT_DP_CONVERSION1, CAT_DP_PRECIO4 , PE_BCAJAS from ${Starter.tabla} LEFT JOIN PEDIDO ON CAT_GP_ID = PE_PROID where CAT_GP_PRECIO > 0 And CAT_GP_ALMACEN = 0 And CAT_GP_CLASIF <> 'PROMOS' and cat_gp_id in (select pe_proid from pedido where pe_cliente in (select cuenta from cuentaa)) order by 2"$) Dim p As ResultSet = B4XPages.MainPage.skmt.ExecQuery($"select distinct CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD, CAT_DP_CONVERSION1, CAT_DP_PRECIO4, PE_BCAJAS from ${Starter.tabla} LEFT JOIN PEDIDO ON CAT_GP_ID = PE_PROID where CAT_GP_PRECIO > 0 And CAT_GP_ALMACEN > 0 And CAT_GP_CLASIF <> 'PROMOS' union all select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD, CAT_DP_CONVERSION1, CAT_DP_PRECIO4 , PE_BCAJAS from ${Starter.tabla} LEFT JOIN PEDIDO ON CAT_GP_ID = PE_PROID where CAT_GP_PRECIO > 0 And CAT_GP_ALMACEN = 0 And CAT_GP_CLASIF <> 'PROMOS' and cat_gp_id in (select pe_proid from pedido where pe_cliente in (select cuenta from cuentaa)) order by 2"$)
End If End If
Do While p.NextRow Do While p.NextRow
Private cant As Int = 0 Private cant As Int = 0
If hayPedido And cantsMap.ContainsKey(p.GetString("CAT_GP_ID")) Then If Subs.hayPedido And cantsMap.ContainsKey(p.GetString("CAT_GP_ID")) Then
clv_prods_ll.Clear
Log(p.GetString("CAT_GP_ID")) Log(p.GetString("CAT_GP_ID"))
cant = cantsMap.Get(p.GetString("CAT_GP_ID")) cant = cantsMap.Get(p.GetString("CAT_GP_ID"))
End If End If
@@ -1340,9 +1315,6 @@ Sub PCLV_HintRequested(Index As Int) As Object
Return word Return word
End Sub End Sub
Sub b_prodMenosc_Click Sub b_prodMenosc_Click
totalcajasmaspiezas = 0 totalcajasmaspiezas = 0
etCantHasFocus = False etCantHasFocus = False
@@ -1368,7 +1340,6 @@ Sub b_prodMenosc_Click
Private nombreX As String = Subs.traeProdNombre(id) Private nombreX As String = Subs.traeProdNombre(id)
Private conversion As String = clv_prods_ll.GetValue(index).As(Map).Get("conversion") Private conversion As String = clv_prods_ll.GetValue(index).As(Map).Get("conversion")
Private preciocaja As String = clv_prods_ll.GetValue(index).As(Map).Get("precio_caja") Private preciocaja As String = clv_prods_ll.GetValue(index).As(Map).Get("precio_caja")
Log(tmpMap) Log(tmpMap)
' prodsMap.Put(id, tmpMap) ' prodsMap.Put(id, tmpMap)
If laCant2.Text = 0 Then prodsMap.Remove(id) If laCant2.Text = 0 Then prodsMap.Remove(id)
@@ -1412,14 +1383,12 @@ Sub b_prodMenosc_Click
If Subs.totalPedido < 1 Then laCant2.Text = "0" If Subs.totalPedido < 1 Then laCant2.Text = "0"
invTotal = totalcajasmaspiezas + Subs.traeinventario(id) invTotal = totalcajasmaspiezas + Subs.traeinventario(id)
' LogColor("InvTotal PRODMAS: " & invTotal, Colors.Red) ' LogColor("InvTotal PRODMAS: " & invTotal, Colors.Red)
End Sub End Sub
Sub b_prodMasc_Click Sub b_prodMasc_Click
etCantHasFocus = False etCantHasFocus = False
Root.RequestFocus Root.RequestFocus
' LogColor("b_prodMas_Click", Colors.Magenta) ' LogColor("b_prodMas_Click", Colors.Magenta)
Dim index As Int = clv_prods_ll.GetItemFromView(Sender) Dim index As Int = clv_prods_ll.GetItemFromView(Sender)
Dim pnl0 As B4XView = clv_prods_ll.GetPanel(index) Dim pnl0 As B4XView = clv_prods_ll.GetPanel(index)
Dim pnl As B4XView = pnl0.GetView(0) Dim pnl As B4XView = pnl0.GetView(0)
@@ -1474,14 +1443,12 @@ Sub b_prodMasc_Click
Else If laCant2.Text = 0 Then Else If laCant2.Text = 0 Then
panelpiezas.Visible = True panelpiezas.Visible = True
End If End If
' LogColor(laCant.Text,Colors.Red) ' LogColor(laCant.Text,Colors.Red)
' If laCant.IsInitialized Then ' If laCant.IsInitialized Then
' totalcajasmaspiezas = laCant.Text + laCant2.Text ' totalcajasmaspiezas = laCant.Text + laCant2.Text
' Else ' Else
' totalcajasmaspiezas = laCant2.Text ' totalcajasmaspiezas = laCant2.Text
' End If ' End If
' Subs.actualizaProducto(Subs.traeAlmacen,preciocaja,(laCant2.Text * conversion), Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,laCant2.Text,1) ' Subs.actualizaProducto(Subs.traeAlmacen,preciocaja,(laCant2.Text * conversion), Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,laCant2.Text,1)
Subs.actualizaProducto2(Subs.traeAlmacen,preciocaja,(laCant2.Text * conversion), Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,laCant2.Text,1) Subs.actualizaProducto2(Subs.traeAlmacen,preciocaja,(laCant2.Text * conversion), Subs.traeProdNombre(id), id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta,laCant2.Text,1)
cuentaProds cuentaProds
@@ -1529,7 +1496,6 @@ Private Sub et_pCantc_FocusChanged (HasFocus As Boolean)
' End If ' End If
invTotal = totalcajasmaspiezas + Subs.traeinventario(id) invTotal = totalcajasmaspiezas + Subs.traeinventario(id)
' LogColor("InvTotal PRODMAS: " & invTotal, Colors.Red) ' LogColor("InvTotal PRODMAS: " & invTotal, Colors.Red)
cuentaProds cuentaProds
End Sub End Sub
@@ -1554,7 +1520,6 @@ Private Sub et_pCantc_TextChanged (Old As String, New As String)
Dim panelpiezas As B4XView = pnl.GetView(2) Dim panelpiezas As B4XView = pnl.GetView(2)
Private conversion As String = clv_prods_ll.GetValue(index).As(Map).Get("conversion") Private conversion As String = clv_prods_ll.GetValue(index).As(Map).Get("conversion")
Private preciocaja As String = clv_prods_ll.GetValue(index).As(Map).Get("precio_caja") Private preciocaja As String = clv_prods_ll.GetValue(index).As(Map).Get("precio_caja")
invTotal = Subs.traeinventario(id) invTotal = Subs.traeinventario(id)
Log("inventario total "& invTotal) Log("inventario total "& invTotal)
If(New = "" Or New = Null Or New = "-") Then New = 0 If(New = "" Or New = Null Or New = "-") Then New = 0
@@ -1568,28 +1533,23 @@ Private Sub et_pCantc_TextChanged (Old As String, New As String)
pnl.GetView(2).Visible = True pnl.GetView(2).Visible = True
Log("ponemos en 0") Log("ponemos en 0")
End If End If
' Log($"inventario=${inv}"$) ' Log($"inventario=${inv}"$)
Log("inventario total despues de max "& invTotal) Log("inventario total despues de max "& invTotal)
If New = "" Then New = 0 If New = "" Then New = 0
If laCant2.Text = "" Then laCant2.Text = 0 If laCant2.Text = "" Then laCant2.Text = 0
' LogColor("la cant2 " &laCant2.Text,Colors.Red) ' LogColor("la cant2 " &laCant2.Text,Colors.Red)
If New > 0 Then If New > 0 Then
Log("lo ocultamos") Log("lo ocultamos")
panelpiezas.Visible = False panelpiezas.Visible = False
Else If New = 0 Then Else If New = 0 Then
panelpiezas.Visible = True panelpiezas.Visible = True
End If End If
' If laCant.IsInitialized Then ' If laCant.IsInitialized Then
' totalcajasmaspiezas = laCant.Text + laCant2.Text ' totalcajasmaspiezas = laCant.Text + laCant2.Text
' Else ' Else
' totalcajasmaspiezas = laCant2.Text ' totalcajasmaspiezas = laCant2.Text
' End If ' End If
Log("InvTotal: " & invTotal) Log("InvTotal: " & invTotal)
If Not(Old = "0" And New = "") And laCant2.Text <> Null And laCant2.Text <> "" And etCantHasFocus Then If Not(Old = "0" And New = "") And laCant2.Text <> Null And laCant2.Text <> "" And etCantHasFocus Then
If invTotal - (laCant2.Text * conversion) >= 0 Then If invTotal - (laCant2.Text * conversion) >= 0 Then
LogColor("validacion inventariio " & (invTotal - (laCant2.Text * conversion)), Colors.Blue) LogColor("validacion inventariio " & (invTotal - (laCant2.Text * conversion)), Colors.Blue)
@@ -1603,8 +1563,6 @@ Private Sub et_pCantc_TextChanged (Old As String, New As String)
End If End If
End If End If
LogColor("la cant2 " & laCant2.Text,Colors.Green) LogColor("la cant2 " & laCant2.Text,Colors.Green)
' If New <> "" And New.SubString2(0,0) = "0" Then ' If New <> "" And New.SubString2(0,0) = "0" Then
' New.SubString(1) ' New.SubString(1)
' End If ' End If
@@ -1614,7 +1572,6 @@ Private Sub et_pCantc_TextChanged (Old As String, New As String)
' laCant.Text = New.SubString(1) ' laCant.Text = New.SubString(1)
' Log(laCant.Text) ' Log(laCant.Text)
' End If ' End If
If 1 = 1 Then If 1 = 1 Then
Private cs As CSBuilder Private cs As CSBuilder
cs.Initialize cs.Initialize
@@ -1625,7 +1582,6 @@ Private Sub et_pCantc_TextChanged (Old As String, New As String)
invActualizado = Subs.traeinventario(id) invActualizado = Subs.traeinventario(id)
Log(Subs.traeinventario(id)) Log(Subs.traeinventario(id))
' End If ' End If
If New = "" Then New = 0 If New = "" Then New = 0
If clv_prods_ll.GetValue(index).As(Map).Get("precio_caja").As(Float) = 0 Or clv_prods_ll.GetValue(index).As(Map).Get("conversion").As(Int) = 1 Then If clv_prods_ll.GetValue(index).As(Map).Get("precio_caja").As(Float) = 0 Or clv_prods_ll.GetValue(index).As(Map).Get("conversion").As(Int) = 1 Then
Private maxcajas2 As Int = 0 Private maxcajas2 As Int = 0

View File

@@ -32,24 +32,27 @@ Private Sub B4XPage_Created (Root1 As B4XView)
If File.Exists(ruta, "kmt.db") = False Then If File.Exists(ruta, "kmt.db") = False Then
File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db") File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db")
End If End If
c = B4XPages.MainPage.skmt.ExecQuery("select PC_CLIENTE,PC_MONTO,PC_NOART FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc") ' c = B4XPages.MainPage.skmt.ExecQuery("select PC_CLIENTE,PC_MONTO,PC_NOART FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc")
ListView1.TwoLinesLayout.ItemHeight = 50dip
ListView1.Clear ListView1.Clear
If c.RowCount>0 Then ' If c.RowCount>0 Then
For i=0 To c.RowCount -1 ' For i=0 To c.RowCount -1
c.Position=i ' c.Position=i
Dim label1 As Label ' Dim label1 As Label
label1 = ListView1.TwoLinesLayout.Label ' label1 = ListView1.TwoLinesLayout.Label
label1.TextSize = 10 ' label1.TextSize = 10
label1.TextColor = Colors.Black ' label1.TextColor = Colors.Black
Dim label2 As Label ' Dim label2 As Label
label2 = ListView1.TwoLinesLayout.SecondLabel ' label2 = ListView1.TwoLinesLayout.SecondLabel
label2.TextSize = 13 ' label2.TextSize = 12
label2.TextColor = Colors.Blue ' label2.TextColor = Colors.Blue
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),"Cantidad #"& c.GetString("PC_NOART")& " SubTotal $"& c.GetString("PC_MONTO")) ' ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),"Cantidad #"& c.GetString("PC_NOART")& " Monto de venta $"& c.GetString("PC_MONTO"))
Next ' Next
End If ' End If
p_ticketsdia.Height = Root.Height
ListView1.Height = p_ticketsdia.Height * 0.8
ListView1.Width = Root.Width * 0.9
b_noventa.Top = Root.Height - b_noventa.Height - 20dip
End Sub End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. 'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
@@ -58,7 +61,6 @@ Sub B4XPage_Appear
nombre_boton = "NOVENTA" nombre_boton = "NOVENTA"
c=B4XPages.MainPage.skmt.ExecQuery("select PC_CLIENTE, PC_MONTO, PC_NOART, (select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pc_cliente UNION select CAT_CL_NOMBRE from kmt_info2 where cat_cl_codigo = pc_cliente ) as NOMBRE FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc") c=B4XPages.MainPage.skmt.ExecQuery("select PC_CLIENTE, PC_MONTO, PC_NOART, (select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pc_cliente UNION select CAT_CL_NOMBRE from kmt_info2 where cat_cl_codigo = pc_cliente ) as NOMBRE FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc")
Dim noArticulos As Int = 0 Dim noArticulos As Int = 0
ListView1.Clear ListView1.Clear
If c.RowCount>0 Then If c.RowCount>0 Then
For i=0 To c.RowCount -1 For i=0 To c.RowCount -1
@@ -69,15 +71,18 @@ Sub B4XPage_Appear
' Log(x.GetString("PC_NOART")) ' Log(x.GetString("PC_NOART"))
noArticulos = x.GetString("PC_NOART") noArticulos = x.GetString("PC_NOART")
End If End If
Dim label1 As Label Dim label1 As B4XView
label1 = ListView1.TwoLinesLayout.Label label1 = ListView1.TwoLinesLayout.Label
label1.TextSize = 10 label1.Height = 1dip
label1.TextColor = Colors.Black label1.TextSize = 1
Dim label2 As Label label1.TextColor = Colors.White
Dim label2 As B4XView
label2 = ListView1.TwoLinesLayout.SecondLabel label2 = ListView1.TwoLinesLayout.SecondLabel
label2.TextSize = 13 ListView1.TwoLinesLayout.SecondLabel.SetLayout(0,0,ListView1.Width,50dip)
label2.TextSize = 12
label2.TextColor = Colors.Blue label2.TextColor = Colors.Blue
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& noArticulos & " SubTotal $"& c.GetString("PC_MONTO")) ' ListView1.AddSingleLine(c.GetString("NOMBRE") &" Cantidad #"& noArticulos & " Monto de venta $"& c.GetString("PC_MONTO"))
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& noArticulos & " Monto preventa $"& c.GetString("PC_MONTO"))
Next Next
End If End If
c.Close c.Close
@@ -86,6 +91,7 @@ End Sub
Sub Regresar_Click Sub Regresar_Click
B4XPages.ShowPage("cliente") B4XPages.ShowPage("cliente")
End Sub End Sub
Sub Activity_KeyPress (key As Int) As Boolean Sub Activity_KeyPress (key As Int) As Boolean
' BACK key pressed ' BACK key pressed
If key=KeyCodes.KEYCODE_BACK Then If key=KeyCodes.KEYCODE_BACK Then
@@ -96,7 +102,9 @@ Sub Activity_KeyPress (key As Int) As Boolean
' Returning False signals the system to handle the key ' Returning False signals the system to handle the key
Return False Return False
End Sub End Sub
Sub ListView1_ItemLongClick (Position As Int, Value As Object) Sub ListView1_ItemLongClick (Position As Int, Value As Object)
Log(Value)
B4XPages.MainPage.skmt.ExecNonQuery("delete from CUENTAA") B4XPages.MainPage.skmt.ExecNonQuery("delete from CUENTAA")
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(Value)) B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(Value))
DateTime.TimeFormat = "HHmmss" DateTime.TimeFormat = "HHmmss"
@@ -127,13 +135,15 @@ Sub b_noventa_Click
c.Position=i c.Position=i
Dim label1 As Label Dim label1 As Label
label1 = ListView1.TwoLinesLayout.Label label1 = ListView1.TwoLinesLayout.Label
label1.TextSize = 15 label1.TextSize = 10
label1.Height = 0
label1.TextColor = Colors.Black label1.TextColor = Colors.Black
Dim label2 As Label Dim label2 As Label
label2 = ListView1.TwoLinesLayout.SecondLabel label2 = ListView1.TwoLinesLayout.SecondLabel
label2.TextSize = 10 label2.TextSize = 12
label2.TextColor = Colors.Blue label2.TextColor = Colors.Blue
ListView1.AddTwoLines(c.GetString("NV_CLIENTE"),c.GetString("NOMBRE") &" Motivo #"& c.GetString("NV_MOTIVO")& " Comentario $"& c.GetString("NV_COMM")) ListView1.AddTwoLines("",c.GetString("NOMBRE") &" Causa #"& c.GetString("NV_MOTIVO")& " Comentario: " & c.GetString("NV_COMM"))
' ListView1.AddSingleLine(c.GetString("NOMBRE") &" Causa #"& c.GetString("NV_MOTIVO")& " Comentario: " & c.GetString("NV_COMM"))
Next Next
End If End If
Else Else
@@ -147,13 +157,15 @@ Sub b_noventa_Click
c.Position=i c.Position=i
Dim label1 As Label Dim label1 As Label
label1 = ListView1.TwoLinesLayout.Label label1 = ListView1.TwoLinesLayout.Label
label1.TextSize = 15 label1.TextSize = 10
label1.Height = 0
label1.TextColor = Colors.Black label1.TextColor = Colors.Black
Dim label2 As Label Dim label2 As Label
label2 = ListView1.TwoLinesLayout.SecondLabel label2 = ListView1.TwoLinesLayout.SecondLabel
label2.TextSize = 10 label2.TextSize = 12
label2.TextColor = Colors.Blue label2.TextColor = Colors.Blue
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& c.GetString("PC_NOART")& " SubTotal $"& c.GetString("PC_MONTO")) ' ListView1.AddSingleLine(c.GetString("NOMBRE") &" Cantidad #"& c.GetString("PC_NOART")& " Monto de venta $"& c.GetString("PC_MONTO"))
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& c.GetString("PC_NOART")& " Monto preventa $"& c.GetString("PC_MONTO"))
Next Next
End If End If
c.Close c.Close

View File

@@ -42,17 +42,17 @@ Private Sub FindCamera (frontCamera As Boolean) As CameraInfoAndId
Dim ci As CameraInfoAndId Dim ci As CameraInfoAndId
Dim cameraInfo As Object Dim cameraInfo As Object
Dim cameraValue As Int Dim cameraValue As Int
Log("findCamera") ' Log("findCamera")
If frontCamera Then cameraValue = 1 Else cameraValue = 0 If frontCamera Then cameraValue = 1 Else cameraValue = 0
cameraInfo = r.CreateObject("android.hardware.Camera$CameraInfo") cameraInfo = r.CreateObject("android.hardware.Camera$CameraInfo")
Dim numberOfCameras As Int = r.RunStaticMethod("android.hardware.Camera", "getNumberOfCameras", Null, Null) Dim numberOfCameras As Int = r.RunStaticMethod("android.hardware.Camera", "getNumberOfCameras", Null, Null)
Log(r.target) ' Log(r.target)
Log(numberOfCameras) ' Log(numberOfCameras)
For i = 0 To numberOfCameras - 1 For i = 0 To numberOfCameras - 1
r.RunStaticMethod("android.hardware.Camera", "getCameraInfo", Array As Object(i, cameraInfo), _ r.RunStaticMethod("android.hardware.Camera", "getCameraInfo", Array As Object(i, cameraInfo), _
Array As String("java.lang.int", "android.hardware.Camera$CameraInfo")) Array As String("java.lang.int", "android.hardware.Camera$CameraInfo"))
r.target = cameraInfo r.target = cameraInfo
Log("facing: " & r.GetField("facing") & ", " & cameraValue) ' Log("facing: " & r.GetField("facing") & ", " & cameraValue)
If r.GetField("facing") = cameraValue Then If r.GetField("facing") = cameraValue Then
ci.cameraInfo = r.target ci.cameraInfo = r.target
ci.Id = i ci.Id = i
@@ -79,7 +79,7 @@ Private Sub SetDisplayOrientation
Else Else
previewResult = (orientation - degrees + 360) Mod 360 previewResult = (orientation - degrees + 360) Mod 360
result = previewResult result = previewResult
Log(previewResult) ' Log(previewResult)
End If End If
r.target = nativeCam r.target = nativeCam
r.RunMethod2("setDisplayOrientation", previewResult, "java.lang.int") r.RunMethod2("setDisplayOrientation", previewResult, "java.lang.int")

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -194,3 +194,59 @@ Sub JobDone(Job As HttpJob)
Log(LastException) Log(LastException)
End Try End Try
End Sub End Sub
Sub mandaForma(almacen_ As String, ruta_ As String, cliente_ As String, imagen_ As String)
' 1. Inicializa un nuevo HttpJob
Dim job As HttpJob
job.Initialize("", Me)
' 2. Define la URL del servidor
Dim url As String = "https://keymon.net/ADM/POST_IMAGEN.aspx"
' 3. Crea un Map para los campos de texto del formulario
Dim params As Map
params.Initialize
params.Put("Almacen", almacen_)
params.Put("Ruta", ruta_)
params.Put("Cliente", cliente_)
params.Put("btnUpload", "Subir Imagen") ' El botón de submit también envía su valor
' --- CAMPOS OCULTOS DE ASP.NET ---
' Estos valores suelen ser dinámicos. Para este ejemplo, los ponemos fijos.
' Si falla, es posible que primero necesites hacer un GET a la página para obtener los valores actualizados.
' params.Put("__VIEWSTATE", "/wEPDwUKMjA1ODU4NjY1MGRkhSExd19qC1l3GdX6jvTnbM9pxPQR8urGAvs76UsqsDU=")
' params.Put("__VIEWSTATEGENERATOR", "6050E242")
' params.Put("__EVENTVALIDATION", "/wEdAAX5q9hoCUC745WBVO+/1ZWhraEDRZI2xn7OC3a5LAUoRlfyZCZSVcs/gLubOxTf2dCyEN4makXuwRjezU2tU1hn5vhDofrSSRcWtmHPtJVt4HHStaEfV6fkOi3uRRJDHybxwaB9FuVcVFxi7uoxeGMX")
' 4. Crea una lista de archivos a subir
Dim files As List
files.Initialize
' Creamos el objeto MultipartFileData para nuestra imagen
' KeyName: Es el atributo "name" del input en HTML ("Imagen")
' ContentType: El tipo de archivo
Dim mfd As MultipartFileData = Subs.CreateMultipartFileData(File.DirInternal, imagen_, "Imagen", "image/jpeg")
files.Add(mfd)
' 5. Realiza la petición POST de tipo multipart
job.PostMultipart(url, params, files)
' 6. Espera a que el trabajo termine
Wait For (job) JobDone(job As HttpJob)
If job.Success Then
' El servidor respondió correctamente (HTTP 200 OK)
Log("Respuesta del servidor: " & job.GetString)
skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FOTO_INICIAL"))
skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FOTO_INICIAL", "ENVIADA"))
' MsgboxAsync("¡Imagen subida con éxito!", "Completado")
Else
' Hubo un error en la conexión o el servidor respondió con un error
Log("Error al subir la imagen: " & job.ErrorMessage)
' MsgboxAsync("Error: " & job.ErrorMessage, "Fallo")
End If
' Libera los recursos del job
job.Release
End Sub

View File

@@ -1616,3 +1616,14 @@ Sub traeUsarIntentBDWA As Boolean 'ignore
' Log($"cb_importarBDWA = ${BDWA}"$) ' Log($"cb_importarBDWA = ${BDWA}"$)
Return BDWA Return BDWA
End Sub End Sub
' Función de ayuda para crear el objeto MultipartFileData de forma más limpia
Sub CreateMultipartFileData(Dir As String, FileName As String, KeyName As String, ContentType As String) As MultipartFileData
Dim mfd As MultipartFileData
mfd.Initialize
mfd.Dir = Dir
mfd.FileName = FileName
mfd.KeyName = KeyName
mfd.ContentType = ContentType
Return mfd
End Sub

28
B4A/_juntaBas.ps1 Normal file
View File

@@ -0,0 +1,28 @@
# SCRIPT: _juntaBas.ps1 - Versión Saneada y Optimizada para LLM
$OutputFile="_CODIGO_COMPLETO_PARA_LLM.txt"
# Eliminar el archivo anterior si existe (IMPORTANTE)
Remove-Item -Path $OutputFile -ErrorAction SilentlyContinue
Write-Host "Iniciando fusion para LLM..."
# Itera sobre los archivos .bas, .b4a, .b4j
Get-ChildItem -Path ".\*" -Include @("*.bas", "*.b4a", "*.b4j") | ForEach-Object {
$currentFile = $_.Name
Write-Host "Procesando: $currentFile"
# --- ENCABEZADO ESTRUCTURADO Y COMENTADO EN B4X (Agregado al archivo) ---
Add-Content -Path $OutputFile -Value "`n'======================================================================================"
Add-Content -Path $OutputFile -Value $"// ARCHIVO_INICIO: ${currentFile}"
Add-Content -Path $OutputFile -Value "'======================================================================================`n"
# Vuelca el contenido del archivo
Get-Content -Encoding UTF8 -Path $_.FullName -Raw | Add-Content -Path $OutputFile
# --- DELIMITADOR DE FIN DE ARCHIVO (Agregado al archivo) ---
Add-Content -Path $OutputFile -Value "`n'======================================================================================"
Add-Content -Path $OutputFile -Value $"// ARCHIVO_FIN: ${currentFile}"
Add-Content -Path $OutputFile -Value "'======================================================================================`n"
}
Write-Host "`nProceso terminado. Se ha creado el archivo: $OutputFile"