diff --git a/B4A/B4XMainPage.bas b/B4A/B4XMainPage.bas deleted file mode 100644 index e249bd7..0000000 --- a/B4A/B4XMainPage.bas +++ /dev/null @@ -1,594 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=9.85 -@EndOfDesignText@ -#Region Shared Files -#CustomBuildAction: folders ready, %WINDIR%\System32\Robocopy.exe,"..\..\Shared Files" "..\Files" -'Ctrl + click to sync files: ide://run?file=%WINDIR%\System32\Robocopy.exe&args=..\..\Shared+Files&args=..\Files&FilesSync=True -'Ctrl + click to export as zip: ide://run?File=%B4X%\Zipper.jar&Args=Project.zip -'########################################################################################################### -'###################### PULL ############################################################# -'Ctrl + click ide://run?file=%WINDIR%\System32\cmd.exe&Args=/c&Args=..\..\gitpull.bat -'########################################################################################################### -'###################### PUSH ############################################################# -'Ctrl + click ide://run?file=%WINDIR%\System32\cmd.exe&Args=/c&Args=github&Args=..\..\ -'########################################################################################################### -#End Region - -Sub Class_Globals - Private Root As B4XView - Private xui As XUI - Public login As B4XMainPage - Public principal As C_Principal - Public clientes As C_Clientes - Public cliente As C_Cliente - Public productos As C_Productos - Public updateAvailable As C_updateAvailable - Public mapas As C_Mapas - Public nuevoCliente As C_NuevoCliente - Public ticketsDia As C_TicketsDia - Public noVenta As C_NoVenta - Public nota As C_Nota - Public pedidos As C_Pedidos - Public promos As C_Promos - Public historico As C_Historico - Public checklist As C_CheckList - - Dim reqManager As DBRequestManager - Dim ultimaActualizacionGPS As String = 235959 - Dim almacen, ruta As String - Dim user As EditText - Dim pass As EditText - Dim c As Cursor - Dim D As Cursor - Dim existe As String - Dim paso1 As String - Dim IMEI As String - Dim alterno As String - Private b_menu As Button -' Dim PopupMenu As RSPopupMenu - Dim cmd As DBCommand - - Private IMEN As EditText - Private Entrar As Button - Private Panel1 As Panel - Private ImageView4 As ImageView - Private E_SERVER As EditText - Private B_SERVER As Button - Private B_FECHA As Button - Private CUANTOS As String - Private foto_g () As Byte - - Private ListView1 As ListView - Private ImageView1 As ImageView - Private Label1 As Label - Private B_BorrarFinDia As Button - Private b_fdCancelar As Button - Private b_findiaOk As Button - Private p_finDia As Panel - Private et_autSup As EditText - - 'prueba downloadfile - Dim ProgressBar1 As ProgressBar - Dim Label1 As Label - Dim btnDownload As Button - Dim btnCancel As Button - Private p_download As Panel - Private Label6 As Label - Dim logger As Boolean = True -End Sub - -Public Sub Initialize - B4XPages.GetManager.LogEvents = True - #if not(DEBUG) - Starter.logger = False - #end if -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - If Not(Starter.Logger) Then logger = False - Root = Root1 -' Root.LoadLayout("MainPage") - Root.LoadLayout("login") - B4XPages.SetTitle(Me, "Kelloggs Preventa") - login.Initialize - B4XPages.AddPage("Login", login) - principal.Initialize - B4XPages.AddPage("Principal", principal) - clientes.Initialize - B4XPages.AddPage("Clientes", clientes) - cliente.Initialize - B4XPages.AddPageAndCreate("Cliente", cliente) - productos.Initialize - B4XPages.AddPage("Productos", productos) - updateAvailable.Initialize - B4XPages.AddPage("updateAvailable", updateAvailable) - mapas.Initialize - B4XPages.AddPage("Mapas", mapas) - nuevoCliente.Initialize - B4XPages.AddPage("NuevoCliente", nuevoCliente) - ticketsDia.Initialize - B4XPages.AddPage("TicketsDia", ticketsDia) - noVenta.Initialize - B4XPages.AddPage("NoVenta", noVenta) - nota.Initialize - B4XPages.AddPage("Nota", nota) - pedidos.Initialize - B4XPages.AddPage("Pedidos", pedidos) - promos.Initialize - B4XPages.AddPage("Promos", promos) - historico.Initialize - B4XPages.AddPage("Historico", historico) - checklist.Initialize - B4XPages.AddPage("CheckList", checklist) - ruta = Starter.ruta - ruta = File.DirInternal - Starter.tiempos.Initialize - Dim sDate, sTime As String - DateTime.DateFormat = "yyyyMMdd" - sDate=DateTime.Date(DateTime.Now) - Starter.skmt.ExecNonQuery("DROP TABLE IF EXISTS PEDIDO3") - Starter.skmt.ExecNonQuery("CREATE TABLE PEDIDO3 (PE_PRECIO2 TEXT,PE_TIPO TEXT,PE_FOLIO NUMERIC,PE_DESC NUMERIC,PE_COSTO_SIN TEXT,PE_RUTA TEXT,PE_CEDIS TEXT,PE_COSTO_TOT NUMERIC,PE_COSTOU NUMERIC,PE_CANT NUMERIC,PE_PRONOMBRE TEXT,PE_PROID TEXT,PE_CLIENTE TEXT,PE_FECHA TEXT,PE_USUARIO TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS DESC_CLIENTES (DC_CL_CLIENTE TEXT, CAT_CL_DESCUENTO_SS TEXT, CAT_CL_DESCUENTO_RTEC TEXT, CAT_CL_DESCUENTO_PING TEXT, CAT_CL_TIPOCLIENTE TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA (HE_CLIE TEXT, HE_RES TEXT, HE_FECHA TEXT, HE_TIPO TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_DESCUENTOS_SKU (CAT_DS_CLIENTE TEXT, CAT_DS_PRODID TEXT, CAT_DS_PORCENTAJE TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENVIOS (HE_FECHA TEXT, HE_CUANTOS TEXT, HE_TIPO TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_ENCUESTA_PREGUNTA (CAT_EP_ID TEXT,CAT_EP_IDTIPOPREGUNTA TEXT,CAT_CE_DESCRIPCION TEXT,CAT_EP_PREGUNTA TEXT,CAT_EP_RES1_PRED TEXT,CAT_EP_RES2_PRED TEXT,CAT_EP_RES3_PRED TEXT,CAT_EP_ORDEN_PREGUNTA TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_FOTOS (HF_FOTO BLOB, HF_CUENTA TEXT, HF_IDENCUESTA TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CLIENTE_IMPRESO (CI_CUENTA TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_PROMO_MONTO (CPM_IDPROMO TEXT, CPM_MONTO TEXT, CPM_PROID TEXT, CPM_CLIENTE TEXT, CPM_CANT TEXT, CPM_RANGO TEXT, CPM_DESC TEXT)") - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_ENVIOS VALUES (?,0,?)", Array As Object(sTime, "PEDIDO")) - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_EXHIBIDORES2 (HIST_EX_ID_CLIENTE TEXT, HIST_EX_TIPO TEXT, HIST_EX_CANT TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_PROMO_WHATS(HIST_CLIENTE TEXT, HIST_RESPUESTA_PROMO)") - - - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CLIENTE_CARGA_DIA (CCD_CUENTA TEXT)") - - ''' PARA LO DE DOE--- - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_GUNAPROD_DOE (CAT_GP_ID TEXT,CAT_GP_NOMBRE TEXT,CAT_GP_IMP1 TEXT,CAT_GP_IMP2 TEXT,CAT_GP_PRECIO TEXT,CAT_GP_CLASIF TEXT,CAT_GP_STS TEXT,CAT_GP_TIPO TEXT,CAT_GP_SUBTIPO TEXT,CAT_GP_IMG TEXT,CAT_GP_ALMACEN TEXT,CAT_GP_TIPOPROD TEXT,CAT_GP_INICIATIVA TEXT,CAT_GP_DEV TEXT,CAT_GP_CODPROMO TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS PEDIDO_DOE (PE_PRECIO2 TEXT,PE_TIPO TEXT,PE_FOLIO NUMERIC,PE_DESC NUMERIC,PE_COSTO_SIN TEXT,PE_RUTA TEXT,PE_CEDIS TEXT,PE_COSTO_TOT NUMERIC,PE_COSTOU NUMERIC,PE_CANT NUMERIC,PE_PRONOMBRE TEXT,PE_PROID TEXT,PE_CLIENTE TEXT,PE_FECHA TEXT,PE_USUARIO TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS PEDIDOS_DOE_ENTREGA (PC_CLIENTE TEXT, PC_ENTREGA TEXT)") - ''' FIN DOE - - Try 'Intentamos usar "pragma_table_info" para revisar si existe la columna "IMPRESION" en la tabla - c=Starter.skmt.ExecQuery("SELECT COUNT(*) AS fCol FROM pragma_table_info('kmt_info') WHERE name='IMPRESION'") - c.Position = 0 - If c.GetString("fCol") = 0 Then 'Si no esta la columna FECHA la agregamos - Starter.skmt.ExecNonQuery("ALTER TABLE kmt_info ADD COLUMN IMPRESION INTEGER") - End If - Catch 'Si no funciona "pragma_table_info" lo hacemos con try/catch - Try - Starter.skmt.ExecNonQuery("ALTER TABLE kmt_info ADD COLUMN IMPRESION INTEGER") - Catch - Log(LastException) - End Try - End Try - If sDate = "20190523" Then - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("SERVER")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SERVER", Starter.server)) - End If - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("ULTIMOMODULO")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("ULTIMOMODULO", "MAIN")) - c=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SERVER")) - c.Position =0 - If c.GetString("CUANTOS") = 0 Then - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SERVER",Starter.server)) - Else - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SERVER")) - c.Position =0 - Starter.server = c.GetString("CAT_VA_VALOR") - reqManager.Initialize(Me, Starter.server) - End If - reqManager.Initialize(Me, Starter.server) -' Activity.LoadLayout("login") - Label1.Text = Application.VersionName - Log("Revisa permisos para external storage") - Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE) - Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) - If Result Then Log("Tenemos permisos de escritura externa.") - Log("TERMINA PERMISOS") - Log("Revisamos permisos para location") - Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION) - Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) - If Result Then - StartService(Tracker) - If logger Then Log("Start Tracker") - Else - ToastMessageShow("Sin permisos para GPS", True) - End If - Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_ACCESS_COARSE_LOCATION) - Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) - If Result Then - StartService(Tracker) - If logger Then Log("Start Tracker") - Else - ToastMessageShow("Sin permisos para GPS", True) - End If - Log("TERMINA PERMISOS LOC") - If logger Then LogColor("Revisa permisos Phone_State", Colors.Green) - Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_READ_PHONE_STATE) - Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) - If Result Then -' Dim Phn As PhoneId - IMEN.Text = "" - IMEI = "" - If logger Then LogColor($"////////////////// IMEI: ${IMEI} ////////////////// "$, Colors.Blue) - End If - Log("TERMINA PERMISOS Phone") - c=Starter.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS FROM TMP_INSPECCION_AUTO_DIARIA") - c.Position = 0 - CUANTOS = c.GetString("CUANTOS") - c.Close - If CUANTOS = 0 Then - Dim theDir As String - If File.IsDirectory("/","kmts") Then - theDir = "/kmts" - End If - Try - File.MakeDir(File.DirInternal,"kmts") - theDir = "/kmts" - LogColor(File.DirInternal, Colors.Red) - Catch - theDir = "" - End Try - Try - foto_g = Bit.InputStreamToBytes(File.OpenInput(File.DirAssets, "vista1.png")) - Dim SALIDA As OutputStream - SALIDA = File. OpenOutput (File.DirInternal&theDir, "FOTO1.jpg", False) - SALIDA.WriteBytes(foto_g, 0, foto_g.Length) - SALIDA.Close -' If Logger Then LogColor("** ** Creamos FOTO1.jpg en "&File.DirInternal, Colors.Blue) - Catch - Msgbox("No se puede crear el archivo de foto","Aviso") 'ignore - End Try - Try - foto_g = Bit.InputStreamToBytes(File.OpenInput(File.DirAssets, "vista3.png")) - Dim SALIDA As OutputStream - SALIDA = File. OpenOutput (File.DirInternal&theDir, "FOTO2.jpg", False) - SALIDA.WriteBytes(foto_g, 0, foto_g.Length) - SALIDA.Close - Catch - Msgbox("No se puede crear el archivo de foto","Aviso") 'ignore - End Try - Try - foto_g = Bit.InputStreamToBytes(File.OpenInput(File.DirAssets, "vista2.png")) - Dim SALIDA As OutputStream - SALIDA = File. OpenOutput (File.DirInternal&theDir, "FOTO3.jpg", False) - SALIDA.WriteBytes(foto_g, 0, foto_g.Length) - SALIDA.Close - Catch - Msgbox("No se puede crear el archivo de foto","Aviso") 'ignore - End Try - Try - foto_g = Bit.InputStreamToBytes(File.OpenInput(File.DirAssets, "vista4.png")) - Dim SALIDA As OutputStream - SALIDA = File. OpenOutput (File.DirInternal&theDir, "FOTO4.jpg", False) - SALIDA.WriteBytes(foto_g, 0, foto_g.Length) - SALIDA.Close - Catch - Msgbox("No se puede crear el archivo de foto","Aviso") 'ignore - End Try - End If -' Dim ph As Phone 'Get Id Device - Dim DeviceID As String = Starter.ph.GetSettings("android_id").ToUpperCase - If logger Then Log($"Marca: ${Starter.ph.manufacturer}, Modelo: ${Starter.ph.model}"$) - If logger Then LogColor($"////////////////// DeviceID: ${DeviceID} ////////////////// "$, Colors.Blue) - - - 'este codigo es para lo del menu -' PopupMenu.Initialize("PopupMenu", b_menu) -' PopupMenu.AddMenuItem(0, 0, "View") -' PopupMenu.AddMenuItem(1, 1, "Edit") -' PopupMenu.AddMenuItem(2, 2, "Details") -' PopupMenu.AddMenuItem(3, 3, "Remove") - ' menu fin - Subs.borraArribaDe100Errores -End Sub - -Sub B4XPage_Appear -' server = "http://keymon.com.mx:1782" -' server = "http://201.99.139.28:1782" -' server = "http://177.244.63.54:1782" - reqManager.Initialize(Me, Starter.server) - Starter.montoActual = 0 - Starter.clientesTotal = 0 - Starter.clientesVenta = 0 - Starter.clientesVisitados = 0 - almacen = 0 - Starter.rutaPreventa = 0 - Starter.CANTIDADPROD = 0 - c.Close - c=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("CODIGO")) - c.Position =0 - CUANTOS = c.GetString("CUANTOS") - c.Close - If CUANTOS > 0 Then - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("CODIGO")) - c.Position =0 - If c.GetString("CAT_VA_VALOR") = "743" Then - Entrar.Visible = True - End If - c.Close - Else - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("CODIGO","743")) - End If - c=Starter.skmt.ExecQuery2("select COUNT(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("MACIMP")) - c.Position =0 - If c.GetString("CUANTOS") = 0 Then - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MACIMP","0")) - End If - D=Starter.skmt.ExecQuery("select COUNT(*) AS CUANTOS from version") - D.Position=0 - If D.GetString("CUANTOS") > 0 Then - c=Starter.skmt.ExecQuery("select NOVERSION from version") - c.Position = 0 - If c.GetString("NOVERSION") = "2.1" Then - Starter.skmt.ExecNonQuery("delete from VERSION") - End If - c.Close - End If - D.Close - D=Starter.skmt.ExecQuery("select COUNT(*) AS CUANTOS from version") - D.Position=0 - If D.GetString("CUANTOS") > 0 Then - c=Starter.skmt.ExecQuery("select NOVERSION from version") - c.Position = 0 - If c.GetString("NOVERSION") <> "2.95" Then - Msgbox("INSTALAR NUEVO APK" ,"AVISO") 'ignore - B4XPage_Appear - End If - c.Close - End If -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - -Sub Entrar_Click - If user.Text = "ALTERNO" Then - c=Starter.skmt.ExecQuery2("select CAT_CO_CONFIGURACION, CAT_CO_RESULTADO from CAT_CODIGOS where CAT_CO_PONDERACION =1 AND CAT_CO_ACCION = ?", Array As String("SERVER")) - c.Position =0 - Starter.server = c.GetString("CAT_CO_CONFIGURACION") - alterno = c.GetString("CAT_CO_RESULTADO") - c.Close - If alterno = 1 Then - Starter.skmt.ExecNonQuery2("UPDATE CAT_CODIGOS SET CAT_CO_PONDERACION = 1 WHERE CAT_CO_ACCION = ? AND CAT_CO_RESULTADO = 2", Array As String ("SERVER")) - Starter.skmt.ExecNonQuery2("UPDATE CAT_CODIGOS SET CAT_CO_PONDERACION = 0 WHERE CAT_CO_ACCION = ? AND CAT_CO_RESULTADO = 1", Array As String ("SERVER")) - Else if alterno = 2 Then - Starter.skmt.ExecNonQuery2("UPDATE CAT_CODIGOS SET CAT_CO_PONDERACION = 1 WHERE CAT_CO_ACCION = ? AND CAT_CO_RESULTADO = 1", Array As String ("SERVER")) - Starter.skmt.ExecNonQuery2("UPDATE CAT_CODIGOS SET CAT_CO_PONDERACION = 0 WHERE CAT_CO_ACCION = ? AND CAT_CO_RESULTADO = 2", Array As String ("SERVER")) - End If - c=Starter.skmt.ExecQuery2("select CAT_CO_CONFIGURACION, CAT_CO_RESULTADO from CAT_CODIGOS where CAT_CO_PONDERACION =1 AND CAT_CO_ACCION = ?", Array As String("SERVER")) - c.Position =0 - Starter.server = c.GetString("CAT_CO_CONFIGURACION") - user.Text = Starter.server - c.Close - reqManager.Initialize(Me, Starter.server) - else if user.Text = "KMTSKLL1" Then - Starter.skmt.ExecNonQuery("delete from usuarioa") - Starter.skmt.ExecNonQuery2("INSERT INTO USUARIOA VALUES (?,?)", Array As Object(user.Text, pass.Text)) - Starter.skmt.ExecNonQuery("delete from cat_almacen") - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_ALMACEN(ID_ALMACEN) VALUES (?)", Array As Object (pass.Text)) - Starter.skmt.ExecNonQuery("delete from VERSION") - Starter.skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object ("2.95")) - B4XPages.ShowPage("Principal") - End If - c=Starter.skmt.ExecQuery2("select count(*) as EXISTE1 from usuarioa where usuario = ?", Array As String(user.Text)) - c.Position=0 - existe = c.GetString("EXISTE1") - 'existe = 1 - If existe = 0 Then - 'skmt.ExecNonQuery("delete from usuarioa") - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "select_usuario_guna_KELL" - cmd.Parameters = Array As Object(user.Text, pass.Text) - reqManager.ExecuteQuery(cmd , 0, "usuario") - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "select_version_KELL" - reqManager.ExecuteQuery(cmd , 0, "version") - Else - B4XPages.ShowPage("Principal") - End If -End Sub - -Sub JobDone(Job As HttpJob) - If Job.Success = False Then - ToastMessageShow("Error: " & Job.ErrorMessage, True) - Else - If logger Then LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211110 - If Job.JobName = "DBRequest" Then - Dim result As DBResult = reqManager.HandleJob(Job) - If result.Tag = "version" Then 'query tag - For Each records() As Object In result.Rows - Starter.skmt.ExecNonQuery("delete from VERSION") - Dim CAT_VE_VERSION As String = records(result.Columns.Get("CAT_VE_VERSION")) - Starter.skmt.ExecNonQuery("delete from VERSION") - Starter.skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object (CAT_VE_VERSION)) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim result As DBResult = reqManager.HandleJob(Job) - If result.Tag = "agencia" Then 'query tag - For Each records() As Object In result.Rows - Dim ID_ALMACEN As String = records(result.Columns.Get("ID_ALMACEN")) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim result As DBResult = reqManager.HandleJob(Job) - If result.Tag = "fecha" Then 'query tag - For Each records() As Object In result.Rows - Starter.FECHA_HOY = records(result.Columns.Get("FECHA")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FECHA")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FECHA", Starter.FECHA_HOY)) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim result As DBResult = reqManager.HandleJob(Job) - If result.Tag = "usuario" Then 'query tag - For Each records() As Object In result.Rows - Dim name As String = records(result.Columns.Get("USUARIO")) - Dim ID_ALMACEN As String = records(result.Columns.Get("CAT_LO_AGENCIA")) - If logger Then Log(name) - ' Dim IMEI_BASE As String = records(result.Columns.Get("CAT_LO_IDTELEFONO")) - Next - paso1 = 1 - End If - End If - Job.Release - End If - - If paso1 =1 Then - If name = "OKActivo" Then - Starter.skmt.ExecNonQuery("delete from usuarioa") - Starter.skmt.ExecNonQuery2("INSERT INTO USUARIOA VALUES (?,?)", Array As Object(user.Text, pass.Text)) - Starter.skmt.ExecNonQuery("delete from cat_almacen") - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_ALMACEN(ID_ALMACEN) VALUES (?)", Array As Object (ID_ALMACEN)) - almacen = ID_ALMACEN - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("NUMERO_PEDIDO")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("NUMERO_PEDIDO",0)) - B4XPages.ShowPage("Principal") - Else If name = "OKExpirado" Then - Msgbox("Usuario Expirado llamar al administrador","") 'ignore - Else If name = "OKCancelado" Then - Msgbox("Usuario Cancelado llamar al administrador","") 'ignore - Else - Msgbox("Usuario o password No validos","") 'ignore - End If - paso1 = 0 - End If -End Sub - -Private Sub B4XPage_CloseRequest As ResumableSub - ' BACK key pressed - 'Return True to close, False to cancel - Log("BACK") - If Panel1.Visible Then - Panel1.Visible = False - Entrar.Visible = True - Return True - Else - If logger Then Log("Saliendo") - B4XPages.ClosePage(Me) - Subs.cierraActividades - Return True - End If -End Sub - -Sub GPS_LocationChanged (Location1 As Location) - If user.text = "GPS" Then - user.Text=Location1.Latitude - pass.text=Location1.Longitude - End If -End Sub - -Sub PopupMenu_Dismiss - ToastMessageShow("PopupMenu dismissed", False) -End Sub - -Sub PopupMenu_MenuItemClick (ItemId As Int) As Boolean - ToastMessageShow("Item " & ItemId & " clicked.", False) - Return False -End Sub - -Sub b_menu_Click -' PopupMenu.Show -End Sub - -Sub IMEN_EnterPressed - -End Sub - -Sub user_EnterPressed - If user.Text = "CODIGO" Then - IMEN.Visible = True - user.Text = "" - End If -End Sub - -Sub ImageView4_Click - Entrar.Visible = False -' Starter.server = "http://201.99.139.28:1782" -' Starter.server = "http://177.244.63.54:1782" -' Starter.server = "http://keymon.com.mx:1782" - ListView1.Clear - Dim Label1 As Label - Label1 = ListView1.SingleLineLayout.Label - Label1.TextSize = 20 - Label1.TextColor = Colors.Black - If user.Text = "KMTS1" Then ListView1.AddSingleLine("http://10.0.0.205:1782") - ListView1.AddSingleLine("http://keymon.lat:1782") - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SERVER")) - c.Position =0 - E_SERVER.text = c.GetString("CAT_VA_VALOR") - Panel1.Visible = True - Panel1.Width = Root.Width * 0.95 - Panel1.Left = (Root.Width/2) - (Panel1.Width/2) - Panel1.Top = (Root.Height/2) - (Panel1.Height/2) - Panel1.Elevation = 100 - Panel1.BringToFront -End Sub - -Private Sub ImageView4_LongClick -' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE) -' Wait For Activity_PermissionResult (Permission As String, Result As Boolean) - Subs.copiaDB(True) -End Sub - -Sub B_SERVER_Click - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("SERVER")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SERVER",E_SERVER.text)) - Starter.server = E_SERVER.text - If logger Then Log("Inicializamos reqManager con " & Starter.server) - reqManager.Initialize(Me, Starter.server) - CallSubDelayed(Starter, "reinicializaReqManager") - Panel1.Visible = False - Entrar.Visible = True -End Sub - -Sub B_FECHA_Click - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("MACIMP")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MACIMP","0")) - Panel1.Visible = False -End Sub - -Sub ListView1_ItemClick (Position As Int, Value As Object) - E_SERVER.text = Value -End Sub - -Sub ImageView1_Click - -End Sub - -Sub B_BorrarFinDia_Click - p_finDia.Visible = True - p_finDia.BringToFront -End Sub - -Sub b_fdCancelar_Click - p_finDia.Visible = False - p_finDia.SendToBack -End Sub - -Sub b_findiaOk_Click - c=Starter.skmt.ExecQuery2("select count(*) as passOk from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ? and CAT_VA_VALOR = ?", Array As String ("FINDIA_PASS", et_autSup.Text)) - c.Position =0 - If c.GetString("passOk") = 1 Or et_autSup.Text = "FinDiaAutOk" Then - Starter.skmt.ExecNonQuery("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'FINDIA_FECHA'") - ToastMessageShow("Ya se puede hacer FIN DIA!!", True) - p_finDia.Visible = False - p_finDia.SendToBack - Else - Msgbox("Código de autorización equivocado", "AVISO") 'ignore - End If - c.Close -End Sub \ No newline at end of file diff --git a/B4A/C_Calculadora.bas b/B4A/C_Calculadora.bas deleted file mode 100644 index b9774e4..0000000 --- a/B4A/C_Calculadora.bas +++ /dev/null @@ -1,710 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - '--***---- BOLETA DE LIQUIDACION - Private P_BOLETA As Panel - '------ BILLETES - Private LBL_TMIL As Label - Private LBL_TQUIN As Label - Private LBL_TDOS As Label - Private LBL_TCIEN As Label - Private LBL_TCIN As Label - Private LBL_TVEIN As Label - Private LBL_MIL As Label - Private LBL_QUIN As Label - Private LBL_DOSC As Label - Private LBL_CIEN As Label - Private LBL_CINCUEN As Label - Private LBL_VEINTE As Label - Private EDT_CANVEIN As EditText - Private EDT_CANCIN As EditText - Private EDT_CANCIEN As EditText - Private EDT_CANDOS As EditText - Private EDT_CANQUIN As EditText - Private EDT_CANMIL As EditText - Private Btn_TOTALBILLETE As Button - Private Pnl_Billete As Panel - Private Pnl_Moneda As Panel - Private L_CALCULA_BILLE As Label - '------ BOTONES MAS Y MENOS - Private B_MENMIL As Button - Private B_SUMIL As Button - Private B_MENQUI As Button - Private B_SUQUI As Button - Private B_MENDOS As Button - Private B_SUDOS As Button - Private B_MENCIE As Button - Private B_SUCIEN As Button - Private B_MENCIN As Button - Private B_SUCIN As Button - Private B_MENVEI As Button - Private B_SUVEI As Button - '------ MONEDAS - Private L_DIEZ As Label - Private L_CINCO As Label - Private L_DOS As Label - Private L_UNO As Label - Private L_CENTAVO As Label - Private LBL_TDIEZ As Label - Private LBL_TCI As Label - Private LBL_TDO As Label - Private LBL_TUN As Label - Private LBL_TCEN As Label - Private EDT_CANCEN As EditText - Private EDT_CANUN As EditText - Private EDT_CANDO As EditText - Private EDT_CANCI As EditText - Private EDT_CANDIEZ As EditText - Private L_CALCULA_MONEDA As Label - Private B_TOTALMONEDA As Button - '------ BOTONES MAS Y MENOS - Private B_MENCENT As Button - Private B_MENUN As Button - Private B_MENDO As Button - Private B_MENCI As Button - Private B_MENDIEZ As Button - Private B_SUMDIEZ As Button - Private B_SUMCIN As Button - Private B_SUMDO As Button - Private B_SUMUN As Button - Private B_SUMCENT As Button - '------ SUMA TOTALES - Private B_AGREGAMONE As Button - Private B_AGREGABILL As Button - Private TOTALES As Label - Private B_SUM_TOTAL As Button - Private TOTALBILLETES As Button - Private TOTALMONEDA As Button - Private PNL_TOTALES As Panel - Private LBL_RETURN As Label - Private IMG_IMPRESORA As Label - Private LBL_REGRESA As Label - '--***---- FIN BOLETA -' Private P_INF_GENERAL As Panel - Private B_Regresar As Button -' Private ABORDO As String - Private a_inicial As String - Private a_total As String - Private a_venta As String - Private a_final As String - Private a_VENTA_F As String - Private a_inicial_5 As String - Private L_INVA As ListView - Private B_IMP_INV As Button - Private B_CERRAR_I As Button - Private Panel_INV_A As Panel - Private LBL_TVEINTE As Label - Private B_SUMVEINTE As Button - Private EDT_CANVEINTE As EditText - Private B_MENVEINTE As Button - Private L_VEINTE As Label - Dim RutaBoleta As String - Dim Id_Almacen As String - Dim cursorBoleta As Cursor - Private Bt_GuardarBoleta As Button - Private CUANTOS1 As String - Private Panel9 As Panel - Private t_tenc As Label - Private E_RES_E As EditText - Private B_E_NEXT As Button - Private Label26 As Label - Private l_chk_e As Label - Private Chk_1 As CheckBox - Private chk_2 As CheckBox - Private chk_3 As CheckBox - Private b_chk_e As Button - Private Panel10 As Panel - Private chk_1_valor As String - Private chk_2_valor As String - Private chk_3_valor As String - Private p_encuesta As Panel - Private b_encuesta_1 As Button - Private b_encuesta_2 As Button - Private b_encuesta_3 As Button - Private l_titEncuesta As Label - Private l_txtEncuesta As Label - Private encuestaRes As String - Private botonPresionado As Int - Private B_IMP2 As Button - Dim impresoraConectada As Boolean = False - Private l_categoria2 As Label - Private l_exhibidor2 As Label - Private p_exhibidores As Panel - Private Button1 As Button - Private b_exhibidor As Button - Private l_exhibidores3 As Label - Private l_segmento2 As Label - Private et_encuesta As EditText - Private b_encuesta_continuar As Button - Dim muestraBoleta As Boolean = False - Private Panel4 As Panel - - Private Edt_FH As EditText -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - 'load the layout to Root - Root.LoadLayout("calculadora") -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - -Sub LLAMA_BOLETA - '' FECHA DE TELEFONO - DateTime.DateFormat="dd/MM/yyyy" - Edt_FH.Text=DateTime.Date(DateTime.Now) - Subs.panelAnchoAlto(PNL_TOTALES, Root.Width, Root.Height) - PNL_TOTALES.Visible=True - Pnl_Billete.Visible=True - Pnl_Moneda.visible=True - LBL_RETURN.Visible=False - LBL_REGRESA.Visible=False - P_BOLETA.Visible=True -' P_INF_GENERAL.Visible=False - LBL_REGRESA.Visible=True - Private c As Cursor = Starter.skmt.ExecQuery("select * from TMP_CAT_BILLETE join TMP_CAT_MONEDAS") - If c.RowCount > 0 Then - c.Position = 0 - Log("==================== CALCULADORA "&c.ColumnCount) -' Traemos billetes - EDT_CANMIL.Text = "0" - If IsNumber(c.GetString("TMP_BILLE_MIL")) Then EDT_CANMIL.Text = c.GetString("TMP_BILLE_MIL") - EDT_CANQUIN.Text = "0" - If c.GetString("TMP_BILLE_QUINIENTOS")<> Null Then EDT_CANQUIN.Text = c.GetString("TMP_BILLE_QUINIENTOS") - EDT_CANDOS.Text = "0" - If c.GetString("TMP_BILLE_DOSCIENTOS") <>Null Then EDT_CANDOS.Text = c.GetString("TMP_BILLE_DOSCIENTOS") - EDT_CANCIEN.Text = "0" - If c.GetString("TMP_BILLE_CIEN")<> Null Then EDT_CANCIEN.Text = c.GetString("TMP_BILLE_CIEN") - EDT_CANCIN.Text = "0" - If c.GetString("TMP_BILLE_CINCUENTA")<> Null Then EDT_CANCIN.Text = c.GetString("TMP_BILLE_CINCUENTA") - EDT_CANVEIN.Text = "0" - If c.GetString("TMP_BILLE_VEINTE")<> Null Then EDT_CANVEIN.Text = c.GetString("TMP_BILLE_VEINTE") -' Traemos monedas - EDT_CANVEINTE.Text = "0" - If c.GetString("TMP_MON_VEINTE")<> Null Then EDT_CANVEINTE.Text = c.GetString("TMP_MON_VEINTE") - EDT_CANDIEZ.Text = "0" - If c.GetString("TMP_MON_DIEZ")<> Null Then EDT_CANDIEZ.Text = c.GetString("TMP_MON_DIEZ") - EDT_CANCI.Text = "0" - If c.GetString("TMP_MON_CINCO")<> Null Then EDT_CANCI.Text = c.GetString("TMP_MON_CINCO") - EDT_CANDO.Text = "0" - If c.GetString("TMP_MON_DOS")<> Null Then EDT_CANDO.Text = c.GetString("TMP_MON_DOS") - EDT_CANUN.Text = "0" - If c.GetString("TMP_MON_UN")<> Null Then EDT_CANUN.Text = c.GetString("TMP_MON_UN") - EDT_CANCEN.Text = "0" - If c.GetString("TMP_MON_CENTAVOS")<> Null Then EDT_CANCEN.Text = c.GetString("TMP_MON_CENTAVOS") - L_CALCULA_BILLE_CLICK - L_CALCULA_MONEDA_Click - B_SUM_TOTAL.Text = TOTALBILLETES.Text + TOTALMONEDA.text - End If - Starter.boleta = 0 - muestraBoleta = False - c.Close -End Sub - -'''BILLETES -Sub L_CALCULA_BILLE_CLICK - If EDT_CANMIL.Text="" Or EDT_CANQUIN.Text="" Or EDT_CANDOS.Text="" Or EDT_CANCIEN.Text="" Or EDT_CANCIN.Text="" Or EDT_CANVEIN.Text="" Then - Pnl_Billete.RequestFocus - Msgbox("Por favor llena todas las cantidades","") 'ignore - Else - LBL_TMIL.Text= LBL_MIL.Tag * EDT_CANMIL.Text - LBL_TQUIN.Text=LBL_QUIN.Tag * EDT_CANQUIN.Text - LBL_TDOS.Text=LBL_DOSC.Tag * EDT_CANDOS.Text - LBL_TCIEN.Text=LBL_CIEN.Tag * EDT_CANCIEN.Text - LBL_TCIN.Text=LBL_CINCUEN.Tag * EDT_CANCIN.Text - LBL_TVEIN.Text=LBL_VEINTE.Tag * EDT_CANVEIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -'20 -Private Sub EDT_CANVEIN_FocusChanged (HasFocus As Boolean) - If EDT_CANVEIN.Text = "" Then EDT_CANVEIN.Text = "0" - EDT_CANVEIN.Text = Round (EDT_CANVEIN.Text) - LBL_TVEIN.Text=LBL_VEINTE.Tag * EDT_CANVEIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text -End Sub - -Sub B_SUVEI_Click - If EDT_CANVEIN.Text = "" Then - EDT_CANVEIN.Text=0 - LBL_TVEIN.Text=LBL_VEINTE.Tag * EDT_CANVEIN.Text - Else - EDT_CANVEIN.Text = Round (EDT_CANVEIN.Text + 1) - LBL_TVEIN.Text=LBL_VEINTE.Tag * EDT_CANVEIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -Sub B_MENVEI_Click - If EDT_CANVEIN.Text = "" Then - EDT_CANVEIN.Text=0 - LBL_TVEIN.Text=LBL_VEINTE.Tag * EDT_CANVEIN.Text - Else IF EDT_CANVEIN.Text > 0 Then - EDT_CANVEIN.Text = Round(EDT_CANVEIN.Text -1) - LBL_TVEIN.Text=LBL_VEINTE.Tag * EDT_CANVEIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub -'50 -Private Sub EDT_CANCIN_FocusChanged (HasFocus As Boolean) - If EDT_CANCIN.Text = "" Then EDT_CANCIN.Text = "0" - EDT_CANCIN.Text = Round (EDT_CANCIN.Text) - LBL_TCIN.Text=LBL_CINCUEN.Tag * EDT_CANCIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text -End Sub - -Sub B_SUCIN_Click - If EDT_CANCIN.Text = "" Then - EDT_CANCIN.Text =0 - LBL_TCIN.Text=LBL_CINCUEN.Tag * EDT_CANCIN.Text - Else - EDT_CANCIN.Text = Round (EDT_CANCIN.Text + 1) - LBL_TCIN.Text=LBL_CINCUEN.Tag * EDT_CANCIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -Sub B_MENCIN_Click - If EDT_CANCIN.Text = "" Then - EDT_CANCIN.Text =0 - LBL_TCIN.Text=LBL_CINCUEN.Tag * EDT_CANCIN.Text - Else IF EDT_CANCIN.Text > 0 Then - EDT_CANCIN.Text = Round(EDT_CANCIN.Text -1) - LBL_TCIN.Text=LBL_CINCUEN.Tag * EDT_CANCIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -'100 -Private Sub EDT_CANCIEN_FocusChanged (HasFocus As Boolean) - If EDT_CANCIEN.Text = "" Then EDT_CANCIEN.Text = "0" - EDT_CANCIEN.Text = Round (EDT_CANCIEN.Text) - LBL_TCIEN.Text=LBL_CIEN.Tag * EDT_CANCIEN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text -End Sub - -Sub B_SUCIEN_Click - If EDT_CANCIEN.Text = "" Then - EDT_CANCIEN.Text = 0 - LBL_TCIEN.Text=LBL_CIEN.Tag * EDT_CANCIEN.Text - Else - EDT_CANCIEN.Text = Round (EDT_CANCIEN.Text + 1) - LBL_TCIEN.Text=LBL_CIEN.Tag * EDT_CANCIEN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -Sub B_MENCIE_Click - If EDT_CANCIEN.Text = "" Then - EDT_CANCIEN.Text = 0 - LBL_TCIEN.Text=LBL_CIEN.Tag * EDT_CANCIEN.Text - Else IF EDT_CANCIEN.Text > 0 Then - EDT_CANCIEN.Text = Round(EDT_CANCIEN.Text -1) - LBL_TCIEN.Text=LBL_CIEN.Tag * EDT_CANCIEN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -'200 -Private Sub EDT_CANDOS_FocusChanged (HasFocus As Boolean) - If EDT_CANDOS.Text = "" Then EDT_CANDOS.Text = "0" - EDT_CANDOS.Text = Round (EDT_CANDOS.Text) - LBL_TDOS.Text=LBL_DOSC.Tag * EDT_CANDOS.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text -End Sub - -Sub B_SUDOS_Click - If EDT_CANDOS.Text = "" Then - EDT_CANDOS.Text = 0 - LBL_TDOS.Text=LBL_DOSC.Tag * EDT_CANDOS.Text - Else - EDT_CANDOS.Text = Round (EDT_CANDOS.Text + 1) - LBL_TDOS.Text=LBL_DOSC.Tag * EDT_CANDOS.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -Sub B_MENDOS_Click - If EDT_CANDOS.Text = "" Then - EDT_CANDOS.Text = 0 - LBL_TDOS.Text=LBL_DOSC.Tag * EDT_CANDOS.Text - Else IF EDT_CANDOS.Text > 0 Then - EDT_CANDOS.Text = Round(EDT_CANDOS.Text -1) - LBL_TDOS.Text=LBL_DOSC.Tag * EDT_CANDOS.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -'500 -Private Sub EDT_CANQUIN_FocusChanged (HasFocus As Boolean) - If EDT_CANQUIN.Text = "" Then EDT_CANQUIN.Text = "0" - EDT_CANQUIN.Text = Round (EDT_CANQUIN.Text) - LBL_TQUIN.Text=LBL_QUIN.Tag * EDT_CANQUIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text -End Sub - -Sub B_SUQUI_Click - If EDT_CANQUIN.Text = "" Then - EDT_CANQUIN.Text =0 - LBL_TQUIN.Text=LBL_QUIN.Tag * EDT_CANQUIN.Text - Else - EDT_CANQUIN.Text = Round (EDT_CANQUIN.Text + 1) - LBL_TQUIN.Text=LBL_QUIN.Tag * EDT_CANQUIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -Sub B_MENQUI_Click - If EDT_CANQUIN.Text = "" Then - EDT_CANQUIN.Text =0 - LBL_TQUIN.Text=LBL_QUIN.Tag * EDT_CANQUIN.Text - Else IF EDT_CANQUIN.Text > 0 Then - EDT_CANQUIN.Text = Round(EDT_CANQUIN.Text -1) - LBL_TQUIN.Text=LBL_QUIN.Tag * EDT_CANQUIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub -'1000 -Private Sub EDT_CANMIL_FocusChanged (HasFocus As Boolean) - If EDT_CANMIL.Text = "" Then EDT_CANMIL.Text = "0" - EDT_CANMIL.Text = Round (EDT_CANMIL.Text ) - LBL_TMIL.Text= LBL_MIL.Tag * EDT_CANMIL.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text -End Sub - -Sub B_SUMIL_Click - If EDT_CANMIL.Text = "" Then - EDT_CANMIL.Text = 0 - LBL_TMIL.Text= LBL_MIL.Tag * EDT_CANMIL.Text - Else - EDT_CANMIL.Text = Round (EDT_CANMIL.Text + 1) - LBL_TMIL.Text= LBL_MIL.Tag * EDT_CANMIL.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -Sub B_MENMIL_Click - If EDT_CANMIL.Text = "" Then - EDT_CANMIL.Text = 1 - LBL_TMIL.Text= LBL_MIL.Tag * EDT_CANMIL.Text - Else IF EDT_CANMIL.Text > 0 Then - EDT_CANMIL.Text = Round(EDT_CANMIL.Text -1) - LBL_TMIL.Text= LBL_MIL.Tag * EDT_CANMIL.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -'''' MONEDAS -Sub L_CALCULA_MONEDA_Click - If EDT_CANDIEZ.Text="" Or EDT_CANCI.Text="" Or EDT_CANDO.Text="" Or EDT_CANUN.Text="" Or EDT_CANCEN.Text="" Or EDT_CANVEINTE.Text="" Then - Msgbox("Por favor llena todas las cantidades","") 'ignore - Pnl_Billete.RequestFocus - Else - LBL_TDIEZ.Text= L_DIEZ.Tag * EDT_CANDIEZ.Text - LBL_TCI.Text= L_CINCO.Tag * EDT_CANCI.Text - LBL_TDO.Text=L_DOS.Tag * EDT_CANDO.Text - LBL_TUN.Text=L_UNO.Tag * EDT_CANUN.Text - LBL_TCEN.Text=L_CENTAVO.Tag * EDT_CANCEN.Text - LBL_TVEINTE.Text=L_VEINTE.Tag * EDT_CANVEINTE.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -'0.50 -Private Sub EDT_CANCEN_FocusChanged (HasFocus As Boolean) - If EDT_CANCEN.Text = "" Then EDT_CANCEN.Text = "0" - EDT_CANCEN.Text = Round (EDT_CANCEN.Text) - LBL_TCEN.Text=L_CENTAVO.Tag * EDT_CANCEN.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text -End Sub - -Sub B_SUMCENT_Click - If EDT_CANCEN.Text = "" Then - EDT_CANCEN.Text = 0 - LBL_TCEN.Text=L_CENTAVO.Tag * EDT_CANCEN.Text - Else - EDT_CANCEN.Text = Round (EDT_CANCEN.Text + 1) - LBL_TCEN.Text=L_CENTAVO.Tag * EDT_CANCEN.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -Sub B_MENCENT_Click - If EDT_CANCEN.Text = "" Then - EDT_CANCEN.Text =0 - LBL_TCEN.Text=L_CENTAVO.Tag * EDT_CANCEN.Text - Else IF EDT_CANCEN.Text > 0 Then - EDT_CANCEN.Text = Round(EDT_CANCEN.Text -1) - LBL_TCEN.Text=L_CENTAVO.Tag * EDT_CANCEN.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -'1 -Private Sub EDT_CANUN_FocusChanged (HasFocus As Boolean) - If EDT_CANUN.Text = "" Then EDT_CANUN.Text = "0" - EDT_CANUN.Text = Round (EDT_CANUN.Text) - LBL_TUN.Text=L_UNO.Tag * EDT_CANUN.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text -End Sub - -Sub B_SUMUN_Click - If EDT_CANUN.Text = "" Then - - LBL_TUN.Text=L_UNO.Tag * EDT_CANUN.Text - Else - EDT_CANUN.Text = Round (EDT_CANUN.Text + 1) - LBL_TUN.Text=L_UNO.Tag * EDT_CANUN.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -Sub B_MENUN_Click - If EDT_CANUN.Text = "" Then - EDT_CANUN.Text = 0 - LBL_TUN.Text=L_UNO.Tag * EDT_CANUN.Text - Else IF EDT_CANUN.Text > 0 Then - EDT_CANUN.Text = Round(EDT_CANUN.Text -1) - LBL_TUN.Text=L_UNO.Tag * EDT_CANUN.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -'2 -Private Sub EDT_CANDO_FocusChanged (HasFocus As Boolean) - If EDT_CANDO.Text = "" Then EDT_CANDO.Text = "0" - EDT_CANDO.Text = Round (EDT_CANDO.Text) - LBL_TDO.Text=L_DOS.Tag * EDT_CANDO.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text -End Sub - -Sub B_SUMDO_Click - If EDT_CANDO.Text = "" Then - EDT_CANDO.Text =0 - LBL_TDO.Text=L_DOS.Tag * EDT_CANDO.Text - Else - EDT_CANDO.Text = Round (EDT_CANDO.Text + 1) - LBL_TDO.Text=L_DOS.Tag * EDT_CANDO.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -Sub B_MENDO_Click - If EDT_CANDO.Text = "" Then - EDT_CANDO.Text=0 - LBL_TDO.Text=L_DOS.Tag * EDT_CANDO.Text - Else IF EDT_CANDO.Text > 0 Then - EDT_CANDO.Text = Round(EDT_CANDO.Text -1) - LBL_TDO.Text=L_DOS.Tag * EDT_CANDO.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -'5 -Private Sub EDT_CANCI_FocusChanged (HasFocus As Boolean) - If EDT_CANCI.Text = "" Then EDT_CANCI.Text = "0" - EDT_CANCI.Text = Round (EDT_CANCI.Text) - LBL_TCI.Text= L_CINCO.Tag * EDT_CANCI.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text ) - TOTALMONEDA.Text=B_TOTALMONEDA.Text -End Sub - -Sub B_SUMCIN_Click - If EDT_CANCI.Text = "" Then - EDT_CANCI.Text =0 - LBL_TCI.Text= L_CINCO.Tag * EDT_CANCI.Text - Else - EDT_CANCI.Text = Round (EDT_CANCI.Text + 1) - LBL_TCI.Text= L_CINCO.Tag * EDT_CANCI.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text ) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -Sub B_MENCI_Click - If EDT_CANCI.Text = "" Then - EDT_CANCI.Text =0 - LBL_TCI.Text= L_CINCO.Tag * EDT_CANCI.Text - Else IF EDT_CANCI.Text > 0 Then - EDT_CANCI.Text = Round(EDT_CANCI.Text -1) - LBL_TCI.Text= L_CINCO.Tag * EDT_CANCI.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub -'10 -Private Sub EDT_CANDIEZ_FocusChanged (HasFocus As Boolean) - If EDT_CANDIEZ.Text = "" Then EDT_CANDIEZ.Text = "0" - EDT_CANDIEZ.Text = Round (EDT_CANDIEZ.Text) - LBL_TDIEZ.Text= L_DIEZ.Tag * EDT_CANDIEZ.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text -End Sub - -Sub B_SUMDIEZ_Click - If EDT_CANDIEZ.Text = "" Then - EDT_CANDIEZ.Text =0 - LBL_TDIEZ.Text= L_DIEZ.Tag * EDT_CANDIEZ.Text - Else - EDT_CANDIEZ.Text = Round (EDT_CANDIEZ.Text + 1) - LBL_TDIEZ.Text= L_DIEZ.Tag * EDT_CANDIEZ.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -Sub B_MENDIEZ_Click - If EDT_CANDIEZ.Text = "" Then - EDT_CANDIEZ.Text = 0 - LBL_TDIEZ.Text= L_DIEZ.Tag * EDT_CANDIEZ.Text - Else IF EDT_CANDIEZ.Text > 0 Then - EDT_CANDIEZ.Text = Round(EDT_CANDIEZ.Text -1) - LBL_TDIEZ.Text= L_DIEZ.Tag * EDT_CANDIEZ.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -'20 -Private Sub EDT_CANVEINTE_FocusChanged (HasFocus As Boolean) - If EDT_CANVEINTE.Text = "" Then EDT_CANVEINTE.Text = "0" - EDT_CANVEINTE.Text = Round(EDT_CANVEINTE.Text) - LBL_TVEINTE.Text= L_VEINTE.Tag * EDT_CANVEINTE.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text ) - TOTALMONEDA.Text=B_TOTALMONEDA.Text -End Sub - -Sub B_MENVEINTE_Click - If EDT_CANVEINTE.Text = "" Then - EDT_CANVEINTE.Text = 0 - LBL_TVEINTE.Text= L_VEINTE.Tag * EDT_CANVEINTE.Text - Else IF EDT_CANVEINTE.Text > 0 Then - EDT_CANVEINTE.Text = Round(EDT_CANVEINTE.Text -1) - LBL_TVEINTE.Text= L_VEINTE.Tag * EDT_CANVEINTE.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text ) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -Sub B_SUMVEINTE_Click - If EDT_CANVEINTE.Text = "" Then - EDT_CANVEINTE.Text =0 - LBL_TVEINTE.Text= L_VEINTE.Tag * EDT_CANVEINTE.Text - Else - EDT_CANVEINTE.Text = Round (EDT_CANVEINTE.Text + 1) - LBL_TVEINTE.Text= L_VEINTE.Tag * EDT_CANVEINTE.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -''''''TOTALES -Sub TOTALES_Click - If TOTALMONEDA.Text="" Or TOTALBILLETES.Text="" Then - TOTALMONEDA.Text=0 - TOTALBILLETES.Text=0 - B_SUM_TOTAL.Text="$"& (TOTALMONEDA.Text + TOTALBILLETES.Text) - Else - B_SUM_TOTAL.Text= "$"&(TOTALMONEDA.Text + TOTALBILLETES.Text) - End If -End Sub - -Sub B_AGREGABILL_Click - Pnl_Billete.Visible=True - Pnl_Moneda.Visible=False - PNL_TOTALES.Visible=False - LBL_RETURN.Visible=True - LBL_REGRESA.Visible=True -End Sub - -Sub B_AGREGAMONE_Click - Pnl_Billete.Visible=False - Pnl_Moneda.Visible=True - PNL_TOTALES.Visible=False - LBL_RETURN.Visible=True - LBL_REGRESA.Visible=True -End Sub - -Sub LBL_RETURN_Click - Pnl_Billete.Visible=False - Pnl_Moneda.Visible=False - PNL_TOTALES.Visible=True - LBL_RETURN.Visible=False - LBL_REGRESA.Visible=False - ''' CALCULO FINAL - If TOTALMONEDA.Text="" Or TOTALBILLETES.Text="" Then - TOTALMONEDA.Text=0 - TOTALBILLETES.Text=0 - B_SUM_TOTAL.Text="$"& (TOTALMONEDA.Text + TOTALBILLETES.Text) - Else - B_SUM_TOTAL.Text="$"& (TOTALMONEDA.Text + TOTALBILLETES.Text) - End If -End Sub - -Sub LBL_REGRESA_Click - Pnl_Billete.Visible=False - Pnl_Moneda.Visible=False - LBL_RETURN.Visible=False - LBL_REGRESA.Visible=False - PNL_TOTALES.Visible=True - LBL_REGRESA.Visible=True -End Sub - -Sub B_Regresar_Click -' StartActivity("SELECCION") - Subs.iniciaActividad("principal") -' B4XPages.ShowPage("Principal") -' Activity.Finish - PNL_TOTALES.Visible=False - Pnl_Billete.Visible=False - Pnl_Moneda.visible=False - PNL_TOTALES.Visible=False - LBL_RETURN.Visible=False - LBL_REGRESA.Visible=False - P_BOLETA.Visible=False -' P_INF_GENERAL.Visible=True - LBL_REGRESA.Visible=False -End Sub \ No newline at end of file diff --git a/B4A/C_CheckList.bas b/B4A/C_CheckList.bas deleted file mode 100644 index 5fc7e73..0000000 --- a/B4A/C_CheckList.bas +++ /dev/null @@ -1,939 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - '//Process Globals - Dim reqManager As DBRequestManager - Dim ruta As String - Dim c As Cursor - Dim C2 As Cursor - Private frontCamera As Boolean = False - Dim OK_CheckList As Int - '//Globals - Dim IME As IME - Private Edt_FH As EditText - Private Sp_MENU As Spinner - Dim LISTMENU As List - Private LB_CATEGORIA As Label - Private SCROLLPRINC As ScrollView - Private Pnl_CABINA As Panel - Dim sDate,sTime As String - ''''''''' PANELS CHECKS - Private camEx As CameraExClass - Private Rb_4_4 As RadioButton - Private Rb_3_4 As RadioButton - Private Rb_2_4 As RadioButton - Private Rb_1_4 As RadioButton - Private Lb_4 As Label - Private Lb_3 As Label - Private Lb_2 As Label - Private Lb_1 As Label - Private Et_KilometrajeIni As EditText - Private Cbox_Claxon As CheckBox - Private Cbox_Parabrisas As CheckBox - Private Cbox_Cinturon As CheckBox - Private Cbox_Espejos As CheckBox - Private Cbox_Licencia As CheckBox - Private Pnl_CabinaInfo As Panel - Private Pnl_MotorEncen As Panel - Private Pnl_Inspec As Panel - Private Pnl_CofreAbierto As Panel - Private Pnl_Carga As Panel - Private SP_MENUC As SD_Spinner - Private Im_1 As ImageView - Private Im2 As ImageView - Private Im3 As ImageView - Private Im4 As ImageView - Private Bt_Foto1 As Button - Private Bt_Foto2 As Button - Private Bt_Foto3 As Button - Private Bt_Foto4 As Button - Private Bt_GuardarCheck As Button - Private N_Ruta As String - Private Id_Almacen As String - Private Combustible As String - Private PLACAS As String - '' PANEL 2 - Private Ch_OBJETOSINE As CheckBox - Private CH_OBJMPERV As CheckBox - Private Ch_ORHERRA As CheckBox - Private Ch_LIMPIO As CheckBox - Private Ch_UNILIMPIA As CheckBox - Private Ch_BASURA As CheckBox - Private Ch_RESPON As CheckBox - Private Ch_AUDITORIA As CheckBox - Private Ch_HABITUAL As CheckBox - '' PANEL 3 - Private Ch_HERRAMIENTAS As CheckBox - Private Ch_CONOS As CheckBox - Private Ch_EDOCARROCE As CheckBox - Private Ch_FUN_LUCES As CheckBox - Private Ch_PLACAS_CIRCU As CheckBox - Private Ch_COND_LLANTAS As CheckBox - '' PANEL 4 - Private Ch_ACEITEMOTOR As CheckBox - Private Ch_ACEITEDIREC As CheckBox - Private Ch_NVL_REFRIGE As CheckBox - Private Ch_NVL_LIQUIDBRI As CheckBox - Private Ch_COND_BANMOTOR As CheckBox - ''''' PANEL5 - Private Ch_FUGASGRAL As CheckBox - Private Ch_FRENOS As CheckBox - Private Edt_COMENTARIO As AutoCompleteEditText - Private Pnl_Fotos As Panel - Private btnTakePicture As Button - Private b_guardar As Button - Private Pnl_foto As Panel - Dim camera1 As Camera - Private TOMO_FOTO1 As String - Private TOMO_FOTO2 As String - Private TOMO_FOTO3 As String - Private TOMO_FOTO4 As String - Private LBL_REGRESA As Label - Private Label5 As Label - Dim out As OutputStream - Private CUANTOS As String -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - 'load the layout to Root - Root.LoadLayout("checklist") - SCROLLPRINC.Panel.LoadLayout("checks") - SCROLLPRINC.Panel.Height = Pnl_MotorEncen.Height - IME.Initialize("IME") - IME.AddHeightChangedEvent - - OK_CheckList=0 - Pnl_CabinaInfo.Visible=True - btnTakePicture.Enabled = True - camera1.Initialize(Pnl_foto, "Camera1") - - LISTMENU.IsInitialized - LISTMENU.Initialize - LISTMENU.AddAll(Array As String ("Cabina con switch encendido", "Cabina y espacio de carga", "Inspección General Exterior", "Cofre abierto, motor apagado","Con motor encendido")) - - SP_MENUC.AddAll(LISTMENU,"CheckList",Colors.White,Colors.Blue,Gravity.CENTER) - DateTime.DateFormat="dd/MM/yyyy" - Edt_FH.Text=DateTime.Date(DateTime.Now) - ruta = File.DirInternal -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - -Sub Camera1_Ready (Success As Boolean) - Log("Camara lista") - If Success Then - camera1.StartPreview - camera1.Initialize(Pnl_foto, "Camera1") - btnTakePicture.Enabled = True - Else - ToastMessageShow("No se puede abrir la camara.", True) - End If -End Sub - -Sub B4XPage_Appear - reqManager.Initialize(Me, Starter.server) -' If Subs.traeUltimaActividadBD <> "CHECKLIST_AUTO" Then Subs.iniciaActividad(Subs.traeUltimaActividadBD) - c=Starter.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS FROM TMP_INSPECCION_AUTO_DIARIA") - c.Position = 0 - CUANTOS = c.GetString("CUANTOS") - c.Close - If CUANTOS > 0 Then - If Et_KilometrajeIni.Text = "" Then - c=Starter.skmt.ExecQuery("select * from tmp_inspeccion_auto_diaria") - If c.RowCount > 0 Then - c.Position = 0 - If c.GetString("TMP_AUTO_COMBUSTIBLE") = "4/4" Then Rb_4_4.Checked = True - If c.GetString("TMP_AUTO_COMBUSTIBLE") = "3/4" Then Rb_3_4.Checked = True - If c.GetString("TMP_AUTO_COMBUSTIBLE") = "2/4" Then Rb_2_4.Checked = True - If c.GetString("TMP_AUTO_COMBUSTIBLE") = "1/4" Then Rb_1_4.Checked = True - If c.GetString("TMP_AUTO_KILOMETRAJE") <> "" Then Et_KilometrajeIni.text = c.GetString("TMP_AUTO_KILOMETRAJE") - If c.GetString("TMP_AUTO_CLAXON ") = "1" Then Cbox_Claxon.Checked = True - If c.GetString("TMP_AUTO_PARABRISAS ") = "1" Then Cbox_Parabrisas.Checked = True - If c.GetString("TMP_AUTO_CINTURON ") = "1" Then Cbox_Cinturon.Checked = True - If c.GetString("TMP_AUTO_ESPEJOS ") = "1" Then Cbox_Espejos.Checked = True - If c.GetString("TMP_AUTO_LICENCIA ") = "1" Then Cbox_Licencia.Checked = True - If c.GetString("TMP_AUTO_LIB_OBJETOSINE ") = "1" Then Ch_OBJETOSINE.Checked = True - If c.GetString("TMP_AUTO_LIB_OBJETOTMPERVI ") = 1 Then CH_OBJMPERV.Checked = True - If c.GetString("TMP_AUTO_ORDEN_HERRA ") = "1" Then Ch_ORHERRA.Checked = True - If c.GetString("TMP_AUTO_UNILIMPIA ") = "1" Then Ch_UNILIMPIA.Checked = True - If c.GetString("TMP_AUTO_LIMPIO ") = "1" Then Ch_LIMPIO.Checked = True - If c.GetString("TMP_AUTO_BASURA ") = "1" Then Ch_BASURA.Checked = True - If c.GetString("TMP_AUTO_RESPONSABILIDAD ") ="1" Then Ch_RESPON.Checked = True - If c.GetString("TMP_AUTO_AUDITORIA ") = "1" Then Ch_AUDITORIA.Checked = True - If c.GetString("TMP_AUTO_HABITUAL ") = "1" Then Ch_HABITUAL.Checked = True - If c.GetString("TMP_AUTO_HERRAMIENTAS ") = "1" Then Ch_HERRAMIENTAS.Checked = True - If c.GetString("TMP_AUTO_CONOS ") = "1" Then Ch_CONOS.Checked = True - If c.GetString("TMP_AUTO_EDO_CARROCERIA ") = "1" Then Ch_EDOCARROCE.Checked = True - If c.GetString("TMP_AUTO_FUN_LUCES ") = "1" Then Ch_FUN_LUCES.Checked = True - If c.GetString("TMP_AUTO_PLACAS_CIRCU ") = "1" Then Ch_PLACAS_CIRCU.Checked = True - If c.GetString("TMP_AUTO_COND_LLANTAS ") = "1" Then Ch_COND_LLANTAS.Checked = True - If c.GetString("TMP_AUTO_ACEITEMOTOR ") = "1" Then Ch_ACEITEMOTOR.Checked = True - If c.GetString("TMP_AUTO_ACEITEDIREC ") = "1" Then Ch_ACEITEDIREC.Checked = True - If c.GetString("TMP_AUTO_NVL_REFRIGERANTE ") = "1" Then Ch_NVL_REFRIGE.Checked = True - If c.GetString("TMP_AUTO_NVL_LIQUIDBRISAS ") = "1" Then Ch_NVL_LIQUIDBRI.Checked = True - If c.GetString("TMP_AUTO_COND_BANMOTOR ") = "1" Then Ch_COND_BANMOTOR.Checked = True - If c.GetString("TMP_AUTO_FUGASGRAL ") = "1" Then Ch_FUGASGRAL.Checked = True - If c.GetString("TMP_AUTO_FRENOS ") = "1" Then Ch_FRENOS.Checked = True - If c.GetString("TMP_AUTO_COMENTARIOS ") <> "" Then Edt_COMENTARIO.text = c.GetString("TMP_AUTO_COMENTARIOS ") - End If - End If - Pnl_CabinaInfo.Visible=False - Pnl_Carga.Visible=False - Pnl_Inspec.Visible=True - Pnl_MotorEncen.Visible=True - Pnl_CofreAbierto.Visible=False - If File.Exists(File.DirInternal,"FOTO1.jpg") = True Then - Im_1.Bitmap = LoadBitmap(File.DirInternal, "FOTO1.jpg") - Else - If File.Exists(File.DirInternal,"FOTO1.jpg") = False Then - Im_1.Bitmap = LoadBitmap(File.DirAssets,"foto1.jpg") - End If - End If - If File.Exists(File.DirInternal,"FOTO2.jpg") = True Then - Im2.Bitmap = LoadBitmap(File.DirInternal, "FOTO2.jpg") - Else - If File.Exists(File.DirInternal,"FOTO2.jpg") = False Then - Im2.Bitmap = LoadBitmap(File.DirAssets,"foto2.jpg") - End If - End If - If File.Exists(File.DirInternal,"FOTO3.jpg") = True Then - Im3.Bitmap = LoadBitmap(File.DirInternal, "FOTO3.jpg") - Else - If File.Exists(File.DirInternal,"FOTO3.jpg") = False Then - Im3.Bitmap = LoadBitmap(File.DirAssets,"foto3.jpg") - End If - End If - If File.Exists(File.DirInternal,"FOTO4.jpg") = True Then - Im4.Bitmap = LoadBitmap(File.DirInternal, "FOTO4.jpg") - Else - If File.Exists(File.DirInternal,"FOTO4.jpg") = False Then - Im4.Bitmap = LoadBitmap(File.DirAssets,"foto4.jpg") - End If - End If - End If -End Sub - -Sub Camera1_PictureTaken (Data() As Byte) - Log("foto tomada") - camera1.StartPreview - If Bt_Foto1.Tag="1" Then - Dim salida As OutputStream - salida = File.OpenOutput(File.DirInternal, "FOTO1.jpg", False) - salida.WriteBytes(Data, 0, Data.Length) - salida.Close - ToastMessageShow("FOTO GUARDADA "& "FOTO1.jpg", True) - Bt_Foto1.Tag="2" - End If - If Bt_Foto2.Tag="1" Then - Dim salida As OutputStream - salida = File.OpenOutput(File.DirInternal, "FOTO2.jpg", False) - salida.WriteBytes(Data, 0, Data.Length) - salida.Close - ToastMessageShow("FOTO GUARDADA "& "FOTO2.jpg", True) - Bt_Foto2.Tag="2" - End If - If Bt_Foto3.Tag="1" Then - Dim salida As OutputStream - salida = File.OpenOutput(File.DirInternal, "FOTO3.jpg", False) - salida.WriteBytes(Data, 0, Data.Length) - salida.Close - ToastMessageShow("FOTO GUARDADA "& "FOTO3.jpg", True) - Bt_Foto3.Tag="2" - End If - If Bt_Foto4.Tag="1" Then - Dim salida As OutputStream - salida = File.OpenOutput(File.DirInternal, "FOTO4.jpg", False) - salida.WriteBytes(Data, 0, Data.Length) - salida.Close - ToastMessageShow("FOTO GUARDADA "& "FOTO4.jpg", True) - Bt_Foto4.Tag="2" - End If -End Sub - -Sub btnTakePicture_Click - btnTakePicture.Enabled = True - camera1.TakePicture -End Sub - -Sub Nvl_Combustible_CheckedChange(Checked As Boolean) - If Rb_1_4.Checked Then - Lb_1.Visible=True - Lb_2.Visible=False - Lb_3.Visible=False - Lb_4.Visible=False - End If - If Rb_2_4.Checked Then - Lb_1.Visible=False - Lb_2.Visible=True - Lb_3.Visible=False - Lb_4.Visible=False - End If - If Rb_3_4.Checked Then - Lb_1.Visible=False - Lb_2.Visible=False - Lb_3.Visible=True - Lb_4.Visible=False - End If - If Rb_4_4.Checked Then - Lb_1.Visible=False - Lb_2.Visible=False - Lb_3.Visible=False - Lb_4.Visible=True - End If -End Sub - -Sub SP_MENUC_ItemClick (Position As Int, Value As String) - LB_CATEGORIA.Text =LISTMENU.Get(Position) - If LB_CATEGORIA.Text = "Cabina con switch encendido" Then - Pnl_CabinaInfo.Visible=True - Pnl_Carga.Visible=False - Pnl_Inspec.Visible=False - Pnl_MotorEncen.Visible=False - Pnl_CofreAbierto.Visible=False - End If - If LB_CATEGORIA.Text = "Cabina y espacio de carga" Then - Pnl_CabinaInfo.Visible=False - Pnl_Carga.Visible=True - Pnl_Inspec.Visible=False - Pnl_MotorEncen.Visible=False - Pnl_CofreAbierto.Visible=False - End If - If LB_CATEGORIA.Text = "Inspección General Exterior" Then - Pnl_CabinaInfo.Visible=False - Pnl_Carga.Visible=False - Pnl_Inspec.Visible=True - Pnl_MotorEncen.Visible=False - Pnl_CofreAbierto.Visible=False - End If - If LB_CATEGORIA.Text = "Cofre abierto, motor apagado" Then - Pnl_CabinaInfo.Visible=False - Pnl_Carga.Visible=False - Pnl_Inspec.Visible=False - Pnl_MotorEncen.Visible=False - Pnl_CofreAbierto.Visible=True - If Pnl_CofreAbierto.Visible=True Then - Pnl_Fotos.visible=False - End If - End If - If LB_CATEGORIA.Text = "Con motor encendido" Then - Pnl_CabinaInfo.Visible=False - Pnl_Carga.Visible=False - Pnl_Inspec.Visible=True - Pnl_MotorEncen.Visible=True - Pnl_CofreAbierto.Visible=False - End If -End Sub - -Sub Bt_GuardarCheck_Click - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - N_Ruta=0 - c=Starter.skmt.ExecQuery("select CAT_CL_RUTA FROM kmt_info") - If c.RowCount > 0 Then - c.Position=0 - N_Ruta= c.GetString("CAT_CL_RUTA") - End If - C2=Starter.skmt.ExecQuery("select ID_ALMACEN FROM CAT_ALMACEN") - C2.Position=0 - Id_Almacen=C2.GetString("ID_ALMACEN") - ''''''''''''''''''''''''''''''''''''NIVELES DE GASOLINA CHECK'''''''''''''''''' - If Rb_1_4.Checked Then - Combustible="1/4" - End If - If Rb_2_4.Checked Then - Combustible="2/4" - End If - If Rb_3_4.Checked Then - Combustible="3/4" - End If - If Rb_4_4.Checked Then - Combustible="4/4" - End If - ''''''''''''''''''''''''''''''''''''INDICADORES DE TABLERO'''''''''''''''''' - If Cbox_Claxon.Checked=True Then - Cbox_Claxon.Tag="1" - Else - Cbox_Claxon.Tag="0" - End If - If Cbox_Cinturon.Checked=True Then - Cbox_Cinturon.Tag="1" - Else - Cbox_Cinturon.Tag="0" - End If - If Cbox_Parabrisas.Checked=True Then - Cbox_Parabrisas.Tag="1" - Else - Cbox_Parabrisas.Tag="0" - End If - If Cbox_Espejos.Checked=True Then - Cbox_Espejos.Tag="1" - Else - Cbox_Espejos.Tag="0" - End If - If Cbox_Licencia.Checked=True Then - Cbox_Licencia.Tag="1" - Else - Cbox_Licencia.Tag="0" - End If - '''''' SEGUNDO PANEL - If Ch_OBJETOSINE.Checked=True Then - Ch_OBJETOSINE.Tag="1" - Else - Ch_OBJETOSINE.Tag="0" - End If - If CH_OBJMPERV.Checked=True Then - CH_OBJMPERV.Tag="1" - Else - CH_OBJMPERV.Tag="0" - End If - If Ch_ORHERRA.Checked=True Then - Ch_ORHERRA.Tag="1" - Else - Ch_ORHERRA.Tag="0" - End If - If Ch_UNILIMPIA.Checked=True Then - Ch_UNILIMPIA.Tag="1" - Else - Ch_UNILIMPIA.Tag="0" - End If - If Ch_LIMPIO.Checked=True Then - Ch_LIMPIO.Tag="1" - Else - Ch_LIMPIO.Tag="0" - End If - If Ch_BASURA.Checked=True Then - Ch_BASURA.Tag="1" - Else - Ch_BASURA.Tag="0" - End If - If Ch_RESPON.Checked=True Then - Ch_RESPON.Tag="1" - Else - Ch_RESPON.Tag="0" - End If - If Ch_AUDITORIA.Checked=True Then - Ch_AUDITORIA.Tag="1" - Else - Ch_AUDITORIA.Tag="0" - End If - If Ch_HABITUAL.Checked=True Then - Ch_HABITUAL.Tag="1" - Else - Ch_HABITUAL.Tag="0" - End If - ''''' PANEL 3 - If Ch_HERRAMIENTAS.Checked=True Then - Ch_HERRAMIENTAS.Tag="1" - Else - Ch_HERRAMIENTAS.Tag="0" - End If - If Ch_CONOS.Checked=True Then - Ch_CONOS.Tag="1" - Else - Ch_CONOS.Tag="0" - End If - If Ch_EDOCARROCE.Checked=True Then - Ch_EDOCARROCE.Tag="1" - Else - Ch_EDOCARROCE.Tag="0" - End If - If Ch_FUN_LUCES.Checked=True Then - Ch_FUN_LUCES.Tag="1" - Else - Ch_FUN_LUCES.Tag="0" - End If - If Ch_PLACAS_CIRCU.Checked=True Then - Ch_PLACAS_CIRCU.Tag="1" - Else - Ch_PLACAS_CIRCU.Tag="0" - End If - If Ch_COND_LLANTAS.Checked=True Then - Ch_COND_LLANTAS.Tag="1" - Else - Ch_COND_LLANTAS.Tag="0" - End If - '''' PANEL 4 - If Ch_ACEITEMOTOR.Checked=True Then - Ch_ACEITEMOTOR.Tag="1" - Else - Ch_ACEITEMOTOR.Tag="0" - End If - If Ch_ACEITEDIREC.Checked=True Then - Ch_ACEITEDIREC.Tag="1" - Else - Ch_ACEITEDIREC.Tag="0" - End If - If Ch_NVL_REFRIGE.Checked=True Then - Ch_NVL_REFRIGE.Tag="1" - Else - Ch_NVL_REFRIGE.Tag="0" - End If - If Ch_NVL_LIQUIDBRI.Checked=True Then - Ch_NVL_LIQUIDBRI.Tag="1" - Else - Ch_NVL_LIQUIDBRI.Tag="0" - End If - If Ch_COND_BANMOTOR.Checked=True Then - Ch_COND_BANMOTOR.Tag="1" - Else - Ch_COND_BANMOTOR.Tag="0" - End If - ''''' PANEL 5 - If Ch_FUGASGRAL.Checked=True Then - Ch_FUGASGRAL.Tag="1" - Else - Ch_FUGASGRAL.Tag="0" - End If - If Ch_FRENOS.Checked=True Then - Ch_FRENOS.Tag="1" - Else - Ch_FRENOS.Tag="0" - End If - c=Starter.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("PLACAS") ) - c.Position=0 - PLACAS = c.GetString("CUANTOS") - c.Close - If PLACAS > 0 Then - c=Starter.skmt.ExecQuery2("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("PLACAS") ) - c.Position=0 - PLACAS = c.GetString("CAT_VA_VALOR") - c.Close - Else - PLACAS = "0000" - End If - '''''''''''''''''''''''''''''''''' FOTOS ''''''''''''''''''''''''''''''' - Private fotosOk As Int = 0 - If Not(File.Exists(File.DirInternal,"FOTO1.jpg")) Or _ - Not(File.Exists(File.DirInternal,"FOTO2.jpg")) Or _ - Not(File.Exists(File.DirInternal,"FOTO3.jpg")) Or _ - Not(File.Exists(File.DirInternal,"FOTO4.jpg")) Then - Msgbox("Por favor tomar las 4 fotos.", "Atención") 'ignore - Pnl_CabinaInfo.Visible=False - Pnl_Carga.Visible=False - Pnl_Inspec.Visible=True - Pnl_MotorEncen.Visible=True - Pnl_CofreAbierto.Visible=False - Else - fotosOk = 1 - End If - '''''''''''''''''''''' Kilometraje inicial ''''''''''''''''' - Private kmsOk As Int = 0 - If Et_KilometrajeIni.Text="" Then - Msgbox("Atención","Ingresa el Kilometraje Inicial") 'ignore - Pnl_CabinaInfo.Visible=True - Pnl_Carga.Visible=False - Pnl_Inspec.Visible=False - Pnl_MotorEncen.Visible=False - Pnl_CofreAbierto.Visible=False - Else - kmsOk = 1 - End If - - If kmsOk = 1 And fotosOk = 1 Then - CUANTOS = 0 - c=Starter.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS FROM TMP_INSPECCION_AUTO_DIARIA") - If c.RowCount > 0 Then - c.Position = 0 - CUANTOS = c.GetString("CUANTOS") - Log("Info checklist: " & CUANTOS) - End If - c.Close - If CUANTOS = 0 Then - Starter.skmt.ExecNonQuery("delete from TMP_INSPECCION_AUTO_DIARIA") 'Mod por CHV - 211125 - Starter.skmt.ExecNonQuery2("INSERT INTO TMP_INSPECCION_AUTO_DIARIA ( " & Chr(34) & "TMP_AUTO_RUTA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_PLACA" & Chr(34) & "," & Chr(34) & "TMP_AUTO_CEDIS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_IDALMACEN" & Chr(34) & "," & Chr(34) & "TMP_AUTO_FECHA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_KILOMETRAJE" & Chr(34) & "," & Chr(34) & "TMP_AUTO_COMBUSTIBLE" & Chr(34) & "," & Chr(34) & "TMP_AUTO_TABLERO " & Chr(34) & "," & Chr(34) & "TMP_AUTO_CLAXON " & Chr(34) & "," & Chr(34) & "TMP_AUTO_PARABRISAS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_CINTURON " & Chr(34) & "," & Chr(34) & "TMP_AUTO_ESPEJOS " & Chr(34) & " ," & Chr(34) & "TMP_AUTO_LICENCIA " & Chr(34) & " ," & Chr(34) & "TMP_AUTO_LIB_OBJETOSINE " & Chr(34) & " ," & Chr(34) & "TMP_AUTO_LIB_OBJETOTMPERVI " & Chr(34) & "," & Chr(34) & "TMP_AUTO_ORDEN_HERRA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_UNILIMPIA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_LIMPIO " & Chr(34) & "," & Chr(34) & "TMP_AUTO_BASURA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_RESPONSABILIDAD " & Chr(34) & "," & Chr(34) & "TMP_AUTO_AUDITORIA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_HABITUAL " & Chr(34) & "," & Chr(34) & "TMP_AUTO_HERRAMIENTAS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_CONOS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_EDO_CARROCERIA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_FUN_LUCES " & Chr(34) & "," & Chr(34) & "TMP_AUTO_PLACAS_CIRCU " & Chr(34) & "," & Chr(34) & "TMP_AUTO_COND_LLANTAS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_ACEITEMOTOR " & Chr(34) & "," & Chr(34) & "TMP_AUTO_ACEITEDIREC " & Chr(34) & "," & Chr(34) & "TMP_AUTO_NVL_REFRIGERANTE " & Chr(34) & "," & Chr(34) & "TMP_AUTO_NVL_LIQUIDBRISAS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_COND_BANMOTOR " & Chr(34) & "," & Chr(34) & "TMP_AUTO_FUGASGRAL " & Chr(34) & "," & Chr(34) & "TMP_AUTO_FRENOS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_COMENTARIOS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_FOTO1" & Chr(34) & "," & Chr(34) & "TMP_AUTO_FOTO2" & Chr(34) & "," & Chr(34) & "TMP_AUTO_FOTO3" & Chr(34) & "," & Chr(34) & "TMP_AUTO_FOTO4" & Chr(34) & " ) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (N_Ruta,PLACAS,Null,Id_Almacen,sDate,Et_KilometrajeIni.Text,Combustible,1,Cbox_Claxon.Tag,Cbox_Parabrisas.Tag,Cbox_Cinturon.Tag,Cbox_Espejos.Tag,Cbox_Licencia.Tag,Ch_OBJETOSINE.Tag,CH_OBJMPERV.Tag,Ch_ORHERRA.Tag,Ch_UNILIMPIA.Tag,Ch_LIMPIO.Tag,Ch_BASURA.Tag,Ch_RESPON.Tag,Ch_AUDITORIA.Tag,Ch_HABITUAL.Tag,Ch_HERRAMIENTAS.Tag,Ch_CONOS.Tag,Ch_EDOCARROCE.Tag,Ch_FUN_LUCES.Tag,Ch_PLACAS_CIRCU.Tag,Ch_COND_LLANTAS.Tag,Ch_ACEITEMOTOR.Tag,Ch_ACEITEDIREC.Tag,Ch_NVL_REFRIGE.Tag,Ch_NVL_LIQUIDBRI.Tag,Ch_COND_BANMOTOR.Tag,Ch_FUGASGRAL.Tag,Ch_FRENOS.Tag,Edt_COMENTARIO.TeXT)) - Log("Guardamos Kilometraje") - Else - Starter.skmt.ExecNonQuery("delete from TMP_INSPECCION_AUTO_DIARIA") 'Mod por CHV - 211125 - Starter.skmt.ExecNonQuery2("INSERT INTO TMP_INSPECCION_AUTO_DIARIA ( " & Chr(34) & "TMP_AUTO_RUTA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_PLACA" & Chr(34) & "," & Chr(34) & "TMP_AUTO_CEDIS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_IDALMACEN" & Chr(34) & "," & Chr(34) & "TMP_AUTO_FECHA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_KILOMETRAJE" & Chr(34) & "," & Chr(34) & "TMP_AUTO_COMBUSTIBLE" & Chr(34) & "," & Chr(34) & "TMP_AUTO_TABLERO " & Chr(34) & "," & Chr(34) & "TMP_AUTO_CLAXON " & Chr(34) & "," & Chr(34) & "TMP_AUTO_PARABRISAS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_CINTURON " & Chr(34) & "," & Chr(34) & "TMP_AUTO_ESPEJOS " & Chr(34) & " ," & Chr(34) & "TMP_AUTO_LICENCIA " & Chr(34) & " ," & Chr(34) & "TMP_AUTO_LIB_OBJETOSINE " & Chr(34) & " ," & Chr(34) & "TMP_AUTO_LIB_OBJETOTMPERVI " & Chr(34) & "," & Chr(34) & "TMP_AUTO_ORDEN_HERRA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_UNILIMPIA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_LIMPIO " & Chr(34) & "," & Chr(34) & "TMP_AUTO_BASURA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_RESPONSABILIDAD " & Chr(34) & "," & Chr(34) & "TMP_AUTO_AUDITORIA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_HABITUAL " & Chr(34) & "," & Chr(34) & "TMP_AUTO_HERRAMIENTAS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_CONOS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_EDO_CARROCERIA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_FUN_LUCES " & Chr(34) & "," & Chr(34) & "TMP_AUTO_PLACAS_CIRCU " & Chr(34) & "," & Chr(34) & "TMP_AUTO_COND_LLANTAS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_ACEITEMOTOR " & Chr(34) & "," & Chr(34) & "TMP_AUTO_ACEITEDIREC " & Chr(34) & "," & Chr(34) & "TMP_AUTO_NVL_REFRIGERANTE " & Chr(34) & "," & Chr(34) & "TMP_AUTO_NVL_LIQUIDBRISAS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_COND_BANMOTOR " & Chr(34) & "," & Chr(34) & "TMP_AUTO_FUGASGRAL " & Chr(34) & "," & Chr(34) & "TMP_AUTO_FRENOS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_COMENTARIOS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_FOTO1" & Chr(34) & "," & Chr(34) & "TMP_AUTO_FOTO2" & Chr(34) & "," & Chr(34) & "TMP_AUTO_FOTO3" & Chr(34) & "," & Chr(34) & "TMP_AUTO_FOTO4" & Chr(34) & " ) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (N_Ruta,PLACAS,Null,Id_Almacen,sDate,Et_KilometrajeIni.Text,Combustible,1,Cbox_Claxon.Tag,Cbox_Parabrisas.Tag,Cbox_Cinturon.Tag,Cbox_Espejos.Tag,Cbox_Licencia.Tag,Ch_OBJETOSINE.Tag,CH_OBJMPERV.Tag,Ch_ORHERRA.Tag,Ch_UNILIMPIA.Tag,Ch_LIMPIO.Tag,Ch_BASURA.Tag,Ch_RESPON.Tag,Ch_AUDITORIA.Tag,Ch_HABITUAL.Tag,Ch_HERRAMIENTAS.Tag,Ch_CONOS.Tag,Ch_EDOCARROCE.Tag,Ch_FUN_LUCES.Tag,Ch_PLACAS_CIRCU.Tag,Ch_COND_LLANTAS.Tag,Ch_ACEITEMOTOR.Tag,Ch_ACEITEDIREC.Tag,Ch_NVL_REFRIGE.Tag,Ch_NVL_LIQUIDBRI.Tag,Ch_COND_BANMOTOR.Tag,Ch_FUGASGRAL.Tag,Ch_FRENOS.Tag,Edt_COMENTARIO.TeXT)) - Log("Guardamos Kilometraje") - End If - OK_CheckList = 1 - Msgbox("DATOS GUARDADOS CON EXITO ","") 'ignore - mandaCheckList - B4XPages.ShowPage("Principal") - End If -End Sub - -Sub mandaCheckList - ProgressDialogShow("Enviando checklist al servidor") - Log("Enviando CheckList") - Private contador_env As Int = 0 - Private foto1() As Byte - Private foto2() As Byte - Private foto3() As Byte - Private foto4() As Byte - If File.Exists(File.DirInternal,"FOTO1.jpg") And File.Exists(File.DirInternal,"FOTO2.jpg") And _ - File.Exists(File.DirInternal,"FOTO3.jpg") And File.Exists(File.DirInternal,"FOTO4.jpg") Then - foto1 = Bit.InputStreamToBytes(File.OpenInput(File.DirInternal,"FOTO1.jpg")) - foto2 = Bit.InputStreamToBytes(File.OpenInput(File.DirInternal,"FOTO2.jpg")) - foto3 = Bit.InputStreamToBytes(File.OpenInput(File.DirInternal,"FOTO3.jpg")) - foto4 = Bit.InputStreamToBytes(File.OpenInput(File.DirInternal,"FOTO4.jpg")) - Else - ToastMessageShow("FOTOS INCOMPLETAS!!", True) - End If - Private cl As Cursor=Starter.skmt.ExecQuery("SELECT " & Chr(34) & "TMP_AUTO_RUTA " & Chr(34) & " as TMP_AUTO_RUTA," & Chr(34) & "TMP_AUTO_PLACA" & Chr(34) & " as TMP_AUTO_PLACA," & Chr(34) & "TMP_AUTO_CEDIS " & Chr(34) & " as TMP_AUTO_CEDIS," & Chr(34) & "TMP_AUTO_IDALMACEN" & Chr(34) & " as TMP_AUTO_IDALMACEN," & Chr(34) & "TMP_AUTO_FECHA " & Chr(34) & " as TMP_AUTO_FECHA," & Chr(34) & "TMP_AUTO_KILOMETRAJE" & Chr(34) & " as TMP_AUTO_KILOMETRAJE," & Chr(34) & "TMP_AUTO_COMBUSTIBLE" & Chr(34) & " as TMP_AUTO_COMBUSTIBLE," & Chr(34) & "TMP_AUTO_TABLERO " & Chr(34) & " as TMP_AUTO_TABLERO," & Chr(34) & "TMP_AUTO_CLAXON " & Chr(34) & " as TMP_AUTO_CLAXON," & Chr(34) & "TMP_AUTO_PARABRISAS " & Chr(34) & " as TMP_AUTO_PARABRISAS," & Chr(34) & "TMP_AUTO_CINTURON " & Chr(34) & " as TMP_AUTO_CINTURON," & Chr(34) & "TMP_AUTO_ESPEJOS " & Chr(34) & " as TMP_AUTO_ESPEJOS," & Chr(34) & "TMP_AUTO_LICENCIA " & Chr(34) & " as TMP_AUTO_LICENCIA," & Chr(34) & "TMP_AUTO_LIB_OBJETOSINE " & Chr(34) & " as TMP_AUTO_LIB_OBJETOSINE," & Chr(34) & "TMP_AUTO_LIB_OBJETOTMPERVI " & Chr(34) & " as TMP_AUTO_LIB_OBJETOTMPERVI," & Chr(34) & "TMP_AUTO_ORDEN_HERRA " & Chr(34) & " as TMP_AUTO_ORDEN_HERRA," & Chr(34) & "TMP_AUTO_UNILIMPIA " & Chr(34) & " as TMP_AUTO_UNILIMPIA," & Chr(34) & "TMP_AUTO_LIMPIO " & Chr(34) & " as TMP_AUTO_LIMPIO," & Chr(34) & "TMP_AUTO_BASURA " & Chr(34) & " as TMP_AUTO_BASURA," & Chr(34) & "TMP_AUTO_RESPONSABILIDAD " & Chr(34) & " as TMP_AUTO_RESPONSABILIDAD," & Chr(34) & "TMP_AUTO_AUDITORIA " & Chr(34) & " as TMP_AUTO_AUDITORIA," & Chr(34) & "TMP_AUTO_HABITUAL " & Chr(34) & " as TMP_AUTO_HABITUAL," & Chr(34) & "TMP_AUTO_HERRAMIENTAS " & Chr(34) & " as TMP_AUTO_HERRAMIENTAS," & Chr(34) & "TMP_AUTO_CONOS " & Chr(34) & " as TMP_AUTO_CONOS," & Chr(34) & "TMP_AUTO_EDO_CARROCERIA " & Chr(34) & " as TMP_AUTO_EDO_CARROCERIA," & Chr(34) & "TMP_AUTO_FUN_LUCES " & Chr(34) & " as TMP_AUTO_FUN_LUCES," & Chr(34) & "TMP_AUTO_PLACAS_CIRCU " & Chr(34) & " as TMP_AUTO_PLACAS_CIRCU," & Chr(34) & "TMP_AUTO_COND_LLANTAS " & Chr(34) & " as TMP_AUTO_COND_LLANTAS," & Chr(34) & "TMP_AUTO_ACEITEMOTOR " & Chr(34) & " as TMP_AUTO_ACEITEMOTOR," & Chr(34) & "TMP_AUTO_ACEITEDIREC " & Chr(34) & " as TMP_AUTO_ACEITEDIREC," & Chr(34) & "TMP_AUTO_NVL_REFRIGERANTE " & Chr(34) & " as TMP_AUTO_NVL_REFRIGERANTE," & Chr(34) & "TMP_AUTO_NVL_LIQUIDBRISAS " & Chr(34) & " as TMP_AUTO_NVL_LIQUIDBRISAS," & Chr(34) & "TMP_AUTO_COND_BANMOTOR " & Chr(34) & " as TMP_AUTO_COND_BANMOTOR," & Chr(34) & "TMP_AUTO_FUGASGRAL " & Chr(34) & " as TMP_AUTO_FUGASGRAL," & Chr(34) & "TMP_AUTO_FRENOS " & Chr(34) & " as TMP_AUTO_FRENOS," & Chr(34) & "TMP_AUTO_COMENTARIOS " & Chr(34) & " as TMP_AUTO_COMENTARIOS FROM TMP_INSPECCION_AUTO_DIARIA") - If cl.RowCount>0 Then - For i=0 To cl.RowCount -1 - cl.Position=i - If File.Exists(File.DirInternal,"FOTO1.jpg") And File.Exists(File.DirInternal,"FOTO2.jpg") And _ - File.Exists(File.DirInternal,"FOTO3.jpg") And File.Exists(File.DirInternal,"FOTO4.jpg") Then - foto1 = Bit.InputStreamToBytes(File.OpenInput(File.DirInternal,"FOTO1.jpg")) - foto2 = Bit.InputStreamToBytes(File.OpenInput(File.DirInternal,"FOTO2.jpg")) - foto3 = Bit.InputStreamToBytes(File.OpenInput(File.DirInternal,"FOTO3.jpg")) - foto4 = Bit.InputStreamToBytes(File.OpenInput(File.DirInternal,"FOTO4.jpg")) - Else - ToastMessageShow("FOTOS INCOMPLETAS!!", True) - End If - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "INSERT_TMP_INSPECCION_AUTO_DIARIA" - cmd.Parameters = Array As Object(cl.GetString("TMP_AUTO_RUTA"),cl.GetString("TMP_AUTO_PLACA"),cl.GetString("TMP_AUTO_CEDIS"),cl.GetString("TMP_AUTO_IDALMACEN"),cl.GetString("TMP_AUTO_FECHA"),cl.GetString("TMP_AUTO_KILOMETRAJE"),cl.GetString("TMP_AUTO_COMBUSTIBLE"),cl.GetString("TMP_AUTO_TABLERO"),cl.GetString("TMP_AUTO_CLAXON"),cl.GetString("TMP_AUTO_PARABRISAS"),cl.GetString("TMP_AUTO_CINTURON"),cl.GetString("TMP_AUTO_ESPEJOS"),cl.GetString("TMP_AUTO_LICENCIA"),cl.GetString("TMP_AUTO_LIB_OBJETOSINE"),cl.GetString("TMP_AUTO_LIB_OBJETOTMPERVI"),cl.GetString("TMP_AUTO_ORDEN_HERRA"),cl.GetString("TMP_AUTO_UNILIMPIA"),cl.GetString("TMP_AUTO_LIMPIO"),cl.GetString("TMP_AUTO_BASURA"),cl.GetString("TMP_AUTO_RESPONSABILIDAD"),cl.GetString("TMP_AUTO_AUDITORIA"),cl.GetString("TMP_AUTO_HABITUAL"),cl.GetString("TMP_AUTO_HERRAMIENTAS"),cl.GetString("TMP_AUTO_CONOS"),cl.GetString("TMP_AUTO_EDO_CARROCERIA"),cl.GetString("TMP_AUTO_FUN_LUCES"),cl.GetString("TMP_AUTO_PLACAS_CIRCU"),cl.GetString("TMP_AUTO_COND_LLANTAS"),cl.GetString("TMP_AUTO_ACEITEMOTOR"),cl.GetString("TMP_AUTO_ACEITEDIREC"),cl.GetString("TMP_AUTO_NVL_REFRIGERANTE"),cl.GetString("TMP_AUTO_NVL_LIQUIDBRISAS"),cl.GetString("TMP_AUTO_COND_BANMOTOR"),cl.GetString("TMP_AUTO_FUGASGRAL"),cl.GetString("TMP_AUTO_FRENOS"),cl.GetString("TMP_AUTO_COMENTARIOS"), foto1, foto2, foto3, foto4) - Log(cl.GetString("TMP_AUTO_RUTA")& " | " & cl.GetString("TMP_AUTO_PLACA")) - reqManager.ExecuteCommand(cmd , "insert_checklist") - contador_env = contador_env + 1 - Next - cl.Close - End If - Log("Terminamos CheckList") - Sleep(1000) - ProgressDialogHide - Msgbox2Async("El checklist ha sido enviado al servidor","AVISO", "Aceptar","","",Null, True) -End Sub - - -Sub JobDone(Job As HttpJob) - If Job.Success = False Then -' ToastMessageShow("Error: " & Job.ErrorMessage, True) - Else - LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211110 - If Job.JobName = "DBRequest" Then - Dim result As DBResult = reqManager.HandleJob(Job) - If result.Tag = "updateKell_UTR" Then 'query tag - For Each records() As Object In result.Rows - For Each k As String In result.Columns.Keys -' Log("Ubicacion en tiempo real: " & k & ": " & records(result.Columns.Get(k))) - Next - Next - End If - End If - End If - Job.Release -End Sub - -Sub GUARDA_TEMPORAL - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("select CAT_CL_RUTA FROM kmt_info") - c.Position=0 - N_Ruta= c.GetString("CAT_CL_RUTA") - C2=Starter.skmt.ExecQuery("select ID_ALMACEN FROM CAT_ALMACEN") - C2.Position=0 - Id_Almacen=C2.GetString("ID_ALMACEN") - ''''''''''''''''''''''''''''''''''''NIVELES DE GASOLINA CHECK'''''''''''''''''' - If Rb_1_4.Checked Then - Combustible="1/4" - End If - If Rb_2_4.Checked Then - Combustible="2/4" - End If - If Rb_3_4.Checked Then - Combustible="3/4" - End If - If Rb_4_4.Checked Then - Combustible="4/4" - End If - ''''''''''''''''''''''''''''''''''''INDICADORES DE TABLERO'''''''''''''''''' - If Cbox_Claxon.Checked=True Then - Cbox_Claxon.Tag="1" - Else - Cbox_Claxon.Tag="0" - End If - - If Cbox_Cinturon.Checked=True Then - Cbox_Cinturon.Tag="1" - Else - Cbox_Cinturon.Tag="0" - End If - - If Cbox_Parabrisas.Checked=True Then - Cbox_Parabrisas.Tag="1" - Else - Cbox_Parabrisas.Tag="0" - End If - - If Cbox_Espejos.Checked=True Then - Cbox_Espejos.Tag="1" - Else - Cbox_Espejos.Tag="0" - End If - - If Cbox_Licencia.Checked=True Then - Cbox_Licencia.Tag="1" - Else - Cbox_Licencia.Tag="0" - End If - '''''' SEGUNDO PANEL - If Ch_OBJETOSINE.Checked=True Then - Ch_OBJETOSINE.Tag="1" - Else - Ch_OBJETOSINE.Tag="0" - End If - - If CH_OBJMPERV.Checked=True Then - CH_OBJMPERV.Tag="1" - Else - CH_OBJMPERV.Tag="0" - End If - - If Ch_ORHERRA.Checked=True Then - Ch_ORHERRA.Tag="1" - Else - Ch_ORHERRA.Tag="0" - End If - - If Ch_UNILIMPIA.Checked=True Then - Ch_UNILIMPIA.Tag="1" - Else - Ch_UNILIMPIA.Tag="0" - End If - - If Ch_LIMPIO.Checked=True Then - Ch_LIMPIO.Tag="1" - Else - Ch_LIMPIO.Tag="0" - End If - - If Ch_BASURA.Checked=True Then - Ch_BASURA.Tag="1" - Else - Ch_BASURA.Tag="0" - End If - - If Ch_RESPON.Checked=True Then - Ch_RESPON.Tag="1" - Else - Ch_RESPON.Tag="0" - End If - - If Ch_AUDITORIA.Checked=True Then - Ch_AUDITORIA.Tag="1" - Else - Ch_AUDITORIA.Tag="0" - End If - - If Ch_HABITUAL.Checked=True Then - Ch_HABITUAL.Tag="1" - Else - Ch_HABITUAL.Tag="0" - End If - ''''' PANEL 3 - If Ch_HERRAMIENTAS.Checked=True Then - Ch_HERRAMIENTAS.Tag="1" - Else - Ch_HERRAMIENTAS.Tag="0" - End If - If Ch_CONOS.Checked=True Then - Ch_CONOS.Tag="1" - Else - Ch_CONOS.Tag="0" - End If - - If Ch_EDOCARROCE.Checked=True Then - Ch_EDOCARROCE.Tag="1" - Else - Ch_EDOCARROCE.Tag="0" - End If - - If Ch_FUN_LUCES.Checked=True Then - Ch_FUN_LUCES.Tag="1" - Else - Ch_FUN_LUCES.Tag="0" - End If - - If Ch_PLACAS_CIRCU.Checked=True Then - Ch_PLACAS_CIRCU.Tag="1" - Else - Ch_PLACAS_CIRCU.Tag="0" - End If - - If Ch_COND_LLANTAS.Checked=True Then - Ch_COND_LLANTAS.Tag="1" - Else - Ch_COND_LLANTAS.Tag="0" - End If - - '''' PANEL 4 - If Ch_ACEITEMOTOR.Checked=True Then - Ch_ACEITEMOTOR.Tag="1" - Else - Ch_ACEITEMOTOR.Tag="0" - End If - - If Ch_ACEITEDIREC.Checked=True Then - Ch_ACEITEDIREC.Tag="1" - Else - Ch_ACEITEDIREC.Tag="0" - End If - - If Ch_NVL_REFRIGE.Checked=True Then - Ch_NVL_REFRIGE.Tag="1" - Else - Ch_NVL_REFRIGE.Tag="0" - End If - - If Ch_NVL_LIQUIDBRI.Checked=True Then - Ch_NVL_LIQUIDBRI.Tag="1" - Else - Ch_NVL_LIQUIDBRI.Tag="0" - End If - - If Ch_COND_BANMOTOR.Checked=True Then - Ch_COND_BANMOTOR.Tag="1" - Else - Ch_COND_BANMOTOR.Tag="0" - End If - ''''' PANEL 5 - If Ch_FUGASGRAL.Checked=True Then - Ch_FUGASGRAL.Tag="1" - Else - Ch_FUGASGRAL.Tag="0" - End If - - If Ch_FRENOS.Checked=True Then - Ch_FRENOS.Tag="1" - Else - Ch_FRENOS.Tag="0" - End If - - c=Starter.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("PLACAS") ) - c.Position=0 - PLACAS = c.GetString("CUANTOS") - c.Close - - If PLACAS > 0 Then - c=Starter.skmt.ExecQuery2("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("PLACAS") ) - c.Position=0 - PLACAS = c.GetString("CAT_VA_VALOR") - c.Close - Else - PLACAS = "0000" - End If - Starter.skmt.ExecNonQuery("delete from TMP_INSPECCION_AUTO_DIARIA") 'Mod por CHV - 211125 - Starter.skmt.ExecNonQuery2("INSERT INTO TMP_INSPECCION_AUTO_DIARIA( " & Chr(34) & "TMP_AUTO_RUTA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_PLACA" & Chr(34) & "," & Chr(34) & "TMP_AUTO_CEDIS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_IDALMACEN" & Chr(34) & "," & Chr(34) & "TMP_AUTO_FECHA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_KILOMETRAJE" & Chr(34) & "," & Chr(34) & "TMP_AUTO_COMBUSTIBLE" & Chr(34) & "," & Chr(34) & "TMP_AUTO_TABLERO " & Chr(34) & "," & Chr(34) & "TMP_AUTO_CLAXON " & Chr(34) & "," & Chr(34) & "TMP_AUTO_PARABRISAS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_CINTURON " & Chr(34) & "," & Chr(34) & "TMP_AUTO_ESPEJOS " & Chr(34) & " ," & Chr(34) & "TMP_AUTO_LICENCIA " & Chr(34) & " ," & Chr(34) & "TMP_AUTO_LIB_OBJETOSINE " & Chr(34) & " ," & Chr(34) & "TMP_AUTO_LIB_OBJETOTMPERVI " & Chr(34) & "," & Chr(34) & "TMP_AUTO_ORDEN_HERRA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_UNILIMPIA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_LIMPIO " & Chr(34) & "," & Chr(34) & "TMP_AUTO_BASURA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_RESPONSABILIDAD " & Chr(34) & "," & Chr(34) & "TMP_AUTO_AUDITORIA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_HABITUAL " & Chr(34) & "," & Chr(34) & "TMP_AUTO_HERRAMIENTAS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_CONOS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_EDO_CARROCERIA " & Chr(34) & "," & Chr(34) & "TMP_AUTO_FUN_LUCES " & Chr(34) & "," & Chr(34) & "TMP_AUTO_PLACAS_CIRCU " & Chr(34) & "," & Chr(34) & "TMP_AUTO_COND_LLANTAS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_ACEITEMOTOR " & Chr(34) & "," & Chr(34) & "TMP_AUTO_ACEITEDIREC " & Chr(34) & "," & Chr(34) & "TMP_AUTO_NVL_REFRIGERANTE " & Chr(34) & "," & Chr(34) & "TMP_AUTO_NVL_LIQUIDBRISAS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_COND_BANMOTOR " & Chr(34) & "," & Chr(34) & "TMP_AUTO_FUGASGRAL " & Chr(34) & "," & Chr(34) & "TMP_AUTO_FRENOS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_COMENTARIOS " & Chr(34) & "," & Chr(34) & "TMP_AUTO_FOTO1" & Chr(34) & "," & Chr(34) & "TMP_AUTO_FOTO2" & Chr(34) & "," & Chr(34) & "TMP_AUTO_FOTO3" & Chr(34) & "," & Chr(34) & "TMP_AUTO_FOTO4" & Chr(34) & " ) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (N_Ruta,PLACAS,Null,Id_Almacen,sDate,Et_KilometrajeIni.Text,Combustible,1,Cbox_Claxon.Tag,Cbox_Parabrisas.Tag,Cbox_Cinturon.Tag,Cbox_Espejos.Tag,Cbox_Licencia.Tag,Ch_OBJETOSINE.Tag,CH_OBJMPERV.Tag,Ch_ORHERRA.Tag,Ch_UNILIMPIA.Tag,Ch_LIMPIO.Tag,Ch_BASURA.Tag,Ch_RESPON.Tag,Ch_AUDITORIA.Tag,Ch_HABITUAL.Tag,Ch_HERRAMIENTAS.Tag,Ch_CONOS.Tag,Ch_EDOCARROCE.Tag,Ch_FUN_LUCES.Tag,Ch_PLACAS_CIRCU.Tag,Ch_COND_LLANTAS.Tag,Ch_ACEITEMOTOR.Tag,Ch_ACEITEDIREC.Tag,Ch_NVL_REFRIGE.Tag,Ch_NVL_LIQUIDBRI.Tag,Ch_COND_BANMOTOR.Tag,Ch_FUGASGRAL.Tag,Ch_FRENOS.Tag,Edt_COMENTARIO.TeXT)) -End Sub - -Sub b_guardar_Click - If Bt_Foto1.Tag="2" Then - Im_1.Bitmap = LoadBitmap(File.DirInternal, "FOTO1.jpg") - Pnl_Fotos.Visible=False - Bt_Foto1.Visible=True - Bt_Foto2.Visible=True - Bt_Foto3.Visible=True - Bt_Foto4.Visible=True - Pnl_Fotos.Visible=False - Bt_GuardarCheck.Visible=True - End If - - If Bt_Foto2.Tag="2" Then - Im2.Bitmap = LoadBitmap(File.DirInternal, "FOTO2.jpg") - Pnl_Fotos.Visible=False - Bt_Foto1.Visible=True - Bt_Foto2.Visible=True - Bt_Foto3.Visible=True - Bt_Foto4.Visible=True - Pnl_Fotos.Visible=False - Bt_GuardarCheck.Visible=True - End If - If Bt_Foto3.Tag="2" Then - Im3.Bitmap = LoadBitmap(File.DirInternal, "FOTO3.jpg") - Pnl_Fotos.Visible=False - Bt_Foto1.Visible=True - Bt_Foto2.Visible=True - Bt_Foto3.Visible=True - Bt_Foto4.Visible=True - Pnl_Fotos.Visible=False - Bt_GuardarCheck.Visible=True - End If - - If Bt_Foto4.Tag="2" Then - Im4.Bitmap = LoadBitmap(File.DirInternal, "FOTO4.jpg") - Pnl_Fotos.Visible=False - Bt_Foto1.Visible=True - Bt_Foto2.Visible=True - Bt_Foto3.Visible=True - Bt_Foto4.Visible=True - Pnl_Fotos.Visible=False - Bt_GuardarCheck.Visible=True - End If -End Sub - -Sub Bt_Foto1_Click - foto.quien_llamo = "1" - GUARDA_TEMPORAL - TOMO_FOTO1 = 1 - StartActivity("foto") -End Sub - -Sub Bt_Foto2_Click - foto.quien_llamo = "2" - GUARDA_TEMPORAL - StartActivity("foto") -End Sub - -Sub Bt_Foto3_Click - foto.quien_llamo = "3" - GUARDA_TEMPORAL - TOMO_FOTO3 = 1 - StartActivity("foto") -End Sub - -Sub Bt_Foto4_Click - foto.quien_llamo = "4" - GUARDA_TEMPORAL - TOMO_FOTO4 = 1 - StartActivity("foto") -End Sub - -Sub LBL_REGRESA_Click - Pnl_Fotos.Visible=False - Bt_Foto1.Visible=True - Bt_Foto2.Visible=True - Bt_Foto3.Visible=True - Bt_Foto4.Visible=True - Bt_GuardarCheck.Visible=True -End Sub - -''' SUBIR PANEL. -Sub IME_HeightChanged(NewHeight As Int, OldHeight As Int) - ' para subir la entrada de datos y que este encima del teclado - 'Log("NewHeight " & NewHeight & " OldHeight " & OldHeight) -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean 'ignore - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - Pnl_CabinaInfo.Visible=False - Pnl_Carga.Visible=False - Pnl_Inspec.Visible=True - Pnl_MotorEncen.Visible=True - Pnl_CofreAbierto.Visible=False - Return False - 'End If - End If - ' Returning False signals the system to handle the key -End Sub diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas deleted file mode 100644 index ce31a4c..0000000 --- a/B4A/C_Cliente.bas +++ /dev/null @@ -1,3145 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Mods 'Ignore - '2023/05/04 - Se modifico el sub b_geopass_Click para que si se mete la contraseña KMTS1, se habilite la venta fuera de la geocerca. -End Sub - -Sub Class_Globals - Private Root As B4XView 'ignore - Dim reqManager As DBRequestManager - Private xui As XUI 'ignore - '// Process Globals - Dim g As GPS - Dim ime As IME - Dim ruta As String - Dim clie_id As String - Dim sDate,sTime As String - Dim usuario As String = "" - Dim total_cliente As String - Dim m_lat As String - Dim m_lon As String - Dim cmp20 As Serial - Dim printer As TextWriter - Dim PairedDevices As Map - Dim L As List - Dim TAMANO As Int - Dim ESPACIO As Int - Dim BLANCO As String - Dim cuenta As String - Dim Printer1 As EscPosPrinter - Dim MAC_IMPRESORA As String - Dim LONGITUD As String = "0" - Dim LATITUD As String = "0" - Dim NOMBRE As String - Dim ruta_tienda As String - Dim id_encuesta As String - Dim LLAMAR_FOTO As String - Dim CURSOR_FOTO As Int - Dim TOMAR_FOTO As String - Dim YA_IMPRIMIO2 As String - Dim CREDITO_DISPONIBLE As String - '//Globals - Dim c As Cursor - Dim s As Cursor - Dim c2 As Cursor - Dim S1 As Cursor - Dim S2 As Cursor - Dim S3 As Cursor - Dim C1 As Cursor - Dim C3 As Cursor - Dim C4 As Cursor - Dim C5 As Cursor - Dim C6 As Cursor - Dim c7 As Cursor - Dim C8 As Cursor - Dim RMI As String - Dim RMI_VALOR As String - Dim ListView1 As ListView - Dim la_cuenta As Label - Dim La_nombre As Label - Dim la_Calle As Label - Dim la_numero As Label - Dim la_nint As Label - Dim la_edo As Label - Dim la_pob As Label - Dim la_col As Label - Dim la_cp As Label - Dim la_zona As Label - Dim gest As Button - Dim la_saldotot As Label - Dim la_saldooper As Label - Dim Tels As Button - Dim Label10 As Label - Dim Label11 As Label - Dim Tar As Button - Dim la_comm As Label - Dim la_actdte As Label - Dim la_usuario As Label - Dim la_resultado As Label - Dim l_entre1 As Label - Dim l_entre2 As Label - Dim l_atiende As Label - Dim l_atiende2 As Label - Dim DATOS As Button - Dim Guardar As Button - Dim NUEVO As Button - Dim l_total As Label - Dim c2 As Cursor - Dim S2 As Cursor - Private s As Cursor - Dim res As String - Private HIST As Button - Private MONTO_COMPRA As String - Private META As String - Private META2 As String - Private VERIFICA As String - Private L_QR As Label - Private BT_QR As Button - Private qr As QRCode - Dim sc As Zxing_scanner - Dim CODIGO As String - Private b_mapa As Button - Dim CUANTOS As String - Private B_IMP As Button - Dim Toggla As Toggle - Private B_VENTA As Button - Dim PASA_IMP As String - Dim sucursal As String - Dim FACTURA As String - Dim CREDITO As String - Private b_factura As Button - Dim perfil As String - Private CH_TA As CheckBox - Private CH_TC As CheckBox - Private CH_TB As CheckBox - Private CH_TD As CheckBox - Private E_CUANTOS_E As EditText - Private B_GUARDAR As Button - Private TIPOEX As String - Private B_EXIBI As Button - Private Panel1 As Panel - Dim t3 As Timer - '--***---- BOLETA DE LIQUIDACION - Private P_BOLETA As Panel - '------ BILLETES - Private LBL_TMIL As Label - Private LBL_TQUIN As Label - Private LBL_TDOS As Label - Private LBL_TCIEN As Label - Private LBL_TCIN As Label - Private LBL_TVEIN As Label - Private LBL_MIL As Label - Private LBL_QUIN As Label - Private LBL_DOSC As Label - Private LBL_CIEN As Label - Private LBL_CINCUEN As Label - Private LBL_VEINTE As Label - Private EDT_CANVEIN As EditText - Private EDT_CANCIN As EditText - Private EDT_CANCIEN As EditText - Private EDT_CANDOS As EditText - Private EDT_CANQUIN As EditText - Private EDT_CANMIL As EditText - Private Btn_TOTALBILLETE As Button - Private Pnl_Billete As Panel - Private Pnl_Moneda As Panel - Private L_CALCULA_BILLE As Label - '------ BOTONES MAS Y MENOS - Private B_MENMIL As Button - Private B_SUMIL As Button - Private B_MENQUI As Button - Private B_SUQUI As Button - Private B_MENDOS As Button - Private B_SUDOS As Button - Private B_MENCIE As Button - Private B_SUCIEN As Button - Private B_MENCIN As Button - Private B_SUCIN As Button - Private B_MENVEI As Button - Private B_SUVEI As Button - '------ MONEDAS - Private L_DIEZ As Label - Private L_CINCO As Label - Private L_DOS As Label - Private L_UNO As Label - Private L_CENTAVO As Label - Private LBL_TDIEZ As Label - Private LBL_TCI As Label - Private LBL_TDO As Label - Private LBL_TUN As Label - Private LBL_TCEN As Label - Private EDT_CANCEN As EditText - Private EDT_CANUN As EditText - Private EDT_CANDO As EditText - Private EDT_CANCI As EditText - Private EDT_CANDIEZ As EditText - Private L_CALCULA_MONEDA As Label - Private B_TOTALMONEDA As Button - '------ BOTONES MAS Y MENOS - Private B_MENCENT As Button - Private B_MENUN As Button - Private B_MENDO As Button - Private B_MENCI As Button - Private B_MENDIEZ As Button - Private B_SUMDIEZ As Button - Private B_SUMCIN As Button - Private B_SUMDO As Button - Private B_SUMUN As Button - Private B_SUMCENT As Button - '------ SUMA TOTALES - Private Edt_FH As EditText - Private B_AGREGAMONE As Button - Private B_AGREGABILL As Button - Private TOTALES As Label - Private B_SUM_TOTAL As Button - Private TOTALBILLETES As Button - Private TOTALMONEDA As Button - Private PNL_TOTALES As Panel - Private LBL_RETURN As Label - Private IMG_IMPRESORA As Label - Private LBL_REGRESA As Label - '--***---- FIN BOLETA - Private P_INF_GENERAL As Panel - Private B_Regresar As Button - Private ABORDO As String - Private a_inicial As String - Private a_total As String - Private a_venta As String - Private a_final As String - Private a_VENTA_F As String - Private a_inicial_5 As String - - Private L_INVA As ListView - Private B_IMP_INV As Button - Private B_CERRAR_I As Button - Private Panel_INV_A As Panel - Private LBL_TVEINTE As Label - Private B_SUMVEINTE As Button - Private EDT_CANVEINTE As EditText - Private B_MENVEINTE As Button - Private L_VEINTE As Label - Dim RutaBoleta As String - Dim Id_Almacen As String - Dim cursorBoleta As Cursor - Private Bt_GuardarBoleta As Button - Private CUANTOS1 As String - Private Panel9 As Panel - Private t_tenc As Label - Private E_RES_E As EditText - Private B_E_NEXT As Button - Private Label26 As Label - Private l_chk_e As Label - Private Chk_1 As CheckBox - Private chk_2 As CheckBox - Private chk_3 As CheckBox - Private b_chk_e As Button - Private Panel10 As Panel - Private chk_1_valor As String - Private chk_2_valor As String - Private chk_3_valor As String - Private p_encuesta As Panel - Private b_encuesta_1 As Button - Private b_encuesta_2 As Button - Private b_encuesta_3 As Button - Private l_titEncuesta As Label - Private l_txtEncuesta As Label - Private encuestaRes As String - Private botonPresionado As Int - Private B_IMP2 As Button - Dim impresoraConectada As Boolean = False - Private l_categoria2 As Label - Private l_exhibidor2 As Label - Private p_exhibidores As Panel - Private Button1 As Button - Private b_exhibidor As Button - Private l_exhibidores3 As Label - Private l_segmento2 As Label - Private et_encuesta As EditText - Private b_encuesta_continuar As Button - Dim muestraBoleta As Boolean = False - Private Panel4 As Panel - Private Panel6 As Panel - Private l_ubicacion As Label - Dim l_ubicacion2 As Label - Dim b_ubicacion As Button - Dim logger As Boolean = False - Private b_whats As Button - Private b_aceptarrpomo As Button - Private b_rechazapromo As Button - Private p_promowhats As Panel - Private l_promowhats As Label - Private L_doe As Label - - Private gps_boton_doe As String - Private pgs_boton_noventa As String - Private P_DOE As Panel - Private LP_DOE As ListView - Private BP_DOE_A As Button - Private BP_DOE_R As Button - Private p_pideGeoPass As Panel - Private b_geopass As Button - Private et_geopass As EditText - Dim laDist As Float - Private L_DOE_TOTAL As Label - Private Panel11 As Panel - Private BP_DOE_R1 As Button - Private r_1 As RadioButton - Private r_2 As RadioButton - Private r_3 As RadioButton - Private r_4 As RadioButton - Private R_5 As RadioButton - Private e_comm As EditText - Private motivo As String -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - If Not(Starter.Logger) Then logger = False - Root = Root1 - reqManager.Initialize(Me, Starter.server) - 'load the layout to Root - Root.LoadLayout("cliente") - ruta = File.DirInternal - Subs.panelAnchoAlto(P_INF_GENERAL, Root.Width, Root.Height) - Panel6.Width = Root.Width - p_promowhats.Width = Root.Width - p_promowhats.visible = False - If Starter.boleta = 0 Then - c=Starter.skmt.ExecQuery("select 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_BFACTURA, CAT_CL_BCREDITO, CAT_CL_CATEGORIA, CAT_CL_SEGMENTO from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - s=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - s.Position=0 - If c.RowCount > 0 Then - c.Position=0 - la_cuenta.Text = c.GetString("CAT_CL_CODIGO") - cuenta = c.GetString("CAT_CL_CODIGO") - La_nombre.Text = c.GetString("CAT_CL_NOMBRE") - NOMBRE = c.GetString("CAT_CL_NOMBRE") - la_Calle.Text = c.GetString("CAT_CL_CALLE") & c.GetString("CAT_CL_NOEXT") - la_col.Text = c.GetString("CAT_CL_COLONIA") - la_edo.Text = c.GetString("CAT_CL_EDO") - la_cp.Text = c.GetString("CAT_CL_CP") - l_entre1.Text = c.GetString("CAT_CL_CALLE1") - l_entre2.Text = c.GetString("CAT_CL_CALLE2") - l_atiende.Text = c.GetString("CAT_CL_ATIENDE1") - l_atiende2.Text = c.GetString("CAT_CL_ATIENTE2") - la_saldotot.Text = c.GetString("CAT_CL_TELEFONO") - ''' ESTO SE AGREGA PARA QUE SE VEA LOS CLIENTES DOE - If c.GetString("CAT_CL_EMAIL") = "1" Then - L_doe.Visible = True - Else - L_doe.Visible = False - End If - '''FIN CLIENTES DOE - l_total.Text = s.GetString("TOTAL_CLIE") - total_cliente = s.GetString("TOTAL_CLIE") - MONTO_COMPRA = c.GetString("CAT_CL_MTOCOMPRA") - FACTURA = c.GetString("CAT_CL_BFACTURA") - CREDITO = c.GetString("CAT_CL_BCREDITO") - LONGITUD = 0 - If c.GetString("CAT_CL_LONG") <> Null And c.GetString("CAT_CL_LONG") <> "null" And IsNumber(c.GetString("CAT_CL_LONG")) Then LONGITUD = c.GetString("CAT_CL_LONG") - LATITUD = 0 - If c.GetString("CAT_CL_LAT") <> Null And c.GetString("CAT_CL_LAT") <> "null" And IsNumber(c.GetString("CAT_CL_LAT")) Then LATITUD = c.GetString("CAT_CL_LAT") - l_categoria2.text = c.GetString("CAT_CL_CATEGORIA") - l_segmento2.text = c.GetString("CAT_CL_SEGMENTO") - If logger Then Log($"Lon: ${LONGITUD}, Lat: ${LATITUD}"$) - Else - RutaBoleta=Starter.rutaV - End If - End If - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("MACIMP")) - c.Position =0 - If c.RowCount > 0 Then - MAC_IMPRESORA = c.GetString("CAT_VA_VALOR") - Else - MAC_IMPRESORA = 0 - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MACIMP","0")) - End If - Starter.MAC_IMPRESORA = MAC_IMPRESORA - Printer1.Initialize(Me, "Printer1") - TOMAR_FOTO = 0 - c.Close - If s.IsInitialized Then s.Close -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - -Sub B4XPage_Appear - If Subs.traeUltimaActividadBD <> "Cliente" Then Subs.iniciaActividad(Subs.traeUltimaActividadBD) - If Not(muestraBoleta) Then P_INF_GENERAL.Visible = True - - - la_cuenta.Text = "" - La_nombre.Text = "" - la_Calle.Text = "" - la_col.Text = "" - la_edo.Text = "" - la_cp.Text = "" - l_entre1.Text = "" - l_entre2.Text = "" - l_atiende.Text = "" - l_atiende2.Text = "" - l_total.Text = "" - l_exhibidor2.Text = "" - la_saldooper.Text = "" - l_categoria2.text = "" - l_segmento2.text = "" - - p_pideGeoPass.Visible = False -' If Logger Then Log(muestraBoleta) - CallSubDelayed(Tracker, "StartFLP2") - b_ubicacion.Text = "SIN GPS" - b_ubicacion.TextColor = Colors.Red - pgs_boton_noventa = "1" - m_lat = -99.167244 - m_lon = 19.427184 - If Not(Starter.GPS.GPSEnabled) Then - ToastMessageShow("Debe Activar el GPS del Equipo.", True) - StartActivity(Starter.GPS.LocationSettingsIntent) - Else - Starter.GPS.Start(0, 0) - If Starter.ubicacionActual.Latitude <> 0 Then GPS_LocationChanged(Starter.ubicacionActual) - End If - If muestraBoleta Then LLAMA_BOLETA - BT_QR.Enabled = False - b_factura.Visible = False - Panel_INV_A.Visible = False - CREDITO_DISPONIBLE =0 - - If Starter.boleta = 0 Then - c=Starter.skmt.ExecQuery("SELECT CAT_EP_ID, CAT_EP_IDTIPOPREGUNTA, CAT_CE_DESCRIPCION, CAT_EP_PREGUNTA, CAT_EP_RES1_PRED, CAT_EP_RES2_PRED, CAT_EP_RES3_PRED, CAT_EP_ORDEN_PREGUNTA FROM CAT_ENCUESTA_PREGUNTA ORDER BY CAT_CE_DESCRIPCION, CAST(CAT_EP_ORDEN_PREGUNTA AS DECIMAL)") - If c.RowCount > 0 Then c.Position= 1 - - If TOMAR_FOTO = 0 Then - c=Starter.skmt.ExecQuery("select * from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - s=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - s.Position=0 - S1=Starter.skmt.ExecQuery("select count(*) as CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - S1.Position=0 - Log("hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh "&c.RowCount) - c.Position=0 - la_cuenta.Text = c.GetString("CAT_CL_CODIGO") - La_nombre.Text = c.GetString("CAT_CL_NOMBRE") - la_Calle.Text = c.GetString("CAT_CL_CALLE") & " " & c.GetString("CAT_CL_NOEXT") - la_col.Text = c.GetString("CAT_CL_COLONIA") - la_edo.Text = c.GetString("CAT_CL_EDO") - la_cp.Text = c.GetString("CAT_CL_CP") - l_entre1.Text = c.GetString("CAT_CL_CALLE1") - l_entre2.Text = c.GetString("CAT_CL_CALLE2") - l_atiende.Text = c.GetString("CAT_CL_ATIENDE1") - l_atiende2.Text = c.GetString("CAT_CL_ATIENTE2") - l_total.Text = s.GetString("TOTAL_CLIE") - total_cliente = s.GetString("TOTAL_CLIE") - m_lat =c.GetString("CAT_CL_LAT") - m_lon =c.GetString("CAT_CL_LONG") - CREDITO_DISPONIBLE = c.GetString("CAT_CL_BFACTURA") - CREDITO = c.GetString("CAT_CL_BCREDITO") - ruta_tienda = c.GetString("CAT_CL_RUTA") - YA_IMPRIMIO2 = c.GetString("IMPRESION") - l_categoria2.text = c.GetString("CAT_CL_CATEGORIA") - l_segmento2.text = c.GetString("CAT_CL_SEGMENTO") - If c.GetString("CAT_CL_EMAIL") = "1" Then - L_doe.Visible = True - Else - L_doe.Visible = False - End If - '''FIN CLIENTES DOE - LONGITUD = 0 - If la_cuenta.Text = "0" Then - m_lat = Starter.lat_gps - m_lon = Starter.lon_gps - End If - If c.GetString("CAT_CL_LONG") <> Null And c.GetString("CAT_CL_LONG") <> "null" And IsNumber(c.GetString("CAT_CL_LONG")) Then LONGITUD = c.GetString("CAT_CL_LONG") - LATITUD = 0 - If c.GetString("CAT_CL_LAT") <> Null And c.GetString("CAT_CL_LAT") <> "null" And IsNumber(c.GetString("CAT_CL_LAT")) Then LATITUD = c.GetString("CAT_CL_LAT") - LogColor($"${c.GetString("CAT_CL_LAT")}, ${c.GetString("CAT_CL_LONG")}"$, Colors.red) - If logger Then Log($"Lat: ${LATITUD}, Lon: ${LONGITUD}"$) - NOMBRE = c.GetString("CAT_CL_NOMBRE") - If l_total.Text = Null Then - Tels.Visible = True - Else - Tels.Visible = False - pgs_boton_noventa = "0" - If la_cuenta.Text = "0" Then - CREDITO_DISPONIBLE = 10000000 - CREDITO = 0 - End If - End If -' If S1.GetString("CUANTOS") = 0 Then -' Tels.Visible = True -' Else 'Si ya hay venta, ocultamos el boton de "NO VENTA" -' Tels.Visible = False -' pgs_boton_noventa = "0" -' End If - If CREDITO = "1" Then - Msgbox("ALTO","Este cliente no se le puede vender ya que tienen adeudo en su crédito") 'ignore - B_VENTA.Visible = False - gest.Visible = False - Else - B_VENTA.Visible = True - gest.Visible = True - End If - ' Msgbox(c.GetString("CAT_CL_NUM_SERIEFISICO"),"AVISO") - If c.GetString("CAT_CL_NUM_SERIEFISICO") = "0" Then - L_QR.Visible = True - Else - L_QR.Visible = False - End If - S2=Starter.skmt.ExecQuery("select count(*) AS CUANTOS from HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa)") - S2.Position =0 - CUANTOS = S2.GetString("CUANTOS") - S2.Close - If CUANTOS > 0 Then - c2=Starter.skmt.ExecQuery("select sum(HVD_COSTO_TOT) AS TOTAL from HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa)") - c2.Position =0 - MONTO_COMPRA = c2.GetString("TOTAL") - c2.Close - Else - MONTO_COMPRA = "0" - End If - - la_saldotot.Text = MONTO_COMPRA - If MONTO_COMPRA <> "0" Then - META2 = 300 - MONTO_COMPRA - Else - META2 = 300 - End If - If META2 < 1 Then - META2 = "CUBIERTO" - End If - la_saldooper.Text = META2 - c7=Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa) ") - c7.Position=0 - If c7.GetString("CUANTOS") = 0 Then - c=Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS FROM HIST_CLIENTE_CANT_PROMOS WHERE HCCP_CLIENTE IN (Select cuenta from cuentaa)") - c.Position =0 - If c.GetString("CUANTOS") > 0 Then - C1=Starter.skmt.ExecQuery("SELECT HCCP_PROMO FROM HIST_CLIENTE_CANT_PROMOS WHERE HCCP_CLIENTE IN (Select cuenta from cuentaa) ") - C1.Position =0 - C3=Starter.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM CAT_GUNAPROD2 WHERE CAT_GP_ID = ? ", Array As String(C1.GetString("HCCP_PROMO"))) - C3.Position = 0 - If C3.GetString("CUANTOS") > 0 Then - c2=Starter.skmt.ExecQuery2("SELECT CAT_GP_NOMBRE FROM CAT_GUNAPROD2 WHERE CAT_GP_ID = ? ", Array As String(C1.GetString("HCCP_PROMO"))) - c2.Position = 0 - MsgboxAsync("El cliente tiene derecho a una promo especial "& c2.GetString("CAT_GP_NOMBRE"),"Aviso") 'ignore - c2.Close - Else - MsgboxAsync("El cliente tiene derecho a una promo especial ","Aviso") 'ignore - End If - C3.Close - C1.Close - End If - End If - c7.Close - B_VENTA.Visible = True - Tels.Visible = True - If CREDITO = "1" Then - Msgbox("El cliente tiene credito excedido","Aviso") 'ignore - B4XPages.ShowPage("Principal") - End If - Else - Cuestionario - End If - If YA_IMPRIMIO2 = 0 Then - Guardar.Visible = False - Else - Guardar.Visible = True - End If - If la_cuenta.text = "0" Then Guardar.Visible = True 'Abordo - If l_total.Text = Null Or l_total.Text = "null" Or l_total.text = "0" Then Guardar.Visible = True 'Si no hay venta entonces "Guardar" es visible. - - 'Promo Especial -' If Logger Then LogColor($"Ultima actividad BD=${Subs.traeUltimaActividadBD}"$, Colors.Magenta) - Dim mPromoEspecial As Map = revisaPromoEspecial -' If Logger Then Log(mPromoEspecial.Get("esValida")) - If Subs.traeUltimaActividadBD = "Productos" Then 'Venimos de "Productos" - If logger Then Log("Venimos de Productos") - If l_total.Text <> Null And mPromoEspecial.Get("montoPromo") <> Null And l_total.Text > ((mPromoEspecial.Get("montoPromo") * (100 - mPromoEspecial.Get("rangoPromo")))/100) And _ - l_total.Text <= mPromoEspecial.Get("montoPromo") Then 'El monto de la venta esta dentro del rango para la promo. - If logger Then Log("Promo dentro del rango") - Msgbox($"Si la venta sobrepasa los $${mPromoEspecial.Get("montoPromo")} se activa la promoción '${mPromoEspecial.Get("descrPromo")}'"$, "CASI EN RANGO DE PROMO ESPECIAL") 'ignore - Else - If logger Then Log("Promo fuera de rango") - End If - If l_total.Text <> Null And mPromoEspecial.Get("montoPromo") <> Null And l_total.text >= mPromoEspecial.Get("montoPromo") Then - If logger Then Log("Promo Autorizada") - res = Msgbox2("Pomocion '" & mPromoEspecial.Get("descrPromo") & "' disponible.\nSi se otorga la promoción ya NO será posible modificar la venta.", "PROMO DISPONIBLE", "Si", "", "No", Null) 'ignore - If res = DialogResponse.POSITIVE Then - If logger Then Log("Promocion aceptada.") - If logger Then Log($"${mPromoEspecial.Get("idProd")}, ${mPromoEspecial.Get("idPromo")}, ${mPromoEspecial.Get("cantProd")}, ${mPromoEspecial.Get("nombreProd")}, ${mPromoEspecial.Get("descrPromo")}, ${la_cuenta.Text}, ${usuario}, ${ruta_tienda}"$) - metePromoEspecial(mPromoEspecial.Get("idProd"), mPromoEspecial.Get("idPromo"), mPromoEspecial.Get("cantProd"), mPromoEspecial.Get("nombreProd"), mPromoEspecial.Get("descrPromo"), la_cuenta.Text, usuario, ruta_tienda) - Subs.ponImpreso(la_cuenta.Text) - End If - End If - If l_total.Text <> Null And mPromoEspecial.Get("montoPromo") <> Null Then Log($"Monto venta = ${l_total.Text}, rango para promo = ${(mPromoEspecial.Get("montoPromo") * (100 - mPromoEspecial.Get("rangoPromo"))/100)}"$) - End If - - c=Starter.skmt.ExecQuery("select count(*) as conNoVenta FROM NOVENTA WHERE NV_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position = 0 - If c.GetString("conNoVenta") = 1 Then Tels.Visible = False 'Si ya tiene NoVenta, ocultamos el boton. - c.Close - Else - RutaBoleta=Starter.rutaV - End If - If c.IsInitialized Then c.Close - If s.IsInitialized Then s.Close - If S1.IsInitialized Then S1.Close - If logger Then Log("===================== Traemos EXHIBIDORES " & la_cuenta.Text & " =================" ) - c=Starter.skmt.ExecQuery2("select * FROM HIST_EXHIBIDORES2 where hist_ex_id_cliente = ?", Array As String (la_cuenta.Text)) - Log("uuuuuuuuuuuuuuuuuuuuuuuuuuuuu "&c.RowCount) - If c.RowCount > 0 Then - Private exhibs As String = "" - Private separador As String = "" - For i=0 To c.RowCount -1 - c.Position=i - If i < c.RowCount And i <> 0 Then separador = " - " Else separador = "" - exhibs = exhibs & separador & c.GetString("HIST_EX_TIPO") - Next -' If Logger Then LogColor(exhibs, Colors.Blue) - c.Close - l_exhibidor2.Text = exhibs - l_exhibidores3.Text = exhibs - End If - - 'PARA LA PROMO DOE - If Starter.boleta = 0 Then - b_whats.Visible = False - gps_boton_doe = "0" - C1=Starter.skmt.ExecQuery("select IMPRESION FROM kmt_info where CAT_CL_CODIGO In (select cuenta from cuentaa)") - C1.Position = 0 - If C1.GetString("IMPRESION") <> "1" Then - S=Starter.skmt.ExecQuery2("select COUNT(*) AS CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) AND PE_PROID = ?", Array As String("PROMODOE") ) - s.Position = 0 - If s.GetString("CUANTOS") = 0 Then - c=Starter.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM HIST_CLIENTE_CANT_PROMOS WHERE HCCP_CLIENTE IN (Select cuenta from cuentaa) AND HCCP_PROMO = ?", Array As String("PROMODOE")) - c.Position =0 - If c.GetString("CUANTOS") > 0 Then - C3=Starter.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM CAT_GUNAPROD2 WHERE CAT_GP_ID = ? ", Array As String("1008094223")) - C3.Position = 0 - If C3.GetString("CUANTOS") > 0 Then - c2=Starter.skmt.ExecQuery2("SELECT CAT_GP_ALMACEN FROM CAT_GUNAPROD2 WHERE CAT_GP_ID = ? ", Array As String("1008094223")) - c2.Position = 0 - If c2.GetString("CAT_GP_ALMACEN") > 0 Then - b_whats.Visible = False - ' gps_boton_doe = "1" - - End If - c2.Close - End If - C3.Close - End If - c.Close - End If - s.Close - End If - C1.Close - End If - - gps_boton_doe = "0" - muestraBoleta = False - b_whats.Visible =False - If l_total.Text <> Null Then Tels.Visible = False -End Sub - -Sub Printer1_Connected (Success As Boolean) -' If Logger Then Log("Printer1_Connected") - If Success Then - ToastMessageShow("Impresora conectada", False) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("MACIMP")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MACIMP",Starter.mac_impresora)) - If logger Then LogColor("Impresora conectada", Colors.Green) -' B_IMP2.Enabled = True - impresoraConectada = True - Else -' Msgbox(Printer1.ConnectedErrorMsg, "Error connecting.") 'ignore -' ToastMessageShow("Error conectando la impresora", False) - If logger Then LogColor("Error conectando la impresora", Colors.Red) - End If -End Sub - -Sub GPS_LocationChanged (Location1 As Location) - 'Este codigo se corre desde Tracker/flp_LocationChanged - b_ubicacion.TextColor = Colors.Gray - Sleep(200) - b_ubicacion.TextColor = Colors.White - If logger Then Log($"${Location1.Latitude}, ${Location1.Longitude}, ${Location1.Accuracy}"$) - - If m_lat = Null Or m_lat = "" Then m_lat = 0 - If m_lon = Null Or m_lon = "" Then m_lon = 0 - - Private ubicacionTienda As Location - ubicacionTienda.Initialize - ubicacionTienda.Latitude = m_lat - ubicacionTienda.Longitude = m_lon - If logger Then Log($"Tienda:${ubicacionTienda.Latitude}, ${ubicacionTienda.Longitude}"$) - b_ubicacion.TextSize = 13 - b_ubicacion.Text = $"Precisión GPS $1.0{Location1.Accuracy} m"$ - If Location1.Accuracy > 200 Then - b_ubicacion.TextColor = Colors.Red - b_ubicacion.TextSize = 16 - b_ubicacion.Text = $"Mala señal $1.0{Location1.Accuracy} m"$ - End If - laDist= Location1.DistanceTo(ubicacionTienda) - l_ubicacion2.Text = $"Dist: $1.0{laDist} mts."$ - If laDist > 300 Then l_ubicacion2.TextColor = Colors.Red Else l_ubicacion2.TextColor = Colors.Black - - '''' GEO CERCA - '''' esto es para la geocerca validar tambien el las variables del whats y del no venta que las borra si existe venta - Dim l1, l2 As Location - l1.Initialize2(Starter.lat_gps, Starter.lon_gps) - - -' Log($"Coordenadas de la tienda - lat:${m_lat}, lon:${m_lon}"$) - l2.Initialize2(m_lat, m_lon) - - Dim distance As Long - distance = l1.DistanceTo(l2) ' resultado en metros - gest.Visible = True - - gps_boton_doe ="1" -' LogColor($"Distancia actual: ${distance}"$, Colors.Blue) - If distance <= 5000000000000 Or usuario = "KMTSKLL1" Then -' If pgs_boton_noventa = "1" Then Tels.Visible = True - If gps_boton_doe ="1" Then b_whats.Visible = True - B_VENTA.Visible = True - Tels.Visible = True - If l_total.Text <> Null And l_total.Text <> "null" Then -' Log("Hide NoVenta" & "|" & l_total.Text & "|") - Tels.Visible = False - End If - pedido_doe_muestra - Else - Tels.Visible = False - B_VENTA.Visible = False - b_whats.Visible = False - End If - ''' fin de la geocerca -End Sub - -Sub ListView1_ItemLongClick (Position As Int, Value As Object) - -End Sub - -Sub gest_Click - Starter.tipov = "PREVENTA" - Subs.iniciaActividad("Productos") -End Sub - -Sub Tels_Click - Subs.iniciaActividad("noventa") -End Sub - -Private Sub B4XPage_CloseRequest As ResumableSub - ' BACK key pressed - 'Return True to close, False to cancel - If PNL_TOTALES.Visible Then - PNL_TOTALES.Visible = False - P_BOLETA.Visible = False - P_INF_GENERAL.Visible = True - Log("Panel general="&P_INF_GENERAL.Visible) - Subs.iniciaActividad("Principal") - else if p_pideGeoPass.Visible Then - p_pideGeoPass.Visible = False - else if Panel_INV_A.Visible Then - Panel_INV_A.Visible = False - P_INF_GENERAL.Visible = True - If logger Then Log("Panel general="&P_INF_GENERAL.Visible) - Else - Msgbox("Presione Guardar para continuar","Aviso") 'ignore - End If - Return False -End Sub - -Sub Tar_Click - Subs.iniciaActividad("nota") -End Sub - -Sub DATOS_Click - Subs.iniciaActividad("telefonos") -End Sub - -Sub Guardar_Click - Log("GUARDAR") - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - If Starter.lat_gps = 0 Or Starter.lat_gps = Null Then - Private coords As List = Subs.traeCoordsDeBD - Starter.lat_gps = coords.Get(0) - Starter.lon_gps = coords.Get(1) - End If - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - If l_total.Text <> Null And l_total.Text <> "null" Then Subs.ponImpreso(clie_id) 'Solo lo marcamos com impreso si tiene venta (total > 0). - c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, COUNT(*) AS CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - If c.GetString("CUANTOS") > 0 Then - Starter.skmt.ExecNonQuery("delete from NOVENTA where NV_CLIENTE In (select cuenta from cuentaa)") - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - If logger Then LogColor($"Insertamos coordenadas en pedido: ${Starter.lon_gps}, ${Starter.lat_gps}"$, Colors.Magenta) - Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT) VALUES (?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps)) - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - End If - s=Starter.skmt.ExecQuery("SELECT count(*) AS FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - s.Position = 0 - If s.GetString("FOLIO") > 0 Then - c=Starter.skmt.ExecQuery("SELECT SUM(PE_FOLIO) AS FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position = 0 - End If - s.Close - Starter.skmt.ExecNonQuery("delete from pedido3") - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO ) SELECT PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, SUM(PE_COSTO_TOT) AS PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE ") - c=Starter.skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? ", Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"))) - Next - End If - c.Close - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FOLIO = ? WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As Object(YA_IMPRIMIO2)) - Starter.skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_FECHA = ? WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and PE_FECHA IS NULL", Array As Object(sDate & sTime)) - Starter.skmt.ExecNonQuery("delete from PEDIDO where PE_CANT = 0") 'Mod por CHV para que borre los productos que esten con cantidad 0 - 211228 - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("ULTIMOMODULO")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("ULTIMOMODULO", "seleccion")) -' Activity.Finish - CallSubDelayed(Tracker, "StartFLP") - If logger Then LogColor("Cerramos Cliente, iniciamos Principal", Colors.blue) -' B4XPages.ShowPage("Principal") - Starter.ultima_back_productos = 0 - B4XPages.ShowPageAndRemovePreviousPages("Principal") -End Sub - -Sub NUEVO_Click - Subs.iniciaActividad("nuevocliente") -End Sub - -Sub HIST_Click - Subs.iniciaActividad("Historico") -End Sub - -Sub BT_QR_Click - Dim scan_width As Int - Dim scan_height As Int - scan_width = 400 - scan_height = 400 - sc.BeginScan("sc","CODIGO CLIENTE",scan_width,scan_height) -End Sub - -Sub sc_result(atype As String,Values As String) - 'Log("Type : " & atype) - 'Log("Value : " & Values) - CODIGO = Values - Starter.skmt.ExecNonQuery2("UPDATE kmt_info set CAT_CL_NUM_SERIEFISICO = ?, CAT_CL_LONG = ?, CAT_CL_LAT =? where CAT_CL_CODIGO In (select cuenta from cuentaa)", Array As Object(CODIGO, Starter.lon_gps, Starter.lat_gps)) -End Sub - -Sub sc_noScan - If logger Then Log("nothing returned from the scan !!!!!") -End Sub - -Sub calc_ean_checksum(number As String) As String 'this has now become redundant as I am only interested in QR Codes - Dim i As Int - Dim cO As Char - Dim soma As Int - Dim n As Int - Dim digit As Float - soma = 0 - For i=0 To number.Length - 1 - digit = number.SubString2(i,i+1) - n= digit * ((i Mod 2) * 2 + 1) - soma=soma+n - Next - Return number & ( ( 10 - ( soma Mod 10 )) Mod 10 ) -End Sub - -Sub b_mapa_Click - Subs.iniciaActividad("mapas") -End Sub - -Sub B_IMP_Click - Starter.skmt.Close : Log("Cerramos BD") : Starter.revisaBD - Subs.panelAnchoAlto(Panel_INV_A, Root.Width, Root.Height) - Panel_INV_A.Visible = True - P_INF_GENERAL.Visible = False - If logger Then Log("Panel general="&P_INF_GENERAL.Visible) - L_INVA.Clear - Dim label1 As Label - label1 = L_INVA.TwoLinesLayout.Label - label1.TextSize = 14 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = L_INVA.TwoLinesLayout.SecondLabel - label2.TextSize = 14 - label2.TextColor = Colors.Black -' Aqui es donde esta el pedo de julieta de los descuentos, quitar el precio2 pero meter un if para saber si es ruta especial o es normal o que show. - s=Starter.skmt.ExecQuery2 ("select CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_ALMACEN from cat_gunaprod2 where CAT_GP_CLASIF <> ? ORDER BY CAT_GP_NOMBRE ", Array As String("PROMOS")) - If s.RowCount>0 Then - For i=0 To S.RowCount -1 - s.Position=i - S1=Starter.skmt.ExecQuery2("select CAT_GP_ALMACEN from cat_gunaprod5 where CAT_GP_ID = ?", Array As String(s.GetString("CAT_GP_ID"))) - S1.Position=0 - S3=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from HIST_ABORDO where HIST_PROID = ?", Array As String(s.GetString("CAT_GP_ID"))) - S3.Position=0 - If S3.GetString("CUANTOS") > 0 Then - S2=Starter.skmt.ExecQuery2("select HIST_CANT from HIST_ABORDO where HIST_PROID = ?", Array As String(s.GetString("CAT_GP_ID"))) - S2.Position=0 - a_inicial = S1.GetString("CAT_GP_ALMACEN") - S2.GetString("HIST_CANT") - Else - a_inicial = S1.GetString("CAT_GP_ALMACEN") - End If - a_inicial_5 = S1.GetString("CAT_GP_ALMACEN") - If S3.GetString("CUANTOS") > 0 Then - ABORDO = S2.GetString("HIST_CANT") - Else - ABORDO = 0 - End If - a_total = S1.GetString("CAT_GP_ALMACEN") - C4=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from pedido where substr(pe_pronombre,1,6) <> ? AND PE_PROID = ? AND PE_TIPO = ? ", Array As String("CAMBIO", s.GetString("CAT_GP_ID"), "VENTA")) - C4.Position=0 - If C4.GetString("CUANTOS") > 0 Then - C3=Starter.skmt.ExecQuery2("select SUM(PE_CANT) AS CANTIDAD,PE_PRONOMBRE, sum(PE_COSTO_TOT) AS TOTAL from pedido where substr(pe_pronombre,1,6) <> ? AND PE_PROID = ? AND PE_TIPO = ? GROUP BY PE_PRONOMBRE", Array As String("CAMBIO", s.GetString("CAT_GP_ID"), "VENTA")) - C3.Position=0 - a_venta = C3.GetString("CANTIDAD") - a_VENTA_F = C3.GetString("TOTAL") - Else - a_venta = 0 - a_VENTA_F = 0 - End If - C4.Close - - C4=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from pedido where substr(pe_pronombre,1,6) = ? AND PE_PROID = ? ", Array As String("CAMBIO", s.GetString("CAT_GP_ID"))) - C4.Position=0 - If C4.GetString("CUANTOS") > 0 Then - C1=Starter.skmt.ExecQuery2("select SUM(PE_CANT) AS CANTIDAD,PE_PRONOMBRE from pedido where substr(pe_pronombre,1,6) = ? AND PE_PROID = ? GROUP BY PE_PRONOMBRE", Array As String("CAMBIO", s.GetString("CAT_GP_ID"))) - C1.Position=0 - RMI = C1.GetString("CANTIDAD") - C1.Close - Else - RMI = 0 - End If - C4.Close - a_final = a_inicial_5 - a_venta - L_INVA.AddTwoLines(s.GetString("CAT_GP_NOMBRE"), "II-" & a_inicial & ".CD." & ABORDO & ".IIT." & a_total & ".VT." & a_venta & "..$" & a_VENTA_F & ".IF." & a_final & ".RMI." & RMI) - Next - End If - s.Close -End Sub - -Sub B_IMP2_Click - Log("inicia B_IMP2_Click") - B_IMP2.Enabled = False - If l_total.Text <> Null And l_total.Text <> "null" Then Subs.ponImpreso(la_cuenta.Text) 'Solo lo marcamos como impreso si tiene venta (total > 0). - ProgressDialogShow("Imprimiendo, un momento ...") - Printer1.DisConnect - If Not(Printer1.IsConnected) Then - If logger Then Log("conectando 1") - Printer1.Connect - Private cont As Int = 0 - Do While Not(impresoraConectada) - Sleep(1000) - cont = cont + 1 - If cont = 7 Then Printer1.Connect 'Tratamos de reconectar - If cont > 15 Then impresoraConectada = True - Loop - Sleep(500) - impresoraConectada = False - Else - If logger Then Log("conectando 2") - Printer1.Connect - Private cont As Int = 0 - Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) - Sleep(1000) - cont = cont + 1 - If cont = 2 Then Printer1.Connect - If cont > 4 Then impresoraConectada = True - Loop - Sleep(500) - impresoraConectada = False - End If -' If Logger Then Log($"Impresora Conectada: ${Printer1.IsConnected}"$) - If la_cuenta.Text <> "0" And la_cuenta.Text <> "null" Then - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_TIPO = ? WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ", Array As Object("VENTA")) - Starter.skmt.ExecNonQuery("UPDATE kmt_info set IMPRESION = 1 where CAT_CL_CODIGO In (select cuenta from cuentaa)")'' - Guardar.Visible = True - End If - Starter.skmt.ExecNonQuery("delete from pedido3") - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO ) SELECT PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, SUM(PE_COSTO_TOT) AS PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE ") - c=Starter.skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_FOLIO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? AND PE_FOLIO = ?", Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"), c.GetString("PE_FOLIO"))) - Next - End If - Starter.skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") - - c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) - c.Position =0 - perfil = c.GetString("CUANTOS") - c.Close - If perfil > 0 Then - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) - c.Position =0 - perfil = c.GetString("CAT_VA_VALOR") - c.Close - End If - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c.Close - c=Starter.skmt.ExecQuery2("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION =?", Array As String ("SUCURSAL")) - c.Position = 0 - sucursal = c.GetString("CAT_VA_VALOR") - c.Close - TAMANO = 0 - ESPACIO = 14 - BLANCO = " " - 'esto para las impresoras nuevas - 'printer.Initialize(cmp20.OutputStream) - Printer1.Reset - Dim bmp As Bitmap - bmp.InitializeResize(File.DirAssets, "kelloggs.png", 376, 129, True) 'ignore - Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp) - myimage = Printer1.DitherImage2D(myimage, 128) - myimage= Printer1.PackImage(myimage) - - Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening - Printer1.WriteString(Printer1.REVERSE) - Printer1.PrintImage(myimage) - Printer1.WriteString(Printer1.UNREVERSE) - '' Printer1.Justify = 1 - If la_cuenta.Text = "0" Then - Try - Printer1.WriteString("KELLOGG COMPANY MEXICO" & CRLF) - Printer1.WriteString(sDate &" " & sTime & CRLF) - Printer1.WriteString("Vendedor:" & usuario & CRLF) - Printer1.WriteString("Ruta:" & ruta_tienda & CRLF) - Printer1.WriteString("Tienda: " & La_nombre.Text & CRLF) - Printer1.WriteString("ID.Cliente: " & la_cuenta.Text & CRLF) - Printer1.WriteString("Calle: " & la_Calle.Text & CRLF) - Printer1.WriteString("Colonia: " & la_col.Text & CRLF) - Printer1.WriteString("C.P.: " & la_cp.Text & CRLF) - Printer1.WriteString("Entre calle1: " & l_entre1.Text & CRLF) - Printer1.WriteString("Entre Calle2: " & l_entre2.Text & CRLF) - Printer1.WriteString(" " & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("PEDIDO" & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? and substr(pe_pronombre,1,6) <> ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PRONOMBRE", Array As String("ABORDO","CAMBIO")) - If S.RowCount>0 Then - For i=0 To S.RowCount -1 - S.Position=i - If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then - Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) - Else - Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF) - Private strT As String = "" - strT = s.GetString("L_CANT")&s.GetString("L_COSTOU")&s.GetString("L_COSTO_TOT") - TAMANO = strT.Length - ESPACIO = ESPACIO - TAMANO - For E=0 To ESPACIO -1 - BLANCO = " " & BLANCO - Next -' If Logger Then Log($"|${ESPACIO}|, |${TAMANO}|, |${BLANCO}|"$) - Private pecostou As String = 0 - If s.GETSTRING("PE_COSTOU") <> Null And IsNumber(s.GETSTRING("PE_COSTOU")) Then pecostou = s.GETSTRING("PE_COSTOU") - Private pecostotot As String = 0 - If s.GETSTRING("PE_COSTO_TOT") <> Null And IsNumber(s.GETSTRING("PE_COSTO_TOT")) Then pecostotot = s.GETSTRING("PE_COSTO_TOT") - Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & NumberFormat2(pecostou, 1, 2, 2, False) & " $" & NumberFormat2(pecostotot, 1, 2, 2, False) & CRLF) -' Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF) - TAMANO = 0 - ESPACIO = 14 - BLANCO = " " - End If - Next - End If - s.Close - Printer1.WriteString(CRLF) - Printer1.WriteString("------------RMI---------------" & CRLF) - s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? and substr(pe_pronombre,1,6) = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PRONOMBRE", Array As String("ABORDO","CAMBIO")) - If S.RowCount>0 Then - For i=0 To S.RowCount -1 - TAMANO = 0 - ESPACIO = 14 - BLANCO = " " - S.Position=i - If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then - Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) - Else - Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF) - Private strT As String = "" - strT = s.GetString("L_CANT")&s.GetString("L_COSTOU")&s.GetString("L_COSTO_TOT") - TAMANO = strT.Length - ESPACIO = ESPACIO - TAMANO - For E=0 To ESPACIO -1 - BLANCO = " " & BLANCO - Next - Private pecostou As String = 0 - If s.GETSTRING("PE_COSTOU") <> Null And IsNumber(s.GETSTRING("PE_COSTOU")) Then pecostou = s.GETSTRING("PE_COSTOU") - Private pecostotot As String = 0 - If s.GETSTRING("PE_COSTO_TOT") <> Null And IsNumber(s.GETSTRING("PE_COSTO_TOT")) Then pecostotot = s.GETSTRING("PE_COSTO_TOT") - Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & NumberFormat2(pecostou, 1, 2, 2, False) & " $" & NumberFormat2(pecostotot, 1, 2, 2, False) & CRLF) -' Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF) - TAMANO = 0 - ESPACIO = 14 - BLANCO = " " - End If - If logger Then Log($"|${ESPACIO}|, |${TAMANO}|, |${BLANCO}|"$) - Next - End If - s.Close - Printer1.WriteString(CRLF) - - s=Starter.skmt.ExecQuery2("select SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_TIPO = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("ABORDO")) - s.Position =0 - Private sTotal1 As Double - If s.GetString("TOTAL") <> Null And IsNumber(s.GETSTRING("TOTAL")) Then - sTotal1 = s.GetString("TOTAL") - Else - sTotal1 = 0 - End If - Printer1.WriteString( "Total entrega: $" & NumberFormat2(sTotal1, 1, 2, 2, False) & CRLF) - - Printer1.WriteString("===============================" & CRLF) - ''bold para las nuevas impresoras - Private total3 As String = 0 - If s.GETSTRING("TOTAL") <> Null And IsNumber(s.GETSTRING("TOTAL")) Then total3 = s.GETSTRING("TOTAL") - Printer1.WriteString( Printer1.BOLD & "Total pedido: $" & NumberFormat2(total3, 1, 2, 2, False) & CRLF) - - s.Close - s=Starter.skmt.ExecQuery2("select SUM(PE_CANT) AS TOTAL FROM PEDIDO WHERE PE_TIPO = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("ABORDO")) - s.Position =0 - Private total4 As String = "0" - If s.GetString("TOTAL") <> Null And IsNumber(s.GetString("TOTAL")) Then total4 = s.GetString("TOTAL") - Printer1.WriteString( Printer1.BOLD & "No. Productos: " & total4 & CRLF) - Printer1.WriteString("===============================" & CRLF) - s.Close - Printer1.WriteString(Printer1.DEFAULTS) - -' printer.WriteLine("------------VENTA-------------") - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - - Printer1.WriteString( "Nombre y Firma del cliente" & CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString("______________________________" & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("----ESTE TICKET NO ES UN -----" & CRLF) - Printer1.WriteString("--COMPROBANTE FISCAL, SOLO ES-" & CRLF) - Printer1.WriteString("--------INFORMATIVO-----------" & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - 'printer.Close - Sleep(1000) - Printer1.DisConnect - Catch - ToastMessageShow("Error en la impresion 1.", True) - Printer1.Disconnect - B4XPages.ShowPage("Principal") - End Try - Else - Try - DateTime.DateFormat = "yyyymmdd" - sDate=DateTime.Date(DateTime.Now) - Printer1.WriteString("KELLOGG COMPANY MEXICO" & CRLF) - Printer1.WriteString("No. Ticket: " & sDate & la_cuenta.Text & CRLF) - - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - - Printer1.WriteString(sDate &" " & sTime & CRLF) - Printer1.WriteString("Vendedor:" & usuario & CRLF) - Printer1.WriteString("Ruta:" & ruta_tienda & CRLF) - Printer1.WriteString("Tienda: " & La_nombre.Text & CRLF) - Printer1.WriteString("ID.Cliente: " & la_cuenta.Text & CRLF) - Printer1.WriteString("Calle: " & la_Calle.Text & CRLF) - Printer1.WriteString("Colonia: " & la_col.Text & CRLF) - Printer1.WriteString("C.P.: " & la_cp.Text & CRLF) - Printer1.WriteString("Entre calle1: " & l_entre1.Text & CRLF) - Printer1.WriteString("Entre Calle2: " & l_entre2.Text & CRLF) - Printer1.WriteString(" " & CRLF) - - ''''''' PEDIDOS DOE - - s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_CEDIS = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_CEDIS,PE_PRONOMBRE", Array As String("DOE")) - - '' s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? and pe_codpromo = ? and substr(pe_pronombre,1,6) <> ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_CEDIS,PE_PRONOMBRE", Array As String("VENTA", "DOE", "CAMBIO")) - If S.RowCount>0 Then - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("PEDIDO DON TOÑO" & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - For i=0 To S.RowCount -1 - S.Position=i - - If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then - Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) - Else - Private strT As String = "" - Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF) - Private strT As String = "" - strT = s.GetString("L_CANT")&s.GetString("L_COSTOU")&s.GetString("L_COSTO_TOT") - TAMANO = strT.Length - ESPACIO = ESPACIO - TAMANO - For E=0 To ESPACIO -1 - BLANCO = " " & BLANCO - Next - Private pecostou As String = 0 - If s.GETSTRING("PE_COSTOU") <> Null And IsNumber(s.GETSTRING("PE_COSTOU")) Then pecostou = s.GETSTRING("PE_COSTOU") - Private pecostotot As String = 0 - If s.GETSTRING("PE_COSTO_TOT") <> Null And IsNumber(s.GETSTRING("PE_COSTO_TOT")) Then pecostotot = s.GETSTRING("PE_COSTO_TOT") - Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & NumberFormat2(pecostou, 1, 2, 2, False) & " $" & NumberFormat2(pecostotot, 1, 2, 2, False) & CRLF) -' Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF) -' If Logger Then Log($"|${ESPACIO}|, |${TAMANO}|, |${BLANCO}|"$) - TAMANO = 0 - ESPACIO = 14 - BLANCO = " " - End If - Next - End If - s.Close - - s=Starter.skmt.ExecQuery2("select sum(PE_CANT) as CANTIDAD, SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_CEDIS <> PE_PROID AND PE_CEDIS = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("DOE")) - s.Position = 0 - Private sTotal2 As Double - If s.GetString("TOTAL") <> Null And IsNumber(s.GETSTRING("TOTAL")) Then - sTotal2 = s.GetString("TOTAL") - Printer1.WriteString( $"Sub Total : $${NumberFormat2(sTotal2, 1, 2, 2, False)}"$ & CRLF) - - Else - sTotal2 = 0 - End If - Private cantidad1 As String = "0" - If s.GetString("CANTIDAD") <> Null And IsNumber(s.GetString("CANTIDAD")) Then - cantidad1 = s.GetString("CANTIDAD") - - Printer1.WriteString( "No. Productos: " & cantidad1 & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("FIN PEDIDO DON TOÑO" & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - End If - - ' Printer1.WriteString(CRLF) - s.Close - ''''SE MODIFCA EL QUERY POR LOS PEDIDOS DOE - S=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? and substr(pe_pronombre,1,6) <> ? AND PE_CEDIS <> ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_CEDIS,PE_PRONOMBRE", Array As String("VENTA","CAMBIO","DOE")) - - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("VENTA" & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - ''s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? and pe_codpromo <> ? and substr(pe_pronombre,1,6) <> ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_CEDIS,PE_PRONOMBRE", Array As String("VENTA", "DOE", "CAMBIO")) - If S.RowCount>0 Then - For i=0 To S.RowCount -1 - S.Position=i - If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then - Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) - Else - Private strT As String = "" - Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF) - Private strT As String = "" - strT = s.GetString("L_CANT")&s.GetString("L_COSTOU")&s.GetString("L_COSTO_TOT") - TAMANO = strT.Length - ESPACIO = ESPACIO - TAMANO - For E=0 To ESPACIO -1 - BLANCO = " " & BLANCO - Next - Private pecostou As String = 0 - If s.GETSTRING("PE_COSTOU") <> Null And IsNumber(s.GETSTRING("PE_COSTOU")) Then pecostou = s.GETSTRING("PE_COSTOU") - Private pecostotot As String = 0 - If s.GETSTRING("PE_COSTO_TOT") <> Null And IsNumber(s.GETSTRING("PE_COSTO_TOT")) Then pecostotot = s.GETSTRING("PE_COSTO_TOT") - Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & NumberFormat2(pecostou, 1, 2, 2, False) & " $" & NumberFormat2(pecostotot, 1, 2, 2, False) & CRLF) -' Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF) -' If Logger Then Log($"|${ESPACIO}|, |${TAMANO}|, |${BLANCO}|"$) - TAMANO = 0 - ESPACIO = 14 - BLANCO = " " - End If - Next - End If - s.Close - s=Starter.skmt.ExecQuery2("select sum(PE_CANT) as CANTIDAD, SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_CEDIS <> PE_PROID AND PE_TIPO = ? and substr(pe_pronombre,1,6) <> ? AND PE_CEDIS <> ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("VENTA","CAMBIO","DOE")) - s.Position = 0 - Private sTotal2 As Double - If s.GetString("TOTAL") <> Null And IsNumber(s.GETSTRING("TOTAL")) Then - sTotal2 = s.GetString("TOTAL") - Else - sTotal2 = 0 - End If - Printer1.WriteString(Printer1.REVERSE & "===============================" & CRLF) - Printer1.WriteString( Printer1.UNREVERSE & Printer1.BOLD & $"Sub Total Venta: $${NumberFormat2(sTotal2, 1, 2, 2, False)}"$ & CRLF) - Private cantidad1 As String = "0" - If s.GetString("CANTIDAD") <> Null And IsNumber(s.GetString("CANTIDAD")) Then cantidad1 = s.GetString("CANTIDAD") - Printer1.WriteString( Printer1.UNREVERSE & Printer1.BOLD & "No. Productos: " & cantidad1 & CRLF) - Printer1.WriteString(CRLF) - s.Close - Printer1.WriteString("------------RMI---------------" & CRLF) - s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? and substr(pe_pronombre,1,6) = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("VENTA","CAMBIO")) - If S.RowCount>0 Then - For i=0 To S.RowCount -1 - S.Position=i - If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then - Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) - - Else - Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF) - Private strT As String = "" - strT = s.GetString("L_CANT")&s.GetString("L_COSTOU")&s.GetString("L_COSTO_TOT") - TAMANO = strT.Length - ESPACIO = ESPACIO - TAMANO - For E=0 To ESPACIO -1 - BLANCO = " " & BLANCO - Next - Private pecostou As String = 0 - If s.GETSTRING("PE_COSTOU") <> Null And IsNumber(s.GETSTRING("PE_COSTOU")) Then pecostou = s.GETSTRING("PE_COSTOU") - Private pecostotot As String = 0 - If s.GETSTRING("PE_COSTO_TOT") <> Null And IsNumber(s.GETSTRING("PE_COSTO_TOT")) Then pecostotot = s.GETSTRING("PE_COSTO_TOT") - Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & NumberFormat2(pecostou, 1, 2, 2, False) & " $" & NumberFormat2(pecostotot, 1, 2, 2, False) & CRLF) -' Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF) - If logger Then Log($"|${ESPACIO}|, |${TAMANO}|, |${BLANCO}|"$) - TAMANO = 0 - ESPACIO = 14 - BLANCO = " " - End If - Next - End If - s.Close - - s=Starter.skmt.ExecQuery2("select sum(PE_CANT) as CANTIDAD, SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_CEDIS <> PE_PROID AND PE_TIPO = ? and substr(pe_pronombre,1,6) = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("VENTA","CAMBIO")) - s.Position = 0 - Private sTotal3 As Double - If s.GetString("TOTAL") <> Null And IsNumber(s.GetString("TOTAL")) Then - sTotal3 = s.GetString("TOTAL") - Else - sTotal3 = 0 - End If - Printer1.WriteString(Printer1.REVERSE & "===============================" & CRLF) - Printer1.WriteString(Printer1.UNREVERSE & Printer1.BOLD & "Sub Total CAMBIOS: $" & NumberFormat2(sTotal3, 1, 2, 2, False) & CRLF) - Private cantidad2 As String = "0" - If s.GetString("CANTIDAD") <> Null And IsNumber(s.GetString("CANTIDAD")) Then cantidad2 = s.GetString("CANTIDAD") - Printer1.WriteString( Printer1.UNREVERSE & Printer1.BOLD & "No. Productos: " & cantidad2 & CRLF) - Printer1.WriteString(CRLF) - s.Close - Printer1.WriteString(CRLF) - s=Starter.skmt.ExecQuery2("select SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_TIPO = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("VENTA")) - s.Position =0 - Printer1.WriteString(Printer1.REVERSE & "===============================" & CRLF) - Private total2 As String = 0 - If s.GETSTRING("TOTAL") <> Null And IsNumber(s.GETSTRING("TOTAL")) Then total2 = s.GETSTRING("TOTAL") - Printer1.WriteString(Printer1.UNREVERSE & Printer1.BOLD & "Total venta: $" & NumberFormat2(total2, 1, 2, 2, False) & CRLF) -' Printer1.WriteString(Printer1.UNREVERSE & Printer1.BOLD & "Total venta: $" & s.GetString("TOTAL") & CRLF) -' Printer1.WriteString("===============================" & CRLF) -' -' Printer1.WriteString( "Total venta: $" & s.GetString("TOTAL") & CRLF) - s.Close - s=Starter.skmt.ExecQuery2("select SUM(PE_CANT) AS TOTAL FROM PEDIDO WHERE PE_CEDIS <> PE_PROID AND PE_TIPO = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("VENTA")) - s.Position =0 - Private total5 As String = "0" - If s.GetString("TOTAL") <> Null And IsNumber(s.GetString("TOTAL")) Then total5 = s.GetString("TOTAL") - Printer1.WriteString(Printer1.BOLD & "No. Productos vendidos: " & (total5 - cantidad2) & CRLF) - Printer1.WriteString(Printer1.BOLD & "Producto devuelto : " & cantidad2 & CRLF) - Printer1.WriteString(Printer1.REVERSE & "===============================" & CRLF) -' Printer1.WriteString( "No. Productos: " & s.GetString("TOTAL") & CRLF) -' Printer1.WriteString( "===============================" & CRLF) - s.Close - Printer1.WriteString(Printer1.UNREVERSE) - Printer1.WriteString(Printer1.NOBOLD) -' printer.WriteLine("------------VENTA-------------") -' printer.WriteLine("TOTAL COMPRA: $:" & total_cliente) -' Printer1.WriteString(Printer1.DEFAULTS & CRLF) - Printer1.WriteString(CRLF) - ' Printer1.WriteString(Printer1.SINGLE) - 'Printer1.WriteString("------------------------------") - ' Printer1.WriteString(Printer1.HIGH) - ' Printer1.Justify = 1 - Printer1.WriteString( "Nombre y Firma del cliente" & CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - ' Printer1.WriteString(Printer1.DEFAULTS) - ' Printer1.WriteString(Printer1.SINGLE) - Printer1.WriteString("______________________________" & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("----ESTE TICKET NO ES UN -----" & CRLF) - Printer1.WriteString("--COMPROBANTE FISCAL, SOLO ES-" & CRLF) - Printer1.WriteString("--------INFORMATIVO-----------" & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - Sleep(1000) - Printer1.DisConnect - Catch - ToastMessageShow("Error en la impresion 2.", True) - Printer1.Disconnect - B4XPages.ShowPage("Principal") - End Try - End If - Sleep(1000) - B_IMP2.Enabled = True - ProgressDialogHide -' If Logger Then Log("Habilitamos boton") -End Sub - -Sub Printer_Connected (Success As Boolean) - If Success Then - B_IMP.Enabled = True - PASA_IMP = "1" - Else - B_IMP.Enabled = False - If Msgbox2("", "Printer Error","Reprint","Cancel","",Null) = DialogResponse.POSITIVE Then 'ignore - StartPrinter - End If - End If -End Sub - -Sub StartPrinter - Dim PairedDevices As Map - Dim L As List - Dim resimp As Int - ToastMessageShow("Printing.....",True) - PairedDevices.Initialize - Try - PairedDevices = cmp20.GetPairedDevices - Catch - Msgbox("Getting Paired Devices","Printer Error") 'ignore - printer.Close - cmp20.Disconnect - End Try - - If PairedDevices.Size = 0 Then - Msgbox("Error Connecting to Printer - Printer Not Found","") 'ignore - Return - End If - - If PairedDevices.Size = 1 Then - Try - cmp20.Connect(PairedDevices.Get(PairedDevices.GetKeyAt(0))) - Catch - Msgbox("Connecting","Printer Error") 'ignore - printer.Close - cmp20.Disconnect - End Try - Else - L.Initialize - For i = 0 To PairedDevices.Size - 1 - L.Add(PairedDevices.GetKeyAt(i)) - Next - resimp = InputList(L, "Choose device", -1) 'ignore - If resimp <> DialogResponse.CANCEL Then - cmp20.Connect(PairedDevices.Get(L.Get(resimp))) - End If - End If -End Sub - - -Sub B_VENTA_Click - If la_cuenta.Text = "0" Then - Starter.tipov = "ABORDO" - Subs.iniciaActividad("Productos") - Else - Cuestionario - End If -End Sub - -'Muestra un boton con las dimensiones, posicion y texto especificados. -Sub muestraBoton (thisButton As Button, theText As String, Left As Int, Top As Int, width As Int, height As Int) - thisButton.Text = theText - thisButton.Tag = theText - thisButton.Left = Left - thisButton.Top = Top - thisButton.Width = width - thisButton.Height = height - thisButton.Visible = True -End Sub - -'Muestra un boton con las dimensiones, posicion y texto especificados. -Sub muestraBotonCentrado (thisButton As Button, theText As String, Top As Int, width As Int, height As Int) 'ignore - Private anchoPantalla As Int - thisButton.Text = theText - thisButton.Tag = theText - anchoPantalla = GetDeviceLayoutValues.Width - thisButton.Left = (anchoPantalla/2) - (width/2) - thisButton.Top = Top - thisButton.Width = width - thisButton.Height = height - thisButton.Visible = True -End Sub - -'Esta subrutina muestra las encuestas. -Sub Cuestionario - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - CUANTOS = 0 - If TOMAR_FOTO = 0 Then - s=Starter.skmt.ExecQuery("select COUNT(*) AS CUANTOS from HIST_ENCUESTA where HE_CLIE In (Select cuenta from cuentaa)") - s.Position= 0 - CUANTOS = s.GetString("CUANTOS") - Private CUANTOS2 As Int = 0 - s=Starter.skmt.ExecQuery("select COUNT(*) AS CUANTOS2 from HIST_ENCUESTA2 where HE_CLIENTE In (Select cuenta from cuentaa)") - s.Position = 0 - CUANTOS2 = s.GetString("CUANTOS2") - If logger Then LogColor($"Hist:encuesta=${CUANTOS}, hist_encuesta2 = ${CUANTOS2}"$, Colors.Magenta) - End If - If CUANTOS = 0 And CUANTOS2 = 0 Then - c=Starter.skmt.ExecQuery("SELECT CAT_EP_ID, CAT_EP_IDTIPOPREGUNTA, CAT_CE_DESCRIPCION, CAT_EP_PREGUNTA, CAT_EP_RES1_PRED, CAT_EP_RES2_PRED, CAT_EP_RES3_PRED, CAT_EP_ORDEN_PREGUNTA FROM CAT_ENCUESTA_PREGUNTA ORDER BY CAT_CE_DESCRIPCION, CAST(CAT_EP_ORDEN_PREGUNTA AS DECIMAL)") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - If TOMAR_FOTO = 1 Then - If CURSOR_FOTO + 1 > c.RowCount -1 Then - TOMAR_FOTO = 0 - Exit - Else - i = CURSOR_FOTO +1 - End If - 'Msgbox(i,"a") - TOMAR_FOTO = 0 - End If - c.Position=i - Dim tipoPregunta As String = c.GetString("CAT_EP_IDTIPOPREGUNTA") -' If Logger Then Log("=================== "&tipoPregunta) -' If Logger Then Log($"Pregunta tipo: ${tipoPregunta}"$) - ' Msgbox("paso1","a") - If c.GetString("CAT_EP_IDTIPOPREGUNTA") = 5 Then - id_encuesta = c.GetString("CAT_EP_ID") - TOMAR_FOTO = 1 - CURSOR_FOTO = i - Subs.iniciaActividad("foto") - ' Msgbox("paso2","a") - Exit - ELSE IF c.GetString("CAT_EP_IDTIPOPREGUNTA") = 3 Then ' Tipo SI/NO - botonPresionado = 0 ' Bandera para que espere a que se conteste la pregunta - l_titEncuesta.Text = c.GetString("CAT_CE_DESCRIPCION") - l_txtEncuesta.Text = c.GetString("CAT_EP_PREGUNTA") - Subs.centraEtiqueta(l_txtEncuesta, Root.Width) - muestraBoton(b_encuesta_1,"SI", centroPantalla-350, 580, 300, 160) - muestraBoton(b_encuesta_2, "NO", centroPantalla+50, 580, 300, 160) - muestraEncuesta - Do Until botonPresionado = 1 'Esperamos que respondan la pregunta - Sleep(0) - Loop - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, encuestaRes,sDate & sTime,c.GetString("CAT_EP_ID"))) - ocultaPanelEncuesta - ELSE IF c.GetString("CAT_EP_IDTIPOPREGUNTA") = 4 Then - res = Msgbox2(c.GetString("CAT_EP_PREGUNTA"),c.GetString("CAT_CE_DESCRIPCION"), "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore - If res = DialogResponse.POSITIVE Then - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, "SI",sDate & sTime,c.GetString("CAT_EP_ID"))) - Else IF res = DialogResponse.NEGATIVE Then - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, "NO",sDate & sTime,c.GetString("CAT_EP_ID"))) - i = c.GetInt("CAT_EP_RES2_PRED") -2 - Else IF res = DialogResponse.CANCEL Then - i = i -1 - End If - ' Msgbox("paso3","a") - ELSE If c.GetString("CAT_EP_IDTIPOPREGUNTA") = 2 Then ' Tipo 3 opciones. - botonPresionado = 0 ' Bandera para que espere a que se conteste la pregunta. - l_titEncuesta.Text = c.GetString("CAT_CE_DESCRIPCION") - l_txtEncuesta.Text = c.GetString("CAT_EP_PREGUNTA") - muestraBoton(b_encuesta_1, c.GetString("CAT_EP_RES2_PRED"), centroPantalla-250, 580, 500, 160) - muestraBoton(b_encuesta_2, c.GetString("CAT_EP_RES3_PRED"), centroPantalla-250, 740, 500, 160) - muestraBoton(b_encuesta_3, c.GetString("CAT_EP_RES1_PRED"), centroPantalla-250, 900, 500, 160) - muestraEncuesta - Do Until botonPresionado = 1 'Esperamos que respondan la pregunta. - Sleep(0) - Loop - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, encuestaRes,sDate & sTime,c.GetString("CAT_EP_ID"))) - ocultaPanelEncuesta - ELSE If c.GetString("CAT_EP_IDTIPOPREGUNTA") = 6 Then - Panel10.Visible = True - l_chk_e.Text = c.GetString("CAT_EP_PREGUNTA") - Chk_1.Checked = False - chk_2.Checked = False - chk_3.Checked = False - Chk_1.Text = c.GetString("CAT_EP_RES1_PRED") - chk_2.Text = c.GetString("CAT_EP_RES2_PRED") - chk_3.Text = c.GetString("CAT_EP_RES3_PRED") - chk_1_valor = c.GetString("CAT_EP_RES1_PRED") - chk_2_valor = c.GetString("CAT_EP_RES2_PRED") - chk_3_valor = c.GetString("CAT_EP_RES3_PRED") - Chk_1.Tag = c.GetString("CAT_EP_ID") - chk_2.Tag = c.GetString("CAT_EP_ID") - chk_3.Tag = c.GetString("CAT_EP_ID") - TOMAR_FOTO = 1 - CURSOR_FOTO = i - Exit - ELSE If c.GetString("CAT_EP_IDTIPOPREGUNTA") = 1 Then - botonPresionado = 0 ' Bandera para que espere a que se conteste la pregunta - l_titEncuesta.Text = c.GetString("CAT_CE_DESCRIPCION") - l_txtEncuesta.Text = c.GetString("CAT_EP_PREGUNTA") - Subs.centraEditText(et_encuesta, Root.Width) - et_encuesta.Visible = True - b_encuesta_continuar.Enabled = False - muestraBoton(b_encuesta_continuar,"Continuar", centroPantalla-250, 680, 500, 160) - muestraEncuesta - Do Until botonPresionado = 1 'Esperamos que respondan la pregunta - Sleep(0) - Loop - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, encuestaRes,sDate & sTime,c.GetString("CAT_EP_ID"))) - ocultaPanelEncuesta - Else - Starter.tipov = "VENTA" - Subs.iniciaActividad("Productos") - End If - Next - Else - Starter.tipov = "VENTA" - Subs.iniciaActividad("Productos") - End If - Else - Starter.tipov = "VENTA" - Subs.iniciaActividad("Productos") - End If -End Sub - -Sub b1_Click - Log("B1 clicked") -End Sub - -Sub b2_Click - If logger Then Log("B2 clicked") -End Sub - -Sub b_factura_Click - -End Sub - -Sub CH_TA_CheckedChange(Checked As Boolean) - -End Sub - -Sub CH_TC_CheckedChange(Checked As Boolean) - -End Sub - -Sub CH_TB_CheckedChange(Checked As Boolean) - -End Sub - -Sub CH_TD_CheckedChange(Checked As Boolean) - -End Sub - -Sub B_GUARDAR_Click - If logger Then Log("Guardar clic") - If CH_TA.Checked = True Then - TIPOEX = "TIPO A" - ELSE If CH_TB.Checked = True Then - TIPOEX = "TIPO B" - ELSE If CH_TC.Checked = True Then - TIPOEX = "TIPO C" - ELSE If CH_TD.Checked = True Then - TIPOEX = "TIPO D" - End If - Panel1.Visible = False - B_EXIBI.Visible = True - b_factura.Visible = True - HIST.Visible = True - c=Starter.skmt.ExecQuery("select CUENTA from cuentaa") - c.Position = 0 - cuenta = c.GetString("CUENTA") - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_EXIBIDORES(CAT_CL_CLIENTE,CAT_CL_EXHIBIDOR,CAT_CL_BEXHIBIDOR) VALUES(?,?,?)", Array As Object(cuenta,TIPOEX,E_CUANTOS_E.Text)) -End Sub - -Sub B_EXIBI_Click - Panel1.Visible = True - B_EXIBI.Visible = False - b_factura.Visible = False - HIST.Visible = False -End Sub - -'''''''''''''''''''''''''''''''''''''' BOLETA DE LIQUIDACION -Sub LLAMA_BOLETA - '' FECHA DE TELEFONO - If Subs.clienteActual = "" Then Starter.skmt.ExecNonQuery("insert into cuentaa (cuenta) values (0)") - DateTime.DateFormat="dd/MM/yyyy" - Edt_FH.Text=DateTime.Date(DateTime.Now) - Subs.panelAnchoAlto(PNL_TOTALES, Root.Width, Root.Height) - PNL_TOTALES.Visible=True - Pnl_Billete.Visible=True - Pnl_Moneda.visible=True - LBL_RETURN.Visible=False - LBL_REGRESA.Visible=False - Subs.panelAnchoAlto(P_BOLETA, Root.Width, Root.Height) - P_BOLETA.Visible=True - P_INF_GENERAL.Visible=False - If logger Then Log("Panel general="&P_INF_GENERAL.Visible) - LBL_REGRESA.Visible=True - Private c As Cursor = Starter.skmt.ExecQuery("select * from TMP_CAT_BILLETE join TMP_CAT_MONEDAS") - If c.RowCount > 0 Then - c.Position = 0 - If logger Then Log("==================== CALCULADORA "&c.ColumnCount) -' Traemos billetes - EDT_CANMIL.Text = "0" - If IsNumber(c.GetString("TMP_BILLE_MIL")) Then EDT_CANMIL.Text = c.GetString("TMP_BILLE_MIL") - EDT_CANQUIN.Text = "0" - If c.GetString("TMP_BILLE_QUINIENTOS")<> Null Then EDT_CANQUIN.Text = c.GetString("TMP_BILLE_QUINIENTOS") - EDT_CANDOS.Text = "0" - If c.GetString("TMP_BILLE_DOSCIENTOS") <>Null Then EDT_CANDOS.Text = c.GetString("TMP_BILLE_DOSCIENTOS") - EDT_CANCIEN.Text = "0" - If c.GetString("TMP_BILLE_CIEN")<> Null Then EDT_CANCIEN.Text = c.GetString("TMP_BILLE_CIEN") - EDT_CANCIN.Text = "0" - If c.GetString("TMP_BILLE_CINCUENTA")<> Null Then EDT_CANCIN.Text = c.GetString("TMP_BILLE_CINCUENTA") - EDT_CANVEIN.Text = "0" - If c.GetString("TMP_BILLE_VEINTE")<> Null Then EDT_CANVEIN.Text = c.GetString("TMP_BILLE_VEINTE") -' Traemos monedas - EDT_CANVEINTE.Text = "0" - If c.GetString("TMP_MON_VEINTE")<> Null Then EDT_CANVEINTE.Text = c.GetString("TMP_MON_VEINTE") - EDT_CANDIEZ.Text = "0" - If c.GetString("TMP_MON_DIEZ")<> Null Then EDT_CANDIEZ.Text = c.GetString("TMP_MON_DIEZ") - EDT_CANCI.Text = "0" - If c.GetString("TMP_MON_CINCO")<> Null Then EDT_CANCI.Text = c.GetString("TMP_MON_CINCO") - EDT_CANDO.Text = "0" - If c.GetString("TMP_MON_DOS")<> Null Then EDT_CANDO.Text = c.GetString("TMP_MON_DOS") - EDT_CANUN.Text = "0" - If c.GetString("TMP_MON_UN")<> Null Then EDT_CANUN.Text = c.GetString("TMP_MON_UN") - EDT_CANCEN.Text = "0" - If c.GetString("TMP_MON_CENTAVOS")<> Null Then EDT_CANCEN.Text = c.GetString("TMP_MON_CENTAVOS") - L_CALCULA_BILLE_CLICK - L_CALCULA_MONEDA_Click - B_SUM_TOTAL.Text = TOTALBILLETES.Text + TOTALMONEDA.text - End If - 'Starter.boleta = 0 - c.Close -End Sub - -'''BILLETES -Sub L_CALCULA_BILLE_CLICK - If EDT_CANMIL.Text="" Or EDT_CANQUIN.Text="" Or EDT_CANDOS.Text="" Or EDT_CANCIEN.Text="" Or EDT_CANCIN.Text="" Or EDT_CANVEIN.Text="" Then - Pnl_Billete.RequestFocus - Msgbox("Por favor llena todas las cantidades","") 'ignore - Else - LBL_TMIL.Text= LBL_MIL.Tag * EDT_CANMIL.Text - LBL_TQUIN.Text=LBL_QUIN.Tag * EDT_CANQUIN.Text - LBL_TDOS.Text=LBL_DOSC.Tag * EDT_CANDOS.Text - LBL_TCIEN.Text=LBL_CIEN.Tag * EDT_CANCIEN.Text - LBL_TCIN.Text=LBL_CINCUEN.Tag * EDT_CANCIN.Text - LBL_TVEIN.Text=LBL_VEINTE.Tag * EDT_CANVEIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -'20 -Private Sub EDT_CANVEIN_FocusChanged (HasFocus As Boolean) - If EDT_CANVEIN.Text = "" Then EDT_CANVEIN.Text = "0" - EDT_CANVEIN.Text = Round (EDT_CANVEIN.Text) - LBL_TVEIN.Text=LBL_VEINTE.Tag * EDT_CANVEIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text -End Sub - -Sub B_SUVEI_Click - If EDT_CANVEIN.Text = "" Then - EDT_CANVEIN.Text=0 - LBL_TVEIN.Text=LBL_VEINTE.Tag * EDT_CANVEIN.Text - Else - EDT_CANVEIN.Text = Round (EDT_CANVEIN.Text + 1) - LBL_TVEIN.Text=LBL_VEINTE.Tag * EDT_CANVEIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -Sub B_MENVEI_Click - If EDT_CANVEIN.Text = "" Then - EDT_CANVEIN.Text=0 - LBL_TVEIN.Text=LBL_VEINTE.Tag * EDT_CANVEIN.Text - Else IF EDT_CANVEIN.Text > 0 Then - EDT_CANVEIN.Text = Round(EDT_CANVEIN.Text -1) - LBL_TVEIN.Text=LBL_VEINTE.Tag * EDT_CANVEIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub -'50 -Private Sub EDT_CANCIN_FocusChanged (HasFocus As Boolean) - If EDT_CANCIN.Text = "" Then EDT_CANCIN.Text = "0" - EDT_CANCIN.Text = Round (EDT_CANCIN.Text) - LBL_TCIN.Text=LBL_CINCUEN.Tag * EDT_CANCIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text -End Sub - -Sub B_SUCIN_Click - If EDT_CANCIN.Text = "" Then - EDT_CANCIN.Text =0 - LBL_TCIN.Text=LBL_CINCUEN.Tag * EDT_CANCIN.Text - Else - EDT_CANCIN.Text = Round (EDT_CANCIN.Text + 1) - LBL_TCIN.Text=LBL_CINCUEN.Tag * EDT_CANCIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -Sub B_MENCIN_Click - If EDT_CANCIN.Text = "" Then - EDT_CANCIN.Text =0 - LBL_TCIN.Text=LBL_CINCUEN.Tag * EDT_CANCIN.Text - Else IF EDT_CANCIN.Text > 0 Then - EDT_CANCIN.Text = Round(EDT_CANCIN.Text -1) - LBL_TCIN.Text=LBL_CINCUEN.Tag * EDT_CANCIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -'100 -Private Sub EDT_CANCIEN_FocusChanged (HasFocus As Boolean) - If EDT_CANCIEN.Text = "" Then EDT_CANCIEN.Text = "0" - EDT_CANCIEN.Text = Round (EDT_CANCIEN.Text) - LBL_TCIEN.Text=LBL_CIEN.Tag * EDT_CANCIEN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text -End Sub - -Sub B_SUCIEN_Click - If EDT_CANCIEN.Text = "" Then - EDT_CANCIEN.Text = 0 - LBL_TCIEN.Text=LBL_CIEN.Tag * EDT_CANCIEN.Text - Else - EDT_CANCIEN.Text = Round (EDT_CANCIEN.Text + 1) - LBL_TCIEN.Text=LBL_CIEN.Tag * EDT_CANCIEN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -Sub B_MENCIE_Click - If EDT_CANCIEN.Text = "" Then - EDT_CANCIEN.Text = 0 - LBL_TCIEN.Text=LBL_CIEN.Tag * EDT_CANCIEN.Text - Else IF EDT_CANCIEN.Text > 0 Then - EDT_CANCIEN.Text = Round(EDT_CANCIEN.Text -1) - LBL_TCIEN.Text=LBL_CIEN.Tag * EDT_CANCIEN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -'200 -Private Sub EDT_CANDOS_FocusChanged (HasFocus As Boolean) - If EDT_CANDOS.Text = "" Then EDT_CANDOS.Text = "0" - EDT_CANDOS.Text = Round (EDT_CANDOS.Text) - LBL_TDOS.Text=LBL_DOSC.Tag * EDT_CANDOS.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text -End Sub - -Sub B_SUDOS_Click - If EDT_CANDOS.Text = "" Then - EDT_CANDOS.Text = 0 - LBL_TDOS.Text=LBL_DOSC.Tag * EDT_CANDOS.Text - Else - EDT_CANDOS.Text = Round (EDT_CANDOS.Text + 1) - LBL_TDOS.Text=LBL_DOSC.Tag * EDT_CANDOS.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -Sub B_MENDOS_Click - If EDT_CANDOS.Text = "" Then - EDT_CANDOS.Text = 0 - LBL_TDOS.Text=LBL_DOSC.Tag * EDT_CANDOS.Text - Else IF EDT_CANDOS.Text > 0 Then - EDT_CANDOS.Text = Round(EDT_CANDOS.Text -1) - LBL_TDOS.Text=LBL_DOSC.Tag * EDT_CANDOS.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -'500 -Private Sub EDT_CANQUIN_FocusChanged (HasFocus As Boolean) - If EDT_CANQUIN.Text = "" Then EDT_CANQUIN.Text = "0" - EDT_CANQUIN.Text = Round (EDT_CANQUIN.Text) - LBL_TQUIN.Text=LBL_QUIN.Tag * EDT_CANQUIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text -End Sub - -Sub B_SUQUI_Click - If EDT_CANQUIN.Text = "" Then - EDT_CANQUIN.Text =0 - LBL_TQUIN.Text=LBL_QUIN.Tag * EDT_CANQUIN.Text - Else - EDT_CANQUIN.Text = Round (EDT_CANQUIN.Text + 1) - LBL_TQUIN.Text=LBL_QUIN.Tag * EDT_CANQUIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -Sub B_MENQUI_Click - If EDT_CANQUIN.Text = "" Then - EDT_CANQUIN.Text =0 - LBL_TQUIN.Text=LBL_QUIN.Tag * EDT_CANQUIN.Text - Else IF EDT_CANQUIN.Text > 0 Then - EDT_CANQUIN.Text = Round(EDT_CANQUIN.Text -1) - LBL_TQUIN.Text=LBL_QUIN.Tag * EDT_CANQUIN.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub -'1000 -Private Sub EDT_CANMIL_FocusChanged (HasFocus As Boolean) - If EDT_CANMIL.Text = "" Then EDT_CANMIL.Text = "0" - EDT_CANMIL.Text = Round (EDT_CANMIL.Text ) - LBL_TMIL.Text= LBL_MIL.Tag * EDT_CANMIL.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text -End Sub - -Sub B_SUMIL_Click - If EDT_CANMIL.Text = "" Then - EDT_CANMIL.Text = 0 - LBL_TMIL.Text= LBL_MIL.Tag * EDT_CANMIL.Text - Else - EDT_CANMIL.Text = Round (EDT_CANMIL.Text + 1) - LBL_TMIL.Text= LBL_MIL.Tag * EDT_CANMIL.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -Sub B_MENMIL_Click - If EDT_CANMIL.Text = "" Then - EDT_CANMIL.Text = 1 - LBL_TMIL.Text= LBL_MIL.Tag * EDT_CANMIL.Text - Else IF EDT_CANMIL.Text > 0 Then - EDT_CANMIL.Text = Round(EDT_CANMIL.Text -1) - LBL_TMIL.Text= LBL_MIL.Tag * EDT_CANMIL.Text - Btn_TOTALBILLETE.Text= ( LBL_TMIL.Text + LBL_TQUIN.Text + LBL_TDOS.Text + LBL_TCIEN.Text + LBL_TCIN.Text + LBL_TVEIN.Text) - TOTALBILLETES.Text=Btn_TOTALBILLETE.Text - End If -End Sub - -'''' MONEDAS -Sub L_CALCULA_MONEDA_Click - If EDT_CANDIEZ.Text="" Or EDT_CANCI.Text="" Or EDT_CANDO.Text="" Or EDT_CANUN.Text="" Or EDT_CANCEN.Text="" Or EDT_CANVEINTE.Text="" Then - Msgbox("Por favor llena todas las cantidades","") 'ignore - Pnl_Billete.RequestFocus - Else - LBL_TDIEZ.Text= L_DIEZ.Tag * EDT_CANDIEZ.Text - LBL_TCI.Text= L_CINCO.Tag * EDT_CANCI.Text - LBL_TDO.Text=L_DOS.Tag * EDT_CANDO.Text - LBL_TUN.Text=L_UNO.Tag * EDT_CANUN.Text - LBL_TCEN.Text=L_CENTAVO.Tag * EDT_CANCEN.Text - LBL_TVEINTE.Text=L_VEINTE.Tag * EDT_CANVEINTE.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -'0.50 -Private Sub EDT_CANCEN_FocusChanged (HasFocus As Boolean) - If EDT_CANCEN.Text = "" Then EDT_CANCEN.Text = "0" - EDT_CANCEN.Text = Round (EDT_CANCEN.Text) - LBL_TCEN.Text=L_CENTAVO.Tag * EDT_CANCEN.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text -End Sub - -Sub B_SUMCENT_Click - If EDT_CANCEN.Text = "" Then - EDT_CANCEN.Text = 0 - LBL_TCEN.Text=L_CENTAVO.Tag * EDT_CANCEN.Text - Else - EDT_CANCEN.Text = Round (EDT_CANCEN.Text + 1) - LBL_TCEN.Text=L_CENTAVO.Tag * EDT_CANCEN.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -Sub B_MENCENT_Click - If EDT_CANCEN.Text = "" Then - EDT_CANCEN.Text =0 - LBL_TCEN.Text=L_CENTAVO.Tag * EDT_CANCEN.Text - Else IF EDT_CANCEN.Text > 0 Then - EDT_CANCEN.Text = Round(EDT_CANCEN.Text -1) - LBL_TCEN.Text=L_CENTAVO.Tag * EDT_CANCEN.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -'1 -Private Sub EDT_CANUN_FocusChanged (HasFocus As Boolean) - If EDT_CANUN.Text = "" Then EDT_CANUN.Text = "0" - EDT_CANUN.Text = Round (EDT_CANUN.Text) - LBL_TUN.Text=L_UNO.Tag * EDT_CANUN.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text -End Sub - -Sub B_SUMUN_Click - If EDT_CANUN.Text = "" Then - - LBL_TUN.Text=L_UNO.Tag * EDT_CANUN.Text - Else - EDT_CANUN.Text = Round (EDT_CANUN.Text + 1) - LBL_TUN.Text=L_UNO.Tag * EDT_CANUN.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -Sub B_MENUN_Click - If EDT_CANUN.Text = "" Then - EDT_CANUN.Text = 0 - LBL_TUN.Text=L_UNO.Tag * EDT_CANUN.Text - Else IF EDT_CANUN.Text > 0 Then - EDT_CANUN.Text = Round(EDT_CANUN.Text -1) - LBL_TUN.Text=L_UNO.Tag * EDT_CANUN.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -'2 -Private Sub EDT_CANDO_FocusChanged (HasFocus As Boolean) - If EDT_CANDO.Text = "" Then EDT_CANDO.Text = "0" - EDT_CANDO.Text = Round (EDT_CANDO.Text) - LBL_TDO.Text=L_DOS.Tag * EDT_CANDO.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text -End Sub - -Sub B_SUMDO_Click - If EDT_CANDO.Text = "" Then - EDT_CANDO.Text =0 - LBL_TDO.Text=L_DOS.Tag * EDT_CANDO.Text - Else - EDT_CANDO.Text = Round (EDT_CANDO.Text + 1) - LBL_TDO.Text=L_DOS.Tag * EDT_CANDO.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -Sub B_MENDO_Click - If EDT_CANDO.Text = "" Then - EDT_CANDO.Text=0 - LBL_TDO.Text=L_DOS.Tag * EDT_CANDO.Text - Else IF EDT_CANDO.Text > 0 Then - EDT_CANDO.Text = Round(EDT_CANDO.Text -1) - LBL_TDO.Text=L_DOS.Tag * EDT_CANDO.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -'5 -Private Sub EDT_CANCI_FocusChanged (HasFocus As Boolean) - If EDT_CANCI.Text = "" Then EDT_CANCI.Text = "0" - EDT_CANCI.Text = Round (EDT_CANCI.Text) - LBL_TCI.Text= L_CINCO.Tag * EDT_CANCI.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text ) - TOTALMONEDA.Text=B_TOTALMONEDA.Text -End Sub - -Sub B_SUMCIN_Click - If EDT_CANCI.Text = "" Then - EDT_CANCI.Text =0 - LBL_TCI.Text= L_CINCO.Tag * EDT_CANCI.Text - Else - EDT_CANCI.Text = Round (EDT_CANCI.Text + 1) - LBL_TCI.Text= L_CINCO.Tag * EDT_CANCI.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text ) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -Sub B_MENCI_Click - If EDT_CANCI.Text = "" Then - EDT_CANCI.Text =0 - LBL_TCI.Text= L_CINCO.Tag * EDT_CANCI.Text - Else IF EDT_CANCI.Text > 0 Then - EDT_CANCI.Text = Round(EDT_CANCI.Text -1) - LBL_TCI.Text= L_CINCO.Tag * EDT_CANCI.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub -'10 -Private Sub EDT_CANDIEZ_FocusChanged (HasFocus As Boolean) - If EDT_CANDIEZ.Text = "" Then EDT_CANDIEZ.Text = "0" - EDT_CANDIEZ.Text = Round (EDT_CANDIEZ.Text) - LBL_TDIEZ.Text= L_DIEZ.Tag * EDT_CANDIEZ.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text -End Sub - -Sub B_SUMDIEZ_Click - If EDT_CANDIEZ.Text = "" Then - EDT_CANDIEZ.Text =0 - LBL_TDIEZ.Text= L_DIEZ.Tag * EDT_CANDIEZ.Text - Else - EDT_CANDIEZ.Text = Round (EDT_CANDIEZ.Text + 1) - LBL_TDIEZ.Text= L_DIEZ.Tag * EDT_CANDIEZ.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -Sub B_MENDIEZ_Click - If EDT_CANDIEZ.Text = "" Then - EDT_CANDIEZ.Text = 0 - LBL_TDIEZ.Text= L_DIEZ.Tag * EDT_CANDIEZ.Text - Else IF EDT_CANDIEZ.Text > 0 Then - EDT_CANDIEZ.Text = Round(EDT_CANDIEZ.Text -1) - LBL_TDIEZ.Text= L_DIEZ.Tag * EDT_CANDIEZ.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -'20 -Private Sub EDT_CANVEINTE_FocusChanged (HasFocus As Boolean) - If EDT_CANVEINTE.Text = "" Then EDT_CANVEINTE.Text = "0" - EDT_CANVEINTE.Text = Round(EDT_CANVEINTE.Text) - LBL_TVEINTE.Text= L_VEINTE.Tag * EDT_CANVEINTE.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text ) - TOTALMONEDA.Text=B_TOTALMONEDA.Text -End Sub - -Sub B_MENVEINTE_Click - If EDT_CANVEINTE.Text = "" Then - EDT_CANVEINTE.Text = 0 - LBL_TVEINTE.Text= L_VEINTE.Tag * EDT_CANVEINTE.Text - Else IF EDT_CANVEINTE.Text > 0 Then - EDT_CANVEINTE.Text = Round(EDT_CANVEINTE.Text -1) - LBL_TVEINTE.Text= L_VEINTE.Tag * EDT_CANVEINTE.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text ) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -Sub B_SUMVEINTE_Click - If EDT_CANVEINTE.Text = "" Then - EDT_CANVEINTE.Text =0 - LBL_TVEINTE.Text= L_VEINTE.Tag * EDT_CANVEINTE.Text - Else - EDT_CANVEINTE.Text = Round (EDT_CANVEINTE.Text + 1) - LBL_TVEINTE.Text= L_VEINTE.Tag * EDT_CANVEINTE.Text - B_TOTALMONEDA.Text=( LBL_TDIEZ.Text + LBL_TCI.Text + LBL_TDO.Text + LBL_TUN.Text + LBL_TCEN.Text + LBL_TVEINTE.Text) - TOTALMONEDA.Text=B_TOTALMONEDA.Text - End If -End Sub - -''''''TOTALES -Sub TOTALES_Click - If TOTALMONEDA.Text="" Or TOTALBILLETES.Text="" Then - TOTALMONEDA.Text=0 - TOTALBILLETES.Text=0 - B_SUM_TOTAL.Text="$"& (TOTALMONEDA.Text + TOTALBILLETES.Text) - Else - B_SUM_TOTAL.Text= "$"&(TOTALMONEDA.Text + TOTALBILLETES.Text) - End If -End Sub - -Sub B_AGREGABILL_Click - Pnl_Billete.Visible=True - Pnl_Moneda.Visible=False - PNL_TOTALES.Visible=False - LBL_RETURN.Visible=True - LBL_REGRESA.Visible=True -End Sub - -Sub B_AGREGAMONE_Click - Pnl_Billete.Visible=False - Pnl_Moneda.Visible=True - PNL_TOTALES.Visible=False - LBL_RETURN.Visible=True - LBL_REGRESA.Visible=True -End Sub - -Sub LBL_RETURN_Click - Pnl_Billete.Visible=False - Pnl_Moneda.Visible=False - PNL_TOTALES.Visible=True - LBL_RETURN.Visible=False - LBL_REGRESA.Visible=False - ''' CALCULO FINAL - If TOTALMONEDA.Text="" Or TOTALBILLETES.Text="" Then - TOTALMONEDA.Text=0 - TOTALBILLETES.Text=0 - B_SUM_TOTAL.Text="$"& (TOTALMONEDA.Text + TOTALBILLETES.Text) - Else - B_SUM_TOTAL.Text="$"& (TOTALMONEDA.Text + TOTALBILLETES.Text) - End If -End Sub - -Sub LBL_REGRESA_Click - Pnl_Billete.Visible=False - Pnl_Moneda.Visible=False - LBL_RETURN.Visible=False - LBL_REGRESA.Visible=False - PNL_TOTALES.Visible=True - LBL_REGRESA.Visible=True -End Sub - -Sub B_Regresar_Click -' StartActivity("SELECCION") - Subs.iniciaActividad("principal") -' B4XPages.ShowPage("Principal") -' Activity.Finish - PNL_TOTALES.Visible=False - Pnl_Billete.Visible=False - Pnl_Moneda.visible=False - PNL_TOTALES.Visible=False - LBL_RETURN.Visible=False - LBL_REGRESA.Visible=False - P_BOLETA.Visible=False - P_INF_GENERAL.Visible=True - If logger Then Log("Panel general="&P_INF_GENERAL.Visible) - LBL_REGRESA.Visible=False - -End Sub - -Sub IMG_IMPRESORA_Click -' Printer1.DisConnect : Log("Desconectando impresora") -' impresoraConectada = False -' Private cont As Int = 0 -' ToastMessageShow("Conectando impresora", False) -' Do While Not(impresoraConectada) And cont < 9 -' Printer1.Connect -' If Logger Then Log("Conectando impresora") -' Sleep(1000) -' If Logger Then Log(impresoraConectada) -' cont = cont + 1 -' Loop -' If Logger Then Log("connected") - ProgressDialogShow("Imprimiendo, un momento ...") - Printer1.DisConnect - If Not(Printer1.IsConnected) Then - If logger Then Log("conectando 1") - Printer1.Connect - Private cont As Int = 0 - Do While Not(impresoraConectada) - Sleep(1000) - cont = cont + 1 - If cont = 7 Then Printer1.Connect 'Tratamos de reconectar - If cont > 15 Then impresoraConectada = True - Loop - Sleep(500) - impresoraConectada = False - Else - If logger Then Log("conectando 2") - Printer1.Connect - Private cont As Int = 0 - Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) - Sleep(1000) - cont = cont + 1 - If cont = 2 Then Printer1.Connect - If cont > 4 Then impresoraConectada = True - Loop - Sleep(500) - impresoraConectada = False - End If - - - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c.Close - Printer1.WriteString("KELLOGG COMPANY MEXICO" & CRLF) - Printer1.WriteString(sDate &" " & sTime & CRLF) - Printer1.WriteString("Vendedor:" & usuario & CRLF) - Printer1.WriteString(" " & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("BILLETES" & CRLF) - Printer1.WriteString("$1,000 X " & EDT_CANMIL.TEXT & " = " & LBL_TMIL.TEXT & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("$500 X " & EDT_CANQUIN.TEXT & " = " & LBL_TQUIN.TEXT &CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("$200 X " & EDT_CANDOS.TEXT & " = " & LBL_TDOS.Text & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("$100 X " & EDT_CANCIEN.TEXT & " = " & LBL_TCIEN.Text & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("$50 X " & EDT_CANCIN.TEXT & " = " & LBL_TCIN.Text & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("$20 X " & EDT_CANVEIN.TEXT & " = " & LBL_TVEIN.Text & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("TOTAL BILLETES...... " & Btn_TOTALBILLETE.TEXT & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("MONEDAS" & CRLF) - Printer1.WriteString("$20 X " & EDT_CANVEINTE.TEXT & " = " & LBL_TVEINTE.TEXT &CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("$10 X " & EDT_CANDIEZ.TEXT & " = " & LBL_TDIEZ.TEXT &CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("$5 X " & EDT_CANCI.TEXT & " = " & LBL_TCI.Text & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("$2 X " & EDT_CANDO.TEXT & " = " & LBL_TDO.Text & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("$1 X " & EDT_CANUN.TEXT & " = " & LBL_TUN.Text & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("$.50 X " & EDT_CANCEN.TEXT & " = " & LBL_TCEN.Text & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("TOTAL MONEDAS....... " & B_TOTALMONEDA.TEXT & CRLF) - Printer1.WriteString(" " & CRLF) - Printer1.WriteString("TOTAL .........." & B_SUM_TOTAL.TEXT & CRLF) - Printer1.WriteString(" " & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString(" " & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("Nombre y Firma" & CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString("______________________________" & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - ProgressDialogHide -End Sub - -Sub B_IMP_INV_Click - ProgressDialogShow("Imprimiendo, un momento ...") - Printer1.DisConnect - If Not(Printer1.IsConnected) Then - If logger Then Log("conectando 1") - Printer1.Connect - Private cont As Int = 0 - Do While Not(impresoraConectada) - Sleep(1000) - cont = cont + 1 - If cont = 7 Then Printer1.Connect 'Tratamos de reconectar - If cont > 15 Then impresoraConectada = True - Loop - Sleep(500) - impresoraConectada = False - Else - If logger Then Log("conectando 2") - Printer1.Connect - Private cont As Int = 0 - Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) - Sleep(1000) - cont = cont + 1 - If cont = 2 Then Printer1.Connect - If cont > 4 Then impresoraConectada = True - Loop - Sleep(500) - impresoraConectada = False - End If - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c.Close - TAMANO = 5 - ESPACIO = 14 - BLANCO = " " - Printer1.WriteString("KELLOG COMPANY MEXICO" & CRLF) - Printer1.WriteString("RESUMEN DIA" & CRLF) - Printer1.WriteString(sDate & " " & sTime & CRLF) - Printer1.WriteString("Vendedor:" & usuario & CRLF) - Printer1.WriteString("-------INVENTARIO A BORDO----------" & CRLF) -''' se cambia este Printer1.WriteString("---II---CD---IIT---VT---RMI---IF---" & CRLF) ------- sin RMI - Printer1.WriteString("---II---CD---IIT---VT---------IF---" & CRLF) - - ' aqui es donde esta el pedo de julieta de los descuentos quitar el precio2 pero meter un if para saber si es ruta especial o es normal o que show. - s=Starter.skmt.ExecQuery2 ("select CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_ALMACEN from cat_gunaprod2 where CAT_GP_CLASIF <> ? ORDER BY CAT_GP_NOMBRE ", Array As String("PROMOS")) - Log($"Reglones: ${s.RowCount}"$) - If s.RowCount>0 Then - For i=0 To S.RowCount -1 - Log(i) - Try - s.Position=i - Printer1.WriteString(s.GetString("CAT_GP_NOMBRE") & CRLF) - Log("p"&i) - Catch - Log(LastException) - If logger Then Log("Saliendo con Try/Catch") - Exit - End Try - S1=Starter.skmt.ExecQuery2("select CAT_GP_ALMACEN from cat_gunaprod5 where CAT_GP_ID = ?", Array As String(s.GetString("CAT_GP_ID"))) - S1.Position=0 - S3=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from HIST_ABORDO where HIST_PROID = ?", Array As String(s.GetString("CAT_GP_ID"))) - S3.Position=0 - If S3.GetString("CUANTOS") > 0 Then - S2=Starter.skmt.ExecQuery2("select HIST_CANT from HIST_ABORDO where HIST_PROID = ?", Array As String(s.GetString("CAT_GP_ID"))) - S2.Position=0 - a_inicial = S1.GetString("CAT_GP_ALMACEN") - S2.GetString("HIST_CANT") - Else - a_inicial = S1.GetString("CAT_GP_ALMACEN") - End If - a_inicial_5 = S1.GetString("CAT_GP_ALMACEN") - 'Printer1.WriteString("INICIAL: " & ABORDO & CRLF) - If S3.GetString("CUANTOS") > 0 Then - 'Printer1.WriteString("CARGA DIA : " & S2.GetString("HIST_CANT") & CRLF) - ABORDO = S2.GetString("HIST_CANT") - Else - 'Printer1.WriteString("CARGA DIA : 0" & CRLF) - ABORDO = 0 - End If - 'Printer1.WriteString("CARGA TOTAL : " & S1.GetString("CAT_GP_ALMACEN") & CRLF) - a_total = S1.GetString("CAT_GP_ALMACEN") - - C4=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from pedido where substr(pe_pronombre,1,6) <> ? AND PE_TIPO = ? and PE_PROID = ? ", Array As String("CAMBIO","VENTA", s.GetString("CAT_GP_ID"))) - C4.Position=0 - If C4.GetString("CUANTOS") > 0 Then - C3=Starter.skmt.ExecQuery2("select SUM(PE_CANT) AS CANTIDAD,PE_PRONOMBRE from pedido where substr(pe_pronombre,1,6) <> ? AND PE_TIPO = ? AND PE_PROID = ? GROUP BY PE_PRONOMBRE", Array As String("CAMBIO","VENTA", s.GetString("CAT_GP_ID"))) - C3.Position=0 - 'Printer1.WriteString("VENTA: " & C3.GetString("CANTIDAD") & CRLF) - a_venta = C3.GetString("CANTIDAD") - Else - 'Printer1.WriteString("VENTA: 0" & CRLF) - a_venta = 0 - End If - C4.Close - ''' se conenta esto para el cambio de RMI - C4=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from pedido where substr(pe_pronombre,1,6) = ? AND PE_PROID = ? ", Array As String("CAMBIO", s.GetString("CAT_GP_ID"))) - C4.Position=0 - If C4.GetString("CUANTOS") > 0 Then - C1=Starter.skmt.ExecQuery2("select SUM(PE_CANT) AS CANTIDAD,PE_PRONOMBRE from pedido where substr(pe_pronombre,1,6) = ? AND PE_PROID = ? GROUP BY PE_PRONOMBRE", Array As String("CAMBIO", s.GetString("CAT_GP_ID"))) - C1.Position=0 - RMI = C1.GetString("CANTIDAD") - Else - RMI = 0 - End If - - 'Printer1.WriteString("INV. ACT.: " & s.GetString("CAT_GP_ALMACEN") & CRLF) - 'a_final =s.GetString("CAT_GP_ALMACEN") - ''' se cammbi a este a_final = a_inicial_5 - a_venta - RMI por el sin RMI cambiuo de rmi - a_final = a_inicial_5 - a_venta - - 'Printer1.WriteString("RMI: " & RMI & CRLF) - Private sep1 As String - Private sep2 As String - Private sep3 As String - Private sep4 As String - Private sep5 As String - Private sep6 As String - - sep1 = a_inicial.Length - If sep1 = 1 Then - a_inicial = "----" & a_inicial - else if sep1 = 2 Then - a_inicial = "---" & a_inicial - else if sep1 = 3 Then - a_inicial = "--" & a_inicial - else if sep1 = 4 Then - a_inicial = "-" & a_inicial - else if sep1 = 5 Then - a_inicial = a_inicial - End If - sep2 = ABORDO.Length - If sep2 = 1 Then - ABORDO = "----" & ABORDO - else if sep2 = 2 Then - ABORDO = "---" & ABORDO - else if sep2 = 3 Then - ABORDO = "--" & ABORDO - else if sep2 = 4 Then - ABORDO = "-" & ABORDO - else if sep2 = 5 Then - ABORDO = ABORDO - End If - - sep3 = a_total.Length - If sep3 = 1 Then - a_total = "----" & a_total - else if sep3 = 2 Then - a_total = "---" & a_total - else if sep3 = 3 Then - a_total = "--" & a_total - else if sep3 = 4 Then - a_total = "-" & a_total - else if sep3 = 5 Then - a_total = a_total - End If - - sep4 = a_venta.Length - If sep4 = 1 Then - a_venta = "----" & a_venta - else if sep4 = 2 Then - a_venta = "---" & a_venta - else if sep4 = 3 Then - a_venta = "--" & a_venta - else if sep4 = 4 Then - a_venta = "-" & a_venta - else if sep4 = 5 Then - a_venta = a_venta - End If - - sep5 = a_final.Length - If sep5 = 1 Then - a_final = "----" & a_final - else if sep5 = 2 Then - a_final = "---" & a_final - else if sep5 = 3 Then - a_final = "--" & a_final - else if sep5 = 4 Then - a_final = "-" & a_final - else if sep5 = 5 Then - a_final = a_final - End If -''''se cambia por lo de RMI -'' sep6 = RMI.Length -'' If sep6 = 1 Then -'' RMI = "----" & RMI -'' else if sep6 = 2 Then -'' RMI = "---" & RMI -'' else if sep6 = 3 Then -'' RMI = "--" & RMI -'' else if sep6 = 4 Then -'' RMI = "-" & RMI -'' else if sep6 = 5 Then -'' RMI = RMI -'' End If -'' se cambia este Printer1.WriteString( a_inicial & ABORDO & a_total & a_venta & RMI & a_final & CRLF) --- por este sin RMI - - Printer1.WriteString( a_inicial & ABORDO & a_total & a_venta & a_final & CRLF) - - TAMANO = TAMANO + 1 - If TAMANO > 40 Then - - t3.Initialize("T3", 4000) ' 1000 = 1 second - t3.Enabled = True - Wait For t3_tick - TAMANO = 0 - End If - Next - End If - s.Close - If S3.IsInitialized Then S3.Close - Try - c=Starter.skmt.ExecQuery("select count(*) as CUANTOS from pedido") - c.Position =0 - CUANTOS = c.GetString("CUANTOS") - c.Close - Catch - CUANTOS = 0 - End Try - ''' se quita por el RMI - Try - c=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from pedido where substr(pe_pronombre,1,6) = ? GROUP BY PE_PRONOMBRE", Array As String("CAMBIO")) - If c.RowCount > 0 Then - c.Position =0 - CUANTOS1 = c.GetString("CUANTOS") - Else - CUANTOS1 = 0 - End If - c.Close - Catch - CUANTOS1 = 0 - End Try - If CUANTOS <> CUANTOS1 Then - Try - c=Starter.skmt.ExecQuery2("select SUM(PE_CANT) AS CANTIDAD,PE_PRONOMBRE from pedido where substr(pe_pronombre,1,6) = ? GROUP BY PE_PRONOMBRE", Array As String("CAMBIO")) - Printer1.WriteString(CRLF) - Printer1.WriteString("-----------RMI----------------" & CRLF) - Printer1.WriteString(CRLF) - If C.RowCount>0 Then - For i=0 To C.RowCount -1 - C.Position=i - Printer1.WriteString(C.GetString("CANTIDAD") & " " & C.GetString("PE_PRONOMBRE") & CRLF) - Next - End If - c.Close - Catch - Printer1.WriteString(CRLF) - End Try - End If - - ' TOTALES DE LOS ARCHIVOS - - s.Close - S=Starter.skmt.ExecQuery2("select SUM(CAT_GP_ALMACEN) AS CAT_GP_ALMACEN from cat_gunaprod2 WHERE CAT_GP_CLASIF <> ? ", Array As String("PROMOS")) - S.Position=0 - a_final =s.GetString("CAT_GP_ALMACEN") - - S1.Close - S1=Starter.skmt.ExecQuery("select SUM(CAT_GP_ALMACEN) AS CAT_GP_ALMACEN from cat_gunaprod5 ") - S1.Position=0 - a_total = S1.GetString("CAT_GP_ALMACEN") - a_inicial = S1.GetString("CAT_GP_ALMACEN") - S1.Close - ABORDO =0 - C3=Starter.skmt.ExecQuery2("select SUM(PE_CANT) AS CANTIDAD, SUM(PE_COSTO_TOT) AS PE_TOTAL from pedido where pe_proid <> pe_cedis and substr(pe_pronombre,1,6) <> ? AND PE_CLIENTE <> ?", Array As String("CAMBIO", "0")) - C8=Starter.skmt.ExecQuery2("select SUM(PE_COSTO_TOT) AS PE_TOTAL from pedido where pe_proid <> pe_cedis AND PE_CLIENTE <> ?", Array As String( "0")) - C8.Position=0 - If C3.RowCount > 0 Then - C3.Position=0 - a_venta = C3.GetString("CANTIDAD") - Else - a_venta = 0 - End If - - If a_venta = Null Then a_venta = 0 - If CUANTOS <> CUANTOS1 Then - C1=Starter.skmt.ExecQuery2("select SUM(PE_CANT) AS CANTIDAD, SUM(PE_COSTO_TOT) AS TOTAL from pedido where substr(pe_pronombre,1,6) = ? ", Array As String("CAMBIO")) - C1.Position=0 - RMI = C1.GetString("CANTIDAD") - RMI_VALOR = C1.GetString("TOTAL") - C1.Close - Else - RMI = 0 - End If - If RMI = Null Then RMI = 0 - If logger Then Log($"a_total=${a_total}, a_venta=${a_venta}, rmi=${RMI}"$) - a_final = a_total - a_venta - Printer1.WriteString(Printer1.BOLD & "Piezas en RMI : " & RMI & CRLF) - Printer1.WriteString(Printer1.BOLD & "TOTAL RMI : " & RMI_VALOR & CRLF) - - Printer1.WriteString(Printer1.BOLD & "----RESUMEN TOTAL---- " & CRLF) - '' se cambia por lo del rmi Printer1.WriteString("---" & a_inicial & "..." & ABORDO & "..." & a_total & "..." & a_venta & "..." & a_final & "..." & RMI & CRLF) - Printer1.WriteString("---" & a_inicial & "..." & ABORDO & "..." & a_total & "..." & a_venta & "..." & a_final & "..." & CRLF) - - Printer1.WriteString(Printer1.BOLD & "TOTAL VENTA " & C8.GetString("PE_TOTAL") & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("Nombre y Firma" & CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString("______________________________" & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString(CRLF) - Printer1.WriteString(CRLF) - If C3.IsInitialized Then C3.Close - ProgressDialogHide -End Sub - -Sub B_CERRAR_I_Click - Panel_INV_A.Visible = False - P_INF_GENERAL.Visible = True - If logger Then Log("Panel general="&P_INF_GENERAL.Visible) -End Sub - -Sub Bt_GuardarBoleta_Click - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - cursorBoleta=Starter.skmt.ExecQuery("select ID_ALMACEN FROM CAT_ALMACEN") - cursorBoleta.Position=0 - Id_Almacen=cursorBoleta.GetString("ID_ALMACEN") - Starter.skmt.ExecNonQuery("delete from TMP_CAT_BILLETE") - Starter.skmt.ExecNonQuery("delete from TMP_CAT_MONEDAS") - Starter.skmt.ExecNonQuery2("INSERT INTO TMP_CAT_BILLETE (TMP_BILLE_RUTA, TMP_BILLE_IDALMACEN, TMP_BILLE_FECHA, TMP_BILLE_MIL, TMP_BILLE_QUINIENTOS, TMP_BILLE_DOSCIENTOS, TMP_BILLE_CIEN, TMP_BILLE_CINCUENTA, TMP_BILLE_VEINTE) values (?,?,?,?,?,?,?,?,?)", Array As Object (RutaBoleta,Id_Almacen,sDate & sTime,EDT_CANMIL.Text,EDT_CANQUIN.Text,EDT_CANDOS.Text,EDT_CANCIEN.Text,EDT_CANCIN.Text,EDT_CANVEIN.Text)) - Starter.skmt.ExecNonQuery2("INSERT INTO TMP_CAT_MONEDAS (TMP_MON_RUTA, TMP_MON_IDALMACEN, TMP_MON_FECHA, TMP_MON_VEINTE, TMP_MON_DIEZ, TMP_MON_CINCO, TMP_MON_DOS, TMP_MON_UN, TMP_MON_CENTAVOS) values (?,?,?,?,?,?,?,?,?)", Array As Object (RutaBoleta,Id_Almacen,sDate & sTime,EDT_CANVEINTE.Text,EDT_CANDIEZ.Text,EDT_CANCI.Text,EDT_CANDO.Text,EDT_CANUN.Text,EDT_CANCEN.Text)) -' If Logger Then Log($"${RutaBoleta},${Id_Almacen},${EDT_CANMIL.Text},${EDT_CANQUIN.Text},${EDT_CANDOS.Text},${EDT_CANCIEN.Text},${EDT_CANCIN.Text},${EDT_CANVEIN.Text}"$) -' If Logger Then Log($"${RutaBoleta},${Id_Almacen},${EDT_CANVEINTE.Text},${EDT_CANDIEZ.Text},${EDT_CANCI.Text},${EDT_CANDO.Text},${EDT_CANUN.Text},${EDT_CANCEN.Text}"$) - Msgbox("Datos Guardados ","Listo") 'ignore -End Sub - -Sub B_E_NEXT_Click - Panel9.Visible = False - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, E_RES_E.Text ,sDate & sTime,c.GetString("CAT_EP_ID"))) - Starter.tipov = "VENTA" - Cuestionario -End Sub - -Sub b_chk_e_Click - Panel10.Visible = False - Private resp As String = "" - If Chk_1.Checked = True Then resp = chk_1_valor - If chk_2.Checked = True Then resp = resp & " / " & chk_2_valor - If chk_3.Checked = True Then resp = resp & " / " & chk_3_valor - If resp.StartsWith(",") Then resp = resp.SubString(2) 'Quitamos la coma si existe al principio. - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, resp, sDate & sTime, Chk_1.Tag)) - Starter.tipov = "VENTA" - Cuestionario -End Sub - -'Muestra el panel de la encuesta, le da el alto y ancho de la pantalla y la pone en 0,0 -Sub muestraEncuesta -' If Logger Then Log("Muestra Encuesta") - p_encuesta.Top = 0 - p_encuesta.left = 0 - p_encuesta.Height = GetDeviceLayoutValues.Height - p_encuesta.Width = GetDeviceLayoutValues.Width - p_encuesta.SetVisibleAnimated(200, True) - p_encuesta.Elevation = 90 'ignore - p_encuesta.BringToFront - P_INF_GENERAL.Visible = False - Log("Panel general="&P_INF_GENERAL.Visible) -End Sub - -' Oculta el panel de la encuesta y los botones de la misma. -Sub ocultaPanelEncuesta -' Log("Oculta Encuesta") - b_encuesta_1.Visible = False - b_encuesta_2.Visible = False - b_encuesta_3.Visible = False - p_encuesta.Visible = False - P_INF_GENERAL.Visible = True - If logger Then Log("Panel general="&P_INF_GENERAL.Visible) -End Sub - -'Regresa el valor de "left" para el centro de la pantalla -Sub centroPantalla As Int - Private anchoPantalla As Int = GetDeviceLayoutValues.Width - Private anchoPantalla As Int = Root.Width - Return anchoPantalla/2 -End Sub - -Private Sub b_encuesta_1_Click - Dim btn As Button = Sender - Log(btn.Tag & " clicked - " & btn.Text) - encuestaRes = btn.Text - ocultaPanelEncuesta - botonPresionado = 1 -End Sub - -Private Sub b_encuesta_2_Click - Dim btn As Button = Sender - Log(btn.Tag & " clicked - " & btn.Text) - encuestaRes = btn.Text - ocultaPanelEncuesta - botonPresionado = 1 -End Sub - -Private Sub b_encuesta_3_Click - Dim btn As Button = Sender - If logger Then Log(btn.Tag & " clicked - " & btn.Text) - encuestaRes = btn.Text - ocultaPanelEncuesta - botonPresionado = 1 -End Sub - -Private Sub b_encuesta_continuar_Click - encuestaRes = et_encuesta.Text - et_encuesta.Text = "" - et_encuesta.Visible = False - b_encuesta_continuar.Visible = False - ocultaPanelEncuesta - botonPresionado = 1 -End Sub - -Private Sub et_encuesta_TextChanged (Old As String, New As String) -' Log($"|${Old}|,|${New}|"$) - If New.Length > 0 Then b_encuesta_continuar.Enabled = True - If New.Length < 1 Then b_encuesta_continuar.Enabled = False -End Sub - -'Revisa si el cliente actual es candidato a la promo especial que da regalo según el monto de la compra. -'Se revisa que el cliente tenga asignada la promoción, que no tenga venta impresa y que el producto de regalo tenga existencia. -'Si cumple las 3 condiciones regresa esValida=True, si no, esValida=False. -Sub revisaPromoEspecial As Map -' Necesitamos cliente autorizado, producto promocional con existencia y cliente no impreso. - Private hayInventario As String = "" - Private clienteConPromo As String = "" - Private clienteImpreso As String = "" - Dim promoInfo As Map - promoInfo.Initialize - Private x As Cursor - 'Revisamos si ya tiene venta impresa. - x=Starter.skmt.ExecQuery("select count(*) as CUANTOS from CLIENTE_IMPRESO where CI_CUENTA in (Select CUENTA from cuentaa)") - x.Position = 0 - clienteImpreso = x.GetString("CUANTOS") -' Log(clienteImpreso) -' If clienteImpreso = "0" Then Log("El cliente no tiene venta impresa.") - x.Close - 'Revisamos que tenga asignada la promo. - x=Starter.skmt.ExecQuery("select count(*) as clienteConPromo, CPM_PROID, CPM_CANT, CPM_RANGO, CPM_DESC, CPM_IDPROMO, CPM_MONTO from CAT_PROMO_MONTO where CPM_CLIENTE in (Select CUENTA from cuentaa)") - If x.RowCount > 0 Then - x.Position = 0 - If x.GetString("clienteConPromo") = 1 Then 'Cliente autorizado para promo. - clienteConPromo = "1" - Private y As Cursor - Private nombreProd As String = "" - y=Starter.skmt.ExecQuery("select cat_gp_nombre as nombreProd from cat_gunaprod where cat_gp_id = '" & x.GetString("CPM_PROID") & "'") - If y.RowCount > 0 Then - y.Position = 0 - nombreProd = y.GetString("nombreProd") - End If - Log("El cliente tiene asignada la promo especial.") - Private p As Cursor - p=Starter.skmt.ExecQuery("select count(*) as hayInventario from CAT_GUNAPROD where CAT_GP_ALMACEN > 0 and CAT_GP_ID = " & x.GetString("CPM_PROID")) - p.Position = 0 - hayInventario = p.GetString("hayInventario") - If hayInventario = "1" Then Log("El producto de la promo tiene existencia.") - p.Close - promoInfo = CreateMap("idProd":x.GetString("CPM_PROID"), "cantProd":x.GetString("CPM_CANT"), "rangoPromo":x.GetString("CPM_RANGO"), "descrPromo":x.GetString("CPM_DESC"), "idPromo":x.GetString("CPM_IDPROMO"), "montoPromo":x.GetString("CPM_MONTO"), "nombreProd":nombreProd) - End If - End If - x.Close - If clienteImpreso = "0" And clienteConPromo = "1" And hayInventario = "1" Then - Log("Cumple con TODAS las condiciones de la promo.") - promoInfo.Put("esValida", True) - Return promoInfo - Else -' Log("NO cumple con las condiciones de la promo.") - promoInfo.Put("esValida", False) - Return promoInfo - End If -End Sub - -'Mete la promoción especial de regalo por monto vendido. -Sub metePromoEspecial(idProd As String, idPromo As String, cantProd As Int, nombreProd As String, promoDescr As String, idCliente As String, idUsuario As String, idRuta As String) 'ignore - Dim query As String - query = "cat_gunaprod" - If Starter.tipov = "VENTA" Then query = "cat_gunaprod2" -' Falta nombre de producto en el insert - Starter.skmt.ExecNonQuery2("DELETE from PEDIDO where PE_CEDIS = ?", Array As String (idPromo)) - 'Metemos encabezado de la promo. - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_RUTA, PE_TIPO, PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (idPromo, 0, 0, cantProd, promoDescr, idPromo, idCliente, sDate & sTime, idUsuario, idRuta, Starter.tipov, 0)) - 'Metemos el producto de regalo. - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_RUTA, PE_TIPO, PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (idPromo, 0.01, 0.01, cantProd, nombreProd, idProd, idCliente, sDate & sTime, idUsuario, idRuta, Starter.tipov, 0.01)) - 'Actualizamos existencia en CAT_GUNAPROD. - Starter.skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantProd, idProd)) -End Sub - -Sub revisaImpresora (mode As String) 'ignore - '' Log("Revisamos impresora " & Starter.intentosImpresora) - '' Log("RevisandoImpresora= " & Starter.revisandoImpresora) -' If Not(Starter.btAdmin.IsEnabled) Then Starter.btAdmin.Enable 'Si no esta prendido el BT lo prendemos. -' If Not(Printer1.IsInitialized) Then Printer1.Initialize(Me, "Printer1") 'Si no esta inicializada la inicializamos. -' If Not(Starter.revisandoImpresora) Then Return -' Starter.revisandoImpresora = True -' If mode = "BT" Then - '' Try - '' LogColor("reiniciamos BT", Colors.Blue) - '' Starter.btAdmin.Disable - '' Sleep(500) - '' Starter.btAdmin.Enable - '' Sleep(1000) - '' If Starter.btAdmin.IsEnabled Then revisaImpresora("") - '' Catch - '' Log(LastException) - '' End Try -' Else - '' ToastMessageShow("Conectando impresora.", False) -' If Not(Printer1.IsConnected) Then 'Si no estamos conectados, nos conectamos. -' Log("Connect") -' Printer1.Connect -' Else 'Si ya estamos conectados -' Log("Disc-Conn") -' Printer1.DisConnect -' Sleep(1000) -' Printer1.Connect -' End If -' End If -End Sub - -Private Sub l_exhibidor2_Click - p_exhibidores.Left = (Root.Width/2) - (p_exhibidores.Width/2) - p_exhibidores.Top = Root.Height/4 - p_exhibidores.Visible = True - p_exhibidores.Elevation = 90dip -End Sub - -Private Sub b_exhibidor_Click - p_exhibidores.Visible = False -End Sub - -Private Sub Panel9_Click - 'Esta vacio porque solo esta capturado los clics. -End Sub - -Private Sub PNL_TOTALES_Click - 'Esta vacio porque solo esta capturado los clics. -End Sub - -Private Sub b_ubicacion_Click - CallSubDelayed(Tracker, "StartFLP2") -End Sub - -Private Sub P_BOLETA_Click - 'Esta vacio porque solo esta capturado los clics. -End Sub - -Private Sub b_whats_Click - P_INF_GENERAL.Visible = False - p_promowhats.visible = True - - c=Starter.skmt.ExecQuery("select CAT_CL_CODIGO from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - If c.RowCount > 0 Then - c.Position=0 - l_promowhats.Text = c.GetString("CAT_CL_CODIGO") - End If - c.Close -End Sub - -Private Sub b_aceptarrpomo_Click -' c=Starter.skmt.ExecQuery("select CAT_CL_NOMBRE from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") -' If c.RowCount > 0 Then -' c.Position=0 -' l_promowhats.Text = c.GetString("CAT_CL_NOMBRE") -' End If -' c.Close - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c.Close - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - c.Close - c=Starter.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") - If c.RowCount>0 Then - C.Position=0 - Id_Almacen = C.GetString("ID_ALMACEN") - End If - c.Close - - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_PROMO_WHATS VALUES (?,?)", Array As Object(l_promowhats.Text, "PROMO ACEPTADA")) - - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object ("PROMODOE",0 , 0, 1, "KIT DE BIENVENIDA DON TOÑO", "PROMODOE",la_cuenta.TEXT, sDate & sTime, usuario,Starter.rutaV,Starter.tipov,0)) - Starter. skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object ("PROMODOE",0.01 , 0.01, 1, "CAJA CHOCO ZUCARITAS 260 GR", "1008094223",la_cuenta.TEXT, sDate & sTime, usuario,Starter.rutaV,Starter.tipov,0)) - Starter.skmt.ExecNonQuery2("update cat_gunaprod2 set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object("1", "1008094223")) - c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - If logger Then LogColor($"Insertamos coordenadas en pedido: ${Starter.lon_gps}, ${Starter.lat_gps}"$, Colors.Magenta) - Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT,PC_ALMACEN,PC_RUTA,PC_COSTO_SIN) VALUES (?,?,?,?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps,Id_Almacen,Starter.rutaV,c.GetString("TOTAL_CLIE_SIN"))) - - Starter.skmt.ExecNonQuery("delete from pedido3") - Starter.skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = 0 where PE_FOLIO IS NULL") - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_FECHA, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO ) SELECT PE_PRECIO2, PE_TIPO, PE_FECHA, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, SUM(PE_COSTO_TOT) AS PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE ") 'Mod por CHV - 220302 - Agregué PE_FECHA al select/insert - -' starter.skmt.ExecNonQuery2("INSERT INTO") - p_promowhats.Visible = False - P_INF_GENERAL.Visible = True - c.Close - b_whats.Visible = False - Starter.skmt.ExecNonQuery("delete from HIST_CLIENTE_CANT_PROMOS where HCCP_CLIENTE IN (Select cuenta from cuentaa)") -End Sub - -Private Sub b_rechazapromo_Click - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_PROMO_WHATS VALUES (?,?)", Array As Object(l_promowhats.Text, "PROMO RECHAZADA")) - p_promowhats.Visible = False - P_INF_GENERAL.Visible = True - b_whats.Visible = False -End Sub - -Private Sub BP_DOE_A_Click - c=Starter.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") - If c.RowCount>0 Then - C.Position=0 - Id_Almacen = C.GetString("ID_ALMACEN") - End If - c.Close - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - c.Close - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2 FROM PEDIDO_DOE WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_CEDIS = ?, PE_TIPO = ? WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As Object("DOE","DOE")) - - c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - If logger Then LogColor($"Insertamos coordenadas en pedido: ${Starter.lon_gps}, ${Starter.lat_gps}"$, Colors.Magenta) - Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT,PC_ALMACEN,PC_RUTA,PC_COSTO_SIN) VALUES (?,?,?,?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps,Id_Almacen,Starter.rutaV,c.GetString("TOTAL_CLIE_SIN"))) - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - c.Close - Starter.skmt.ExecNonQuery("delete from PEDIDOS_DOE_ENTREGA where PC_CLIENTE in (Select CUENTA from cuentaa)") - Starter.skmt.ExecNonQuery2("insert into PEDIDOS_DOE_ENTREGA (PC_CLIENTE, PC_ENTREGA) VALUES (?,?) ", Array As Object(clie_id,"ENTREGADO")) - - Starter.skmt.ExecNonQuery("delete from pedido_DOE where pe_cliente in (Select CUENTA from cuentaa)") - - P_DOE.Visible = False -End Sub - -Private Sub BP_DOE_R_Click - - Dim result As Int - result = Msgbox2("El cliente perderá el descuento si cancela el pedio, se cancela el pedido ?", "Pedido Cancela", "SI", "", "NO", LoadBitmap(File.DirAssets, "alert2.png")) - If result = DialogResponse.Positive Then - - Panel11.Visible = True - BP_DOE_A.Visible = False - BP_DOE_R.Visible = False - Else - P_DOE.Visible = False - End If - -End Sub - -Private Sub l_ubicacion2_LongClick - If laDist > 49 Then - p_pideGeoPass.BringToFront - p_pideGeoPass.Visible = True - End If -End Sub - -Private Sub p_pideGeoPass_Click -End Sub - -Private Sub b_geopass_Click - ime.HideKeyboard - If et_geopass.Text = "KMTS1" Then - m_lat = Starter.lat_gps - m_lon = Starter.lon_gps - GPS_LocationChanged(Starter.ubicacionActual) - Starter.skmt.ExecNonQuery($"update kmt_info set CAT_CL_LAT = '${Starter.lat_gps}', CAT_CL_LONG = '${Starter.lon_gps}' where CAT_CL_CODIGO = '${Subs.traeCliente}'"$) - B_VENTA.Visible = True - Tels.Visible = True - et_geopass.Text = "" - p_pideGeoPass.Visible = False - Else - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "select_geoPass" - cmd.Parameters = Array As Object(et_geopass.Text, Subs.traeAlmacen, Subs.traeRuta) - reqManager.ExecuteQuery(cmd , 0, "traeGeoPass") - Log($"${Starter.server}, ${et_geopass.Text}, ${Subs.traeAlmacen}, ${Subs.traeRuta}"$) - p_pideGeoPass.Visible = False - ime.HideKeyboard - ' Log("Guardamos coords") - ' LATITUD = Starter.lat_gps - ' LONGITUD = Starter.lon_gps - ' GPS_LocationChanged(Starter.ubicacionActual) - ' Starter.skmt.ExecNonQuery($"update kmt_info set CAT_CL_LAT = '${Starter.lat_gps}', CAT_CL_LONG = '${Starter.lon_gps}' where CAT_CL_CODIGO = '${Subs.traeCliente}'"$) - End If -End Sub - -Sub P_INF_GENERAL_Click - If p_pideGeoPass.Visible Then p_pideGeoPass.Visible = False -End Sub - -Sub JobDone(Job As HttpJob) - If Job.Success = False Then -' ToastMessageShow("Error: " & Job.ErrorMessage, True) - LogColor("Error: " & Job.ErrorMessage, Colors.red) - Else - LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211110 - If Job.JobName = "DBRequest" Then - Dim result As DBResult = reqManager.HandleJob(Job) - If result.Tag = "traeGeoPass" Then 'query tag - Log("SIN REGISTROS " & result.Rows.Size) - If result.Rows.Size = 0 Then MsgboxAsync("Contraseña equivocada, por favor intente de nuevo.", "ATENCION") - For Each records() As Object In result.Rows -' For Each k As String In result.Columns.Keys -' Log(k & ": " & records(result.Columns.Get(k))) -' Next - Private permiso_geoPass As String = records(result.Columns.Get("'OK'")) - If permiso_geoPass = "OK" Then - m_lat = Starter.lat_gps - m_lon = Starter.lon_gps - GPS_LocationChanged(Starter.ubicacionActual) - Starter.skmt.ExecNonQuery($"update kmt_info set CAT_CL_LAT = '${Starter.lat_gps}', CAT_CL_LONG = '${Starter.lon_gps}' where CAT_CL_CODIGO = '${Subs.traeCliente}'"$) - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "delete_geoPass" - cmd.Parameters = Array As Object( Subs.traeAlmacen, Subs.traeRuta) - reqManager.ExecuteQuery(cmd , 0, "traeGeoPass") - - End If - Next - End If - End If - End If - Job.Release -End Sub - -Private Sub BP_DOE_R1_Click - If r_1.Checked Then - motivo = "CERRADO" - Else If r_2.Checked Then - motivo = "NO LO PIDIO" - Else If r_3.Checked Then - motivo = "FUERA DE TIEMPO" - Else if r_4.Checked Then - motivo = "NO ESTA EL ENCARGADO" - Else if R_5.Checked Then - motivo = "FALTA DE DINERO" - End If - motivo = motivo & " " & e_comm.Text - - BP_DOE_A.Visible = True - BP_DOE_R.Visible = True - - Panel11.Visible = False - P_DOE.Visible = False - c=Starter.skmt.ExecQuery("select PE_PROID,PE_CANT, PE_TIPO FROM PEDIDO_DOE where pe_cliente in (Select CUENTA from cuentaa) ") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("update cat_gunaprod2 set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID"))) - Next - End If -' Starter.skmt.ExecNonQuery("delete from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)") - Starter.skmt.ExecNonQuery("delete from PEDIDOS_DOE_ENTREGA where PC_CLIENTE in (Select CUENTA from cuentaa)") - Starter.skmt.ExecNonQuery2("insert into PEDIDOS_DOE_ENTREGA (PC_CLIENTE, PC_ENTREGA) VALUES (?,?) ", Array As Object(clie_id,motivo)) - - Starter.skmt.ExecNonQuery("delete from pedido_DOE where pe_cliente in (Select CUENTA from cuentaa)") - P_DOE.Visible = False -End Sub - -private Sub pedido_doe_muestra - ''' ESTO SE AGREGA PARA QUE SE VEA LOS CLIENTES DOE - Dim YA_TIENE_PEDIDO_DOE As String - - C5=Starter.skmt.ExecQuery2("select COUNT(*) AS CLIENTE_DOE from PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) AND PE_CEDIS = ? ", Array As String("DOE")) - C5.Position = 0 - If C5.GetString("CLIENTE_DOE") > 0 Then - YA_TIENE_PEDIDO_DOE = 1 - Else - YA_TIENE_PEDIDO_DOE = 0 - End If - C5.Close - If YA_TIENE_PEDIDO_DOE = 0 Then - C5=Starter.skmt.ExecQuery("select COUNT(*) AS CLIENTE_DOE from PEDIDO_DOE WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - C5.Position = 0 - If C5.GetString("CLIENTE_DOE") >0 Then - P_DOE.VISIBLE = True - C6=Starter.skmt.ExecQuery("select PE_PROID, PE_PRONOMBRE, PE_CANT, PE_COSTO_TOT from PEDIDO_DOE where PE_CLIENTE IN (Select CUENTA from cuentaa)") - LP_DOE.Clear - If C6.RowCount>0 Then - For i=0 To C6.RowCount -1 - C6.Position=i - Dim label1 As Label - label1 = LP_DOE.TwoLinesLayout.Label - label1.TextSize = 14 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = LP_DOE.TwoLinesLayout.SecondLabel - label2.TextSize = 14 - label2.TextColor = Colors.Black - LP_DOE.AddTwoLines(C6.GetString("PE_PRONOMBRE"), " # " & C6.GetString("PE_CANT") & " TOTAL " & C6.GetString("PE_COSTO_TOT") ) - Next - End If - C6.Close - C6=Starter.skmt.ExecQuery("select SUM(PE_CANT) AS CANT, SUM(PE_COSTO_TOT) AS TOTAL from PEDIDO_DOE where PE_CLIENTE IN (Select CUENTA from cuentaa)") - C6.Position= 0 - L_DOE_TOTAL.Text = "TOTAL PEDIDO DOE :"& C6.GetString("TOTAL") & " No. PIEZAS: " & C6.GetString("CANT") - C6.Close - ''' FALTAN LOS BOTONES DE ACEPTAR Y RECHAZAR, INVENTAIRO ABORDO MODIFICAR PARA IMPRIMIR - End If - C5.Close - End If -End Sub - diff --git a/B4A/C_Clientes.bas b/B4A/C_Clientes.bas deleted file mode 100644 index 81673f0..0000000 --- a/B4A/C_Clientes.bas +++ /dev/null @@ -1,281 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - '// Process Globals - Dim ruta As String - Dim q_buscar As String - Dim MAC_IMPRESORA As String - '// Globals - Dim c As Cursor - Dim c2 As Cursor - Dim s As Cursor - Dim ListView1 As ListView - Dim entro As String - Dim gest As Button - Dim lfila As Label - Dim busca As EditText - Dim colonia As String 'ignore - Private b_qr As Button - Private qr As QRCode - Dim sc As Zxing_scanner - Dim CODIGO As String - Private b_bdd As Button - Private SEMANA As String - Private B_IMP As Button - Dim logger As Boolean = True -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - 'load the layout to Root - Root.LoadLayout("Clientes") - entro ="2" - ruta = File.DirInternal - qr.initialize - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("MACIMP")) - c.Position =0 - MAC_IMPRESORA = c.GetString("CAT_VA_VALOR") - Starter.MAC_IMPRESORA = MAC_IMPRESORA - If Not(Starter.Logger) Then logger = False -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - -Sub B4XPage_Appear - B_IMP.Visible = False -' If Logger Then Log(Me) -' If Logger Then LogColor("Ultima actividad guardada=" & Subs.traeUltimaActividadBD, Colors.Blue) -' If Subs.traeUltimaActividadBD <> "colonia" Then Subs.iniciaActividad(Subs.traeUltimaActividadBD) - c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SEMANA")) - c.Position =0 - SEMANA = c.GetString("CUANTOS") - c.Close - If SEMANA > 0 Then - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SEMANA")) - c.Position =0 - SEMANA = c.GetString("CAT_VA_VALOR") - c.Close - End If - b_bdd.Visible = True -' b_qr.Visible = True - busca.Text = "" - entro ="2" - colonia = 0 - c=Starter.skmt.ExecQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO, CAT_CL_NUM_SERIEFISICO from kmt_info where CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?) and gestion = 0 and cat_cl_codigo not in (select pe_cliente from pedido) and cat_cl_codigo <> 0 AND CAT_CL_TIPO_RUTA IN (?,?) and CAT_CL_CODIGO not in (select NV_CLIENTE from NOVENTA) ORDER BY CAT_CL_NUM_SERIEFISICO", Array As String("DIA_VISITA",SEMANA, "SEMANAL")) - ListView1.Clear - lfila.Text = "NOMBRE" - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 14 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 14 - label2.TextColor = Colors.Black - ListView1.AddTwoLines(c.GetString("CAT_CL_CODIGO"), c.GetString("CAT_CL_NUM_SERIEFISICO") & " " & c.GetString("CAT_CL_NOMBRE") ) - Next - End If - entro = "4" -End Sub - -Sub ListView1_ItemClick (Position As Int, Value As Object) -' If Logger Then Log(Regex.Split("\.",Me)(Regex.Split("\.",Me).Length-1)) - Private Subrutina As Map =CreateMap("nombre":"ListView1_ItemClick", "param1":Position, "param2":Value) - Starter.sesion = CreateMap("actividad":Me, "sub":Subrutina) - If colonia = 0 Then - colonia = Value - End If - If entro = "2" Then - c2=Starter.skmt.ExecQuery2("select CAT_CL_CALLE, CAT_CL_COLONIA, count(*) as cuantos from kmt_info where gestion = 0 and CAT_CL_COLONIA = ? GROUP BY CAT_CL_CALLE, CAT_CL_COLONIA order by CAT_CL_CALLE ", Array As String(Value)) - ListView1.Clear - lfila.text = "Calle" - If c2.RowCount>0 Then - For i=0 To c2.RowCount -1 - c2.Position=i - ListView1.AddTwoLines(c2.GetString("CAT_CL_CALLE"),c2.GetString("cuantos") ) - Next - End If - entro = "3" - Else If entro = "3" Then - c2=Starter.skmt.ExecQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where gestion = 0 and CAT_CL_CALLE = ? AND CAT_CL_COLONIA = ? order by CAT_CL_NOMBRE ", Array As String(Value, colonia)) - ListView1.Clear - lfila.text = "Nombre" - If c2.RowCount>0 Then - For i=0 To c2.RowCount -1 - c2.Position=i - ListView1.AddTwoLines(c2.GetString("CAT_CL_CODIGO"), c2.GetString("CAT_CL_NOMBRE")) - Next - End If - entro = "4" - Else If entro = "4" Then - Starter.skmt.ExecNonQuery("delete from CUENTAA") - Starter.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(Value)) - Starter.boleta = 0 - Subs.iniciaActividad("Cliente") - End If -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean 'ignore - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - Subs.iniciaActividad("Principal") - Return False - 'End If - End If - ' Returning False signals the system to handle the key -End Sub - -Sub BUSCA_TextChanged (Old As String, New As String) - q_buscar = "%" & busca.Text & "%" - c2=Starter.skmt.ExecQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where (CAT_CL_NOMBRE like ? OR CAT_CL_CODIGO LIKE ?) and CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?) and gestion = 0 order by CAT_CL_NOMBRE ", Array As String(q_buscar,q_buscar,"DIA_VISITA")) - ListView1.Clear - lfila.text = "Nombre y Calle" - If c2.RowCount>0 Then - For i=0 To c2.RowCount -1 - c2.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 14 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 14 - label2.TextColor = Colors.Black - ListView1.AddTwoLines(c2.GetString("CAT_CL_CODIGO"), c2.GetString("CAT_CL_NOMBRE") &" CALLE: "& c2.GetString("CAT_CL_CALLE")) - Next - End If - entro = "4" - c2.Close -End Sub - -Sub b_qr_Click - Dim scan_width As Int - Dim scan_height As Int - scan_width = 400 - scan_height = 400 - sc.BeginScan("sc","CODIGO CLIENTE",scan_width,scan_height) -End Sub - -Sub sc_result(atype As String,Values As String) - 'If Logger Then Log("Type : " & atype) - 'If Logger Then Log("Value : " & Values) - CODIGO = Values - c2=Starter.skmt.ExecQuery2("select COUNT(*) AS ENCONTRADO from kmt_info where CAT_CL_NUM_SERIEFISICO = ? order by CAT_CL_NOMBRE ", Array As String(CODIGO)) - c2.Position =0 - If c2.GetString("ENCONTRADO") > 0 Then - s=Starter.skmt.ExecQuery2("select CAT_CL_CODIGO from kmt_info where CAT_CL_NUM_SERIEFISICO = ? order by CAT_CL_NOMBRE ", Array As String(CODIGO)) - s.Position =0 - Starter.skmt.ExecNonQuery("delete from CUENTAA") - Starter.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(s.GetString("CAT_CL_CODIGO"))) - s.Close - b_qr.Visible = False - Subs.iniciaActividad("Cliente") - Else - Msgbox("CODIGO " & CODIGO & " NO ENCONTRADO","AVISO") 'ignore - End If -End Sub - -Sub sc_noScan - If logger Then Log("nothing returned from the scan !!!!!") -End Sub - -Sub calc_ean_checksum(number As String) As String 'this has now become redundant as I am only interested in QR Codes - Dim i As Int -' Dim cO As Char - Dim soma As Int - Dim n As Int - Dim digit As Float - soma = 0 - For i=0 To number.Length - 1 - digit = number.SubString2(i,i+1) - n= digit * ((i Mod 2) * 2 + 1) - soma=soma+n - Next - Return number & ( ( 10 - ( soma Mod 10 )) Mod 10 ) -End Sub - -Sub b_bdd_Click - q_buscar = "%" & busca.Text & "%" - c2=Starter.skmt.ExecQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where (CAT_CL_NOMBRE like ? OR CAT_CL_CODIGO LIKE ?) and gestion = 0 order by CAT_CL_NOMBRE ", Array As String(q_buscar,q_buscar)) - ListView1.Clear - lfila.text = "Nombre y Calle" - If c2.RowCount>0 Then - For i=0 To c2.RowCount -1 - c2.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 14 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 14 - label2.TextColor = Colors.Black - ListView1.AddTwoLines(c2.GetString("CAT_CL_CODIGO"), c2.GetString("CAT_CL_NOMBRE") &" CALLE: "& c2.GetString("CAT_CL_CALLE")) - Next - End If - entro = "4" - c2.Close -End Sub - -'Imprimimos clientes. -Sub B_IMP_Click -' If Printer1.IsInitialized And Printer1.IsConnected = False Then -' Printer1.Connect -' ToastMessageShow("Conectando impresora ...", False) -' End If -' Try -' c=Starter.skmt.ExecQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO, CAT_CL_NUM_SERIEFISICO from kmt_info where CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?) and gestion = 0 and cat_cl_codigo not in (select pe_cliente from pedido) and cat_cl_codigo <> 0 AND CAT_CL_TIPO_RUTA IN (?,?) ORDER BY CAT_CL_NUM_SERIEFISICO", Array As String("DIA_VISITA",SEMANA, "SEMANAL")) - '' c=skmt.ExecQuery("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO,CAT_CL_DIAS_VISITA from kmt_info where gestion = 0 and cat_cl_codigo <> 0 ORDER BY CAT_CL_CODIGO") -' If c.RowCount>0 Then -' For i=0 To c.RowCount -1 -' c.Position=i -' Printer1.WriteString("ID. " & c.GetString("CAT_CL_CODIGO") & CRLF) -' Printer1.WriteString("Nombre " & c.GetString("CAT_CL_NUM_SERIEFISICO") & " " & c.GetString("CAT_CL_NOMBRE") & CRLF) -' Printer1.WriteString("------------------------------" & CRLF) -' Next -' End If -' Catch -' Log(LastException) -' End Try -End Sub - -Sub revisaImpresora (mode As String) 'ignore -' If Not(Starter.btAdmin.IsEnabled) Then Starter.btAdmin.Enable 'Si no esta prendido el BT lo prendemos. -' If Not(Printer1.IsInitialized) Then Printer1.Initialize(Me, "Printer1") 'Si no esta inicializada la inicializamos. -' If Not(Starter.revisandoImpresora) Then Return -' Starter.revisandoImpresora = True -' If mode = "BT" Then - '' If Logger Then LogColor("reiniciamos BT", Colors.Blue) - '' Starter.btAdmin.Disable - '' Sleep(500) - '' Starter.btAdmin.Enable - '' Sleep(1000) - '' If Starter.btAdmin.IsEnabled Then revisaImpresora("") -' Else - '' ToastMessageShow("Conectando impresora.", False) -' If Not(Printer1.IsConnected) Then 'Si no estamos conectados, nos conectamos. -' If Logger Then Log("Connect") -' Printer1.Connect -' Else 'Si ya estamos conectados -' If Logger Then Log("Disc-Conn") -' Printer1.DisConnect -' Sleep(1000) -' Printer1.Connect -' End If -' End If -End Sub \ No newline at end of file diff --git a/B4A/C_Foto.bas b/B4A/C_Foto.bas deleted file mode 100644 index cb0f9fb..0000000 --- a/B4A/C_Foto.bas +++ /dev/null @@ -1,184 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - '//Process Globals - Dim ruta As String - Dim g As GPS - Private frontCamera As Boolean = False - Dim quien_llamo As String - Dim foto_g () As Byte - Dim foto_g1 () As Byte - Dim foto_g2 () As Byte - Dim foto_g3 () As Byte - Dim foto_g4 () As Byte - '//Globals - Dim btnTakePicture As Button - Dim Panel1 As Panel - Dim c As Cursor - Dim cuenta As String - Dim lat_gps As String - Dim lon_gps As String - Private camEx As CameraExClass - Private i_foto As ImageView - Private b_guardar As Button -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - 'load the layout to Root - Root.LoadLayout("foto") - Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA) - Wait For Activity_PermissionResult (Permission As String, Result As Boolean) - ruta = File.DirInternal -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - - -Sub Camera1_Ready (Success As Boolean) - If Success Then - ' camEx.SetJpegQuality(90) - ' camEx.CommitParameters - Dim ps As CameraSize - ps.Width =640'480 '1280 - ps.Height =480'360 '960 - camEx.SetPictureSize(ps.Width, ps.Height) - camEx.CommitParameters - Try - camEx.StartPreview - Catch - camEx.Release - Subs.iniciaActividad("CHECKLIST_AUTO") - End Try - ' Dim ps As CameraSize - ' ps.Width =640 '1280 - ' ps.Height =480 '960 - ' camEx.SetPictureSize(ps.Width, ps.Height) - ' camEx.CommitParameters - - ' Log(camEx.GetPreviewSize) - 'Msgbox(camEx.GetPreviewSize,"aviso") 'ignore - Else - Subs.iniciaActividad("CHECKLIST_AUTO") - 'ToastMessageShow("Cannot open camera.", True) - End If -End Sub - -Sub Activity_Resume - i_foto.Visible = False -' If g.GPSEnabled=False Then -' ToastMessageShow("Habilitar el GPS", True) -' StartActivity(g.LocationSettingsIntent) -' Else -' g.Start(0,0) -' End If - InitializeCamera - btnTakePicture.Enabled = True - b_guardar.Enabled = False -End Sub - -Sub Activity_Pause (UserClosed As Boolean) - camEx.Release -End Sub - -Sub GPS_LocationChanged (Location1 As Location) -' lat_gps=Location1.ConvertToSeconds(Location1.Latitude) -' lon_gps=Location1.ConvertToSeconds(Location1.Longitude) -' 'btnTakePicture.Enabled = True -' 's.ExecNonQuery2("INSERT INTO HIST_GPS (HGDATE,HGLAT, HGLON) VALUES(?,?,?) ", Array As Object (sDate & sTime, lat_gps, lon_gps)) -End Sub - -Private Sub InitializeCamera - camEx.Initialize(Panel1, frontCamera, Me, "Camera1") - frontCamera = camEx.Front -End Sub - -Sub Camera1_PictureTaken (Data() As Byte) - btnTakePicture.Enabled = True - Dim filename As String = "2.jpg" - Dim dir As String = File.DirRootExternal - camEx.SavePictureToFile(Data, dir, filename) - camEx.StartPreview 'restart preview - i_foto.Visible = True - i_foto.Bitmap = LoadBitmap(File.DirRootExternal, "2.jpg") - If B4XPages.MainPage.cliente.TOMAR_FOTO = 1 Then - Dim InputStream1 As InputStream - InputStream1 = File.OpenInput(File.DirRootExternal, "2.jpg") - Dim OutputStream1 As OutputStream - OutputStream1.InitializeToBytesArray(500) - File.Copy2(InputStream1, OutputStream1) - foto_g = OutputStream1.ToBytesArray - End If - b_guardar.Enabled = True - camEx.Release - InitializeCamera - btnTakePicture.Enabled = True -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - ' I want to capture the key here so I return True - B4XPages.ShowPage("Principal") - 'Return True - End If - ' Returning False signals the system to handle the key - Return False -End Sub - -Sub b_guardar_Click - camEx.Release - 'If quien_llamo = "1" Then - Try - If quien_llamo = "1" Then - File.Copy(File.DirRootExternal, "2.jpg",File.DirRootExternal, "FOTO1.jpg") - Subs.iniciaActividad("CHECKLIST_AUTO") - else if quien_llamo = "2" Then - File.Copy(File.DirRootExternal, "2.jpg",File.DirRootExternal, "FOTO2.jpg") - Subs.iniciaActividad("CHECKLIST_AUTO") - else if quien_llamo = "3" Then - File.Copy(File.DirRootExternal, "2.jpg",File.DirRootExternal, "FOTO3.jpg") - Subs.iniciaActividad("CHECKLIST_AUTO") - else if quien_llamo = "4" Then - File.Copy(File.DirRootExternal, "2.jpg",File.DirRootExternal, "FOTO4.jpg") - Subs.iniciaActividad("CHECKLIST_AUTO") - End If - If B4XPages.MainPage.cliente.TOMAR_FOTO = 1 Then - c=Starter.skmt.ExecQuery("select cuenta from cuentaa") - c.Position = 0 - cuenta = c.GetString("CUENTA") - c.Close - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_FOTOS (HF_FOTO, HF_CUENTA, HF_IDENCUESTA) VALUES(?,?,?) ", Array As Object (foto_g,cuenta, B4XPages.MainPage.cliente.id_encuesta )) - Subs.iniciaActividad("fila") - End If - Catch - Msgbox("ERROR EN FOTO","") 'ignore - If B4XPages.MainPage.cliente.TOMAR_FOTO = 1 Then - Subs.iniciaActividad("fila") - Else - Subs.iniciaActividad("CHECKLIST_AUTO") - End If - End Try -End Sub - -Sub btnTakePicture_Click - btnTakePicture.Enabled = False - Dim ps As CameraSize - ps.Width =640'480 '1280 - ps.Height =480'360 '960 - camEx.SetPictureSize(ps.Width, ps.Height) - camEx.CommitParameters - camEx.TakePicture -End Sub \ No newline at end of file diff --git a/B4A/C_Historico.bas b/B4A/C_Historico.bas deleted file mode 100644 index dec7c0b..0000000 --- a/B4A/C_Historico.bas +++ /dev/null @@ -1,135 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - '//Process Globals - Dim g As GPS - Dim clie_id As String - Dim sDate,sTime As String - Dim usuario As String - '//Globals - Dim c As Cursor - Dim ruta As String - Dim Regresar As Button - Dim ListView1 As ListView - Dim L_CANT As Label - Dim L_TOTAL As Label - Dim borra As Button - Dim Existe As String - Dim result As String - Dim lat_gps, lon_gps As String - Private Titulo As Label - Private b_desc As Button - Private ListView2 As ListView - Private B_RMI As Button -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - 'load the layout to Root - ruta = File.DirInternal - Root.LoadLayout("historico") - B_RMI.Visible = True - borra.Visible = False - Titulo.Text = "Acumulado" - b_desc.Visible = False -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - -Sub B4XPage_Appear - L_CANT.Text ="" - L_TOTAL.Text="" - c=Starter.skmt.ExecQuery("select count(*) as EXISTE from HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa)") - C.Position=0 - Existe = C.GetString("EXISTE") - C.Close - c=Starter.skmt.ExecQuery("select HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT, HVD_FECHA from HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) order by HVD_FECHA asc") - ListView1.Clear - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.Black - ListView1.AddTwoLines(c.GetString("HVD_PRONOMBRE"),"Cantidad #"& c.GetString("HVD_CANT")& " SubTotal $"& c.GetString("HVD_COSTO_TOT")& " FECHA " &c.GetString("HVD_FECHA") ) - Next - End If - If Existe <> 0 Then - c=Starter.skmt.ExecQuery("select SUM(HVD_CANT) AS PC_NOART, SUM(HVD_COSTO_TOT) AS PC_MONTO from HIST_VENTAS where HVD_CLIENTE in (Select CUENTA from cuentaa)") - C.Position=0 - L_CANT.Text = c.GetString("PC_NOART") - L_TOTAL.Text = c.GetString("PC_MONTO") - End If -End Sub - -Sub GPS_LocationChanged (Location1 As Location) -' lat_gps=Location1.ConvertToSeconds(Location1.Latitude) -' lon_gps=Location1.ConvertToSeconds(Location1.Longitude) -End Sub - -Sub Regresar_Click - B_RMI.Visible = False - Subs.iniciaActividad("Cliente") -End Sub - -Sub B4XPage_CloseRequest As ResumableSub - Log("Vamos a Cliente") -' BACK key pressed -' Return True To close, False To cancel - Regresar_Click -' Return True - Return False -End Sub - -Sub ListView2_ItemClick (Position As Int, Value As Object) - ListView2.Visible = False - ListView1.Visible = True -End Sub - -Sub ListView1_ItemClick (Position As Int, Value As Object) - ListView2.Visible = True - ListView1.Visible = False - Dim label1 As Label - For i=0 To 20 - label1 = ListView2.SingleLineLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - ListView2.AddSingleLine(i) - Next -End Sub - -Sub B_RMI_Click - c=Starter.skmt.ExecQuery("select HR_CLIENTE,HR_PRONOMBRE,HR_CANT from HIST_RMI WHERE HR_CLIENTE IN (Select CUENTA from cuentaa)") - ListView1.Clear - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.Black - ListView1.AddTwoLines(c.GetString("HR_PRONOMBRE"),"Cantidad #"& c.GetString("HR_CANT") ) - Next - End If -End Sub \ No newline at end of file diff --git a/B4A/C_Mapas.bas b/B4A/C_Mapas.bas deleted file mode 100644 index 0473176..0000000 --- a/B4A/C_Mapas.bas +++ /dev/null @@ -1,135 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - '//Process Globals - Dim GPS As GPS - Dim rp As RuntimePermissions - Dim ruta As String - '//Globals - Private gmap As GoogleMap - Private MapFragment1 As MapFragment - Dim Latitud As Double = 0 - Dim Longitud As Double = 0 - Dim Lat2 As Double = 0 - Dim Lon2 As Double = 0 - Dim p1, p2 As Location - Dim Distance As Float - Dim boton1 As Button - Dim c As Cursor - Dim latmarker As String - Dim longmarker As String - Private l_long As Label - Private l_lat As Label - Private NOMBRE_TIENDA As String - Dim logger As Boolean = True -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - 'load the layout to Root - Root.LoadLayout("mapas") - If MapFragment1.IsGooglePlayServicesAvailable = False Then - ToastMessageShow("Please install Google Play Services.", True) - End If - 'Boton velocidad' - boton1.Initialize(0) - boton1.Text = 0 &" "&"km/h" - boton1.TextColor = Colors.Red - boton1.TextSize = 15 - Root.AddView(boton1, 40%x, 5dip, 25%x, 40dip) -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - -Sub B4XPage_Appear - Log("INICIAMOS MAPAS") - rp.CheckAndRequest(rp.PERMISSION_ACCESS_FINE_LOCATION) - Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) - gmap.MyLocationEnabled = Result - GPS.Initialize("GPS") - If GPS.GPSEnabled = False Then - ToastMessageShow("Debe Activar el GPS del Equipo.", True) - StartActivity(GPS.LocationSettingsIntent) - Else - GPS.Start(0, 0) - End If - latmarker = B4XPages.MainPage.cliente.LATITUD - longmarker = B4XPages.MainPage.cliente.LONGITUD - NOMBRE_TIENDA = B4XPages.MainPage.cliente.NOMBRE - If logger Then Log($"lat=${latmarker}, lon=${longmarker}"$) - If logger Then Log(gmap) - If gmap.IsInitialized And gmap.MyLocationEnabled Then - gmap.Clear - MapFragment1_Ready - End If - If Not(Starter.Logger) Then logger = False -End Sub - -Sub B4XPage_CloseRequest As ResumableSub - Log("Vamos a Cliente") -' BACK key pressed -' Return True To close, False To cancel - Subs.iniciaActividad("Cliente") -' Return True - Return False -End Sub - -Sub MapFragment1_Ready -' LogColor("MapReady", Colors.red) - gmap = MapFragment1.GetMap - rp.CheckAndRequest(rp.PERMISSION_ACCESS_FINE_LOCATION) - Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) - gmap.MyLocationEnabled = Result - gmap.Clear - - Dim JavaMapsObject As JavaObject - JavaMapsObject = gmap.GetUiSettings - JavaMapsObject.RunMethod("setMapToolbarEnabled", Array As Object(True)) - - 'marcadores - If latmarker = "null" Or latmarker = Null Or latmarker = "" Then 'Zocalo - latmarker = "19.432568527069805" - longmarker = "-99.13335030112772" - End If - If logger Then Log($"lat=${latmarker}, lon=${longmarker}"$) - Dim marcador1 As Marker = gmap.AddMarker(latmarker, longmarker, "TIENDA") - marcador1.Snippet = B4XPages.MainPage.cliente.NOMBRE - 'Tienda 1 - - 'posicion inicial - Dim aa As CameraPosition - aa.Initialize(latmarker, longmarker,15)''' RECOMENDABLE CAMBIAR A 10 SI ES MAS DE 1 MARCADOR - gmap.AnimateCamera(aa) -End Sub - -Sub GPS_LocationChanged (Parametro As Location) - Dim sp As Int - sp = Ceil(Parametro.Speed * 3.6) - boton1.Text = sp &" "&"km/h" - Latitud = Parametro.Latitude - Longitud = Parametro.Longitude - p2.Initialize2(Latitud,Longitud) - p1.Initialize2(Lat2, Lon2) - Distance = p1.DistanceTo(p2) -End Sub - -Sub Activity_Pause (UserClosed As Boolean) - GPS.Stop -End Sub - -Sub reg_Click - Subs.iniciaActividad("Cliente") -End Sub - diff --git a/B4A/C_NoVenta.bas b/B4A/C_NoVenta.bas deleted file mode 100644 index 30ebd03..0000000 --- a/B4A/C_NoVenta.bas +++ /dev/null @@ -1,120 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - Dim g As GPS - Dim ruta As String -' Dim skmt As SQL - Dim c As Cursor - Dim t3 As Timer - '// Globals - Dim CANCELA As Button - Dim GUARDA As Button - Dim r_1 As RadioButton - Dim r_2 As RadioButton - Dim r_3 As RadioButton - Dim e_comm As EditText - Dim motivo As String - Dim cuenta As String - Dim usuario As String - Dim sDate,sTime As String - Dim lat_gps, lon_gps As String - Dim CUANTOS As String - Dim r_4 As RadioButton - Private ImageView1 As ImageView - Private ImageView2 As ImageView -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - 'load the layout to Root - Root.LoadLayout("noventa") - ruta = File.DirInternal -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - -Sub B4XPage_Appear - e_comm.Text="" - lat_gps = 0 - lon_gps = 0 - res_gps -End Sub - -Sub res_gps - GUARDA.Visible = False - t3.Initialize("T3", 5000) ' 1000 = 1 second - t3.Enabled = True - Wait For t3_tick - GUARDA.Visible = True -End Sub - -Sub GPS_LocationChanged (Location1 As Location) -' lat_gps=Location1.ConvertToSeconds(Location1.Latitude) -' lon_gps=Location1.ConvertToSeconds(Location1.Longitude) -End Sub - -Sub CANCELA_Click - Subs.iniciaActividad("Cliente") -End Sub -Sub GUARDA_Click - If r_1.Checked Then - motivo = "CERRADO" - Else If r_2.Checked Then - motivo = "NO COMPRA" - Else If r_3.Checked Then - motivo = "CON PRODUCTO" - Else - motivo = "NO ESTA EL ENCARGADO" - End If - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("select CUENTA from cuentaa") - c.Position = 0 - cuenta = c.GetString("CUENTA") - c=Starter.skmt.ExecQuery("select usuario from usuarioa") - c.Position = 0 - usuario = c.GetString("USUARIO") - c=Starter.skmt.ExecQuery("select PE_PROID,PE_CANT FROM PEDIDO where pe_cliente in (Select CUENTA from cuentaa) ") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID"))) - Next - End If - - If lat_gps = 0 Then - c=Starter.skmt.ExecQuery("select count(*) as CUANTOS from HIST_GPS") - c.Position =0 - CUANTOS = c.GetString("CUANTOS") - c.Close - If CUANTOS > 0 Then - c=Starter.skmt.ExecQuery("SELECT HGLAT as HGLAT, HGLON as HGLON FROM HIST_GPS") - c.Position=0 - lon_gps = c.GetString("HGLON") - lat_gps = c.GetString("HGLAT") - c.Close - End If - End If - - Starter.skmt.ExecNonQuery("delete from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)") - Starter.skmt.ExecNonQuery("delete from pedido where pe_cliente in (Select CUENTA from cuentaa)") - - Starter.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,Starter.lat_gps,Starter.lon_gps)) - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)") -' StartActivity(seleccion) - B4XPages.ShowPage("Principal") -' Activity.Finish -End Sub \ No newline at end of file diff --git a/B4A/C_Nota.bas b/B4A/C_Nota.bas deleted file mode 100644 index 26f9071..0000000 --- a/B4A/C_Nota.bas +++ /dev/null @@ -1,434 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Mods 'Ignore - '2023/05/11 - Se modifico "ListView1_ItemLongClick" para que si al borrar un producto de la nota, el total es negativo, entonces se borren todos los RMIs de la orden. -End Sub - -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - '//Process Globals - Dim clie_id As String - Dim sDate,sTime As String - Dim usuario As String - '//Globals - Dim c,C_DOE As Cursor - Dim C1 As Cursor - Dim ruta As String - Dim Regresar As Button - Dim ListView1 As ListView - Dim L_CANT As Label - Dim L_TOTAL As Label - Dim borra As Button - Dim Existe As String - Dim result As String - Dim lat_gps, lon_gps As String - Private Titulo As Label - Private b_desc As Button - Dim DESCUENTO As String - Dim folio As String - Dim TIPO As String - Private CAMBIOS As String - Dim logger As Boolean = True - Private B_PEDIDO_DOE As Button - Private ListView3 As ListView - Private L_CANT_D As Label - Private L_TOTAL_D As Label -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - If Not(Starter.Logger) Then logger = False - Root = Root1 - 'load the layout to Root - ruta = File.DirInternal - Root.LoadLayout("nota") - borra.Visible = True - Titulo.Text = "Pedido Actual" - Starter.skmt.ExecNonQuery("update pedido set pe_folio = 0 where pe_folio is null") - c=Starter.skmt.ExecQuery("select count(*) as EXISTE from pedido_cliente WHERE pc_cliente IN (Select CUENTA from cuentaa)") - C.Position=0 - Existe = C.GetString("EXISTE") - C.Close - c=Starter.skmt.ExecQuery("select PE_PRONOMBRE,PE_COSTO_TOT, PE_CANT, PE_FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PRONOMBRE asc") - ListView1.Clear - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 13 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 12 - label2.TextColor = Colors.Black - ListView1.AddTwoLines(c.GetString("PE_PRONOMBRE"),"Cantidad #"& c.GetString("PE_CANT")& " SubTotal $"& c.GetString("PE_COSTO_TOT")& " Folio "& c.GetString("PE_FOLIO")) - folio = c.GetString("PE_FOLIO") - Next - End If - If Existe <> 0 Then - c=Starter.skmt.ExecQuery("select pc_noart, pc_monto from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)") - C.Position=0 - L_CANT.Text = c.GetString("PC_NOART") - L_TOTAL.Text = c.GetString("PC_MONTO") - End If -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - -Sub B4XPage_Appear - c=Starter.skmt.ExecQuery2("select count(*) as CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) AND PE_CEDIS = ?", Array As String("DOE")) - c.Position = 0 - ListView1.Visible = True - L_CANT.Visible = True - L_TOTAL.Visible = True - ListView3.Visible = False - L_CANT_D.Visible = False - L_TOTAL_D.Visible = False - If c.GetString("CUANTOS") > 0 Then - - B_PEDIDO_DOE.Text = "PEDIDO DON TOÑO" - B_PEDIDO_DOE.VISIBLE = True - C_DOE=Starter.skmt.ExecQuery2("select PE_PRONOMBRE,PE_COSTO_TOT, PE_CANT, PE_FOLIO FROM PEDIDO WHERE PE_CEDIS = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PRONOMBRE asc", Array As String("DOE")) - ListView3.Clear - If C_DOE.RowCount>0 Then - For i=0 To C_DOE.RowCount -1 - C_DOE.Position=i - Private txtPromo As String = "" - If C_DOE.GetString("PE_COSTO_TOT") < 0.02 And C_DOE.GetString("PE_COSTO_TOT") >= 0 Then txtPromo = "P - " - If C_DOE.GetString("PE_COSTO_TOT") < 0 Then txtPromo = "RMI - " - Dim label1 As Label - label1 = ListView3.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView3.TwoLinesLayout.SecondLabel - label2.TextSize = 12 - label2.TextColor = Colors.Black - ListView3.AddTwoLines(C_DOE.GetString("PE_PRONOMBRE"),txtPromo & "Cantidad #"& C_DOE.GetString("PE_CANT")& " SubTotal $"& C_DOE.GetString("PE_COSTO_TOT")& " Folio "& C_DOE.GetString("PE_FOLIO")) - folio = C_DOE.GetString("PE_FOLIO") - Next - End If - C_DOE.Close - C_DOE=Starter.skmt.ExecQuery2("select sum(pe_cant) AS CANTIDAD, sum(pe_costo_tot) AS MONTO from pedido where PE_CEDIS <> PE_PROID and pe_cliente in (Select CUENTA from cuentaa) AND PE_CEDIS = ?", Array As String("DOE")) - C_DOE.Position=0 - L_CANT_D.Text = C_DOE.GetString("CANTIDAD") - L_TOTAL_D.Text = C_DOE.GetString("MONTO") - c.Close - Else - B_PEDIDO_DOE.VISIBLE = False - End If - c=Starter.skmt.ExecQuery("select count(*) as CUANTOS from kmt_info where (impresion = 1 or cat_cl_codigo in (select ci_cuenta from cliente_impreso)) and CAT_CL_CODIGO in (Select CUENTA from cuentaa)") - c.Position = 0 - If logger Then Log($"Impreso: ${c.GetString("CUANTOS")}"$) - If c.GetString("CUANTOS") > 0 Then - borra.Visible = False - Else - borra.Visible = True - End If - If Subs.clienteActual = "0" Then borra.Visible = True 'Si el cliente actual es "abordo" entonces SIEMPRE lo dejamos modificar la venta. - c.Close - L_CANT.Text ="" - L_TOTAL.Text="" - Starter.skmt.ExecNonQuery("update pedido set pe_folio = 0 where pe_folio is null") - c=Starter.skmt.ExecQuery("select count(*) as EXISTE from pedido_cliente WHERE pc_cliente IN (Select CUENTA from cuentaa)") - C.Position=0 - Existe = C.GetString("EXISTE") - C.Close - c=Starter.skmt.ExecQuery2("select PE_PRONOMBRE,PE_COSTO_TOT, PE_CANT, PE_FOLIO FROM PEDIDO WHERE PE_CEDIS <> ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PRONOMBRE asc", Array As String("DOE")) - ListView1.Clear - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Private txtPromo As String = "" - If c.GetString("PE_COSTO_TOT") < 0.02 And c.GetString("PE_COSTO_TOT") >= 0 Then txtPromo = "P - " - If c.GetString("PE_COSTO_TOT") < 0 Then txtPromo = "RMI - " - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 12 - label2.TextColor = Colors.Black - ListView1.AddTwoLines(c.GetString("PE_PRONOMBRE"),txtPromo & "Cantidad #"& c.GetString("PE_CANT")& " SubTotal $"& c.GetString("PE_COSTO_TOT")& " Folio "& c.GetString("PE_FOLIO")) - folio = c.GetString("PE_FOLIO") - Next - End If - If Existe <> 0 Then - c=Starter.skmt.ExecQuery2("select sum(pe_cant) AS CANTIDAD, sum(pe_costo_tot) AS MONTO from pedido where PE_CEDIS <> PE_PROID and pe_cliente in (Select CUENTA from cuentaa) AND PE_CEDIS <> ?", Array As String("DOE")) - C.Position=0 - L_CANT.Text = c.GetString("CANTIDAD") - L_TOTAL.Text = c.GetString("MONTO") - c.Close - c=Starter.skmt.ExecQuery("select SUM(IFNULL(PE_DESC,0)) AS DESCUENTO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - b_desc.Visible = False - End If - c=Starter.skmt.ExecQuery("select count(*) As CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position = 0 - If c.GetString("CUANTOS") = 0 Then - folio = 0 - Else - C1=Starter.skmt.ExecQuery("SELECT SUM(ifnull(PE_FOLIO,0)) AS FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - C1.Position = 0 - folio = C1.GetString("FOLIO") - If C1.GetString("FOLIO") > 0 Then - folio = 100 - End If - End If - c.Close -End Sub - -Sub Activity_Pause (UserClosed As Boolean) - -End Sub - -Sub GPS_LocationChanged (Location1 As Location) -' lat_gps=Location1.ConvertToSeconds(Location1.Latitude) -' lon_gps=Location1.ConvertToSeconds(Location1.Longitude) -End Sub - -Sub Regresar_Click - Subs.iniciaActividad("Cliente") -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - ' I want to capture the key here so I return True - Subs.iniciaActividad("Cliente") - 'Return True - End If - ' Returning False signals the system to handle the key - Return False -End Sub - -Sub borra_Click - If folio = "0" Or Subs.clienteActual = "0" Then 'Si el folio es 0 o el cliente actual es "abordo", los deja borrar. - Mod por CHV 220512 - result = Msgbox2("Seguro que desea borrar el pedido?","Cancelar pedido", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore - If result = DialogResponse.POSITIVE Then - c=Starter.skmt.ExecQuery("select PE_PROID, PE_CANT, PE_TIPO FROM PEDIDO where pe_cliente in (Select CUENTA from cuentaa) ") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - TIPO = c.GetString("PE_TIPO") - If c.GetString("PE_TIPO") = "VENTA" Then - Starter.skmt.ExecNonQuery2("update cat_gunaprod2 set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID"))) - Else - Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID"))) - End If - Next - End If - Starter.skmt.ExecNonQuery("delete from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)") - Starter.skmt.ExecNonQuery("delete from pedido where pe_cliente in (Select CUENTA from cuentaa)") - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 0 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - B4XPage_Appear - End If - Else - Msgbox("CLIENTE YA SE TRANSMITIO, FAVOR DE LLAMAR A SOPORTE PARA ASISTENCIA","AVISO") 'ignore - End If -End Sub - -Sub ListView1_ItemLongClick (Position As Int, Value As Object) - c=Starter.skmt.ExecQuery("select count(*) as CUANTOS from CLIENTE_IMPRESO where CI_CUENTA in (Select CUENTA from cuentaa)") - c.Position = 0 - If c.GetString("CUANTOS") = 0 Or Subs.clienteActual = "0" Then 'Si la venta no está impresa o es abordo entonces continuamos ... - c=Starter.skmt.ExecQuery2("select count(*) as CUANTOS, sum(PE_COSTO_TOT) as sumaRMIs FROM PEDIDO WHERE PE_CEDIS = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("DUR")) - c.Position = 0 - CAMBIOS = c.GetString("CUANTOS") - c.Close - c=Starter.skmt.ExecQuery2("select PE_PRONOMBRE,PE_COSTO_TOT, PE_CANT, PE_FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) AND PE_PRONOMBRE = ? order by PE_PRONOMBRE asc", Array As String(Value) ) - c.Position = 0 - If c.GetString("PE_FOLIO") = "0" Or Subs.clienteActual = "0" Then - result = Msgbox2("Seguro que desea borrar este articulo?","Borrar Articulo", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore - If result = DialogResponse.POSITIVE Then - c=Starter.skmt.ExecQuery2("select PE_PROID,PE_CANT, PE_TIPO FROM PEDIDO where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa) AND PE_CEDIS <> ? ", Array As String(Value, "DOE")) - c.Position=0 - TIPO = c.GetString("PE_TIPO") - If c.GetString("PE_TIPO") = "VENTA" Then - Starter.skmt.ExecNonQuery2("update cat_gunaprod2 set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID"))) - Else - Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID"))) - End If - c.Close - - - If TIPO = "VENTA" Then - c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from cat_gunaprod2 where CAT_GP_ID in (select pe_cedis from pedido where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa)) and CAT_GP_CLASIF = 'PROMOS' AND CAT_GP_TIPO = 'PROMOS' AND CAT_GP_SUBTIPO = 'PROMOS'", Array As String(Value)) - Else - c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from cat_gunaprod where CAT_GP_ID in (select pe_cedis from pedido where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa)) and CAT_GP_CLASIF = 'PROMOS' AND CAT_GP_TIPO = 'PROMOS' AND CAT_GP_SUBTIPO = 'PROMOS'", Array As String(Value)) - End If - c.Position=0 - If c.GetString("CUANTOS") > 0 Then - Starter.skmt.ExecNonQuery2("delete from pedido where pe_folio = 0 and pe_cedis in (select pe_cedis from pedido where pe_pronombre = ?) and pe_cliente in (Select CUENTA from cuentaa) and pe_cedis <> ?", Array As Object(Value, "DOE")) - Else - Starter.skmt.ExecNonQuery2("delete from pedido where pe_folio = 0 and pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa) AND PE_CEDIS <> ?", Array As Object(Value, "DOE")) - End If - - 'Borramos RMIs si la venta es menor que los RMIs - Private x2 As Cursor = Starter.skmt.ExecQuery2("select sum(PE_COSTO_TOT) as sumaRMIs FROM PEDIDO WHERE PE_CEDIS = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("DUR")) - Private x As Cursor = Starter.skmt.ExecQuery2("select sum(PE_COSTO_TOT) as sumaNoRMIs FROM PEDIDO WHERE PE_CEDIS <> ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("DUR")) - x.Position = 0 - x2.Position = 0 - Private sumaRMIs = 0 - Private sumaNoRMIs = 0 - If x2.GetString("sumaRMIs") <> Null Then sumaRMIs = x2.GetString("sumaRMIs") - If x.GetString("sumaNoRMIs") <> Null Then sumaNoRMIs = x.GetString("sumaNoRMIs") - LogColor($"${x2.GetString("sumaRMIs")}, ${x.GetString("sumaNoRMIs")}"$, Colors.Magenta) - If (sumaRMIs + sumaNoRMIs) >= 0 Then - Log("No borrar RMIs") - Else - Log("Borrar RMIs") - Starter.skmt.ExecNonQuery2("delete FROM PEDIDO WHERE PE_CEDIS = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("DUR")) - End If - - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, count(*) as CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - If c.GetString("CUANTOS") > 0 Then - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - If logger Then LogColor($"Insertamos coordenadas en pedido: ${Starter.lon_gps}, ${Starter.lat_gps}"$, Colors.Magenta) - Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT) VALUES (?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps)) - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - Else - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 0 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - End If - - - - B4XPage_Appear - End If - Else - Msgbox("CLIENTE YA SE TRANSMITIO, FAVOR DE LLAMAR A SOPORTE PARA ASISTENCIA","AVISO") 'ignore - End If - Else - ToastMessageShow("Esta venta ya esta impresa, no se puede editar ni borrar.", False) - End If -End Sub - -Sub b_desc_Click - If DESCUENTO = "MENOS" Then - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c.Close - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - c.Close - result = Msgbox2("Seguro que desea dar descuento del 5%?","Dar descuento", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore - If result = DialogResponse.POSITIVE Then - Starter.skmt.ExecNonQuery("UPDATE pedido SET PE_COSTO_TOT = PE_COSTO_TOT * .95, PE_DESC = 5 WHERE PE_CLIENTE In (select cuenta from cuentaa)") - c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, count(*) as CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - If logger Then LogColor($"Insertamos coordenadas en pedido: ${Starter.lon_gps}, ${Starter.lat_gps}"$, Colors.Magenta) - Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT) VALUES (?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps)) - c.Close - B4XPage_Appear - End If - ELSE IF DESCUENTO = "MAS" Then - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c.Close - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - c.Close - result = Msgbox2("Seguro que desea CANCELAR el descuento?","Cancelar descuento", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore - If result = DialogResponse.POSITIVE Then - Starter.skmt.ExecNonQuery("UPDATE pedido SET PE_COSTO_TOT = PE_COSTO_TOT / .95, PE_DESC = 0 WHERE PE_CLIENTE In (select cuenta from cuentaa)") - c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, count(*) as CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - If logger Then LogColor($"Insertamos coordenadas en pedido: ${Starter.lon_gps}, ${Starter.lat_gps}"$, Colors.Magenta) - Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT) VALUES (?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps)) - c.Close - B4XPage_Appear - End If - End If -End Sub - -Private Sub B_PEDIDO_DOE_Click - If B_PEDIDO_DOE.Text = "PEDIDO DON TOÑO" Then - ListView1.Visible = False - L_CANT.Visible = False - L_TOTAL.Visible = False - B_PEDIDO_DOE.Text = "PEDIDO NORMAL" - ListView3.Visible = True - L_CANT_D.Visible = True - L_TOTAL_D.Visible = True - - Else - ListView1.Visible = True - B_PEDIDO_DOE.Text = "PEDIDO DON TOÑO" - ListView3.Visible = False - L_CANT_D.Visible = False - L_TOTAL_D.Visible = False - L_CANT.Visible = True - L_TOTAL.Visible = True - - End If -End Sub - -Private Sub ListView3_ItemLongClick (Position As Int, Value As Object) - - c=Starter.skmt.ExecQuery("select count(*) as CUANTOS from kmt_info where (impresion = 1 or cat_cl_codigo in (select ci_cuenta from cliente_impreso)) and CAT_CL_CODIGO in (Select CUENTA from cuentaa)") - c.Position = 0 - If logger Then Log($"Impreso: ${c.GetString("CUANTOS")}"$) - If c.GetString("CUANTOS") > 0 Then - ToastMessageShow("Esta venta ya esta impresa, no se puede editar ni borrar.", False) - Else - - If folio = "0" Or Subs.clienteActual = "0" Then 'Si el folio es 0 o el cliente actual es "abordo", los deja borrar. - Mod por CHV 220512 - result = Msgbox2("Seguro que desea borrar el pedido?","Cancelar pedido", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore - If result = DialogResponse.POSITIVE Then - c=Starter.skmt.ExecQuery2("select PE_PROID,PE_CANT, PE_TIPO FROM PEDIDO where pe_cliente in (Select CUENTA from cuentaa) AND PE_CEDIS = ?", Array As String("DOE")) - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - TIPO = c.GetString("PE_TIPO") - If c.GetString("PE_TIPO") = "VENTA" Then - Starter.skmt.ExecNonQuery2("update cat_gunaprod2 set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID"))) - Else - Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID"))) - End If - Next - End If - - Starter.skmt.ExecNonQuery2("delete from pedido where pe_cliente in (Select CUENTA from cuentaa) AND PE_CEDIS = ?", Array As Object("DOE")) - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 0 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - B4XPage_Appear - End If - Else - Msgbox("CLIENTE YA SE TRANSMITIO, FAVOR DE LLAMAR A SOPORTE PARA ASISTENCIA","AVISO") 'ignore - End If - End If -End Sub \ No newline at end of file diff --git a/B4A/C_NuevoCliente.bas b/B4A/C_NuevoCliente.bas deleted file mode 100644 index ae66a5a..0000000 --- a/B4A/C_NuevoCliente.bas +++ /dev/null @@ -1,88 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - '//Process Globals - Dim g As GPS - Dim ruta As String - Dim c As Cursor - Dim C2 As Cursor - '//Globals - Dim CANCELA As Button - Dim GUARDA As Button - Dim cuenta As String - Dim usuario As String - Dim sDate,sTime As String - Dim lat_gps, lon_gps As String - Dim no_cliente As String - Dim no_ruta As String - Dim r_4 As RadioButton - Dim E_NOMBRE As EditText - Dim ALMACEN As String - Dim DIA_VISITA As String -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - 'load the layout to Root - Root.LoadLayout("nuevocliente") - ruta = File.DirInternal -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - -Sub B4XPage_Appear - E_NOMBRE.Text = "" -End Sub - -Sub GPS_LocationChanged (Location1 As Location) -' lat_gps=Location1.ConvertToSeconds(Location1.Latitude) -' lon_gps=Location1.ConvertToSeconds(Location1.Longitude) -End Sub - -Sub CANCELA_Click - B4XPages.ShowPage("Principal") -End Sub - -Sub GUARDA_Click - If E_NOMBRE.Text = "" Then - ToastMessageShow("Se tiene que nombrar la tienda para continuar" , True) - Else - DateTime.DateFormat = "MM/dd/yyyy" - DateTime.Timeformat = "HHmmss" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("select CAT_CL_RUTA ,CAT_CL_DIAS_VISITA FROM kmt_info WHERE CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = 'DIA_VISITA')") - c.Position=0 - no_ruta= c.GetString("CAT_CL_RUTA") - DIA_VISITA=c.GetString("CAT_CL_DIAS_VISITA") - - 'Aqui creamos manualmete la hora con el separador de los 2 puntos porque en algunas versiones de android no respeta el formato "Timeformat = 'HH:mm:ss'" - Private hora As String = sTime.SubString2(0,2) - Private mins As String = sTime.SubString2(2,4) - Private segs As String = sTime.SubString(4) - Private sTime2 As String = hora&":"&mins&":"&segs - Log("////////////// sTime: "&sTime&" ////////////////") - no_cliente= "N" & sTime2 & no_ruta - c.Close - C2=Starter.skmt.ExecQuery("SELECT ID_ALMACEN FROM CAT_ALMACEN") - C2.Position=0 - ALMACEN= C2.GetString("ID_ALMACEN") - C2.Close - Starter.skmt.ExecNonQuery2("INSERT INTO kmt_info(CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_DIAS_VISITA,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, gestion,CAT_CL_BFACTURA,IMPRESION) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0,0,0,0,1000000,0) ",Array As Object (no_cliente,no_ruta, E_NOMBRE.Text,DIA_VISITA,"new","null","null","null","null","null","null","null","null","NULL","NULL","null","0",Starter.lon_gps,Starter.lat_gps)) - Starter.skmt.ExecNonQuery("delete from CUENTAA") - Starter.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(no_cliente)) - Subs.iniciaActividad("Cliente") - End If -End Sub diff --git a/B4A/C_Pedidos.bas b/B4A/C_Pedidos.bas deleted file mode 100644 index 36fa8d1..0000000 --- a/B4A/C_Pedidos.bas +++ /dev/null @@ -1,24 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - 'load the layout to Root - -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. \ No newline at end of file diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas deleted file mode 100644 index 9f38d9a..0000000 --- a/B4A/C_Principal.bas +++ /dev/null @@ -1,3189 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - '//Process_Globas - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - Dim reqManager As DBRequestManager - Dim t1 As Timer - Dim t2 As Timer - Private t3 As Timer - Dim inicioContador As String - - '//Globals - Dim trabajar As Button - Dim Cursor_check As Cursor - Dim c As Cursor - Dim d As Cursor - Dim b As Cursor - Dim e As Cursor - Dim f As Cursor - Dim C_DOE As Cursor - Dim D_DOE As Cursor - Dim F_DOE As Cursor - - Dim TOTAL_DOE_BB As String - Dim TOTAL_EFE_DOE As String - Dim TOTAL_ENTREGA_DOE As String - - - Dim DDD As Cursor - Dim cargar As Button - Dim foto1() As Byte - Dim foto2() As Byte - Dim foto3() As Byte - Dim foto4() As Byte - Dim usuario As String - Dim connecta As Button - Dim conn As String - Dim Subir As Button - Dim cmd As DBCommand - Dim COUNT_CLIE As Int - Dim fecha As String - Dim drop As Double - Dim efectiva As Double - Dim L_MONTOD As Label - Dim l_cuantosc As Label - Dim l_drop As Label - Dim l_efectiva As Label - Dim l_ctast As Label - Dim BUSCA As Button - Dim Cuantos As String - Dim l_cuantosn As Label - Dim e_ruta As EditText - Dim l_porvisitar As Label - Dim b_mapa As Button - Dim l_ruta As Label - Dim ALMACEN As String - Private img2 As ImageView - Dim Listo1 As String - Dim Listo2 As String - Dim Listo3 As String - Dim Listo4 As String - Dim Listo5 As String - Dim EJECUTANDO As String - Dim res As String - Dim inve As String - Dim cuantos_pedidosc As String - Dim cuantos_pedido As String - Dim cuantos_noventa As String - Dim datos_iguales As String - Dim p As PhoneId - Dim imei As String - Dim Today As String - Private inv As Button - Private P1 As Panel - Private CLAVE As EditText - Private B_OK_PAS As Button - Dim PASO As String - Private USUARIO1 As EditText - Dim connecta1 As Double - Dim armafolio As String - Private NUEVO As Button - Private S_CC As Label - Private S_CP As Label - Private S_CH As Label - Private PB2 As ProgressBar - Private PB1 As ProgressBar - Private L_P_1 As Label - Private L_P_2 As Label - Private L_P_3 As Label - Private CARGA As String - Private PORCENTAJE As Int - Private P_RESUMEN As Panel - Private B_OK_RES As Button - Private Resumen As Button - Private L_CUANTOST As Label - Private img3 As ImageView - Private ImageView3 As ImageView - Private ImageView5 As ImageView - Private L_TICKPROM As Label - Private MARCASQ As String - Private B_PROXIMA As Button - Private l_monto_a As Label - Private ImageView9 As ImageView - Private L_MONTO_R As Label - Dim PERFIL As String - Dim NUMERO_PEDIDO As String - Private l_cambios As Label - Dim l_monto_ks As Label - Dim l_monto_kp As Label - Dim l_monto_k As Label - Private Cuantos As String - Dim cmp20 As Serial - Dim printer As TextWriter - Dim PairedDevices As Map - Dim TAMANO As Int - Dim ESPACIO As Int - Dim BLANCO As String - Dim sDate,sTime As String - Dim PASA_IMP As String - Dim s As Cursor - Private B_IMP As Button - Private l_monto_c1 As Label - Private l_monto_c2 As Label - Private l_monto_c3 As Label - Private B_BOLETA As Button - Private B_MAPA_RUTA As Button - Private Panel5 As Panel - Private L_CUOTA1 As Label - Private L_CUOTA2 As Label - Private L_CUOTA3 As Label - Private L_CUOTA4 As Label - Private L_CUOTA5 As Label - Private L_CUOTA6 As Label - Private L_META1 As Label - Private L_META2 As Label - Private L_META3 As Label - Private L_META4 As Label - Private L_META5 As Label - Private L_META6 As Label - Private B_CUOATA_C As Button - Private b_cuotas As Button - Private Panel1 As Panel - Private Panel2 As Panel - Dim ENVIADA As String - Dim PORENVIAR As String - Private Btn_CheckList As Button - Dim Cedis_Check As String - Private TIEMPO As String - Private RUTA1 As Label - Private L_ABORDO As Label - Private bcarga1 As String - Private bcarga2 As String - Private bcarga3 As String - Private contador_env As String - Private contador_strem As String - Private ruta_valida As String - Private PNL_ACCESO As Panel - Private Panel7 As Panel - Private L_SUPLENCIA As Label - Private E_RUTA2 As EditText - Private Label4 As Label - Private SEMANA As String - Private ImageView1 As ImageView - Dim DIA_VISITA As String - -' Para el PDFViewer - Dim pdf As PdfiumCore - Private PDFView1 As PDFView - Private btnFirst As Button - Private btnPrev As Button - Private lblPages As Label - Private btnNext As Button - Private btnLast As Button - Private glPages As Int - Private p_pdfViewer As Panel - Private pdfViewerActivo As Boolean - Private p_controles_pdf As Panel - Private pdfURL As String - Private l_2 As Label - Dim cartaPorteLista As Boolean - Private l_downloadPDF As Label - Private ProgressBarPDF As ProgressBar - Private p_downloadPDF As Panel - Private p_progress1 As Panel - Private l_porcentaje As Label - Private detenerLoop As Boolean = False - Dim logger As Boolean = True - Private L_DOE As Label -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - If Not(Starter.Logger) Then logger = False - Root = Root1 - 'load the layout to Root - Root.LoadLayout("principal") - EJECUTANDO=1 - Dim ruta As String - img2.Visible =False - ruta = File.DirInternal - DateTime.DateFormat = "MM/dd/yyyy" - fecha=DateTime.Date(DateTime.Now) - c=Starter.skmt.ExecQuery2("select CAT_CO_CONFIGURACION from CAT_CODIGOS where CAT_CO_PONDERACION =1 AND CAT_CO_ACCION = ?", Array As String("SERVER")) - c.Position =0 - Starter.server = c.GetString("CAT_CO_CONFIGURACION") - c.Close - b=Starter.skmt.ExecQuery("Select count(*) as CUANTOS from pedido_cliente") - b.Position=0 - Cuantos = b.GetString("CUANTOS") - d=Starter.skmt.ExecQuery("select count(*) as TOTAL_VISITAR from kmt_info where gestion = 0") - D.Position=0 - b.Close - e=Starter.skmt.ExecQuery("select count(*) as POR_VISITAR from kmt_info") - e.Position=0 - f=Starter.skmt.ExecQuery("select count(*) as CAT_CL_RUTA from kmt_info") - f.Position=0 - l_ruta.Text = f.GetString("CAT_CL_RUTA") - f.Close - If l_ruta.Text = 0 Then - l_ruta.Text =0 - Else - f=Starter.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info") - f.Position=0 - l_ruta.Text = f.GetString("CAT_CL_RUTA") - RUTA1.Text = l_ruta.TEXT - f.Close - End If - If Cuantos = 0 Then - L_MONTOD.Text =0 - l_cuantosc.Text = 0 - l_cuantosn.Text = 0 - drop = 0 - l_drop.Text = 0 - efectiva = 0 - l_efectiva.text =0 - l_ctast.Text = d.GetString("TOTAL_VISITAR") - ' l_porvisitar.Text = e.GetString("POR_VISITAR") - Else - c=Starter.skmt.ExecQuery("select sum(pc_monto) as MONTO_DIA, count(pc_cliente) AS CLIENTES_DIA from pedido_cliente ") - b=Starter.skmt.ExecQuery("select count(*) as CUANTOS from noventa") - 'where pc_fecha = ?", Array As String(fecha) - C.Position=0 - b.Position=0 - L_MONTOD.Text = c.GetString("MONTO_DIA") - l_cuantosc.Text = c.GetString("CLIENTES_DIA") - l_cuantosn.Text = b.GetString("CUANTOS") - drop = c.GetString("MONTO_DIA") / c.GetString("CLIENTES_DIA") - l_drop.Text = Round2(drop,2) - efectiva = c.GetString("CLIENTES_DIA") / e.GetString("POR_VISITAR") - l_efectiva.text = Round2(efectiva*100,2) - l_ctast.Text = d.GetString("TOTAL_VISITAR") - 'l_porvisitar.Text = e.GetString("POR_VISITAR") - End If -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - -Sub B4XPage_Appear - If Starter.ultima_back_productos = 1 Then - Subs.iniciaActividad("productos") - Else - - Starter.btAdmin.Initialize("BlueTeeth") - If Not(Starter.btAdmin.IsEnabled) Then Starter.btAdmin.Enable - e_ruta.Enabled = True - Starter.rutaV = l_ruta.Text - c=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SERVER")) - c.Position =0 - If c.GetString("CUANTOS") = 0 Then - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SERVER", Starter.server)) - Else - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SERVER")) - c.Position =0 - Starter.server = c.GetString("CAT_VA_VALOR") - End If - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("FECHA")) - If c.RowCount > 0 Then - c.Position = 0 - Starter.FECHA_HOY = c.GetString("CAT_VA_VALOR") - End If - reqManager.Initialize(Me, Starter.server) - c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SEMANA")) - c.Position =0 - SEMANA = c.GetString("CUANTOS") - c.Close - If SEMANA > 0 Then - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SEMANA")) - c.Position =0 - SEMANA = c.GetString("CAT_VA_VALOR") - c.Close - End If - c.Close - c=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from kmt_info where CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?) and gestion = 0 and cat_cl_codigo <> 0 AND CAT_CL_TIPO_RUTA IN (?,?) ORDER BY CAT_CL_NUM_SERIEFISICO", Array As String("DIA_VISITA",SEMANA, "SEMANAL")) - c.Position = 0 - Starter.clientesTotal = c.GetString("CUANTOS") - l_porvisitar.Text = Starter.clientesTotal - PASO = 0 - If EJECUTANDO =0 Then - Listo1 = 0 - Listo2 = 0 - Listo3 = 0 - Listo4 = 0 - Listo5 = 0 - inve = 0 - img2.Visible =False - End If - DateTime.DateFormat = "MM/dd/yyyy" - fecha=DateTime.Date(DateTime.Now) - b=Starter.skmt.ExecQuery("Select count(*) as CUANTOS from pedido_cliente where pc_cliente <> 0") - b.Position=0 - Cuantos = b.GetString("CUANTOS") -' If Starter.marcaCel <> "LGE" Then ToastMessageShow(Cuantos , True) - d=Starter.skmt.ExecQuery2("select count(*) as TOTAL_VISITAR from kmt_info where gestion = 0 and cat_cl_codigo <> 0 AND CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?)", Array As String("DIA_VISITA")) - D.Position=0 - b.Close - e=Starter.skmt.ExecQuery2("select count(*) as POR_VISITAR from kmt_info where cat_cl_codigo <> 0 and CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?) ", Array As String("DIA_VISITA")) - e.Position=0 - f=Starter.skmt.ExecQuery("select count(*) as CAT_CL_RUTA from kmt_info where cat_cl_codigo <> 0") - f.Position=0 - l_ruta.Text = f.GetString("CAT_CL_RUTA") - f.Close - If l_ruta.Text = 0 Then - l_ruta.Text =0 - Else - f=Starter.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info") - f.Position=0 - l_ruta.Text = f.GetString("CAT_CL_RUTA") - f.Close - End If - c=Starter.skmt.ExecQuery("select usuario from usuarioa") - c.Position = 0 - If c.RowCount > 0 Then - usuario = c.GetString("USUARIO") - Starter.usuario = usuario - End If - c.Close - c=Starter.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") - C.Position =0 - ALMACEN = C.GetString("ID_ALMACEN") - C.Close - Cursor_check = Starter.skmt.ExecQuery("select count(*) as CUANTOS from TMP_INSPECCION_AUTO_DIARIA where tmp_auto_kilometraje <> '' ") - Cursor_check.Position = 0 - Cedis_Check = Cursor_check.GetString("CUANTOS") - - If Not(File.Exists(File.DirInternal,"FOTO1.jpg")) Or _ - Not(File.Exists(File.DirInternal,"FOTO2.jpg")) Or _ - Not(File.Exists(File.DirInternal,"FOTO3.jpg")) Or _ - Not(File.Exists(File.DirInternal,"FOTO4.jpg")) Then - If Not(File.Exists(File.DirInternal,"FOTO1.jpg")) Then Log("Falta foto1") - If Not(File.Exists(File.DirInternal,"FOTO2.jpg")) Then Log("Falta foto2") - If Not(File.Exists(File.DirInternal,"FOTO3.jpg")) Then Log("Falta foto3") - If Not(File.Exists(File.DirInternal,"FOTO4.jpg")) Then Log("Falta foto4") - Cedis_Check = 0 - End If - If Cedis_Check = 0 And l_ruta.Text <> 0 Then - Btn_CheckList.Visible = True - B_MAPA_RUTA.Visible = False - Else - ' PONER EN FALSE - Btn_CheckList.Visible = False - B_MAPA_RUTA.Visible = True - If usuario = "JOSELUIS" Then Btn_CheckList.Visible = True 'Mod por CHV - 211125 - End If - contador_strem = 0 - contador_env = 0 - E_RUTA2.Visible = False - L_SUPLENCIA.Visible = False - Label4.Visible = False - Starter.montoActual = L_MONTOD.Text - Starter.clientesventa = l_cuantosc.Text - Starter.clientesvisitados = l_porvisitar.TEXT - Starter.ALMACEN = ALMACEN - Starter.rutapreventa = l_ruta.text - CallSub(Starter, "ENVIA_ULTIMA_GPS") - c.Close - Subs.guardaUltimaActividadBD("principal") - Subs.ultimaActividad(Me) - - End If -End Sub - -Sub trabajar_Click - 'CallSubDelayed(gestion,"gestion") - 'Mod por CHV para que si no se ha hecho el checklist no permita la venta - 211125 - c=Starter.skmt.ExecQuery("select 'TMP_AUTO_FECHA ' from TMP_INSPECCION_AUTO_DIARIA where tmp_auto_kilometraje <> ''") - If c.RowCount > 0 Then - If logger Then Log("Si hay checklist") - Else - If logger Then Log("NO hay checklist") - Msgbox("No se ha realizado aún el 'Checklist' del vehículo, por favor completelo antes de realizar una venta.", "FALTA EL CHECKLIST") 'ignore - Return - End If - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("MARCAS")) - c.Position =0 - If c.RowCount > 0 Then - MARCASQ = c.GetString("CAT_VA_VALOR") - c.Close - Starter.skmt.ExecNonQuery("delete from CAT_GUNAPROD WHERE CAT_GP_CLASIF NOT IN (" & MARCASQ &")" ) - Starter.skmt.ExecNonQuery("delete from CAT_GUNAPROD WHERE CAT_GP_ID IN (SELECT CAT_DP_ID FROM CAT_DETALLES_PAQ WHERE CAT_DP_IDPROD NOT IN (SELECT CAT_GP_ID FROM CAT_GUNAPROD))") - B4XPages.ShowPage("Clientes") - Else - If Starter.marcaCel <> "LGE" Then ToastMessageShow("No hay marcas en la base de datos ... ya se cargo ruta??", True) - End If -End Sub - -Sub Subir_Click - CARGA = "SUBIR" -' P1.Visible = True - trabajar.Visible = False - B_PROXIMA.Visible =False - NUEVO.Visible =False - BUSCA.Visible=False - connecta.Visible=False - Subir.Visible=False - cargar.Visible=False - L_P_1.Visible = False - S_CC.Visible = False - L_P_3.Visible = False - S_CH.Visible = False - PB1.Visible = False - Resumen.Visible= False - L_P_2.Text = "Envio de Pedidos" - 'L_P_3.Text = "Envio de Pedidos" - 'S_CH.Text = "EN PROCESO" - S_CP.Text = "EN PROCESO" - PB1.Progress = 0 - PB2.Progress = 0 - contador_env = 0 - contador_strem = 0 - e_ruta.Text = ruta_valida - PASO = 1 - 'End If - If PASO = 1 Then - c=Starter.skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_RUTA from kmt_info") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("update PEDIDO set PE_RUTA = ? where PE_CLIENTE = ? ", Array As Object(c.GetString("CAT_CL_RUTA"),c.GetString("CAT_CL_CODIGO"))) - Next - End If - c=Starter.skmt.ExecQuery2("SELECT HE_CUANTOS, HE_FECHA FROM HIST_ENVIOS WHERE HE_TIPO = ?", Array As String("PEDIDO")) - c.Position = 0 - ''' FALTA PONER EL IF DE CUANTAS VECES MANDO Y SI MANDO PREGUNTAR ENVIAR BOLETA O PEDIDO - If c.GetString("HE_CUANTOS") = 0 Then - SUBIR_INFO_PEDIDO - Else - Dim result As Int - result = Msgbox2("QUE VA A ENVIAR?", "ENVIO DE INFO.", "BOLETA", "VALIDAR", "VTA/PED", LoadBitmap(File.DirAssets, "alert2.png")) 'ignore - If result = DialogResponse.Positive Then - SUBIR_INFO_BOLETA - ELSE IF result = DialogResponse.NEGATIVE Then - SUBIR_INFO_PEDIDO - ELSE IF result = DialogResponse.CANCEL Then - VALIDAR_INFO - End If - End If - End If -End Sub - -Sub cargar_Click - 'Para descargar el PDF de la carta porte ///////////////////////////////////////////////////////////////////////// - DateTime.DateFormat = "yyyyMMdd" - Dim hoy As String = DateTime.Date(DateTime.Now) - If logger Then Log(DateTime.Date(File.LastModified(File.DirInternal,"cartaPorte.pdf")) & " - " & hoy ) -' If Not(File.Exists(File.DirInternal,"cartaPorte.pdf")) Then 'Si no existe la descargamos ... -' If logger Then LogColor("No hay carta porte.", Colors.Red) -' descargaCartaPorte ' la descargamos. -' Do While Not(cartaPorteLista) 'Mientras no se termine de descargar la carta porte, esperamos ... -' Sleep(1000) -' If logger Then Log("Descargando Carta Porte (Loop cargar_Click)") -' Loop -' Else If (DateTime.Date(File.LastModified(File.DirInternal,"cartaPorte.pdf")) < hoy And Starter.rutaTipo <> "FORANEA") Then ' si la fecha del pdf NO es de hoy y la ruta NO es foranea entonces ... -' LogColor("La carta porte es vieja.", Colors.Red) -' If logger Then Log(Starter.rutaTipo) -' descargaCartaPorte ' la descargamos. -' Do While Not(cartaPorteLista) 'Mientras no se termine de descargar la carta porte, esperamos ... -' Sleep(1000) -' If logger Then Log("Descargando Carta Porte (Loop cargar_Click)") -' If detenerLoop Then Exit -' detenerLoop = False -' Loop -' Else - cartaPorteLista = True - If logger Then LogColor("Ya hay carta porte con fecha de hoy", Colors.Green) - Private MB As Int - MB = Msgbox2("¿Quiere descargarla nuevamente?", "YA SE DESCARGO LA CARTA PORTE", "Si", "", "No", Null) 'ignore - If MB = DialogResponse.Positive Then - descargaCartaPorte - Do While Not(cartaPorteLista) 'Mientras no se termine de descargar la carta porte esperamos ... - Sleep(1000) - If logger Then Log("Descargando Carta Porte (Loop cargar_Click)") - If detenerLoop Then Exit - detenerLoop = False - Loop - ELSE IF MB = DialogResponse.NEGATIVE Then -' descargaCartaPorte - ELSE IF MB = DialogResponse.CANCEL Then -' VALIDAR_INFO - End If -' End If - 'Termina descargar el PDF de la carta porte /////////////////////////////////////////////////////////////////////////////// - If cartaPorteLista Then - CARGA = "CARGAR" - img2.Visible =True - L_P_1.Visible = True - S_CC.Visible = True - Btn_CheckList.Visible=False -' P1.Visible = True -' P1.BringToFront - P1.Width = GetDeviceLayoutValues.Width - P1.Height = GetDeviceLayoutValues.Height - Subs.panelVisible(P1, 0, 0) - trabajar.Visible = False - B_PROXIMA.Visible =False - NUEVO.Visible =False - BUSCA.Visible=False - connecta.Visible=False - L_P_3.Visible = True - S_CH.Visible = True - PB1.Visible = True - Resumen.Visible= False - E_RUTA2.Visible = False - L_SUPLENCIA.Visible = False - Label4.Visible = False - L_P_1.Text = "Catalogo de Clientes" - L_P_2.Text = "Catalogos de Productos" - L_P_3.Text = "Catalogos Historicos" - S_CC.Text = "EN PROCESO" - S_CH.Text = "EN PROCESO" - S_CP.Text = "EN PROCESO" - PB1.Progress = 0 - PB2.Progress = 0 - EJECUTANDO = 1 - bcarga1 = 0 - bcarga2 = 0 - bcarga3 = 0 - e_ruta.Text = ruta_valida - ' NUEVOS CLIENTE - - Starter.skmt.ExecNonQuery2("delete from kmt_info where substr(CAT_CL_CODIGO,1,1) <> ?", Array As Object ("N")) - Starter.skmt.ExecNonQuery("delete from cod_result") - Starter.skmt.ExecNonQuery("delete from hist_gest") - Starter.skmt.ExecNonQuery("delete from cat_gunaprod") - Starter.skmt.ExecNonQuery("delete from cat_gunaprod2") - - Starter.skmt.ExecNonQuery("delete from cat_gunaprod_doe") - Starter.skmt.ExecNonQuery("delete from pedido_doe") - - Starter.skmt.ExecNonQuery("DELETE FROM CAT_GUNAPROD5") - Starter.skmt.ExecNonQuery("DELETE FROM HIST_ENCUESTA2") - Starter.skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ") - Starter.skmt.ExecNonQuery("delete from telefonos") - Starter.skmt.ExecNonQuery("delete from HIST_VENTAS") - Starter.skmt.ExecNonQuery("delete from HIST_PROMOS") - Starter.skmt.ExecNonQuery("delete from HIST_CLIENTE_CANT_PROMOS") - Starter.skmt.ExecNonQuery("delete from PROMOS_COMP") - Starter.skmt.ExecNonQuery("delete from CAT_VERIFICACION") - Starter.skmt.ExecNonQuery("delete from LISTA_PRECIOS") - Starter.skmt.ExecNonQuery("delete from CAT_PRECIOS") - Starter.skmt.ExecNonQuery("delete from HIST_RMI") - Starter.skmt.ExecNonQuery("delete from HIST_CUOTAS") - Starter.skmt.ExecNonQuery("delete from HIST_EXHIBIDORES2") - Starter.skmt.ExecNonQuery("delete from CAT_DESCUENTOS_SKU") - Starter.skmt.ExecNonQuery("delete from HIST_ABORDO") - Starter.skmt.ExecNonQuery("delete from DESC_CLIENTES") - Starter.skmt.ExecNonQuery("delete from CAT_ENCUESTA_PREGUNTA") - Starter.skmt.ExecNonQuery("delete from CAT_PROMO_MONTO") - Starter.skmt.ExecNonQuery("delete from CAT_RMI") - Starter.skmt.ExecNonQuery("delete from CAT_DEV") - - - Starter.skmt.ExecNonQuery("delete from CLIENTE_CARGA_DIA") - Starter.skmt.ExecNonQuery("INSERT INTO CLIENTE_CARGA_DIA (CCD_CUENTA) SELECT DISTINCT PE_CLIENTE FROM PEDIDO") - - - ''' PEDIDO DOE - Starter.skmt.ExecNonQuery("delete from CAT_GUNAPROD_DOE") - Starter.skmt.ExecNonQuery("delete from PEDIDO_DOE") - ''' FIN DOE - - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("NUMERO_PEDIDO")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("NUMERO_PEDIDO",0)) - - c=Starter.skmt.ExecQuery("select usuario from usuarioa") - c.Position = 0 - usuario = c.GetString("USUARIO") - - DateTime.TimeFormat = "HHmmss" - inicioContador = DateTime.Now - - cmd.Initialize - cmd.Name = "SELECT_HIST_ENCUESTA_KELL" - cmd.Parameters = Array As Object( e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "HIST_ENCUESTA2") - - cmd.Initialize - cmd.Name = "SELECT_EXHIBIDOR_RUTA_KELL" - cmd.Parameters = Array As Object( e_ruta.text ) - If logger Then Log(e_ruta.TEXT) - reqManager.ExecuteQuery(cmd , 0, "exhibidores") - - cmd.Initialize 'Para traer la contraseña del candado de "FIN DIA" - cmd.Name = "SELECT_PASS_FIN_DIA" - reqManager.ExecuteQuery(cmd , 0, "pass_fin_dia") - - cmd.Initialize - cmd.Name = "select_cat_gunaprod_KELL" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "gunaprod") - - cmd.Initialize - cmd.Name = "select_cat_devoluciones_KELL" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "devoluciones") - - cmd.Initialize - cmd.Name = "select_cat_gunaprod2_KELL" - cmd.Parameters = Array As Object(ALMACEN, e_ruta.Text) - reqManager.ExecuteQuery(cmd , 0, "gunaprod2") - - cmd.Initialize - cmd.Name = "select_cat_encuesta_p_KELL" - cmd.Parameters = Array As Object(ALMACEN, e_ruta.Text) - reqManager.ExecuteQuery(cmd , 0, "encuesta_p") - - cmd.Initialize - cmd.Name = "select_cat_paquetes_KELL" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "gunaprodp") - - cmd.Initialize - cmd.Name = "select_cat_paquetess_KELL" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "gunaprodps") - - cmd.Initialize - cmd.Name = "select_cat_detallepa_KELL" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "detallepaq") - - cmd.Initialize - cmd.Name = "select_cat_clientes_guna_KELL2" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "kmt_datos") - - cmd.Initialize - cmd.Name = "select_hist_datos_KELL" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN,e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_datos") - - cmd.Initialize - cmd.Name = "select_hist_datos_KELL2" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_datos") - - cmd.Initialize - cmd.Name = "select_hist_promos_KELL" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_promos") - - cmd.Initialize - cmd.Name = "select_hist_cliente_promos_KELL" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_cliente_promos") - - cmd.Initialize - cmd.Name = "select_promo_comp_KELL" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_comp_promos") - - cmd.Initialize - cmd.Name = "select_promo_monto_KELL" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "promo_monto") - - - - If E_RUTA2.Text <> "" Then - cmd.Initialize - cmd.Name = "select_cat_clientes_guna_KELL2" - cmd.Parameters = Array As Object(E_RUTA2.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "kmt_datos") - - cmd.Initialize - cmd.Name = "select_hist_datos_KELL" - cmd.Parameters = Array As Object(E_RUTA2.text, ALMACEN,e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_datos") - - cmd.Initialize - cmd.Name = "select_hist_promos_KELL" - cmd.Parameters = Array As Object(E_RUTA2.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_promos") - - cmd.Initialize - cmd.Name = "select_hist_cliente_promos_KELL" - cmd.Parameters = Array As Object(E_RUTA2.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_cliente_promos") - - cmd.Initialize - cmd.Name = "select_promo_comp_KELL" - cmd.Parameters = Array As Object(E_RUTA2.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_comp_promos") - - cmd.Initialize - cmd.Name = "select_DESC_CLIENTE_KELL" - cmd.Parameters = Array As Object( ALMACEN,E_RUTA2.text) - reqManager.ExecuteQuery(cmd , 0, "DESCUENTOS_CLIENTE") - - cmd.Initialize - cmd.Name = "select_DESC_CLIE_SKU_KELL" - cmd.Parameters = Array As Object( ALMACEN,E_RUTA2.text) - reqManager.ExecuteQuery(cmd , 0, "DESCUENTOS_CLIENTE_SKU") - End If - - cmd.Initialize - cmd.Name = "select_DESC_CLIENTE_KELL" - cmd.Parameters = Array As Object( ALMACEN,e_ruta.text) - reqManager.ExecuteQuery(cmd , 0, "DESCUENTOS_CLIENTE") - - cmd.Initialize - cmd.Name = "select_cat_RMI_KELL" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "RMI") - - cmd.Initialize - cmd.Name = "select_DESC_CLIE_SKU_KELL" - cmd.Parameters = Array As Object( ALMACEN,e_ruta.text) - reqManager.ExecuteQuery(cmd , 0, "DESCUENTOS_CLIENTE_SKU") - - cmd.Initialize - cmd.Name = "select_fecha" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "fecha") - - cmd.Initialize - cmd.Name = "select_folio_KELL" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "folio") - - ' esto es para sacar el perfil y marcas del usuario - cmd.Initialize - cmd.Name = "select_perfil_KELL" - cmd.Parameters = Array As Object(usuario) - reqManager.ExecuteQuery(cmd , 0, "perfil") - - cmd.Initialize - cmd.Name = "select_marcas_KELL" - cmd.Parameters = Array As Object(usuario) - reqManager.ExecuteQuery(cmd , 0, "marcas") - - cmd.Initialize - cmd.Name = "select_CAMBIOS_KELL" - 'cmd.Parameters = Array As Object( ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "cat_cambios") - - cmd.Initialize - cmd.Name = "select_SUCURSAL_KELL" - cmd.Parameters = Array As Object( ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "sucursal") - - cmd.Initialize - cmd.Name = "select_dia_visita_KELL" - cmd.Parameters = Array As Object( ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "dia_visita") - - cmd.Initialize - cmd.Name = "select_HIST_CUOTAS" - cmd.Parameters = Array As Object( ALMACEN,e_ruta.text ) - reqManager.ExecuteQuery(cmd , 0, "CUOTAS") - - cmd.Initialize - cmd.Name = "select_hist_ventas_abordo_KELL" - cmd.Parameters = Array As Object( ALMACEN,e_ruta.text ) - reqManager.ExecuteQuery(cmd , 0, "hist_abordo") - - cmd.Initialize - cmd.Name = "select_cat_encuesta_p_KELL" - cmd.Parameters = Array As Object( ALMACEN,e_ruta.text ) - reqManager.ExecuteQuery(cmd , 0, "carga_encuesta") - - cmd.Initialize - cmd.Name = "select_placas_kell" - cmd.Parameters = Array As Object( ALMACEN,e_ruta.text ) - reqManager.ExecuteQuery(cmd , 0, "placas") - - cmd.Initialize - cmd.Name = "select_cat_variables_semana_tipo_KELL" - reqManager.ExecuteQuery(cmd , 0, "SEMANA") - - cmd.Initialize - cmd.Name ="insert_drop_KELL" - cmd.Parameters = Array As Object(usuario,e_ruta.Text,fecha, l_porvisitar.Text,l_drop.Text,l_efectiva.Text,l_cuantosc.Text,l_cuantosn.Text, L_MONTOD.Text,"CARGA", ALMACEN) - reqManager.ExecuteCommand(cmd , "inst_noventa_ins_drop_kell") - - cmd.Initialize - cmd.Name = "select_precios_KELL" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "precios") - - cmd.Initialize - cmd.Name = "select_limite_abordo" - cmd.Parameters = Array As Object( ALMACEN,e_ruta.text ) - reqManager.ExecuteQuery(cmd , 0, "limite_abordo") - -''' PARA LO DE DOE - cmd.Initialize - cmd.Name = "select_pedido_doe" - cmd.Parameters = Array As Object( ALMACEN,e_ruta.text ) - reqManager.ExecuteQuery(cmd , 0, "pedido_doe") - - cmd.Initialize - cmd.Name = "select_cat_gunaprod_doe" - cmd.Parameters = Array As Object( ALMACEN,e_ruta.text ) - reqManager.ExecuteQuery(cmd , 0, "cat_gunaprod_doe") - -''' FIN DOE - cargar.Visible = False - Subir.Visible = False - trabajar.Visible=False - inv.Visible = False - If Starter.marcaCel <> "LGE" Then ToastMessageShow("Se Actualizarán los datos. Este proceso podria tardar hasta un minuto, gracias" , True) - End If -End Sub - -Sub JobDone(Job As HttpJob) -' LogColor("JobDone: "&Job.Tag & " Success:" & Job.Success , Colors.Magenta) ' Mod by CHV - 211116 - If inicioContador = "" Then inicioContador = 0 - If Job.Success = False Then - If logger Then LogColor("** " & Job.Tag & " Error: " & Job.ErrorMessage, Colors.Red) ' Mod by CHV - 211116 - If Job.ErrorMessage = "STREAM" Then - contador_strem = contador_strem +1 - If CARGA = "SUBIR" Then - PB1.Progress = PB1.Progress + 1 - If PB1.Progress > 100 Then - PB1.Progress = 1 - End If - If contador_env = contador_strem And S_CP.Text <> "INFO OK" Then - PB1.Progress = 100 - S_CP.Text = "VALIDANDO" - End If - End If - End If - Else - If logger Then LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211110 - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "kmt_datos" Then 'query tag - If logger Then Log("TIEMPO kmt_datos : " & ((DateTime.Now-inicioContador)/1000)) - S_CC.TEXT = "CARGANDO" - Starter.skmt.BeginTransaction - 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")) - 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_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_BFACTURA As String = records(RESULT.Columns.Get("CAT_CL_BFACTURA")) - Dim CAT_CL_BCREDITO As String = records(RESULT.Columns.Get("CAT_CL_BBLOQUEOCRED")) - Dim CAT_CL_DIAS_VISITA As String = records(RESULT.Columns.Get("CAT_CL_DIAS_VISITA")) - Dim CAT_CL_TIPO_RUTA As String = records(RESULT.Columns.Get("CAT_CL_TIPO_RUTA")) - Dim CAT_CL_CATEGORIA As String = records(RESULT.Columns.Get("CAT_CL_CATEGORIA")) - Dim CAT_CL_SEGMENTO As String = records(RESULT.Columns.Get("CAT_CL_SEGMENTO")) - Dim CAT_CL_LIMITECREDITO As String = records(RESULT.Columns.Get("CAT_CL_LIMITECREDITO")) - - If CAT_CL_LIMITECREDITO = "0" Then CAT_CL_BFACTURA = "100000000" - 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,CAT_CL_BFACTURA,CAT_CL_BCREDITO,CAT_CL_DIAS_VISITA,CAT_CL_TIPO_RUTA, gestion, IMPRESION, CAT_CL_CATEGORIA, CAT_CL_SEGMENTO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0,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_LAT,CAT_CL_LONG,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO,CAT_CL_BFACTURA,CAT_CL_BCREDITO,CAT_CL_DIAS_VISITA,CAT_CL_TIPO_RUTA,CAT_CL_CATEGORIA, CAT_CL_SEGMENTO)) - 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_BFACTURA,CAT_CL_BCREDITO,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO,CAT_CL_DIAS_VISITA, gestion, IMPRESION) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0,0,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","NULL","NULL")) - Starter.skmt.TransactionSuccessful 'Si no se pone TransactionSuccessful no se escribe NADA!! - Starter.skmt.EndTransaction - Listo1 = 1 - S_CC.Text = "LISTO" -' 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 - bcarga1 = 20 - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "hist_promos" Then 'query tag - If logger Then Log("TIEMPO hist_promos : " & ((DateTime.Now-inicioContador)/1000)) - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim HP_CLIENTE As String = records(RESULT.Columns.Get("HP_CLIENTE")) - Dim HP_CODIGO_PROMOCION As String = records(RESULT.Columns.Get("HP_CODIGO_PROMOCION")) - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_PROMOS(HP_CLIENTE, HP_CODIGO_PROMOCION) VALUES (?,?)", Array As Object (HP_CLIENTE, HP_CODIGO_PROMOCION)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - 'ToastMessageShow("Historico Promociones Actualizado." , True) - If PB1.Progress = 0 Then - PB1.Progress = 30 - S_CH.Text = "CARGANDO" - ELSE If PB1.Progress = 30 Then - PB1.Progress = 70 - ELSE IF PB1.Progress = 70 Then - PB1.Progress = 100 - S_CH.Text = "LISTO" - End If - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "hist_cliente_promos" Then 'query tag - If logger Then Log("TIEMPO hist_cliente_promos : " & ((DateTime.Now-inicioContador)/1000)) - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim HCCP_CLIENTE As String = records(RESULT.Columns.Get("HCCP_CLIENTE")) - Dim HCCP_PROMO As String = records(RESULT.Columns.Get("HCCP_PROMO")) - Dim HCCP_CANT As String = records(RESULT.Columns.Get("HCCP_CANT")) - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_CLIENTE_CANT_PROMOS(HCCP_CLIENTE, HCCP_PROMO, HCCP_CANT) VALUES (?,?,?)", Array As Object (HCCP_CLIENTE, HCCP_PROMO,HCCP_CANT)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - ' ToastMessageShow(" Historico Clientes Promociones Actualizado." , True) - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "hist_comp_promos" Then 'query tag - If logger Then Log("TIEMPO hist_comp_promos : " & ((DateTime.Now-inicioContador)/1000)) - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim CAT_PA_ID As String = records(RESULT.Columns.Get("CAT_PA_ID")) - Dim CAT_PA_MAXPROM As String = records(RESULT.Columns.Get("CAT_PA_MAXPROM")) - Dim CAT_PA_MAXPROMREC As String = records(RESULT.Columns.Get("CAT_PA_MAXPROMREC")) - Dim CAT_PA_MAXPROMCLIE As String = records(RESULT.Columns.Get("CAT_PA_MAXPROMCLIE")) - Starter.skmt.ExecNonQuery2("INSERT INTO PROMOS_COMP(CAT_PA_ID, CAT_PA_MAXPROM, CAT_PA_MAXPROMREC, CAT_PA_MAXPROMCLIE) VALUES (?,?,?,?)", Array As Object (CAT_PA_ID, CAT_PA_MAXPROM,CAT_PA_MAXPROMREC,CAT_PA_MAXPROMCLIE)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - If PB1.Progress = 0 Then - PB1.Progress = 30 - S_CH.Text = "CARGANDO" - ELSE If PB1.Progress = 30 Then - PB1.Progress = 70 - ELSE IF PB1.Progress = 70 Then - PB1.Progress = 100 - S_CH.Text = "LISTO" - End If - End If - End If - - - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "promo_monto" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CPM_CLIENTE As String = records(RESULT.Columns.Get("CPM_CLIENTE")) - Dim CPM_IDPROMO As String = records(RESULT.Columns.Get("CPM_IDPROMO")) - Dim CPM_MONTO As String = records(RESULT.Columns.Get("CPM_MONTO")) - Dim CPM_PROID As String = records(RESULT.Columns.Get("CPM_PROID")) - Dim CPM_CANT As String = records(RESULT.Columns.Get("CPM_CANT")) - Dim CPM_RANGO As String = records(RESULT.Columns.Get("CPM_RANGO")) - Dim CPM_DESC As String = records(RESULT.Columns.Get("CPM_DESC")) - - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_PROMO_MONTO(CPM_CLIENTE, CPM_IDPROMO, CPM_MONTO, CPM_PROID, CPM_CANT, CPM_RANGO, CPM_DESC) VALUES (?,?,?,?,?,?,?)", Array As Object (CPM_CLIENTE, CPM_IDPROMO, CPM_MONTO, CPM_PROID, CPM_CANT, CPM_RANGO, CPM_DESC)) - - Next - End If - End If - - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "RMI" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CAT_ID As String = records(RESULT.Columns.Get("CAT_GP_ID")) - Dim CAT_DESCRIPCION As String = records(RESULT.Columns.Get("CAT_GP_NOMBRE")) - Dim CAT_MONTO As String = records(RESULT.Columns.Get("CAT_GP_PRECIO")) - - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_RMI(CAT_ID, CAT_DESCRIPCION, CAT_MONTO) VALUES (?,?,?)", Array As Object (CAT_ID,CAT_DESCRIPCION,CAT_MONTO)) - - Next - End If - End If - - - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "cat_verificacion" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CAT_VE_IDPROD As String = records(RESULT.Columns.Get("CAT_VE_IDPROD")) - Dim CAT_VE_NOMBRE As String = records(RESULT.Columns.Get("CAT_VE_NOMBRE")) - Dim CAT_VE_ORDEN As String = records(RESULT.Columns.Get("CAT_VE_ORDEN")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VERIFICACION(CAT_VE_IDPROD, CAT_VE_NOMBRE,CAT_VE_ORDEN) VALUES (?,?,?)", Array As Object (CAT_VE_IDPROD, CAT_VE_NOMBRE,CAT_VE_ORDEN)) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "DESCUENTOS_CLIENTE" Then 'query tag - If logger Then Log("TIEMPO DESCUENTOS_CIENTE : " & ((DateTime.Now-inicioContador)/1000)) - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim DC_CL_CLIENTE As String = records(RESULT.Columns.Get("CAT_CL_CLIENTE")) - Dim CAT_CL_DESCUENTO_SS As String = records(RESULT.Columns.Get("CAT_CL_DESCUENTO_SS")) - Dim CAT_CL_DESCUENTO_RTEC As String = records(RESULT.Columns.Get("CAT_CL_DESCUENTO_RTEC")) - Dim CAT_CL_DESCUENTO_PING As String = records(RESULT.Columns.Get("CAT_CL_DESCUENTO_PING")) - Dim CAT_CL_TIPOCLIENTE As String = records(RESULT.Columns.Get("CAT_CL_TIPOCLIENTE")) - Starter.skmt.ExecNonQuery2("INSERT INTO DESC_CLIENTES(DC_CL_CLIENTE , CAT_CL_DESCUENTO_SS , CAT_CL_DESCUENTO_RTEC , CAT_CL_DESCUENTO_PING, CAT_CL_TIPOCLIENTE ) VALUES (?,?,?,?,?)", Array As Object (DC_CL_CLIENTE , CAT_CL_DESCUENTO_SS , CAT_CL_DESCUENTO_RTEC , CAT_CL_DESCUENTO_PING,CAT_CL_TIPOCLIENTE)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - End If - End If - - 'DESCUENTOS SKU - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "DESCUENTOS_CLIENTE_SKU" Then 'query tag - If logger Then Log("TIEMPO DESCUENTOS_CLIENTE_SKU : " & ((DateTime.Now-inicioContador)/1000)) - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim CAT_DS_CLIENTE As String = records(RESULT.Columns.Get("CAT_DS_CLIENTE")) - Dim CAT_DS_PRODID As String = records(RESULT.Columns.Get("CAT_DS_PRODID")) - Dim CAT_DS_PORCENTAJE As String = records(RESULT.Columns.Get("CAT_DS_PORCENTAJE")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_DESCUENTOS_SKU (CAT_DS_CLIENTE, CAT_DS_PRODID, CAT_DS_PORCENTAJE ) VALUES (?,?,?)", Array As Object (CAT_DS_CLIENTE, CAT_DS_PRODID, CAT_DS_PORCENTAJE)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "hist_abordo" Then 'query tag - If logger Then Log("TIEMPO hist_abordo : " & ((DateTime.Now-inicioContador)/1000)) - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim HVD_PROID As String = records(RESULT.Columns.Get("HVD_PROID")) - Dim HVD_CANT As String = records(RESULT.Columns.Get("HVD_CANT")) - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_ABORDO(HIST_PROID, HIST_CANT) VALUES (?,?)", Array As Object (HVD_PROID, HVD_CANT)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "gunaprod" Then 'query tag - If logger Then Log("TIEMPO gunaprod : " & ((DateTime.Now-inicioContador)/1000)) - S_CP.Text = "CARGANDO" - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID")) - Dim CAT_GP_NOMBRE As String = records(RESULT.Columns.Get("CAT_GP_NOMBRE")) - Dim CAT_GP_IMP1 As String = records(RESULT.Columns.Get("CAT_GP_IMP1")) - Dim CAT_GP_IMP2 As String = records(RESULT.Columns.Get("CAT_GP_IMP2")) - Dim CAT_GP_PRECIO As String = records(RESULT.Columns.Get("CAT_GP_PRECIO")) - Dim CAT_GP_CLASIF As String = records(RESULT.Columns.Get("CAT_GP_CLASIF")) - Dim CAT_GP_STS As String = records(RESULT.Columns.Get("CAT_GP_STS")) - Dim CAT_GP_TIPO As String = records(RESULT.Columns.Get("CAT_GP_TIPO")) - Dim CAT_GP_SUBTIPO As String = records(RESULT.Columns.Get("CAT_GP_SUBTIPO")) - Dim CAT_GP_IMG() As Byte = records(RESULT.Columns.Get("CAT_GP_IMG")) - Dim CAT_GP_ALMACEN As Int = records(RESULT.Columns.Get("CAT_GP_ALMACEN")) - Dim CAT_GP_DEV As String = records(RESULT.Columns.Get("CAT_GP_DEV")) - Dim CAT_GP_TIPOPROD As Int = records(RESULT.Columns.Get("CAT_GP_TIPOPROD")) - Dim CAT_GP_INICIATIVA As Int = records(RESULT.Columns.Get("CAT_GP_INICIATIVA")) - 'CAT_GP_INICIATIVA = 5 - ' skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_DEV) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_DEV)) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_TIPOPROD,CAT_GP_INICIATIVA,CAT_GP_DEV,CAT_GP_CODPROMO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,0)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_TIPOPROD, CAT_GP_INICIATIVA,CAT_GP_DEV)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - ' c=skmt.ExecQuery("select CAT_GP_CLASIF, COUNT(*) AS CUANTOS from CAT_GUNAPROD GROUP BY CAT_GP_CLASIF order by CAT_GP_CLASIF asc") - ' c.Position=0 - ' skmt.ExecNonQuery("DELETE FROM COUNT_GUNAPROD") - ' skmt.ExecNonQuery2("INSERT INTO COUNT_GUNAPROD(CAT_GP_CLASIF, CUANTOS) VALUES (?,?)", Array As Object (c.GetString("CAT_GP_CLASIF"), c.GetString("CUANTOS"))) - ' c.Close - Listo2=1 - If PB2.Progress = 0 Then - PB2.Progress = 30 - S_CP.Text = "CARGANDO" - ELSE If PB2.Progress = 30 Then - PB2.Progress = 60 - ELSE IF PB2.Progress = 60 Then - PB2.Progress = 80 - ELSE IF PB2.Progress = 80 Then - PB2.Progress = 100 - S_CP.Text = "LISTO" - End If - ' ToastMessageShow("Productos 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 - ''' CARGAS DOE PEDIDO - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "cat_gunaprod_doe" Then 'query tag - If logger Then Log("TIEMPO gunaprod_DOE : " & ((DateTime.Now-inicioContador)/1000)) - S_CP.Text = "CARGANDO" - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID")) - Dim CAT_GP_NOMBRE As String = records(RESULT.Columns.Get("CAT_GP_NOMBRE")) - Dim CAT_GP_IMP1 As String = records(RESULT.Columns.Get("CAT_GP_IMP1")) - Dim CAT_GP_IMP2 As String = records(RESULT.Columns.Get("CAT_GP_IMP2")) - Dim CAT_GP_PRECIO As String = records(RESULT.Columns.Get("CAT_GP_PRECIO")) - Dim CAT_GP_CLASIF As String = records(RESULT.Columns.Get("CAT_GP_CLASIF")) - Dim CAT_GP_STS As String = records(RESULT.Columns.Get("CAT_GP_STS")) - Dim CAT_GP_TIPO As String = records(RESULT.Columns.Get("CAT_GP_TIPO")) - Dim CAT_GP_SUBTIPO As String = records(RESULT.Columns.Get("CAT_GP_SUBTIPO")) - Dim CAT_GP_IMG() As Byte = records(RESULT.Columns.Get("CAT_GP_IMG")) - Dim CAT_GP_ALMACEN As Int = records(RESULT.Columns.Get("CAT_GP_ALMACEN")) - Dim CAT_GP_DEV As String = records(RESULT.Columns.Get("CAT_GP_DEV")) - Dim CAT_GP_TIPOPROD As Int = records(RESULT.Columns.Get("CAT_GP_TIPOPROD")) - Dim CAT_GP_INICIATIVA As Int = records(RESULT.Columns.Get("CAT_GP_INICIATIVA")) - 'CAT_GP_INICIATIVA = 5 - ' skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_DEV) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_DEV)) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD_DOE(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_TIPOPROD,CAT_GP_INICIATIVA,CAT_GP_DEV,CAT_GP_CODPROMO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,0)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_TIPOPROD, CAT_GP_INICIATIVA,CAT_GP_DEV)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - ' c=skmt.ExecQuery("select CAT_GP_CLASIF, COUNT(*) AS CUANTOS from CAT_GUNAPROD GROUP BY CAT_GP_CLASIF order by CAT_GP_CLASIF asc") - ' c.Position=0 - ' skmt.ExecNonQuery("DELETE FROM COUNT_GUNAPROD") - ' skmt.ExecNonQuery2("INSERT INTO COUNT_GUNAPROD(CAT_GP_CLASIF, CUANTOS) VALUES (?,?)", Array As Object (c.GetString("CAT_GP_CLASIF"), c.GetString("CUANTOS"))) - ' c.Close - 'Listo2=1 - - ' ToastMessageShow("Productos Actualizados." , True) - - End If - End If - - ''' FIN CARGA CATALOGO DOE - ''' INICIO CARGA PEDIDO DOE - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "pedido_doe" Then 'query tag - If logger Then Log("TIEMPO PEDIDO_DOE : " & ((DateTime.Now-inicioContador)/1000)) - S_CP.Text = "CARGANDO" - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim HVD_ALMACEN As String = records(RESULT.Columns.Get("HVD_ALMACEN")) - Dim HVD_COSTO_TOT As String = records(RESULT.Columns.Get("HVD_COSTO_TOT")) - Dim HVD_COSTOU As String = records(RESULT.Columns.Get("HVD_COSTOU")) - Dim HVD_CANT As String = records(RESULT.Columns.Get("HVD_CANT")) - Dim HVD_PRONOMBRE As String = records(RESULT.Columns.Get("HVD_PRONOMBRE")) - Dim HVD_PROID As String = records(RESULT.Columns.Get("HVD_PROID")) - Dim HVD_CLIENTE As String = records(RESULT.Columns.Get("HVD_CLIENTE")) - Dim HVD_FECHA As String = records(RESULT.Columns.Get("HVD_FECHA")) - Dim HVD_USUARIO As String = records(RESULT.Columns.Get("HVD_USUARIO")) - Dim HVD_RUTA As String = records(RESULT.Columns.Get("HVD_RUTA")) - - 'CAT_GP_INICIATIVA = 5 - ' skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_DEV) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_DEV)) - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO_DOE(PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES (?,?,?,?,?,?,?,?,?,?,?,0)", Array As Object (HVD_ALMACEN, HVD_COSTO_TOT, HVD_COSTOU,HVD_CANT, HVD_PRONOMBRE, HVD_PROID, HVD_CLIENTE, HVD_FECHA, HVD_USUARIO,HVD_RUTA, "DOE")) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - - - - ' c=skmt.ExecQuery("select CAT_GP_CLASIF, COUNT(*) AS CUANTOS from CAT_GUNAPROD GROUP BY CAT_GP_CLASIF order by CAT_GP_CLASIF asc") - ' c.Position=0 - ' skmt.ExecNonQuery("DELETE FROM COUNT_GUNAPROD") - ' skmt.ExecNonQuery2("INSERT INTO COUNT_GUNAPROD(CAT_GP_CLASIF, CUANTOS) VALUES (?,?)", Array As Object (c.GetString("CAT_GP_CLASIF"), c.GetString("CUANTOS"))) - ' c.Close - 'Listo2=1 - - ' ToastMessageShow("Productos Actualizados." , True) - - End If - End If - ''' FIN CARGA PEDIDO DOE - 'CARGA DEL CATALOGO ABORDO - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "gunaprod2" Then 'query tag - If logger Then Log("TIEMPO gunaprod2 : " & ((DateTime.Now-inicioContador)/1000)) - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID")) - Dim CAT_GP_NOMBRE As String = records(RESULT.Columns.Get("CAT_GP_NOMBRE")) - Dim CAT_GP_IMP1 As String = records(RESULT.Columns.Get("CAT_GP_IMP1")) - Dim CAT_GP_IMP2 As String = records(RESULT.Columns.Get("CAT_GP_IMP2")) - Dim CAT_GP_PRECIO As String = records(RESULT.Columns.Get("CAT_GP_PRECIO")) - Dim CAT_GP_CLASIF As String = records(RESULT.Columns.Get("CAT_GP_CLASIF")) - Dim CAT_GP_STS As String = records(RESULT.Columns.Get("CAT_GP_STS")) - Dim CAT_GP_TIPO As String = records(RESULT.Columns.Get("CAT_GP_TIPO")) - Dim CAT_GP_SUBTIPO As String = records(RESULT.Columns.Get("CAT_GP_SUBTIPO")) - Dim CAT_GP_IMG() As Byte = records(RESULT.Columns.Get("CAT_GP_IMG")) - Dim CAT_GP_ALMACEN As Int = records(RESULT.Columns.Get("CAT_GP_ALMACEN")) - Dim CAT_GP_DEV As String = records(RESULT.Columns.Get("CAT_GP_DEV")) - Dim CAT_GP_TIPOPROD As Int = records(RESULT.Columns.Get("CAT_GP_TIPOPROD")) - Dim CAT_GP_INICIATIVA As Int = records(RESULT.Columns.Get("CAT_GP_INICIATIVA")) - Dim CAT_GP_CODPROMO As String = records(RESULT.Columns.Get("CAT_GP_CODPROMO")) - 'CAT_GP_INICIATIVA = 5 - ' skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_DEV) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_DEV)) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD2(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_TIPOPROD,CAT_GP_INICIATIVA,CAT_GP_DEV,CAT_GP_CODPROMO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_TIPOPROD, CAT_GP_INICIATIVA,CAT_GP_DEV,CAT_GP_CODPROMO)) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD5(CAT_GP_ID,CAT_GP_ALMACEN) VALUES (?,?)", Array As Object (CAT_GP_ID,CAT_GP_ALMACEN)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - c=Starter.skmt.ExecQUERY("SELECT COUNT(*) AS CUANTOS FROM PEDIDO WHERE PE_CLIENTE <> 0") - c.Position = 0 - cuantos_pedidosc = c.GetString("CUANTOS") - c.Close - If cuantos_pedidosc > 0 Then - c=Starter.skmt.ExecQUERY("SELECT PE_PROID, SUM(PE_CANT) AS PE_CANT FROM PEDIDO WHERE PE_CLIENTE <> 0 GROUP BY PE_PROID") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("update CAT_GUNAPROD2 set CAT_GP_ALMACEN = CAT_GP_ALMACEN - ? where CAT_GP_ID = ? ", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID"))) - Next - End If - End If - ' skmt.ExecNonQuery("DELETE FROM CAT_GUNAPROD5") - ' skmt.ExecNonQuery("INSERT INTO CAT_GUNAPROD5(CAT_GP_ID, CAT_GP_ALMACEN) SELECT CAT_GP_ID, CAT_GP_ALMACEN FROM CAT_GUNAPROD2") - - ' - ' c=skmt.ExecQuery("select CAT_GP_CLASIF, COUNT(*) AS CUANTOS from CAT_GUNAPROD2 GROUP BY CAT_GP_CLASIF order by CAT_GP_CLASIF asc") - ' c.Position=0 - ' skmt.ExecNonQuery("DELETE FROM COUNT_GUNAPROD2") - ' skmt.ExecNonQuery2("INSERT INTO COUNT_GUNAPROD2(CAT_GP_CLASIF, CUANTOS) VALUES (?,?)", Array As Object (c.GetString("CAT_GP_CLASIF"), c.GetString("CUANTOS"))) - ' c.Close - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "devoluciones" Then 'query tag - If logger Then Log("TIEMPO devoluciones : " & ((DateTime.Now-inicioContador)/1000)) - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID")) - Dim CAT_GP_NOMBRE As String = records(RESULT.Columns.Get("CAT_GP_NOMBRE")) - Dim CAT_GP_PRECIO As String = records(RESULT.Columns.Get("CAT_GP_PRECIO")) - - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_DEV(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_PRECIO) VALUES (?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_PRECIO)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - If PB2.Progress = 0 Then - PB2.Progress = 30 - S_CP.Text = "CARGANDO" - ELSE If PB2.Progress = 30 Then - PB2.Progress = 60 - ELSE IF PB2.Progress = 60 Then - PB2.Progress = 80 - ELSE IF PB2.Progress = 80 Then - PB2.Progress = 100 - S_CP.Text = "LISTO" - End If - ' ToastMessageShow("Promociones Actualizados." , True) - Listo4=1 - If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - Else If Listo4 = 1 And Listo3 = 1 And inve = 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 = "gunaprodp" Then 'query tag - If logger Then Log("TIEMPO gunaprodp : " & ((DateTime.Now-inicioContador)/1000)) - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID")) - Dim CAT_GP_NOMBRE As String = records(RESULT.Columns.Get("CAT_GP_NOMBRE")) - Dim CAT_GP_IMP1 As String = records(RESULT.Columns.Get("CAT_GP_IMP1")) - Dim CAT_GP_IMP2 As String = records(RESULT.Columns.Get("CAT_GP_IMP2")) - Dim CAT_GP_PRECIO As String = records(RESULT.Columns.Get("CAT_GP_PRECIO")) - Dim CAT_GP_CLASIF As String = records(RESULT.Columns.Get("CAT_GP_CLASIF")) - Dim CAT_GP_STS As String = records(RESULT.Columns.Get("CAT_GP_STS")) - Dim CAT_GP_TIPO As String = records(RESULT.Columns.Get("CAT_GP_TIPO")) - Dim CAT_GP_SUBTIPO As String = records(RESULT.Columns.Get("CAT_GP_SUBTIPO")) - Dim CAT_GP_IMG() As Byte = records(RESULT.Columns.Get("CAT_GP_IMG")) - Dim CAT_GP_ALMACEN As Int = records(RESULT.Columns.Get("CAT_GP_ALMACEN")) - Dim CAT_GP_TIPOPROD As Int = records(RESULT.Columns.Get("CAT_GP_TIPOPROD")) -' Dim CAT_GP_DEV As String = records(RESULT.Columns.Get("CAT_GP_DEV")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD2(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_TIPOPROD,CAT_GP_DEV,CAT_GP_CODPROMO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,0)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_TIPOPROD,"0")) - ' skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD2(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_TIPOPROD,CAT_GP_DEV,CAT_GP_CODPROMO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,0)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_TIPOPROD,"0")) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - If PB2.Progress = 0 Then - PB2.Progress = 30 - S_CP.Text = "CARGANDO" - ELSE If PB2.Progress = 30 Then - PB2.Progress = 60 - ELSE IF PB2.Progress = 60 Then - PB2.Progress = 80 - ELSE IF PB2.Progress = 80 Then - PB2.Progress = 100 - S_CP.Text = "LISTO" - End If - ' ToastMessageShow("Promociones Actualizados." , True) - Listo4=1 - If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - Else If Listo4 = 1 And Listo3 = 1 And inve = 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 = "gunaprodps" Then 'query tag - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID")) - Dim CAT_GP_NOMBRE As String = records(RESULT.Columns.Get("CAT_GP_NOMBRE")) - Dim CAT_GP_IMP1 As String = records(RESULT.Columns.Get("CAT_GP_IMP1")) - Dim CAT_GP_IMP2 As String = records(RESULT.Columns.Get("CAT_GP_IMP2")) - Dim CAT_GP_PRECIO As String = records(RESULT.Columns.Get("CAT_GP_PRECIO")) - Dim CAT_GP_CLASIF As String = records(RESULT.Columns.Get("CAT_GP_CLASIF")) - Dim CAT_GP_STS As String = records(RESULT.Columns.Get("CAT_GP_STS")) - Dim CAT_GP_TIPO As String = records(RESULT.Columns.Get("CAT_GP_TIPO")) - Dim CAT_GP_SUBTIPO As String = records(RESULT.Columns.Get("CAT_GP_SUBTIPO")) - Dim CAT_GP_IMG() As Byte = records(RESULT.Columns.Get("CAT_GP_IMG")) - Dim CAT_GP_ALMACEN As Int = records(RESULT.Columns.Get("CAT_GP_ALMACEN")) - Dim CAT_GP_TIPOPROD As Int = records(RESULT.Columns.Get("CAT_GP_TIPOPROD")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD2(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_TIPOPROD) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_TIPOPROD)) - ' skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD2(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_TIPOPROD) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_TIPOPROD)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - If PB2.Progress = 0 Then - PB2.Progress = 30 - S_CP.Text = "CARGANDO" - ELSE If PB2.Progress = 30 Then - PB2.Progress = 60 - ELSE IF PB2.Progress = 60 Then - PB2.Progress = 80 - ELSE IF PB2.Progress = 80 Then - PB2.Progress = 100 - S_CP.Text = "LISTO" - End If - 'ToastMessageShow("Promociones especiales Actualizados." , True) - Listo4=1 - If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - Else If Listo4 = 1 And Listo3 = 1 And inve = 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 = "detallepaq" Then 'query tag - If logger Then Log("TIEMPO detallepaq : " & ((DateTime.Now-inicioContador)/1000)) - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim CAT_DP_ALMACEN As String = records(RESULT.Columns.Get("CAT_DP_ALMACEN")) - Dim CAT_DP_ID As String = records(RESULT.Columns.Get("CAT_DP_ID")) - Dim CAT_DP_IDPROD As String = records(RESULT.Columns.Get("CAT_DP_IDPROD")) - Dim CAT_DP_TIPO As String = records(RESULT.Columns.Get("CAT_DP_TIPO")) - Dim CAT_DP_PZAS As String = records(RESULT.Columns.Get("CAT_DP_PZAS")) - Dim CAT_DP_USUARIO As String = records(RESULT.Columns.Get("CAT_DP_USUARIO")) - Dim CAT_DP_FECHA As String = records(RESULT.Columns.Get("CAT_DP_FECHA")) - Dim CAT_DP_REGALO As String = records(RESULT.Columns.Get("CAT_DP_REGALO")) - Dim CAT_DP_CLASIF As String = records(RESULT.Columns.Get("CAT_DP_CLASIF")) - Dim CAT_DP_PRECIO As String = records(RESULT.Columns.Get("CAT_DP_PRECIO")) - Dim CAT_DP_PRECIO_SIMPTOS As String = records(RESULT.Columns.Get("CAT_DP_PRECIO_SIMPTOS")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_DETALLES_PAQ(CAT_DP_ALMACEN,CAT_DP_ID,CAT_DP_IDPROD,CAT_DP_TIPO,CAT_DP_PZAS,CAT_DP_USUARIO,CAT_DP_FECHA,CAT_DP_REGALO,CAT_DP_CLASIF,CAT_DP_PRECIO,CAT_DP_PRECIO_SIMPTOS) VALUES (?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_DP_ALMACEN,CAT_DP_ID,CAT_DP_IDPROD,CAT_DP_TIPO,CAT_DP_PZAS,CAT_DP_USUARIO,CAT_DP_FECHA,CAT_DP_REGALO,CAT_DP_CLASIF,CAT_DP_PRECIO,CAT_DP_PRECIO_SIMPTOS)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - If PB2.Progress = 0 Then - PB2.Progress = 30 - S_CP.Text = "CARGANDO" - ELSE If PB2.Progress = 30 Then - PB2.Progress = 60 - ELSE IF PB2.Progress = 60 Then - PB2.Progress = 80 - ELSE IF PB2.Progress = 80 Then - PB2.Progress = 100 - S_CP.Text = "LISTO" - End If - Listo3 =1 - If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - Else If Listo4 = 1 And Listo3 = 1 And inve = 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 = "hist_datos" Then 'query tag - If logger Then Log("TIEMPO hist_datos : " & ((DateTime.Now-inicioContador)/1000)) - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim HVD_CLIENTE As String = records(RESULT.Columns.Get("HVD_CLIENTE")) - Dim HVD_PRONOMBRE As String = records(RESULT.Columns.Get("HVD_PRONOMBRE")) - Dim HVD_CANT As String = records(RESULT.Columns.Get("HVD_CANT")) - Dim HVD_COSTO_TOT As String = records(RESULT.Columns.Get("HVD_COSTO_TOT")) - Dim HVD_FECHA As String = records(RESULT.Columns.Get("HVD_FECHA")) - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_VENTAS(HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT, HVD_FECHA) VALUES (?,?,?,?,?)", Array As Object (HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT,HVD_FECHA)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - Listo3 =1 - If PB1.Progress = 0 Then - PB1.Progress = 30 - S_CH.Text = "CARGANDO" - ELSE If PB1.Progress = 30 Then - PB1.Progress = 70 - ELSE IF PB1.Progress = 70 Then - PB1.Progress = 100 - S_CH.Text = "LISTO" - End If -' ToastMessageShow("Venta historico Actualizado." , 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 = "hist_rmi" Then 'query tag - If logger Then Log("TIEMPO hist_rmi : " & ((DateTime.Now-inicioContador)/1000)) - For Each records() As Object In RESULT.Rows - Dim HVD_CLIENTE As String = records(RESULT.Columns.Get("HVD_CLIENTE")) - Dim HVD_PRONOMBRE As String = records(RESULT.Columns.Get("HVD_PRONOMBRE")) - Dim HVD_CANT As String = records(RESULT.Columns.Get("HVD_CANT")) - Dim HVD_PROID As String = records(RESULT.Columns.Get("HVD_PROID")) - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_RMI(HR_CLIENTE,HR_PRONOMBRE,HR_PROID, HR_CANT) VALUES (?,?,?,?)", Array As Object (HVD_CLIENTE,HVD_PRONOMBRE,HVD_PROID, HVD_CANT)) - Next - Listo3 =1 - If PB1.Progress = 0 Then - PB1.Progress = 30 - S_CH.Text = "CARGANDO" - ELSE If PB1.Progress = 30 Then - PB1.Progress = 50 - ELSE IF PB1.Progress = 50 Then - PB1.Progress = 80 - ELSE If PB1.Progress = 80 Then - PB1.Progress = 100 - S_CH.Text = "LISTO" - End If -' ToastMessageShow("Venta historico Actualizado." , 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 = "variables" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim Cat_Va_Descripcion As String = records(RESULT.Columns.Get("CAT_VA_DESCRIPCION")) - Dim Cat_Va_Valor As String = records(RESULT.Columns.Get("CAT_VA_VALOR")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object (Cat_Va_Descripcion, Cat_Va_Valor)) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "limite_abordo" Then 'query tag - If logger Then Log("TIEMPO limite_abordo : " & ((DateTime.Now-inicioContador)/1000)) - For Each records() As Object In RESULT.Rows - Dim Cat_Va_Valor As String = records(RESULT.Columns.Get("CAT_LA_LIMITE_ABORDO")) - Dim CAT_LA_ESTATUS_AUTORIZA As String = records(RESULT.Columns.Get("CAT_LA_ESTATUS_AUTORIZA")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("LIMITE")) - If CAT_LA_ESTATUS_AUTORIZA = 1 Then - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("LIMITE", "100000")) - Else - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("LIMITE", Cat_Va_Valor)) - End If - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "carga_encuesta" Then 'query tag - If logger Then Log("TIEMPO carga_encuesta : " & ((DateTime.Now-inicioContador)/1000)) - For Each records() As Object In RESULT.Rows - Dim CAT_EP_ID As String = records(RESULT.COLUMNS.GET("CAT_EP_ID")) - Dim CAT_EP_IDTIPOPREGUNTA As String = records(RESULT.COLUMNS.GET("CAT_EP_IDTIPOPREGUNTA")) - Dim CAT_CE_DESCRIPCION As String = records(RESULT.COLUMNS.GET("CAT_CE_DESCRIPCION")) - Dim CAT_EP_PREGUNTA As String = records(RESULT.COLUMNS.GET("CAT_EP_PREGUNTA")) - Dim CAT_EP_RES1_PRED As String = records(RESULT.COLUMNS.GET("CAT_EP_RES1_PRED")) - Dim CAT_EP_RES2_PRED As String = records(RESULT.COLUMNS.GET("CAT_EP_RES2_PRED")) - Dim CAT_EP_RES3_PRED As String = records(RESULT.COLUMNS.GET("CAT_EP_RES3_PRED")) - Dim CAT_EP_ORDEN_PREGUNTA As String = records(RESULT.COLUMNS.GET("CAT_EP_ORDEN_PREGUNTA")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_ENCUESTA_PREGUNTA (CAT_EP_ID ,CAT_EP_IDTIPOPREGUNTA ,CAT_CE_DESCRIPCION ,CAT_EP_PREGUNTA ,CAT_EP_RES1_PRED ,CAT_EP_RES2_PRED ,CAT_EP_RES3_PRED ,CAT_EP_ORDEN_PREGUNTA ) VALUES (?,?,?,?,?,?,?,?)", Array As Object (CAT_EP_ID ,CAT_EP_IDTIPOPREGUNTA ,CAT_CE_DESCRIPCION ,CAT_EP_PREGUNTA ,CAT_EP_RES1_PRED ,CAT_EP_RES2_PRED ,CAT_EP_RES3_PRED ,CAT_EP_ORDEN_PREGUNTA)) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "carga_encuesta_cliente" Then 'query tag - If logger Then Log("TIEMPO carga_encuesta_cliente : " & ((DateTime.Now-inicioContador)/1000)) - For Each records() As Object In RESULT.Rows - Dim HIST_ECD_IDGRUPO As String = records(RESULT.COLUMNS.GET("HIST_ECD_IDGRUPO")) - Dim HIST_ECD_CLIENTE As String = records(RESULT.COLUMNS.GET("HIST_ECD_CLIENTE")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_ENCUESTA_CLIENTE(HIST_ECD_IDGRUPO ,HIST_ECD_CLIENTE) VALUES (?,?)", Array As Object (HIST_ECD_IDGRUPO ,HIST_ECD_CLIENTE)) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "valida_pedido" Then 'query tag - If logger Then Log("TIEMPO valida_pedido : " & ((DateTime.Now-inicioContador)/1000)) - For Each records() As Object In RESULT.Rows - Dim CUANTOSP As Int = records(RESULT.Columns.Get("CUANTOSP")) - If cuantos_pedido < = CUANTOSP Then - datos_iguales = "ok" - S_CP.Text = "INFO OK" - Else - If Starter.marcaCel <> "LGE" Then ToastMessageShow("No se cargo bien la info P. Sync Nuevamente" & CUANTOSP & " " & cuantos_pedido, True) - S_CP.Text = "ENVIAR DATOS (K-2)" - End If - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "valida_pedido1" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CUANTOSP As Int = records(RESULT.Columns.Get("CUANTOSP")) - If cuantos_pedido = CUANTOSP Then - Msgbox("ENVIO EXITOSO","AVISO") 'ignore - cargar.Visible = True - Subir.Visible = True - trabajar.Visible = True - Else - Msgbox("NO ESTA COMPLETA LA INFO", "AVISO") 'ignore - connecta.Visible = True - Resumen.Visible = True - BUSCA.Visible = True - NUEVO.Visible = True - trabajar.Visible = True - B_PROXIMA.Visible = True - End If - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "valida_pedidoc" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CUANTOSC As Int = records(RESULT.Columns.Get("CUANTOSC")) - If cuantos_pedidosc = CUANTOSC Then - datos_iguales = "ok" - S_CP.Text = "INFO OK" - Else - If Starter.marcaCel <> "LGE" Then ToastMessageShow("No se cargo bien la info C. Sync Nuevamente" & CUANTOSC & " " & cuantos_pedidosc, True) - End If - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "valida_noventa" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CUANTOSN As Int = records(RESULT.Columns.Get("CUANTOSN")) - If cuantos_noventa = CUANTOSN Then - datos_iguales = "ok" - S_CP.Text = "INFO OK" - Else - If Starter.marcaCel <> "LGE" Then ToastMessageShow("No se cargo bien la info N. Sync Nuevamente" & CUANTOSN & " " & cuantos_noventa, True) - End If - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "ins_pedido" Then 'query tag - For Each records() As Object In RESULT.Rows - PB2.Progress = PB2.Progress + 5 - S_CP.Text = "SUBIENDO" - Next - PB2.Progress = 100 - S_CP.Text = "LISTO" - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "version" Then 'query tag - For Each records() As Object In RESULT.Rows - Starter.skmt.ExecNonQuery("delete from VERSION") - Dim CAT_VE_VERSION As String = records(RESULT.Columns.Get("CAT_VE_VERSION")) - Starter.skmt.ExecNonQuery("delete from VERSION") - Starter.skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object (CAT_VE_VERSION)) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "count_cli" Then 'query tag - For Each records() As Object In RESULT.Rows - COUNT_CLIE = records(RESULT.Columns.Get("COUNT_CLIE")) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "ruta" Then 'query tag - e_ruta.Enabled = True -' Log(RESULT) -' Log(RESULT.Columns.Get("VALIDO")) - If RESULT.Columns.Get("VALIDO") = "0" Then ToastMessageShow("Ruta incorrecta", True) - If RESULT.Rows.Size = 0 Then ToastMessageShow("No hay ruta para ese usuario", True) - For Each records() As Object In RESULT.Rows - Dim VALIDO As String = records(RESULT.Columns.Get("VALIDO")) - Log("|"&VALIDO&"|") -' If Logger Then Log(records(RESULT.Columns.Get("CAT_RU_CATEGORIA"))) - Starter.rutaTipo = records(RESULT.Columns.Get("CAT_RU_CATEGORIA")) 'Traemos el tipo de ruta para que cuando sean foraneas no carguen la carta oprte todos los dias. - If VALIDO = "OK" Then - cargar.Visible = True - Subir.Visible = True - inv.Visible = True - connecta.Visible = False - Starter.rutapreventa = e_ruta.text - If conn = "1" Then - ToastMessageShow("Existe Conexión con el Servidor." , True) - End If - Else - cargar.Visible = False - Subir.Visible = False - inv.Visible = False - connecta.Visible = False - End If - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "usuario" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim name2 As String = records(RESULT.Columns.Get("VALIDO")) - Next - If name2 = "OK" Then - PASO = 1 - End If - P1.Visible = False - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "fecha" Then 'query tag - For Each records() As Object In RESULT.Rows - Starter.FECHA_HOY = records(RESULT.Columns.Get("FECHA")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FECHA")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FECHA",Starter.FECHA_HOY)) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "folio" Then 'query tag - If logger Then Log("TIEMPO folio : " & ((DateTime.Now-inicioContador)/1000)) - For Each records() As Object In RESULT.Rows - Dim FOLIO As String = records(RESULT.Columns.Get("FOLIO")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FOLIO")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FOLIO",FOLIO)) - Next - End If - End If - - 'Perfil - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "perfil" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim PERFIL As String = records(RESULT.Columns.Get("PERFIL")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("PERFIL")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("PERFIL",PERFIL)) - Next - End If - End If - - 'Marcas - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "marcas" Then 'query tag - If logger Then Log("TIEMPO marcas : " & ((DateTime.Now-inicioContador)/1000)) - For Each records() As Object In RESULT.Rows - Dim MARCAS As String = records(RESULT.Columns.Get("MARCAS")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("MARCAS")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MARCAS",MARCAS)) - Next - End If - End If - - ' SUCURSAL - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "sucursal" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim SUCURSAL As String = records(RESULT.Columns.Get("SUCURSAL")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("SUCURSAL")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SUCURSAL",SUCURSAL)) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "placas" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim PLACAS As String = records(RESULT.Columns.Get("PLACAS")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("PLACAS")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("PLACAS",PLACAS)) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "SEMANA" Then 'query tag - If logger Then Log("TIEMPO SEMANA : " & ((DateTime.Now-inicioContador)/1000)) - For Each records() As Object In RESULT.Rows - Dim Cat_Va_Valor As String = records(RESULT.Columns.Get("CAT_VA_VALOR")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("SEMANA")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SEMANA",Cat_Va_Valor)) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "dia_visita" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim DIA_VISITA As String = records(RESULT.Columns.Get("DIA_VISITA")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("DIA_VISITA")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("DIA_VISITA",DIA_VISITA)) - 'Msgbox(DIA_VISITA, "") 'ignore - Next - End If - End If - - 'CUOTAS - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "CUOTAS" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim HC_RUTA As String = records(RESULT.Columns.Get("HC_RUTA")) - Dim HC_CUOTA1 As String = records(RESULT.Columns.Get("HC_CUOTA1")) - Dim HC_CUOTA2 As String = records(RESULT.Columns.Get("HC_CUOTA2")) - Dim HC_CUOTA3 As String = records(RESULT.Columns.Get("HC_CUOTA3")) - Dim HC_CUOTA4 As String = records(RESULT.Columns.Get("HC_CUOTA4")) - Dim HC_CUOTA5 As String = records(RESULT.Columns.Get("HC_CUOTA5")) - Dim HC_CUOTA6 As String = records(RESULT.Columns.Get("HC_CUOTA6")) - Dim HC_META1 As String = records(RESULT.Columns.Get("HC_META1")) - Dim HC_META2 As String = records(RESULT.Columns.Get("HC_META2")) - Dim HC_META3 As String = records(RESULT.Columns.Get("HC_META3")) - Dim HC_META4 As String = records(RESULT.Columns.Get("HC_META4")) - Dim HC_META5 As String = records(RESULT.Columns.Get("HC_META5")) - Dim HC_META6 As String = records(RESULT.Columns.Get("HC_META6")) - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_CUOTAS(HC_RUTA, HC_CUOTA1,HC_CUOTA2,HC_CUOTA3,HC_CUOTA4,HC_CUOTA5,HC_CUOTA6,HC_META1,HC_META2,HC_META3,HC_META4,HC_META5,HC_META6) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (HC_RUTA, HC_CUOTA1,HC_CUOTA2,HC_CUOTA3,HC_CUOTA4,HC_CUOTA5,HC_CUOTA6,HC_META1,HC_META2,HC_META3,HC_META4,HC_META5,HC_META6)) - Next - End If - End If - - - 'Cambios - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "cat_cambios" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CAMBIOS As String = records(RESULT.Columns.Get("CAT_VA_VALOR")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("CAMBIOS")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("CAMBIOS",CAMBIOS)) - Next - End If - End If - - 'Precios - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "precios" Then 'query tag - If logger Then Log("TIEMPO precios : " & ((DateTime.Now-inicioContador)/1000)) -' Subs.cronoX("Precios", 1) - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID")) - Dim CAT_GP_PRECIO As String = records(RESULT.Columns.Get("CAT_GP_PRECIO")) - Dim CAT_GP_PRECIO1 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO1")) - Dim CAT_GP_PRECIO2 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO2")) - Dim CAT_GP_PRECIO3 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO3")) - Dim CAT_GP_PRECIO4 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO4")) - Dim CAT_GP_PRECIO5 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO5")) - Dim CAT_GP_PRECIO6 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO6")) - Dim CAT_GP_PRECIO7 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO7")) - Dim CAT_GP_PRECIO8 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO8")) - Dim CAT_GP_PRECIO9 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO10")) - Dim CAT_GP_PRECIO10 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO10")) 'ignore - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_PRECIOS(CAT_GP_ID,CAT_GP_PRECIO, CAT_GP_PRECIO1,CAT_GP_PRECIO2,CAT_GP_PRECIO3,CAT_GP_PRECIO4,CAT_GP_PRECIO5,CAT_GP_PRECIO6,CAT_GP_PRECIO7,CAT_GP_PRECIO8,CAT_GP_PRECIO9) VALUES (?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_PRECIO, CAT_GP_PRECIO1,CAT_GP_PRECIO2,CAT_GP_PRECIO3,CAT_GP_PRECIO4,CAT_GP_PRECIO5,CAT_GP_PRECIO6,CAT_GP_PRECIO7,CAT_GP_PRECIO8,CAT_GP_PRECIO9)) - Next - Starter.skmt.ExecNonQuery("delete from LISTA_PRECIOS") - Starter.skmt.ExecNonQuery(" insert into LISTA_PRECIOS(PRECIO, CAT_GP_ID, NLISTA) select cat_gp_precio as precio, cat_gp_id, '1' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO1 As precio, CAT_GP_ID, '2' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO2 As precio, CAT_GP_ID, '3' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO3 As precio, CAT_GP_ID, '4' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO4 As precio, CAT_GP_ID, '5' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO5 As precio, CAT_GP_ID, '6' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO6 As precio, CAT_GP_ID, '7' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO7 As precio, CAT_GP_ID, '8' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO8 As precio, CAT_GP_ID, '9' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO9 As precio, CAT_GP_ID, '10' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO10 As precio, CAT_GP_ID, '11' as NLISTA from CAT_PRECIOS") - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction -' If Logger Then LogColor($"///////////////// ${Subs.cronoX("Precios", 2)} ///////////////////////////"$, Colors.red) - ' ToastMessageShow("LISTA DE PRECIOS OK LISTA DE PRECIOS OK", True) - End If - End If - - 'Candado Fin Dia - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "pass_fin_dia" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim nuevaContrasena As String = records(RESULT.Columns.Get("CAR_VA_VALOR3")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FINDIA_PASS")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FINDIA_PASS", nuevaContrasena)) - Next - End If - End If - - 'Exhibidores - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "exhibidores" Then 'query tag - If logger Then Log("TIEMPO exhibidores : " & ((DateTime.Now-inicioContador)/1000)) - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim HIST_EX_ID_CLIENTE As String = records(RESULT.Columns.Get("HIST_EX_ID_CLIENTE")) - Dim HIST_EX_TIPO As String = records(RESULT.Columns.Get("HIST_EX_TIPO")) - Dim HIST_EX_CANT As String = records(RESULT.Columns.Get("HIST_EX_CANT")) 'ignore - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_EXHIBIDORES2(HIST_EX_ID_CLIENTE,HIST_EX_TIPO, HIST_EX_CANT) VALUES (?,?,?)", Array As Object (HIST_EX_ID_CLIENTE,HIST_EX_TIPO, HIST_EX_CANT)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - End If - End If - - 'HIST_ENCUESTA2 - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "HIST_ENCUESTA2" Then 'query tag - If logger Then Log("TIEMPO HIST_ENCUESTA2 : " & ((DateTime.Now-inicioContador)/1000)) - Starter.skmt.BeginTransaction - For Each records() As Object In RESULT.Rows - Dim HE_CLIENTE As String = records(RESULT.Columns.Get("HE_CLIENTE")) - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_ENCUESTA2(HE_CLIENTE) VALUES (?)", Array As Object (HE_CLIENTE)) - Next - Starter.skmt.TransactionSuccessful - Starter.skmt.EndTransaction - End If - End If - End If - Job.Release -End Sub - -Private Sub B4XPage_CloseRequest As ResumableSub - ' BACK key pressed - 'Return True to close, False to cancel - If pdfViewerActivo Then - pdfViewerActivo = False - PNL_ACCESO.Visible = True - Panel7.Visible = True - PNL_ACCESO.BringToFront - p_pdfViewer.Visible = False - Else if P_RESUMEN.Visible Then - B_OK_RES_Click - Else - Subs.iniciaActividad("Login") - End If - Return False -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean -' ' BACK key pressed -' If key=KeyCodes.KEYCODE_BACK Then -' If pdfViewerActivo Then -' pdfViewerActivo = False -' PNL_ACCESO.Visible = True -' Panel7.Visible = True -' PNL_ACCESO.BringToFront -' p_pdfViewer.Visible = False -' Else if P_RESUMEN.Visible Then -' B_OK_RES_Click -' Else -' Subs.iniciaActividad("Main") -' End If -' ' I want to capture the key here so I return True -' Return True -' End If -' ' Returning False signals the system to handle the key -' Return False -End Sub - -Sub connecta_Click -' c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("RUTA")) -' c.Position =0 -' If c.GetString("CAT_VA_VALOR") = l_ruta.Text Then - If e_ruta.Text = "KMTSKLL1" Then - cargar.Visible = True - Subir.Visible = True - e_ruta.Text = "" - End If -' Aqui el codigo para que solo acepte numeros en la ruta, sin caracteres especiales ' Mod por CHV - 211130 - Dim m As Matcher = Regex.Matcher("\d+", e_ruta.Text) 'Buscamos numeros en el campo de la ruta - If m.Find Then e_ruta.Text = m.Match ' Si tiene numeros, solo nos quedamos con ellos. - If e_ruta.Text.Length > 6 Then e_ruta.Text = e_ruta.Text.SubString2(0,6) ' Si tiene mas de 6 numeros solo tomamos los primeros 6 - If logger Then Log(e_ruta.Text) - c=Starter.skmt.ExecQuery("select usuario from usuarioa") - c.Position = 0 - usuario = c.GetString("USUARIO") - c.Close - connecta1 = connecta1 + 1 -' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_READ_PHONE_STATE) -' Wait For Activity_PermissionResult (Permission As String, Result As Boolean) -' If Result Then -' imei = p.GetDeviceId -' End If - imei = "" - conn = "1" - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "select_version_KELL" - reqManager.ExecuteQuery(cmd , 0, "version") - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "select_ruta3_KELL" - cmd.Parameters = Array As Object(ALMACEN, e_ruta.text, usuario) - reqManager.ExecuteQuery(cmd , 0, "ruta") - e_ruta.Enabled = False - If e_ruta.Text = "KMTSKLL1" Then e_ruta.Enabled = True - ToastMessageShow("Validando Conexión." , False) - ruta_valida = e_ruta.Text -' Else -' Msgbox("LA RUTA NO ES CORRECTA","") 'ignore -' End If -End Sub - -Sub BUSCA_Click - Subs.iniciaActividad("TicketsDia") -End Sub - -Sub b_mapa_Click - Subs.iniciaActividad("mapas") -End Sub - -Sub e_ruta_EnterPressed - Private adelanteFinDia As Boolean = True - c=Starter.skmt.ExecQuery("select CAT_VA_VALOR from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'FINDIA_FECHA'") 'Buscamos "FIN DIA" anterior - If c.RowCount > 0 Then - c.Position = 0 - If Not(c.GetString("CAT_VA_VALOR") < Starter.FECHA_HOY) Then 'Si el "FIN DIA" guardado NO es de ayer o anterior ... - adelanteFinDia = False - End If - c.Close - End If -' If e_ruta.Text = "VALIDA" Then -' c=Starter.skmt.ExecQuery("SELECT PC_CLIENTE, PC_ENTREGA FROM PEDIDOS_DOE_ENTREGA") -' Msgbox("PASA","1") -' If c.RowCount>0 Then -' Msgbox("PASA 2","1") -' For i=0 To c.RowCount -1 -' c.Position=i -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "UPDATE_PEDIDOS_DOE_ENTREGA" -' cmd.Parameters = Array As Object(C.GetString("PC_CLIENTE"),C.GetString("PC_ENTREGA"), ALMACEN, l_ruta.Text) -' Log("ALO " & C.GetString("PC_CLIENTE")& "|" & C.GetString("PC_ENTREGA") & "|" & ALMACEN & "|" & l_ruta.Text ) -' -' reqManager.ExecuteCommand(cmd , "INSERT_PEDIDOS_DOE_ENTREGA") -' PB2.Progress = PB2.Progress + 1 -' contador_env = contador_env + 1 -' Next -' c.Close -' End If -' End If - - If e_ruta.Text = "FIN DIA" And adelanteFinDia Then - res = Msgbox2("Seguro que desea hacer el cierre? ... todos los datos se borraran","Cierre", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore - If res = DialogResponse.POSITIVE Then - e_ruta.Text = "" - Starter.skmt.ExecNonQuery("delete from pedido_cliente") - Starter.skmt.ExecNonQuery("delete from pedido") - Starter.skmt.ExecNonQuery("delete from noventa") - Starter.skmt.ExecNonQuery("delete from clie_act") - Starter.skmt.ExecNonQuery("delete from kmt_info") - Starter.skmt.ExecNonQuery("delete from cat_gunaprod") - Starter.skmt.ExecNonQuery("delete from cat_gunaprod2") - Starter.skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ") - Starter.skmt.ExecNonQuery("delete from HIST_VENTAS") - Starter.skmt.ExecNonQuery("delete from HIST_VERIFICACION") - Starter.skmt.ExecNonQuery("delete from TMP_INSPECCION_AUTO_DIARIA") - Starter.skmt.ExecNonQuery("delete from CAT_FOTOS") - Starter.skmt.ExecNonQuery("delete from HIST_GPS") - Starter.skmt.ExecNonQuery("DELETE FROM HIST_ENCUESTA") - Starter.skmt.ExecNonQuery("DELETE FROM HIST_ENVIOS") - Starter.skmt.ExecNonQuery("DELETE FROM CLIENTE_IMPRESO") - Starter.skmt.ExecNonQuery("delete from CAT_PROMO_MONTO") - Starter.skmt.ExecNonQuery("delete from TMP_CAT_BILLETE") - Starter.skmt.ExecNonQuery("delete from TMP_CAT_MONEDAS") - Starter.skmt.ExecNonQuery("delete from CAT_RMI") - Starter.skmt.ExecNonQuery("delete from CAT_DEV") - - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_ENVIOS VALUES (?,0,?)", Array As Object(sTime, "PEDIDO")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("NUMERO_PEDIDO")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("NUMERO_PEDIDO",0)) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FINDIA_FECHA")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES (CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object("FINDIA_FECHA", Starter.FECHA_HOY)) - If File.Exists(File.DirInternal,"FOTO1.jpg") Then File.Delete(File.DirInternal,"FOTO1.jpg") - If File.Exists(File.DirInternal,"FOTO2.jpg") Then File.Delete(File.DirInternal,"FOTO2.jpg") - If File.Exists(File.DirInternal,"FOTO3.jpg") Then File.Delete(File.DirInternal,"FOTO3.jpg") - If File.Exists(File.DirInternal,"FOTO4.jpg") Then File.Delete(File.DirInternal,"FOTO4.jpg") - B4XPage_Appear - End If - Else if e_ruta.Text = "FIN DIA" Then - Msgbox("Ya se hizo FIN DIA hoy, solo se puede hacer un FIN DIA cada día, por favor comuniquese con un supervisor.", "LIMITE DIARIO SUPERADO") 'ignore - End If - If e_ruta.Text = "SUPLENCIA" Then - E_RUTA2.Visible = True - E_RUTA2.Text = "" - L_SUPLENCIA.Visible = True - Label4.Visible = True - ' ImageView9.Visible = True - End If -End Sub - -Sub inv_Click - img2.Visible =True - EJECUTANDO = 1 - inve = 1 - Starter.skmt.ExecNonQuery("delete from cat_gunaprod") - Starter.skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ") - c=Starter.skmt.ExecQuery("select usuario from usuarioa") - c.Position = 0 - usuario = c.GetString("USUARIO") - - cmd.Initialize - cmd.Name = "select_cat_gunaprod_KELL" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "gunaprod") - - cmd.Initialize - cmd.Name = "select_cat_paquetes_KELL" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "gunaprodp") - - cmd.Initialize - cmd.Name = "select_cat_detallepa_KELL" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "detallepaq") - - cargar.Visible = False - Subir.Visible = False - connecta.Visible = True - inv.Visible = False -' ToastMessageShow("Se Actualizaran los datos. Este proceso podria tardar hasta un minuto, gracias" , True) -End Sub - -Sub t1_tick - cmd.Initialize - cmd.Name = "select_cuantos_pedido_KELL" - cmd.Parameters = Array As Object(ALMACEN,l_ruta.text) - reqManager.ExecuteQuery(cmd , 0, "valida_pedido") - - t3.Initialize("T3", 5000) ' 1000 = 1 second - t3.Enabled = True - Wait For t3_tick -' -' cmd.Initialize -' cmd.Name = "select_cuantos_noventa_KELL" -' cmd.Parameters = Array As Object(ALMACEN,l_ruta.text) -' reqManager.ExecuteQuery(cmd , 0, "valida_noventa") -' -' cmd.Initialize -' cmd.Name = "select_cuantos_pedidoc_KELL" -' cmd.Parameters = Array As Object(ALMACEN,l_ruta.text) -' reqManager.ExecuteQuery(cmd , 0, "valida_pedidoc") -' - If PB2.Progress = 0 Then - S_CP.Text = "ENVIAR DATOS (K-1)" - End If - img2.Visible=False - t1.Enabled = False -End Sub - -Sub B_OK_PAS_Click - If CARGA = "SUBIR" And S_CP.Text = "INFO OK" Then - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) - PERFIL = "0" - If c.RowCount > 0 Then - c.Position =0 - PERFIL = c.GetString("CAT_VA_VALOR") - End If - c.Close - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("NUMERO_PEDIDO")) - NUMERO_PEDIDO = "0" - If c.RowCount > 0 Then - c.Position =0 - NUMERO_PEDIDO = c.GetString("CAT_VA_VALOR") - End If - c.Close - If PERFIL = "V-ESPECIAL" Then - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("NUMERO_PEDIDO")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("NUMERO_PEDIDO",NUMERO_PEDIDO + 1)) - End If - P1.Visible = False - trabajar.Visible = True - B_PROXIMA.Visible =True - NUEVO.Visible =True - BUSCA.Visible=True - connecta.Visible=True - Resumen.Visible= True - img2.Visible=False - P1.SendToBack - Else If CARGA = "SUBIR" And S_CP.Text = "ERROR" Then - Msgbox("Tiene que subir de nuevo la información","Atención") 'ignore - P1.Visible = False - trabajar.Visible = True - NUEVO.Visible =True - BUSCA.Visible=True - connecta.Visible=True - Resumen.Visible= True - img2.Visible=False - P1.SendToBack - Else if CARGA = "SUBIR" And S_CP.Text <> "INFO OK" Then - res = Msgbox2("Seguro que desea abortar el proceso","Cierre", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore - If res = DialogResponse.POSITIVE Then - P1.Visible = False - trabajar.Visible = True - B_PROXIMA.Visible =True - NUEVO.Visible =True - BUSCA.Visible=True - connecta.Visible=True - Resumen.Visible= True - img2.Visible=False -' ExitApplication - P1.SendToBack - End If - End If - - If CARGA = "CARGAR" And S_CP.Text = "LISTO" And S_CC.Text = "LISTO" And S_CH.Text = "LISTO" Then - c=Starter.skmt.ExecQUERY("SELECT COUNT(*) AS CUANTOS FROM PEDIDO_DOE WHERE PE_CLIENTE <> 0") - c.Position = 0 - cuantos_pedidosc = c.GetString("CUANTOS") - c.Close - If cuantos_pedidosc > 0 Then - c=Starter.skmt.ExecQUERY("SELECT PE_PROID, SUM(PE_CANT) AS PE_CANT FROM PEDIDO_DOE WHERE PE_CLIENTE <> 0 GROUP BY PE_PROID") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("update CAT_GUNAPROD2 set CAT_GP_ALMACEN = CAT_GP_ALMACEN - ? where CAT_GP_ID = ? ", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID"))) - Next - End If - End If - c=Starter.skmt.ExecQuery("select COUNT(DISTINCT(PE_CLIENTE)) AS CLIENTES from PEDIDO_DOE ") - c.Position = 0 - If c.GetString("CLIENTES") >0 Then Msgbox("AVISO TIENES "& c.GetString("CLIENTES") & " PEDIDOS DON TOÑO PARA ENTREGAR"," PEDIDOS DON TOÑO") - c.Close - P1.Visible = False - trabajar.Visible = True - B_PROXIMA.Visible =True - NUEVO.Visible =True - BUSCA.Visible=True - connecta.Visible=True - Resumen.Visible= True - img2.Visible=False - P1.SendToBack - ELSE IF CARGA = "CARGAR" Then - S_CP.Text = "LISTO" - S_CC.Text = "LISTO" - S_CH.Text = "LISTO" - - Else if CARGA = "CARGAR" And (S_CP.Text <> "LISTO" Or S_CC.Text <> "LISTO" Or S_CH.Text <> "LISTO") Then - res = Msgbox2("Seguro que desea abortar el proceso","Cierre", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore - If res = DialogResponse.POSITIVE Then - P1.Visible = False - trabajar.Visible = True - B_PROXIMA.Visible =True - NUEVO.Visible =True - BUSCA.Visible=True - connecta.Visible=True - Resumen.Visible= True - img2.Visible=False - Starter.skmt.ExecNonQuery("delete from kmt_info") - If logger Then Log("Borramos KMT_INFO") - Starter.skmt.ExecNonQuery("delete from cod_result") - Starter.skmt.ExecNonQuery("delete from hist_gest") - Starter.skmt.ExecNonQuery("delete from cat_gunaprod") - Starter.skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ") - Starter.skmt.ExecNonQuery("delete from telefonos") - Starter.skmt.ExecNonQuery("delete from HIST_VENTAS") - Starter.skmt.ExecNonQuery("delete from HIST_PROMOS") - Starter.skmt.ExecNonQuery("delete from HIST_CLIENTE_CANT_PROMOS") - Starter.skmt.ExecNonQuery("delete from PROMOS_COMP") - Starter.skmt.ExecNonQuery("delete from CAT_VERIFICACION") - Starter.skmt.ExecNonQuery("delete from HIST_CUOTAS") - P1.SendToBack - ExitApplication - End If - End If -' P1.SendToBack 'Mod por CHV - 211213 - Se movio el sendToBack a los diferentes if/then porque no en todos los casos hay que ocultar el panel (Por ejemplo cuando se selecciona "No Abortar") -End Sub - -Sub NUEVO_Click - If l_ruta.Text = 0 Then - Msgbox("No se ha cargado ruta","Alerta") 'ignore - Else - - c=Starter.skmt.ExecQuery2("select count(*) AS COUNT from kmt_info where CAT_CL_CODIGO like ?", Array As String ("N%")) - c.Position = 0 - If c.GetString("COUNT") > 2000 Then - MsgboxAsync("YA NO SE PUEDEN CREAR MAS CLIENTES","AVISO") - Else - Subs.iniciaActividad("nuevocliente") - - End If - - - End If -End Sub - -Sub B_OK_RES_Click - trabajar.Visible = True - B_PROXIMA.Visible =True - NUEVO.Visible =True - BUSCA.Visible=True - connecta.Visible=True - Resumen.Visible= True - P_RESUMEN.Visible=False -End Sub - -Sub Resumen_Click - P_RESUMEN.Visible = True - P_RESUMEN.BringToFront - trabajar.Visible = False - B_PROXIMA.Visible =False - NUEVO.Visible =False - BUSCA.Visible=False - connecta.Visible=False - Subir.Visible=False - cargar.Visible=False - Resumen.Visible= False - DateTime.DateFormat = "MM/dd/yyyy" - fecha=DateTime.Date(DateTime.Now) - Starter.skmt.ExecNonQuery2("update PEDIDO set PE_TIPO = ? where PE_CLIENTE =?", Array As Object("ABORDO", "0")) - b=Starter.skmt.ExecQuery("Select count(*) as CUANTOS from pedido_cliente where pc_cliente <> 0") - b.Position=0 - Cuantos = b.GetString("CUANTOS") -' ToastMessageShow(Cuantos , True) - d=Starter.skmt.ExecQuery2("select count(*) as TOTAL_VISITAR from kmt_info where gestion = 0 and cat_cl_codigo <> 0 AND CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?)", Array As String("DIA_VISITA")) - D.Position=0 - b.Close - e=Starter.skmt.ExecQuery2("select count(*) as POR_VISITAR from kmt_info where cat_cl_codigo <> 0 and CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?) ", Array As String("DIA_VISITA")) - e.Position=0 - f=Starter.skmt.ExecQuery("select count(*) as CAT_CL_RUTA from kmt_info where cat_cl_codigo <> 0") - f.Position=0 - l_ruta.Text = f.GetString("CAT_CL_RUTA") - f.Close - If l_ruta.Text = 0 Then - l_ruta.Text =0 - Else - f=Starter.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info") - f.Position=0 - l_ruta.Text = f.GetString("CAT_CL_RUTA") - f.Close - End If - If Cuantos = 0 Then - L_MONTOD.Text =0 - l_cuantosc.Text = 0 - l_cuantosn.Text = 0 - drop = 0 - l_drop.Text = 0 - efectiva = 0 - l_efectiva.text =0 - l_ctast.Text = d.GetString("TOTAL_VISITAR") - 'l_porvisitar.Text = e.GetString("POR_VISITAR") - d.Close - e.Close - l_monto_kp.Text = "0" - l_monto_k.Text = "0" - l_monto_ks.Text = "0" - Else - ' aqui poner lo de efectividad de doe y la cantidad de doe para enviar a tiempo real - Dim TOTAL_DOE_BB As String - Dim TOTAL_EFE_DOE As String - Dim TOTAL_ENTREGA_DOE As String - - - C_DOE = Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS FROM PEDIDO_DOE") - C_DOE.Position = 0 - If C_DOE.GetString("CUANTOS") > 0 Then - F_DOE = Starter.skmt.ExecQuery("SELECT SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO_DOE") - F_DOE.Position = 0 - TOTAL_DOE_BB = F_DOE.GetString("TOTAL") - F_DOE.Close - D_DOE=Starter.skmt.ExecQuery2("select sum(PE_COSTO_TOT) as DOE from pedido where PE_CEDIS = ? ", Array As String("PROMODOE")) - D_DOE.Position = 0 - TOTAL_ENTREGA_DOE = D_DOE.GetString("DOE") - D_DOE.Close - - - End If - - '' fin de esto modificar lo anterior - c=Starter.skmt.ExecQuery2("select sum(pe_cant) as CAMBIOS from pedido where substr(pe_pronombre,1,6) = ?", Array As String("CAMBIO")) - c.Position = 0 - l_cambios.Text = c.GetString("CAMBIOS") - c.Close - c=Starter.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod2 where CAT_GP_TIPO = ? )", Array As String("RTEC")) - c.Position = 0 - l_monto_k.Text = c.GetString("MONTO_DIA") - If l_monto_k.Text = "null" Then - l_monto_k.Text = "0" - End If - c.Close - c=Starter.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod2 where CAT_GP_TIPO = ? )", Array As String("PING")) - c.Position = 0 - l_monto_kp.Text = c.GetString("MONTO_DIA") - If l_monto_kp.Text = "null" Then - l_monto_kp.Text = "0" - End If - c.Close - c=Starter.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod2 where CAT_GP_TIPO = ? )", Array As String("SALTY SNACKS")) - c.Position = 0 - l_monto_ks.Text = c.GetString("MONTO_DIA") - If l_monto_ks.Text = "null" Then - l_monto_ks.Text = "0" - End If - c.Close - DDD=Starter.skmt.ExecQuery("Select COUNT(*) AS CUANTOS from HIST_CUOTAS ") - DDD.Position = 0 - If DDD.GetString("CUANTOS") > 0 Then - c=Starter.skmt.ExecQuery("Select HC_CUOTA1,HC_CUOTA2,HC_CUOTA3 from HIST_CUOTAS ") - c.Position = 0 - l_monto_c1.Text = Round( c.GetString("HC_CUOTA1") / 6) - l_monto_c2.Text = Round(c.GetString("HC_CUOTA2") / 6) - l_monto_c3.Text = Round(c.GetString("HC_CUOTA3") / 6) - c.Close - Else - l_monto_c1.Text = 2000 - l_monto_c2.Text = 2000 - l_monto_c3.Text = 2000 - End If - DDD.Close - c=Starter.skmt.ExecQuery("select sum(pc_monto) as MONTO_DIA, count(pc_cliente) AS CLIENTES_DIA from pedido_cliente where pc_cliente <> 0") - b=Starter.skmt.ExecQuery("select count(*) as CUANTOS from noventa") - 'where pc_fecha = ?", Array As String(fecha) - C.Position=0 - b.Position=0 - - L_MONTOD.Text = c.GetString("MONTO_DIA") - l_cuantosc.Text = c.GetString("CLIENTES_DIA") - l_cuantosn.Text = b.GetString("CUANTOS") - efectiva = c.GetString("CLIENTES_DIA") / e.GetString("POR_VISITAR") - l_efectiva.text = Round2(efectiva*100,2) - l_ctast.Text = d.GetString("TOTAL_VISITAR") - 'l_porvisitar.Text = e.GetString("POR_VISITAR") - L_CUANTOST.Text = l_cuantosc.Text + l_cuantosn.Text - - drop = (c.GetString("CLIENTES_DIA") + b.GetString("CUANTOS"))/ Starter.clientesTotal 'd.GetString("TOTAL_VISITAR") - - l_drop.Text = Round(drop * 100) - If l_drop.Text + l_efectiva.Text < 100 Then - ImageView3.Bitmap = LoadBitmap(File.DirAssets, "tache_rojo.png") - Else If l_drop.Text + l_efectiva.Text > = 100 And l_drop.Text + l_efectiva.Text < 130 Then - ImageView3.bitmap = LoadBitmap(File.DirAssets, "alerta_amarilla.png") - Else - ImageView3.Bitmap = LoadBitmap(File.DirAssets, "palomita_verde.png") - End If - L_TICKPROM.Text = Round2((c.GetString("MONTO_DIA") / c.GetString("CLIENTES_DIA")),2) - If c.GetString("MONTO_DIA") < 2500 Then - ImageView5.Bitmap = LoadBitmap(File.DirAssets, "tache_rojo.png") - Else if c.GetString("MONTO_DIA") > = 2500 And c.GetString("MONTO_DIA") < 4000 Then - ImageView5.bitmap = LoadBitmap(File.DirAssets, "alerta_amarilla.png") - Else - ImageView5.Bitmap = LoadBitmap(File.DirAssets, "palomita_verde.png") - End If - c.Close - b.Close - End If - b=Starter.skmt.ExecQuery("Select count(*) as CUANTOS from pedido where pe_cliente = 0") - b.Position=0 - Cuantos = b.GetString("CUANTOS") - If Cuantos > 0 Then - c=Starter.skmt.ExecQuery("Select sum(PE_COSTO_TOT) AS TOTAL from pedido where pe_cliente = 0") - c.Position = 0 - L_ABORDO.Text = c.GetString("TOTAL") - c.Close - End If -End Sub - -Sub B_PROXIMA_Click - Starter.skmt.ExecNonQuery("delete from CUENTAA") - Starter.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object("0")) - Starter.tipov = "ABORDO" - B4XPages.ShowPage("Productos") -End Sub - -Sub Printer_Connected (Success As Boolean) - If Success Then - B_IMP.Enabled = True - PASA_IMP = "1" - Else - B_IMP.Enabled = False - If Msgbox2("", "Printer Error","Reprint","Cancel","",Null) = DialogResponse.POSITIVE Then 'ignore - StartPrinter - End If - End If -End Sub - -Sub StartPrinter - Dim PairedDevices As Map - Dim L As List - Dim resimp As Int - ToastMessageShow("Printing.....",True) - PairedDevices.Initialize - Try - PairedDevices = cmp20.GetPairedDevices - Catch - Msgbox("Getting Paired Devices","Printer Error") 'ignore - printer.Close - cmp20.Disconnect - End Try - If PairedDevices.Size = 0 Then - Msgbox("Error Connecting to Printer - Printer Not Found","") 'ignore - Return - End If - If PairedDevices.Size = 1 Then - Try - cmp20.ConnectInsecure(Starter.btAdmin,PairedDevices.Get(PairedDevices.GetKeyAt(0)),1) - Catch - Msgbox("Connecting","Printer Error") 'ignore - printer.Close - cmp20.Disconnect - End Try - Else - L.Initialize - For i = 0 To PairedDevices.Size - 1 - L.Add(PairedDevices.GetKeyAt(i)) - Next - resimp = InputList(L, "Choose device", -1) 'ignore - If resimp <> DialogResponse.CANCEL Then - cmp20.Connect(PairedDevices.Get(L.Get(resimp))) - End If - End If -End Sub - -' BOLETA -Sub B_BOLETA_Click - GetResult -End Sub - -Sub GetResult - Starter.boleta = 1 - B4XPages.MainPage.cliente.muestraBoleta = True - B4XPages.MainPage.cliente.LLAMA_BOLETA - Subs.iniciaActividad("cliente") -' CallSubDelayed(B4XPages.GetPage("Cliente"), "LLAMA_BOLETA") -End Sub - -Sub B_MAPA_RUTA_Click - Subs.iniciaActividad2("MAPA_RUTAS") -End Sub - -Sub b_cuotas_Click - DDD=Starter.skmt.ExecQuery("Select COUNT(*) AS CUANTOS from HIST_CUOTAS ") - DDD.Position = 0 - If DDD.GetString("CUANTOS") > 0 Then - c=Starter.skmt.ExecQuery("Select HC_CUOTA1,HC_CUOTA2,HC_CUOTA3,HC_CUOTA4,HC_CUOTA5,HC_CUOTA6,HC_META1,HC_META2,HC_META3,HC_META4,HC_META5,HC_META6 from HIST_CUOTAS ") - c.Position= 0 - L_CUOTA1.TEXT = c.GetString("HC_CUOTA1") - L_CUOTA2.TEXT = c.GetString("HC_CUOTA2") - L_CUOTA3.TEXT = c.GetString("HC_CUOTA3") - L_CUOTA4.TEXT = c.GetString("HC_CUOTA4") - L_CUOTA5.TEXT = c.GetString("HC_CUOTA5") - L_CUOTA6.TEXT = c.GetString("HC_CUOTA6") - L_META1.Text = c.GetString("HC_META1") - L_META2.Text = c.GetString("HC_META2") - L_META3.Text = c.GetString("HC_META3") - L_META4.Text = c.GetString("HC_META4") - L_META5.Text = c.GetString("HC_META5") - L_META6.Text = c.GetString("HC_META6") - If L_MONTOD.Text > 0 Then - L_META1.Text= $"$1.2{(l_monto_k.Text + L_META1.Text)}"$ 'l_monto_k.Text + L_META1.Text - L_META2.Text= $"$1.2{(l_monto_kp.Text + L_META2.Text)}"$ - L_META3.Text= $"$1.2{(l_monto_ks.Text + L_META3.Text)}"$ 'l_monto_ks.Text + L_META3.Text - L_META4.Text= $"$1.2{(l_monto_k.Text + L_META4.Text)}"$ ' l_monto_k.Text + L_META4.Text - L_META5.Text= $"$1.2{(l_monto_kp.Text + L_META5.Text)}"$ 'l_monto_kp.Text + L_META5.Text - L_META6.Text= $"$1.2{(l_monto_ks.Text + L_META6.Text)}"$ 'l_monto_ks.Text + L_META6.Text - End If - Else - L_CUOTA1.TEXT = 0 - L_CUOTA2.TEXT = 0 - L_CUOTA3.TEXT = 0 - L_CUOTA4.TEXT = 0 - L_CUOTA5.TEXT = 0 - L_CUOTA6.TEXT = 0 - L_META1.Text = 0 - L_META2.Text = 0 - L_META3.Text = 0 - L_META4.Text = 0 - L_META5.Text = 0 - L_META6.Text = 0 - End If - DDD.Close - Panel5.BringToFront - Panel5.Visible = True - Panel2.Visible = False - Panel1.Visible = False -End Sub - -Sub B_CUOATA_C_Click - Panel5.Visible = False - Panel2.Visible = True - Panel1.Visible = True -End Sub - -Sub Btn_CheckList_Click - If logger Then Log("Cambiamos a CHECKLIST_AUTO") - B4XPages.ShowPage("CheckList") -' Activity.Finish -End Sub - -Sub Btn_CheckList_LongClick -' Dim x As Int = "a" -' StartActivity(errorManager) -End Sub - -Sub SUBIR_INFO_PEDIDO - P1.Width = GetDeviceLayoutValues.Width - P1.Height = GetDeviceLayoutValues.Height - Subs.panelVisible(P1, 0, 0) - c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) - c.Position =0 - PERFIL = c.GetString("CUANTOS") - c.Close - If PERFIL > 0 Then - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) - c.Position =0 - PERFIL = c.GetString("CAT_VA_VALOR") - c.Close - End If - c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("NUMERO_PEDIDO")) - c.Position =0 - Cuantos = c.GetString("CUANTOS") - c.Close - If Cuantos > 0 Then - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("NUMERO_PEDIDO")) - c.Position =0 - NUMERO_PEDIDO = c.GetString("CAT_VA_VALOR") - c.Close - End If - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE not In (select PE_CLIENTE from pedido)") - c=Starter.skmt.ExecQuery("select usuario from usuarioa") - c.Position = 0 - usuario = c.GetString("USUARIO") - c.Close - ' DROP - b=Starter.skmt.ExecQuery("Select count(*) as CUANTOS from pedido where pe_cliente = 0") - b.Position=0 - Cuantos = b.GetString("CUANTOS") - If Cuantos > 0 Then - c=Starter.skmt.ExecQuery("Select sum(PE_COSTO_TOT) AS TOTAL from pedido where pe_cliente = 0") - c.Position = 0 - L_ABORDO.Text = c.GetDouble("TOTAL") - c.Close - End If - Dim PEDIDO_TOT As String - b=Starter.skmt.ExecQuery("Select count(*) as CUANTOS from pedido where pe_cliente <> 0") - b.Position=0 - Cuantos = b.GetString("CUANTOS") - If Cuantos > 0 Then - c=Starter.skmt.ExecQuery("Select sum(PE_COSTO_TOT) AS TOTAL from pedido where pe_cliente <> 0") - c.Position = 0 - PEDIDO_TOT = c.GetDouble("TOTAL") - c.Close - End If - d=Starter.skmt.ExecQuery("SELECT SUM(PE_COSTO_TOT) as MONTO FROM PEDIDO") - d.Position = 0 - Private monto1 As String = d.GetString("MONTO") - Private abordo1 As String = L_ABORDO.Text - If abordo1 = "" Then abordo1 = "0" - monto1 = monto1 - abordo1 - Dim cmd As DBCommand - cmd.Initialize - cmd.Name ="insert_drop2_KELL" - cmd.Parameters = Array As Object(usuario, l_ruta.Text, fecha, l_porvisitar.Text, l_drop.Text, l_efectiva.Text, l_cuantosc.Text, l_cuantosn.Text, monto1, "ENVIO", ALMACEN, abordo1) - reqManager.ExecuteCommand(cmd , "inst_noventa_ins_drop_kell") - img2.Visible =True - contador_env = contador_env + 1 - S_CP.Text = "Envio Cabecera" - PB2.Progress = 100 - t3.Initialize("T3", 500) ' 1000 = 1 second - t3.Enabled = True - Wait For t3_tick - Dim cmd As DBCommand - cmd.Initialize - cmd.Name ="UPDATE_INFO_E_KELL" - cmd.Parameters = Array As Object(PEDIDO_TOT, L_ABORDO.Text, d.GetDouble("MONTO"),l_ruta.TEXT, ALMACEN) - reqManager.ExecuteCommand(cmd , "inst_noventa_Upd_Info_e_Kell") - contador_env = contador_env + 1 - -' ENCUESTA - c=Starter.skmt.ExecQuery("SELECT HE_CLIE, HE_RES, HE_FECHA, HE_TIPO FROM HIST_ENCUESTA") - S_CP.Text = "Envio Encuesta" - PB2.Progress = 1 - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_encuesta_KELL" - cmd.Parameters = Array As Object(C.GetString("HE_CLIE"),C.GetString("HE_RES"),C.GetString("HE_FECHA"), c.GetString("HE_TIPO"),l_ruta.Text ) - If logger Then Log($"${C.GetString("HE_CLIE")},${C.GetString("HE_RES")},${C.GetString("HE_FECHA")}, ${c.GetString("HE_TIPO")},${l_ruta.Text}"$) - reqManager.ExecuteCommand(cmd , "inst_noventa_ins_enc_kell_"&i) - PB2.Progress = PB2.Progress + 1 - contador_env = contador_env + 1 - Next - PB2.Progress = 100 - End If - c.Close - c=Starter.skmt.ExecQuery("Select HF_FOTO, HF_CUENTA, HF_IDENCUESTA from HIST_FOTOS") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_encuesta_foto_KELLS" - cmd.Parameters = Array As Object(C.GetBLOB("HF_FOTO"),C.GetString("HF_CUENTA"),C.GetString("HF_IDENCUESTA"),l_ruta.Text, ALMACEN, usuario ) - reqManager.ExecuteCommand(cmd , "inst_noventa_ins_enc_foto_kell") - PB2.Progress = PB2.Progress + 1 - contador_env = contador_env + 1 - Next - End If - c.Close - t3.Initialize("T3", 500) ' 1000 = 1 second - t3.Enabled = True - Wait For t3_tick - 'clientes nuevos - c=Starter.skmt.ExecQuery2("SELECT CAT_CL_CODIGO, CAT_CL_NOMBRE FROM kmt_info where CAT_CL_ATIENDE1 = ?", Array As String("new")) - S_CP.Text = "Envio C/Nuevos" - PB2.Progress = 1 - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_clie_new_KELL" - cmd.Parameters = Array As Object(C.GetString("CAT_CL_CODIGO"),C.GetString("CAT_CL_NOMBRE"),l_ruta.Text,ALMACEN ) - reqManager.ExecuteCommand(cmd , "inst_noventa_ins_clie_new_kell") - PB2.Progress = PB2.Progress + 1 - contador_env = contador_env + 1 - Next - End If - c.Close - t3.Initialize("T3", 500) ' 1000 = 1 second - t3.Enabled = True - Wait For t3_tick - S_CP.Text = "Envio C/Pedidos" - PB2.Progress = 1 - ' PEDIO_CLIENTE - c=Starter.skmt.ExecQuery("SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN FROM PEDIDO_CLIENTE ") - d=Starter.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDOSC FROM PEDIDO_CLIENTE ") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_pedidos_KELL" - cmd.Parameters = Array As Object(C.GetString("PC_CLIENTE"),C.GetString("PC_FECHA"),C.GetString("PC_USER"),C.GetString("PC_NOART"),C.GetString("PC_MONTO"),C.GetString("PC_LON"),C.GetString("PC_LAT"),ALMACEN,l_ruta.text,C.GetString("PC_COSTO_SIN") ) - reqManager.ExecuteCommand(cmd , "ins_pedidos") - PB2.Progress = PB2.Progress + 1 - contador_env = contador_env + 1 - Next - c.Close - End If - d.Position=0 - cuantos_pedidosc = D.GetString("CUANTOS_PEDIDOSC") - PB2.Progress = 100 - d.Close - ENVIADA = 0 - PORENVIAR = 0 -' Msgbox(ENVIADA & " " & PORENVIAR, "A") 'ignore - c=Starter.skmt.ExecQuery2("SELECT COUNT(*) as CANTIDAD FROM HIST_ENVIOS WHERE HE_TIPO = ?",Array As String("ABORDO") ) - c.Position = 0 - If c.GetString("CANTIDAD") > 0 Then - Log($"pe_cedis_0"$) - Starter.skmt.ExecNonQuery2("update PEDIDO set PE_CEDIS = ? where PE_CLIENTE =? AND PE_FOLIO IS NULL ", Array As Object("RECARGA", "0")) - End If - Starter.skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = rowid where PE_FOLIO = 0 or PE_FOLIO = 1") - If PERFIL = "V-ESPECIAL" Then - Log($"pe_cedis_1"$) - c=Starter.skmt.ExecQuery("SELECT PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO, PE_TIPO FROM PEDIDO ORDER BY PE_CLIENTE") - d=Starter.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO") - If c.RowCount>0 Then - For i=0 To c.RowCount - 1 - c.Position = i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_pedido_esp_KELL" - Log($"pe_cedis_2"$) - cmd.Parameters = Array As Object(c.GetString("PE_CEDIS"),ALMACEN,C.GetString("PE_COSTO_TOT"),C.GetString("PE_COSTOU"),C.GetString("PE_CANT"),C.GetString("PE_PRONOMBRE"),C.GetString("PE_PROID"),C.GetString("PE_CLIENTE"),C.GetString("PE_FECHA"),C.GetString("PE_USUARIO"),C.GetString("PE_RUTA"), C.GetString("PE_COSTO_SIN"),C.GetString("PE_DESC"),c.GetString("PE_FOLIO"), c.GetString("PE_TIPO"),NUMERO_PEDIDO ) - reqManager.ExecuteCommand(cmd , "ins_pedido") - contador_env = contador_env + 1 - Next - c.Close - End If - Else - Log($"pe_cedis_3"$) - c=Starter.skmt.ExecQuery("SELECT PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO, PE_TIPO FROM PEDIDO") - d=Starter.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO") - TIEMPO = 0 - t3.Initialize("T3", 500) ' 1000 = 1 second - t3.Enabled = True - Wait For t3_tick - S_CP.Text = "Envio de Pedidos" - PB2.Progress = 1 - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_pedido_KELL" - If logger Then Log($"pe_cedis_4"$) - cmd.Parameters = Array As Object(c.GetString("PE_CEDIS"),ALMACEN,C.GetString("PE_COSTO_TOT"),C.GetString("PE_COSTOU"),C.GetString("PE_CANT"),C.GetString("PE_PRONOMBRE"),C.GetString("PE_PROID"),C.GetString("PE_CLIENTE"),C.GetString("PE_FECHA"),C.GetString("PE_USUARIO"),C.GetString("PE_RUTA"), C.GetString("PE_COSTO_SIN"),C.GetString("PE_DESC"),c.GetString("PE_FOLIO"), c.GetString("PE_TIPO")) - reqManager.ExecuteCommand(cmd , "ins_pedido") - contador_env = contador_env + 1 - TIEMPO = TIEMPO + 1 - PB2.Progress = PB2.Progress + 1 - If TIEMPO > 20 Then - ' Msgbox("M","A") 'ignore - If L_P_2.Text = "Envio de Pedidos" Then - L_P_2.Text = "Envio de Pedidos --" - else if L_P_2.Text = "Envio de Pedidos --" Then - L_P_2.Text = "Envio de Pedidos \" - else if L_P_2.Text = "Envio de Pedidos \" Then - L_P_2.Text = "Envio de Pedidos |" - else if L_P_2.Text = "Envio de Pedidos |" Then - L_P_2.Text = "Envio de Pedidos /" - else if L_P_2.Text = "Envio de Pedidos /" Then - L_P_2.Text = "Envio de Pedidos --" - End If - t3.Initialize("T3", 2000) ' 1000 = 1 second - t3.Enabled = True - Wait For t3_tick - TIEMPO = 0 - End If - Next - c.Close - End If - End If - d.Position=0 - cuantos_pedido = D.GetString("CUANTOS_PEDIDO") - PB2.Progress = 100 - d.Close - - ' NOVENTA - c=Starter.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON FROM NOVENTA") - D=Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA") - t3.Initialize("T3", 500) ' 1000 = 1 second - t3.Enabled = True - Wait For t3_tick - S_CP.Text = "Envio No Venta" - PB2.Progress = 1 - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_noventa_KELL" - cmd.Parameters = Array As Object(C.GetString("NV_CLIENTE"),C.GetString("NV_FECHA"),C.GetString("NV_USER"),C.GetString("NV_MOTIVO"),C.GetString("NV_COMM"),C.GetString("NV_LAT"),C.GetString("NV_LON"), ALMACEN, l_ruta.Text) - reqManager.ExecuteCommand(cmd , "inst_noventa_ins_noventa_kell") - PB2.Progress = PB2.Progress + 1 - contador_env = contador_env + 1 - Next - c.Close - End If - d.Position=0 - cuantos_noventa = D.GetString("CUANTOS_NOVENTA") - PB2.Progress = 100 - d.Close - - ' ENTREGA DOE PEDIDOS_DOE_ENTREGA (PC_CLIENTE, PC_ENTREGA) - c=Starter.skmt.ExecQuery("SELECT PC_CLIENTE, PC_ENTREGA FROM PEDIDOS_DOE_ENTREGA") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "UPDATE_PEDIDOS_DOE_ENTREGA" - cmd.Parameters = Array As Object(C.GetString("PC_CLIENTE"),C.GetString("PC_ENTREGA"), ALMACEN, l_ruta.Text) - reqManager.ExecuteCommand(cmd , "UPDATE_PEDIDOS_DOE_ENTREGA") - PB2.Progress = PB2.Progress + 1 - contador_env = contador_env + 1 - Next - c.Close - End If - - ' CHECK LIST VALIDAR - 'Msgbox("antesde de mandar","") 'ignore - c=Starter.skmt.ExecQuery("SELECT " & Chr(34) & "TMP_AUTO_RUTA " & Chr(34) & " as TMP_AUTO_RUTA," & Chr(34) & "TMP_AUTO_PLACA" & Chr(34) & " as TMP_AUTO_PLACA," & Chr(34) & "TMP_AUTO_CEDIS " & Chr(34) & " as TMP_AUTO_CEDIS," & Chr(34) & "TMP_AUTO_IDALMACEN" & Chr(34) & " as TMP_AUTO_IDALMACEN," & Chr(34) & "TMP_AUTO_FECHA " & Chr(34) & " as TMP_AUTO_FECHA," & Chr(34) & "TMP_AUTO_KILOMETRAJE" & Chr(34) & " as TMP_AUTO_KILOMETRAJE," & Chr(34) & "TMP_AUTO_COMBUSTIBLE" & Chr(34) & " as TMP_AUTO_COMBUSTIBLE," & Chr(34) & "TMP_AUTO_TABLERO " & Chr(34) & " as TMP_AUTO_TABLERO," & Chr(34) & "TMP_AUTO_CLAXON " & Chr(34) & " as TMP_AUTO_CLAXON," & Chr(34) & "TMP_AUTO_PARABRISAS " & Chr(34) & " as TMP_AUTO_PARABRISAS," & Chr(34) & "TMP_AUTO_CINTURON " & Chr(34) & " as TMP_AUTO_CINTURON," & Chr(34) & "TMP_AUTO_ESPEJOS " & Chr(34) & " as TMP_AUTO_ESPEJOS," & Chr(34) & "TMP_AUTO_LICENCIA " & Chr(34) & " as TMP_AUTO_LICENCIA," & Chr(34) & "TMP_AUTO_LIB_OBJETOSINE " & Chr(34) & " as TMP_AUTO_LIB_OBJETOSINE," & Chr(34) & "TMP_AUTO_LIB_OBJETOTMPERVI " & Chr(34) & " as TMP_AUTO_LIB_OBJETOTMPERVI," & Chr(34) & "TMP_AUTO_ORDEN_HERRA " & Chr(34) & " as TMP_AUTO_ORDEN_HERRA," & Chr(34) & "TMP_AUTO_UNILIMPIA " & Chr(34) & " as TMP_AUTO_UNILIMPIA," & Chr(34) & "TMP_AUTO_LIMPIO " & Chr(34) & " as TMP_AUTO_LIMPIO," & Chr(34) & "TMP_AUTO_BASURA " & Chr(34) & " as TMP_AUTO_BASURA," & Chr(34) & "TMP_AUTO_RESPONSABILIDAD " & Chr(34) & " as TMP_AUTO_RESPONSABILIDAD," & Chr(34) & "TMP_AUTO_AUDITORIA " & Chr(34) & " as TMP_AUTO_AUDITORIA," & Chr(34) & "TMP_AUTO_HABITUAL " & Chr(34) & " as TMP_AUTO_HABITUAL," & Chr(34) & "TMP_AUTO_HERRAMIENTAS " & Chr(34) & " as TMP_AUTO_HERRAMIENTAS," & Chr(34) & "TMP_AUTO_CONOS " & Chr(34) & " as TMP_AUTO_CONOS," & Chr(34) & "TMP_AUTO_EDO_CARROCERIA " & Chr(34) & " as TMP_AUTO_EDO_CARROCERIA," & Chr(34) & "TMP_AUTO_FUN_LUCES " & Chr(34) & " as TMP_AUTO_FUN_LUCES," & Chr(34) & "TMP_AUTO_PLACAS_CIRCU " & Chr(34) & " as TMP_AUTO_PLACAS_CIRCU," & Chr(34) & "TMP_AUTO_COND_LLANTAS " & Chr(34) & " as TMP_AUTO_COND_LLANTAS," & Chr(34) & "TMP_AUTO_ACEITEMOTOR " & Chr(34) & " as TMP_AUTO_ACEITEMOTOR," & Chr(34) & "TMP_AUTO_ACEITEDIREC " & Chr(34) & " as TMP_AUTO_ACEITEDIREC," & Chr(34) & "TMP_AUTO_NVL_REFRIGERANTE " & Chr(34) & " as TMP_AUTO_NVL_REFRIGERANTE," & Chr(34) & "TMP_AUTO_NVL_LIQUIDBRISAS " & Chr(34) & " as TMP_AUTO_NVL_LIQUIDBRISAS," & Chr(34) & "TMP_AUTO_COND_BANMOTOR " & Chr(34) & " as TMP_AUTO_COND_BANMOTOR," & Chr(34) & "TMP_AUTO_FUGASGRAL " & Chr(34) & " as TMP_AUTO_FUGASGRAL," & Chr(34) & "TMP_AUTO_FRENOS " & Chr(34) & " as TMP_AUTO_FRENOS," & Chr(34) & "TMP_AUTO_COMENTARIOS " & Chr(34) & " as TMP_AUTO_COMENTARIOS FROM TMP_INSPECCION_AUTO_DIARIA") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - If File.Exists(File.DirInternal,"FOTO1.jpg") And File.Exists(File.DirInternal,"FOTO2.jpg") And _ - File.Exists(File.DirInternal,"FOTO3.jpg") And File.Exists(File.DirInternal,"FOTO4.jpg") Then - foto1 = Bit.InputStreamToBytes(File.OpenInput(File.DirInternal,"FOTO1.jpg")) - foto2 = Bit.InputStreamToBytes(File.OpenInput(File.DirInternal,"FOTO2.jpg")) - foto3 = Bit.InputStreamToBytes(File.OpenInput(File.DirInternal,"FOTO3.jpg")) - foto4 = Bit.InputStreamToBytes(File.OpenInput(File.DirInternal,"FOTO4.jpg")) - Else -' Msgbox("No estan completas las fotos.", "FOTOS INCOMPLETAS") 'ignore - ToastMessageShow("FOTOS INCOMPLETAS!!", True) - End If - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "INSERT_TMP_INSPECCION_AUTO_DIARIA" - cmd.Parameters = Array As Object(C.GetString("TMP_AUTO_RUTA"),C.GetString("TMP_AUTO_PLACA"),C.GetString("TMP_AUTO_CEDIS"),C.GetString("TMP_AUTO_IDALMACEN"),C.GetString("TMP_AUTO_FECHA"),C.GetString("TMP_AUTO_KILOMETRAJE"),C.GetString("TMP_AUTO_COMBUSTIBLE"),C.GetString("TMP_AUTO_TABLERO"),C.GetString("TMP_AUTO_CLAXON"),C.GetString("TMP_AUTO_PARABRISAS"),C.GetString("TMP_AUTO_CINTURON"),C.GetString("TMP_AUTO_ESPEJOS"),C.GetString("TMP_AUTO_LICENCIA"),C.GetString("TMP_AUTO_LIB_OBJETOSINE"),C.GetString("TMP_AUTO_LIB_OBJETOTMPERVI"),C.GetString("TMP_AUTO_ORDEN_HERRA"),C.GetString("TMP_AUTO_UNILIMPIA"),C.GetString("TMP_AUTO_LIMPIO"),C.GetString("TMP_AUTO_BASURA"),C.GetString("TMP_AUTO_RESPONSABILIDAD"),C.GetString("TMP_AUTO_AUDITORIA"),C.GetString("TMP_AUTO_HABITUAL"),C.GetString("TMP_AUTO_HERRAMIENTAS"),C.GetString("TMP_AUTO_CONOS"),C.GetString("TMP_AUTO_EDO_CARROCERIA"),C.GetString("TMP_AUTO_FUN_LUCES"),C.GetString("TMP_AUTO_PLACAS_CIRCU"),C.GetString("TMP_AUTO_COND_LLANTAS"),C.GetString("TMP_AUTO_ACEITEMOTOR"),C.GetString("TMP_AUTO_ACEITEDIREC"),C.GetString("TMP_AUTO_NVL_REFRIGERANTE"),C.GetString("TMP_AUTO_NVL_LIQUIDBRISAS"),C.GetString("TMP_AUTO_COND_BANMOTOR"),C.GetString("TMP_AUTO_FUGASGRAL"),C.GetString("TMP_AUTO_FRENOS"),C.GetString("TMP_AUTO_COMENTARIOS"), foto1, foto2, foto3, foto4) - reqManager.ExecuteCommand(cmd , "inst_noventa_ins_tmp_insp_auto") - contador_env = contador_env + 1 - Next - c.Close - End If - t1.Initialize("T1", 20000) ' 1000 = 1 second - t1.Enabled = True - PORCENTAJE = Round(100/ (cuantos_noventa + cuantos_pedido + cuantos_pedidosc + 1)) - PORCENTAJE = 1 - - DateTime.TimeFormat = "HHmm" - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery2("SELECT HE_CUANTOS, HE_FECHA FROM HIST_ENVIOS WHERE HE_TIPO = ?", Array As String("PEDIDO")) - c.Position = 0 - Starter.skmt.ExecNonQuery2("UPDATE HIST_ENVIOS SET HE_FECHA = ?, HE_CUANTOS = ? WHERE HE_TIPO = ?", Array As Object(sTime,c.GetString("HE_CUANTOS") + 1, "PEDIDO")) - c.Close - c=Starter.skmt.ExecQuery("SELECT COUNT(*) as CANTIDAD FROM PEDIDO WHERE PE_CLIENTE = 0 ") - c.Position = 0 - PORENVIAR = c.GetString("CANTIDAD") - If PORENVIAR > 0 Then - Starter.skmt.ExecNonQuery2("delete from HIST_ENVIOS where HE_TIPO = ?", Array As Object ("ABORDO")) - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_ENVIOS VALUES (?,1,?)", Array As Object(sTime, "ABORDO")) - End If -' ToastMessageShow("Se Actualizaran los datos. Este proceso podria tardar hasta un minuto, gracias "& l_ruta.text , True) - S_CP.Text = "SUBIENDO" - DateTime.TimeFormat = "HH:mm:ss" -End Sub - -Sub SUBIR_INFO_BOLETA - P1.Width = GetDeviceLayoutValues.Width - P1.Height = GetDeviceLayoutValues.Height - Subs.panelVisible(P1, 0, 0) - Try - c=Starter.skmt.ExecQuery("SELECT TMP_BILLE_IDALMACEN,TMP_BILLE_RUTA, TMP_BILLE_FECHA,TMP_BILLE_MIL,TMP_BILLE_QUINIENTOS,TMP_BILLE_DOSCIENTOS,TMP_BILLE_CIEN,TMP_BILLE_CINCUENTA,TMP_BILLE_VEINTE FROM TMP_CAT_BILLETE") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_boletab_KELL" - cmd.Parameters = Array As Object(C.GetString("TMP_BILLE_IDALMACEN"),l_ruta.Text,C.GetString("TMP_BILLE_FECHA"),C.GetString("TMP_BILLE_MIL"),C.GetString("TMP_BILLE_QUINIENTOS"),C.GetString("TMP_BILLE_DOSCIENTOS"),C.GetString("TMP_BILLE_CIEN"),C.GetString("TMP_BILLE_CINCUENTA"),C.GetString("TMP_BILLE_VEINTE")) - reqManager.ExecuteCommand(cmd , "ins_boletab") - Next - c.Close - End If - - c=Starter.skmt.ExecQuery("SELECT TMP_MON_RUTA,TMP_MON_IDALMACEN,TMP_MON_FECHA,TMP_MON_VEINTE,TMP_MON_DIEZ,TMP_MON_CINCO,TMP_MON_DOS,TMP_MON_UN,TMP_MON_CENTAVOS FROM TMP_CAT_MONEDAS") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_boletam_KELL" - cmd.Parameters = Array As Object(l_ruta.Text,C.GetString("TMP_MON_IDALMACEN"),C.GetString("TMP_MON_FECHA"),C.GetString("TMP_MON_VEINTE"),C.GetString("TMP_MON_DIEZ"),C.GetString("TMP_MON_CINCO"),C.GetString("TMP_MON_DOS"),C.GetString("TMP_MON_UN"),C.GetString("TMP_MON_CENTAVOS")) - reqManager.ExecuteCommand(cmd , "ins_boletam") - Next - c.Close - End If - - S_CP.Text = "Envio Boleta" - PB2.Progress = 1 - contador_env = 2 - PB2.Progress = 100 - t3.Initialize("T3", 5000) ' 1000 = 1 second - Wait For t3_tick - t3.Enabled = True - S_CP.Text = "INFO OK" - Catch -' ToastMessageShow("ACTUALIZAR APK BOLETA",0) - Log(LastException) - End Try -End Sub - -Sub VALIDAR_INFO - d=Starter.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO") - d.Position = 0 - cuantos_pedido = d.GetString("CUANTOS_PEDIDO") - d.Close - cmd.Initialize - cmd.Name = "select_cuantos_pedido_KELL" - cmd.Parameters = Array As Object(ALMACEN,l_ruta.text) - reqManager.ExecuteQuery(cmd , 0, "valida_pedido1") - t3.Initialize("T3", 8000) ' 1000 = 1 second - t3.Enabled = True - Wait For t3_tick -End Sub - -' /////////////////////////////////////////////////////////////////////////////////////////////////////////////// -' /////////////////////////////////////////////// PDF CARTA PORTE /////////////////////////////////////// -' /////////////////////////////////////////////////////////////////////////////////////////////////////////////// -Private Sub ImageView1_LongClick 'Mostramos la carta porte al hacer clic largo en el logo de Kelloggs - Log("Logo clicked") - pdf.Initialize("PDFium") - PNL_ACCESO.Visible = False - Panel7.Visible = False - p_pdfViewer.Width = GetDeviceLayoutValues.Width - p_pdfViewer.Height = GetDeviceLayoutValues.Height - PDFView1.Width = GetDeviceLayoutValues.Width-20 - p_controles_pdf.Width = GetDeviceLayoutValues.Width-20 -' If Logger Then Log($"pantalla: ${GetDeviceLayoutValues.Width}x${GetDeviceLayoutValues.Height} - panel: ${p_pdfViewer.Width}x${p_pdfViewer.Height}"$) - Subs.panelVisible(p_pdfViewer, 0, 0) - pdfViewerActivo = True -' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE) - Dim cfg As Configurator = PDFView1.fromUri(File.DirInternal,"/cartaPorte.pdf") - cfg.SetEventname("PDFium") - cfg.pageFitPolicy("BOTH").autoSpacing(True).enableSwipe(True).pageSnap(True).swipeHorizontal(False).addOnErrorListener.addOnLoadCompleteListener.addOnPageChangeListener.addOnPageErrorListener.load -End Sub - -'Descarga del servidor el PDF de la carta porte del dia de hoy y la -'guarda en el almacenamiento externo con el nombre "cartaPorte.pdf" -Sub descargaCartaPorte - Log("Inicia descargaCartaPorte") - cartaPorteLista = False - 'Generamos el nombre del PDF de la carta porte - DateTime.DateFormat = "ddMMyyyy" - Private almacenX As String = Starter.almacen - Private rutaX As String = Starter.rutapreventa - Private cartaPortePDF As String = $"CPORTE${almacenX}_${rutaX}.pdf"$ -' cartaPortePDF = "CPORTE2_100_Prueba.pdf" 'Para pruebas -' Log(cartaPortePDF) - 'Para el servidor - Private pdfServer As String = "keymon.lat" - If Starter.server.IndexOf("10.0.0.205") > -1 Then pdfServer = "10.0.0.205" -' Log(pdfServer) - pdfURL = $"https://${pdfServer}/CartaPorteKelloggs/CartaPorteMovil${DateTime.Date(DateTime.now)}/${cartaPortePDF}"$ - LogColor(pdfURL,Colors.Red) -' Log("Iniciamos wait for descargaCartaPorteyProgreso") - Wait For (descargaCartaPorteyProgreso(pdfURL)) Complete (Success As Boolean) -' Log("Terminamos wait for descargaCartaPorteyProgreso") - l_porcentaje.Text = "0%" - ProgressBarPDF.Progress = 0 -' Log("Ocultamos panel descarga") - Subs.panelOculto(p_downloadPDF) -End Sub - -'Muestra el panel de descarga de la carta porte con barra de progreso -Sub descargaCartaPorteyProgreso (urlx As String) As ResumableSub - Log("Iniciamos descargaCartaPorteyProgreso") - If logger Then Log("Mostramos panel descarga") - Subs.panelVisible(p_downloadPDF, 0, 0) - Subs.centraPanel(p_progress1, Root.Width) - Subs.centraEtiqueta(l_downloadPDF, p_progress1.Width) - Subs.centraEtiqueta(l_porcentaje, p_progress1.Width) - Subs.centraProgressBar(ProgressBarPDF, p_progress1.Width) - Dim job_PDF As HttpJob - job_PDF.Initialize("job_PDF",Me) -' job_PDF.GetRequest.Timeout = 120000 ' Timeout a 2 minutos - job_PDF.Download(urlx) - - 'Para la barra de progreso - ' == TaskIdToJob == necesita que se agregue "HU2_PUBLIC" a "Conditional Symbols" (Project/Build Configurations) (Ctrl+B) - Dim TaskToJob As Map = HttpUtils2Service.TaskIdToJob - Do While HttpUtils2Service.TaskIdToJob.IsInitialized = False - Log("Waiting for HttpUtils2Service to be ready.") - Sleep(20) - Loop - Dim TaskId As Int - Do While TaskId = 0 - For Each id As Int In TaskToJob.Keys - If TaskToJob.Get(id) = job_PDF Then - TaskId = id - Exit - End If - Next - Sleep(10) - Loop - Dim bx() As Boolean = Array As Boolean(False) - Log("Llamamos TrackProgress") - TrackProgress(job_PDF, bx, TaskId) - '**** Termina barra de progreso - - Log("Iniciamos Wait for JobDone Descarga") - Log("Mostramos panel descarga") - Subs.panelVisible(p_downloadPDF, 0, 0) - Wait for (job_PDF) JobDone (job_PDF As HttpJob) -' Log("Terminamos Wait for JobDone Descarga ") - If job_PDF.Success = False Then Log("Error PDF") - If job_PDF.Success = True Then - Log("Carta descargada con exito") - cartaPorteLista = True - ' // Delete existing file -' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE) -' Wait For Activity_PermissionResult (Permission As String, Result As Boolean) - If File.Exists(File.DirInternal,"cartaPorte.pdf") Then -' Log("Borramos carta anterior") - File.Delete(File.DirInternal,"cartaPorte.pdf") - End If - ' // Save new file - Dim outNewAPK As OutputStream = File.OpenOutput(File.DirInternal,"cartaPorte.pdf", False) - File.Copy2(job_PDF.GetInputStream, outNewAPK) -' Log("Guardamos nueva carta") - outNewAPK.Close - Log("APK dir: "&File.DirInternal) - Log("Carta porte lista") - ToastMessageShow("Carta Porte descargada exitosamente!!", False) - Else - Log("Hubo un error, intente de nuevo") - job_PDF.Release - Subs.panelOculto(p_downloadPDF) - Log("Ruta tipo " & Starter.rutaTipo) - If File.Exists(File.DirInternal,"cartaPorte.pdf") And Starter.rutaTipo <> "FORANEA" Then 'Existe, NO es de hoy y NO ES es FORANEA - Private mb1 As Int - mb1 = Msgbox2("No se pudo descargar la carta porte, por favor intente de nuevo o comuniquese con un supervisor", "Error Carta Porte", "Aceptar", "", "Reintentar", Null) 'ignore - If mb1 = DialogResponse.Positive Then -' Activity.Finish -' ExitApplication - detenerLoop = True - B4XPages.ShowPage("Login") - ELSE IF mb1 = DialogResponse.NEGATIVE Then - descargaCartaPorte - ELSE IF mb1 = DialogResponse.CANCEL Then - ' VALIDAR_INFO - End If - Else - LogColor("Hay carta porte vieja PERO la ruta es Foranea", Colors.RGB(255,131,0)) - ToastMessageShow("Hay carta porte de dias anteriores y la ruta es foranea.", True) - cartaPorteLista = True - End If - End If - bx(0) = True - job_PDF.Release -' Log("Termina descargaCartaPorteyProgreso") - Return job_PDF.Success -End Sub - -'Para visualizar el progreso de la descarga -Private Sub TrackProgress (j As HttpJob, Stop() As Boolean, TaskId As Int) - Do While Stop(0) = False - If j.Out.IsInitialized Then - Dim TotalLength As Long = j.Response.ContentLength - Dim size As Long = File.Size(HttpUtils2Service.TempFolder, TaskId) -' Log(size & ", " & TotalLength & " | " & ((size/TotalLength)*100)) - ProgressBarPDF.Progress = (size/TotalLength)*100 - l_porcentaje.Text = $"$1.0{((size/TotalLength)*100)} %"$ - End If - Sleep(100) - Loop -' Log("TrackProgress - "&size & ", " & TotalLength) -End Sub - -Sub PDFium_loadComplete(pages As Int) -' Log($"PDFium_loadComplete(${pages})"$) - glPages = pages - lblPages.Text = $"${glPages}"$ -End Sub - -Sub PDFium_onInitiallyRendered(page As Int) - Log($"PDFium_onInitiallyRendered(${page})"$) -End Sub - -Sub PDFium_onPageChanged(page As Int, TotalPages As Int) -' Log($"PDFium_onPageChanged(${page},${TotalPages})"$) - lblPages.Text = $"${page+1}/${glPages}"$ -End Sub - -Sub PDFium_PageNum(page As Int) - Log($"PDFium_PageNum(${page})"$) -End Sub - -Sub PDFium_Show() - Log($"PDFium_Show()"$) -End Sub - -Sub btnFirst_Click - PDFView1.jumpTo2(0,False) -End Sub - -Sub btnPrev_Click - PDFView1.jumpTo2(PDFView1.CurrentPage-1,False) -End Sub - -Sub btnNext_Click - PDFView1.jumpTo2(PDFView1.CurrentPage+1,False) -End Sub - -Sub btnLast_Click - PDFView1.jumpTo2(glPages-1,False) -End Sub - -Private Sub B_PROXIMA_LongClick - '' StartActivity(Starter.ultimaActividad) -' If Starter.sesion.Get("actividad") <> "" Then - '' StartActivity(Starter.sesion.Get("actividad")) -' Log(Starter.sesion) -' If Starter.sesion.Size = 1 Then -' CallSubDelayed(Starter.sesion.Get("actividad"), "activity_resume") -' else if Starter.sesion.ContainsKey("sub") Then -' Private esteSub As Map = Starter.sesion.Get("sub") - '' If Logger Then Log(esteSub) -' If esteSub.Size = 1 Then CallSubDelayed(Starter.sesion.Get("actividad"), esteSub.Get("nombre")) -' If esteSub.Size = 2 Then CallSubDelayed2(Starter.sesion.Get("actividad"), esteSub.Get("nombre"), esteSub.get("param1")) -' If esteSub.Size = 3 Then CallSubDelayed3(Starter.sesion.Get("actividad"), esteSub.Get("nombre"), esteSub.get("param1"), esteSub.get("param2")) -' End If -' End If -End Sub - -Private Sub P1_Click - 'Vacio, solo está aquib para capturar el evento de clic y que no se pase hacia el fondo. -End Sub - -Private Sub Resumen_LongClick - ToastMessageShow("Enviamos UTR", True) - CallSubDelayed(Starter, "ENVIA_ULTIMA_GPS") -End Sub \ No newline at end of file diff --git a/B4A/C_Productos.bas b/B4A/C_Productos.bas deleted file mode 100644 index 8d8f8d3..0000000 --- a/B4A/C_Productos.bas +++ /dev/null @@ -1,1506 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Mods 'ignore -' Lineas 709 y 1041 para corregir lo del almacen pachuca y rmi's -End Sub - -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - '// Process Gloals - Dim g As GPS - Dim ruta As String - Dim q_buscar As String - '// Globals - Dim c As Cursor - Dim c2 As Cursor - Dim C7 As Cursor - Dim ListView1 As ListView - Dim entro As String = 0 - Dim lfila As Label - Dim marca As String - Dim tipo As String - Private BUSCA As EditText - Dim ya_entro As String - Dim bmp As Bitmap - Dim c As Cursor - Dim e As Cursor - Dim f As Cursor - Dim h As Cursor - Dim CC As Cursor - Dim DD As Cursor - Dim l_tipo As Label - Dim l_sub As Label - Dim l_marca As Label - Dim l_desc As Label - Dim l_precio As Label - Dim l_bodega As Label - Dim cantidad As EditText - Dim guardar As Button - Dim Terminar As Button - Dim img_prod As ImageView - Dim IMG_PASO() As Byte - Dim L_PROID As Label - Dim clie_id As String - Dim sDate,sTime As String - Dim usuario As String - Dim lat_gps, lon_gps As String - Dim t_venta As Label - Dim PROMO_C As String - Dim i_fotol As ImageView - Private DESC_PROMO As Button - Private nopromo As Button - Dim TOT_ART_PROMO As String - Dim cambio As String - Dim COSTO_TOT As String - Dim ALMACEN As String - Dim preciosin As String - Dim cl_ruta As String - Dim d As Cursor - Dim TOT_ART_PROMOR As String - Dim PROMO_CR As String - Dim TOTAL_PROMO As String - Dim HCCP_CANT As String - Private Panel1 As Panel - Dim query As String - Private t_precio As Label - Private LV_PRECIOS As ListView - Private PERFIL As String - Private EXISTE_CAMBIO As String - Private QUERY2 As String - Dim CAMBIOS As String - Dim precio2 As String - Private B_MENOS As Button - Private B_MAS As Button - Private E_CAMBIO As EditText - Private B_MENOSC As Button - Private B_MASC As Button - Private limite_abordo As String - Private limite_anterior As String - Private cuenta As String - Private limite_actual As String - Private l_invact As Label - Private L_LINV As Label - Private L_CANT As Label - Private V_ANT_SALIR As String - Private L_CARGA As Label - Private DESC_SS As String - Private DESC_PING As String - Private DESC_RTEC As String - Private TIPO_CLIENTE As String - Private PROMOS_VENTAS As String - Private Label3 As Label - Private ImageView4 As ImageView - Dim PRECIO_CERO As String - Private SI_APLICA_PROMO As String - Private PROMO_ESP As String - Private TOTAL_PROMO_CLIE As String - Private INV_TOTAL_PROMO As String - Private YA_IMPRIMIO As String - Private HCCP_CANT_E As String - Dim lvClic As Map - Private TECLA_BACK As String = 0 - Private lv_producto2 As ListView - Private lv_subtipo As ListView - Dim logger As Boolean = True - Private clv_rmi As CustomListView - Private Panel5 As Panel - Private l_prodX As Label - Private p_prods As Panel - Private et_pCant As EditText - Private l_pCant As Label - Dim r As Cursor - Private b_rmi As Button -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - If Not(Starter.Logger) Then logger = False - Root = Root1 - 'load the layout to Root - Root.LoadLayout("productos") - ruta = File.DirInternal - Panel1.Visible= False - lvClic.Initialize - Panel5.Visible = False -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - -Sub B4XPage_Appear -' If Subs.traeUltimaActividadBD <> "Productos" Then Subs.iniciaActividad(Subs.traeUltimaActividadBD) - CARGA_PRODUCTOS - - - B_MASC.Enabled = True - B_MENOSC.Enabled = True - E_CAMBIO.Enabled = True - - If Subs.revisaimpreso(Subs.traeCliente) And l_sub.Text = "PROMOS" Then - Msgbox ("YA SE IMPRIMIO EL TICKET.", "AVISO") 'ignore - Panel1.Visible= False - l_bodega.Text = "0" - Subs.iniciaActividad("Cliente") - l_sub.Text = "" - End If - - If l_sub.Text = "PROMOS" Or l_sub.Text = "EXHIBIDOR/POP" Then - B_MASC.Enabled = False - B_MENOSC.Enabled = False - E_CAMBIO.Enabled = False - Log("Botones NO activos") - Else - B_MASC.Enabled = True - B_MENOSC.Enabled = True - E_CAMBIO.Enabled = True - End If -End Sub - -Sub CARGA_PRODUCTOS - Terminar.Enabled = True - guardar.Enabled = True - If Subs.clienteActual <> "0" Then Starter.tipov = "VENTA" Else Starter.tipov = "ABORDO" - If logger Then Log(Subs.clienteActual & "|" &Starter.tipov) - If logger Then Log("Entro="&entro) - If logger Then Log("ya_entro="&ya_entro) - If Starter.tipov = "PREVENTA" Then - query = "cat_gunaprod" - QUERY2 = "COUNT_GUNAPROD" - Else IF Starter.tipov = "VENTA" Then - query = "cat_gunaprod2" - QUERY2= " COUNT_GUNAPROD2" - ELSE IF Starter.tipov = "ABORDO" Then - query = "cat_gunaprod" - QUERY2 = "COUNT_GUNAPROD" - Else - query = "cat_gunaprod" - QUERY2 = "COUNT_GUNAPROD" - End If - E_CAMBIO.Text = "0" - cantidad.Text = "0" - If ya_entro <> "1" Then - If entro=0 Then entro ="2" - ya_entro ="1" - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 14 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 14 - label2.TextColor = Colors.Black - c2=Starter.skmt.ExecQuery("select COUNT(*) AS CUANTOS, CAT_GP_TIPO from " & query & " where CAT_GP_ALMACEN > 0 AND CAT_GP_TIPOPROD <> 1 and (length(CAT_GP_CODPROMO) = 1 OR CAT_GP_CODPROMO = CAT_GP_ID) GROUP BY CAT_GP_TIPO ORDER BY CAT_GP_TIPO ASC") - ListView1.Clear - lfila.text = "TIPO" - lvClic.Put("PASO", "TIPO") - If c2.RowCount>0 Then - For i=0 To c2.RowCount -1 - c2.Position=i - ListView1.AddTwoLines(c2.GetString("CAT_GP_TIPO"),c2.GetString("CUANTOS")) - Next - End If - entro = "2" - Else - entro = "3" - If logger Then LogColor($"Entro=${entro}"$, Colors.Blue) - ListView1_ItemClick(1,V_ANT_SALIR) - End If - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) - c.Position =0 - PERFIL = c.GetString("CAT_VA_VALOR") - c.Close - If PERFIL = "V-COSTO" Then - Starter.skmt.ExecNonQuery("DELETE FROM CAT_GUNAPROD WHERE CAT_GP_ID IN (SELECT CAT_GP_ID FROM LISTA_PRECIOS WHERE NLISTA = '9' AND PRECIO = '0')") - End If - ListView1.Visible = True - If cuenta = "0" Then - B4XPages.mainpage.Cliente.CREDITO_DISPONIBLE = 10000000 - End If - - LogColor(ListView1.Visible,Colors.Red) -End Sub - -Sub ListView1_ItemClick (Position As Int, Value As Object) - Log(Value) - Private l As List - l.Initialize - l.Add(Position) - l.Add(Value) - If lvClic.ContainsKey("ultimo") Then lvClic.Put("anterior", lvClic.get("ultimo")) - lvClic.Put("ultimo", l) -' If Logger Then Log($"lvClic=${lvClic}"$) - Private Subrutina As Map =CreateMap("nombre":"ListView1_ItemClick", "param1":Position, "param2":Value) - Starter.sesion = CreateMap("actividad":Me, "sub":Subrutina) -' If Logger Then LogColor($"Entro=${entro}, Value=${Value}"$, Colors.Blue) - Log("MARCA=" & l_marca.Text & "|" & entro) - B_MASC.Enabled = True - B_MENOSC.Enabled = True - E_CAMBIO.Enabled = True - Log("Botones activos") - If Value = "PROMOS" And B4XPages.mainpage.Cliente.cuenta <> "N" Then - entro = "3" - marca = "PROMOS" - tipo = "PROMOS" - Log($"MARCA=${marca}, tipo=${tipo}"$) - Else if Value = "PROMOS" And B4XPages.mainpage.Cliente.cuenta = "N" Then - entro = "5" - Subs.iniciaActividad("Cliente") - End If - If entro = "1" Then - marca = Value - c2=Starter.skmt.ExecQuery2("select COUNT(*) AS CUANTOS, CAT_GP_TIPO from " & query & " where CAT_GP_ALMACEN > 0 and CAT_GP_CLASIF = ? AND CAT_GP_TIPOPROD <> 1 and (length(CAT_GP_CODPROMO) = 1 OR CAT_GP_CODPROMO = CAT_GP_ID) GROUP BY CAT_GP_TIPO ORDER BY CAT_GP_TIPO ASC", Array As String(Value)) - ListView1.Clear - lfila.text = "TIPO" - lvClic = CreateMap("PASO":0, "TIPO":0, "SUB-TIPO":0) - lvClic.Put("TIPO", l) - lvClic.Put("PASO", lfila.Text) - If logger Then Log("lvClic="&lvClic) - If c2.RowCount>0 Then - For i=0 To c2.RowCount -1 - c2.Position=i - ListView1.AddTwoLines(c2.GetString("CAT_GP_TIPO"),c2.GetString("CUANTOS")) - Next - End If - entro = "3" - Else If entro = "2" Then 'Or lvClic.Get("PASO") = "TIPO" Then - tipo = Value - c2=Starter.skmt.ExecQuery2("select COUNT(*) AS CUANTOS, CAT_GP_SUBTIPO from " & query & " where CAT_GP_ALMACEN > 0 and CAT_GP_TIPO = ? AND CAT_GP_TIPOPROD <> 1 and (length(CAT_GP_CODPROMO) = 1 OR CAT_GP_CODPROMO = CAT_GP_ID) GROUP BY CAT_GP_SUBTIPO ORDER BY CAT_GP_SUBTIPO ASC ", Array As String( Value)) - ListView1.Clear - lfila.text = "SUB-TIPO" - lvClic.Put("PASO", lfila.Text) - lvClic.Put("SUB-TIPO", l) -' If Logger Then Log("lvClic="&lvClic) - If c2.RowCount>0 Then - For i=0 To c2.RowCount -1 - c2.Position=i - ListView1.AddTwoLines(c2.GetString("CAT_GP_SUBTIPO"),c2.GetString("CUANTOS")) - Next - End If - entro = "3" -' If Logger Then LogColor($"Entro=${entro}, Value=${Value}"$, Colors.Blue) - Else If entro = "3" Then - Log(tipo) - TECLA_BACK = 0 - If tipo = "PROMOS" Then TECLA_BACK = 1 -' If Logger Then LogColor($"Entro=${entro}, Value=${Value}"$, Colors.Blue) - V_ANT_SALIR = Value - c2=Starter.skmt.ExecQuery2("select CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from " & query & " where CAT_GP_ALMACEN > 0 AND CAT_GP_TIPO = ? AND CAT_GP_SUBTIPO =? AND CAT_GP_TIPOPROD <> 1 and (length(CAT_GP_CODPROMO) = 1 OR CAT_GP_CODPROMO = CAT_GP_ID) and CAT_GP_ID NOT IN (SELECT PE_PROID FROM PEDIDO WHERE PE_CEDIS = PE_PROID AND pe_cliente in (Select CUENTA from cuentaa)) ", Array As String( tipo, Value)) - ListView1.Clear - lfila.text = "PRODUCTO" - lvClic.Put("PASO", lfila.Text) - lvClic.Put("PRODUCTO", l) -' If Logger Then Log("lvClic="&lvClic) - Dim ins As InputStream - Dim bmp As Bitmap - Dim jpeg() As Byte - If c2.RowCount>0 Then - For i=0 To c2.RowCount -1 - c2.Position=i - jpeg = c2.GetBlob("CAT_GP_IMG") - ins.InitializeFromBytesArray(jpeg, 0, jpeg.Length) - bmp.Initialize2(ins) - ListView1.AddTwoLines(c2.GetString("CAT_GP_NOMBRE"),"# " & c2.GetString("CAT_GP_ALMACEN") & " $ " & c2.GetString("CAT_GP_PRECIO")) - Next - End If - entro = "4" -' LogColor($"Entro=${entro}, Value=${Value}"$, Colors.Blue) - Else If entro = "4" Then -' If Logger Then LogColor($"Entro=${entro}, Value=${Value}"$, Colors.Blue) - Starter.skmt.ExecNonQuery("delete from PROID") - Starter.skmt.ExecNonQuery2("INSERT INTO PROID VALUES (?)", Array As Object(Value)) - Log($"MARCA=${marca}, tipo=${tipo}"$) - Log("************* MARCA=" & l_marca.Text & "|" & l_sub.text & "|" & marca & "|" & Value) - HACER_PEDIDO - If tipo = "PROMOS" Or tipo = "EXHIBIDOR/POP" Then - B_MASC.Enabled = False - B_MENOSC.Enabled = False - E_CAMBIO.Enabled = False - Log("Botones NO activos") - Else - B_MASC.Enabled = True - B_MENOSC.Enabled = True - E_CAMBIO.Enabled = True - End If - - - End If -End Sub - -Private Sub lv_subtipo_ItemClick (Position As Int, Value As Object) - -End Sub - -Private Sub lv_producto2_ItemClick (Position As Int, Value As Object) - -End Sub - -Sub B4XPage_CloseRequest As ResumableSub'ignore - ' BACK key pressed - Starter.ultima_back_productos = 1 - If logger Then LogColor("BACK", Colors.Red) - If TECLA_BACK = 1 Then entro ="2" - If Panel5.Visible Then - Panel5.Visible = False - Else - End If - ya_entro ="0" - - If entro = "4" Or entro = "3" Then - entro = "2" - TECLA_BACK = 1 - ListView1_ItemClick(1,tipo) - Return True - Else If entro = "2" Then 'Antes 3 - 'B4XPage_Appear - CARGA_PRODUCTOS - Return False - Else - If logger Then LogColor($"Entro=${entro} - BACK"$, Colors.Blue) - Return False - End If - ' Returning False signals the system to handle the key -End Sub - -Sub BUSCA_TextChanged (Old As String, New As String) - - q_buscar = "%" & BUSCA.Text & "%" - - - c=Starter.skmt.ExecQuery2("select CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO,CAT_GP_IMG, CAT_GP_TIPO from " & query & " where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_NOMBRE like ? and CAT_GP_CLASIF <> ? AND CAT_GP_TIPOPROD <> 1 and (length(CAT_GP_CODPROMO) = 1 OR CAT_GP_CODPROMO = CAT_GP_ID) order by CAT_GP_NOMBRE asc", Array As String(q_buscar,"PROMOS")) - - ListView1.Clear - Dim ins As InputStream - Dim bmp As Bitmap - Dim jpeg() As Byte - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - jpeg = c.GetBlob("CAT_GP_IMG") - ins.InitializeFromBytesArray(jpeg, 0, jpeg.Length) - bmp.Initialize2(ins) - tipo = c.GetString("CAT_GP_TIPO") - ListView1.AddTwoLines(c.GetString("CAT_GP_NOMBRE"),"Existencia " & c.GetString("CAT_GP_ALMACEN") & " Precio $" & c.GetString("CAT_GP_PRECIO")) - - Next - End If - entro= "4" - c.Close -End Sub - -Sub HACER_PEDIDO - ListView1.Visible = False - c=Starter.skmt.ExecQuery("Select SUBSTR(CUENTA,1,1) AS CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c.Close - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") -' If Logger Then Log("+ + + "&c.RowCount) - c.Position=0 - cuenta = c.GetString("CUENTA") - c.Close - Panel1.Visible= True - cambio = "0" - cantidad.Text = "0" - c=Starter.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") -' If Logger Then Log("+ + + "&c.RowCount) - C.Position =0 - ALMACEN = C.GetString("ID_ALMACEN") - C.Close - i_fotol.Visible = False - c=Starter.skmt.ExecQuery("select CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_DEV from " & query & " where CAT_GP_NOMBRE In (Select PDESC from PROID)") - c.Position=0 - L_PROID.Text = c.GetString("CAT_GP_ID") - l_tipo.Text = c.GetString("CAT_GP_TIPO") - l_sub.Text = c.GetString("CAT_GP_SUBTIPO") - l_marca.Text = c.GetString("CAT_GP_CLASIF") - l_desc.Text = c.GetString("CAT_GP_NOMBRE") - - - If l_sub.Text = "PROMOS" Or l_sub.Text = "EXHIBIDOR/POP" Then - B_MASC.Enabled = False - B_MENOSC.Enabled = False - E_CAMBIO.Enabled = False - Log("Botones NO activos") - Else - B_MASC.Enabled = True - B_MENOSC.Enabled = True - E_CAMBIO.Enabled = True - End If - - If PERFIL = "V-SUPER" Then - c2=Starter.skmt.ExecQuery("select PRECIO, NLISTA FROM LISTA_PRECIOS WHERE NLISTA = '10' AND CAT_GP_ID =" & "'" &L_PROID.TEXT&"' ORDER BY NLISTA ASC") - If logger Then Log("+ + + "&c.RowCount) - c2.Position=0 - l_precio.Text = c2.GetString("PRECIO") - c2.Close - Else - l_precio.Text = c.GetDouble("CAT_GP_PRECIO") - End If - l_bodega.Text = c.GetString("CAT_GP_ALMACEN") - PROMOS_VENTAS = c.GetString("CAT_GP_ALMACEN") - IMG_PASO = c.GetBlob("CAT_GP_IMG") - PROMO_C = c.GetString("CAT_GP_STS") - cambio = c.GetString("CAT_GP_DEV") - preciosin = c.GetString("CAT_GP_IMP2") - PROMO_CR = c.GetString("CAT_GP_IMP1") - precio2 = l_precio.Text - c=Starter.skmt.ExecQuery("select CAT_VA_VALOR from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'LIMITE'") -' If Logger Then Log("+ + + "&c.RowCount) - If c.RowCount > 0 Then - C.Position = 0 - limite_abordo = C.GetString("CAT_VA_VALOR") - End If - C.Close - c=Starter.skmt.ExecQuery2("select sum(cat_gp_precio * cat_gp_almacen) as MONTO from cat_gunaprod2 where cat_gp_almacen > 0 and cat_gp_clasif <> ? ", Array As String("PROMOS")) -' If Logger Then Log("+ + + "&c.RowCount) - c.Position = 0 - limite_anterior = c.GetString("MONTO") - c.Close - If clie_id = "0" Then - l_invact.Visible=True - L_LINV.Visible=True - L_CARGA.Visible = True - L_CANT.Text ="PEDIDO" - c2=Starter.skmt.ExecQuery("select count(*) as CUANTOS from cat_gunaprod2 where CAT_GP_NOMBRE In (Select PDESC from PROID)") -' If Logger Then Log("+ + + "&c2.RowCount) - c2.Position =0 - If c2.GetString("CUANTOS") > 0 Then - c=Starter.skmt.ExecQuery("select CAT_GP_ALMACEN from cat_gunaprod2 where CAT_GP_NOMBRE In (Select PDESC from PROID)") - C.Position =0 - l_invact.text = C.GetString("CAT_GP_ALMACEN") - C.Close - Else - l_invact.text = 0 - End If - Label3.Visible = False - ImageView4.Visible = False - E_CAMBIO.Visible = False - B_MENOSC.Visible = False - B_MASC.Visible = False - Else - l_invact.Visible=False - L_LINV.Visible=False - L_CARGA.Visible = False - L_CANT.Text ="VENTA" - Label3.Visible = True - ImageView4.Visible = True - E_CAMBIO.Visible = True - B_MENOSC.Visible = True - B_MASC.Visible = True - End If - DESC_SS = 0 - DESC_PING = 0 - DESC_RTEC = 0 - CC=Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS FROM DESC_CLIENTES WHERE DC_CL_CLIENTE IN (Select cuenta from cuentaa) ") -' If Logger Then Log("+ + + "&CC.RowCount) - CC.Position =0 - If CC.GetString("CUANTOS") > 0 Then - DD=Starter.skmt.ExecQuery("SELECT DC_CL_CLIENTE , CAT_CL_DESCUENTO_SS , CAT_CL_DESCUENTO_RTEC , CAT_CL_DESCUENTO_PING, CAT_CL_TIPOCLIENTE FROM DESC_CLIENTES WHERE DC_CL_CLIENTE IN (Select cuenta from cuentaa) ") -' If Logger Then Log("+ + + "&DD.RowCount) - DD.Position =0 - DESC_SS = DD.GetString("CAT_CL_DESCUENTO_SS") - DESC_RTEC = DD.GetString("CAT_CL_DESCUENTO_RTEC") - DESC_PING = DD.GetString("CAT_CL_DESCUENTO_PING") - TIPO_CLIENTE = DD.GetString("CAT_CL_TIPOCLIENTE") - DD.Close - Else - DESC_SS = 0 - DESC_PING = 0 - DESC_RTEC = 0 - TIPO_CLIENTE = 0 - End If - CC.Close - '' esto es de las promos para activarlas despues - If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" Then - DESC_PROMO.Visible = True - CC=Starter.skmt.ExecQuery2("select count(*) as CUANTOS FROM PROMOS_COMP WHERE CAT_PA_ID = ?", Array As String(L_PROID.Text)) - CC.Position =0 - If CC.GetString("CUANTOS") = 0 Then - l_bodega.Text = "1" - Else - CC.Close - CC=Starter.skmt.ExecQuery2("select CAT_PA_MAXPROM, CAT_PA_MAXPROMREC, CAT_PA_MAXPROMCLIE FROM PROMOS_COMP WHERE CAT_PA_ID = ?", Array As String(L_PROID.Text)) - CC.Position =0 - - DD=Starter.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM HIST_CLIENTE_CANT_PROMOS WHERE HCCP_CLIENTE IN (Select cuenta from cuentaa) AND HCCP_PROMO =?", Array As String(L_PROID.Text)) - DD.Position =0 - If DD.GetString("CUANTOS") = 0 Then - HCCP_CANT_E = 0 - Else - DD.Close - DD=Starter.skmt.ExecQuery2("SELECT HCCP_CANT FROM HIST_CLIENTE_CANT_PROMOS WHERE HCCP_CLIENTE IN (Select cuenta from cuentaa) AND HCCP_PROMO =?", Array As String(L_PROID.Text)) - DD.Position =0 - HCCP_CANT_E = DD.GetString("HCCP_CANT") - DD.Close - End If - DD=Starter.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select cuenta from cuentaa) AND HVD_PRONOMBRE =?", Array As String(l_desc.Text)) - DD.Position =0 - If DD.GetString("CUANTOS") = 0 Then - HCCP_CANT = 0 - Else - DD.Close - DD=Starter.skmt.ExecQuery2("SELECT SUM(HVD_CANT) AS HCCP_CANT FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select cuenta from cuentaa) AND HVD_PRONOMBRE =?", Array As String(l_desc.Text)) - DD.Position =0 - HCCP_CANT = DD.GetString("HCCP_CANT") - DD.Close - End If - HCCP_CANT_E = HCCP_CANT_E - HCCP_CANT - TOTAL_PROMO = CC.GetString("CAT_PA_MAXPROMCLIE") - HCCP_CANT - If HCCP_CANT = 0 Then - PROMOS_VENTAS = CC.GetString("CAT_PA_MAXPROM") - Else IF TOTAL_PROMO > CC.GetString("CAT_PA_MAXPROMREC") Then - PROMOS_VENTAS = CC.GetString("CAT_PA_MAXPROMREC") - Else - PROMOS_VENTAS = TOTAL_PROMO - End If - End If - Else - DESC_PROMO.Visible = False - End If - c.Close - c=Starter.skmt.ExecQuery("select CASE WHEN pe_costo_tot is null then 0 else sum( pe_costo_tot ) end as TOTAL_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - t_venta.Text = c.GetString("TOTAL_CLIE") - c.Close - Terminar.Visible = True - guardar.Visible = True - cantidad.Visible = True - If cambio = "1" Then - nopromo.Visible = True - Else - nopromo.Visible = False - End If - Dim out As OutputStream - out = File.OpenOutput(ruta, "1.jpg", False) - out.WriteBytes(IMG_PASO, 0, IMG_PASO.Length) - out.Close - img_prod.Bitmap = LoadBitmap(ruta,"1.jpg") - TOT_ART_PROMO = "0" - TOT_ART_PROMOR = "0" - If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" And l_bodega.Text = "0" Then - MsgboxAsync("ALERTA","EL CLIENTE YA NO PUEDE TENER ESTA PROMOCION") 'ignore - Panel1.Visible= False - End If - If marca = "PROMOS" Then - DD=Starter.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM PROMOS_COMP WHERE CAT_PA_ID =?", Array As String(L_PROID.Text)) - DD.Position =0 - If DD.GetString("CUANTOS") > 0 Then - C=Starter.skmt.ExecQuery2("SELECT CAT_PA_MAXPROMCLIE FROM PROMOS_COMP WHERE CAT_PA_ID =?", Array As String(L_PROID.Text)) - C.Position =0 - TOTAL_PROMO_CLIE = c.GetString("CAT_PA_MAXPROMCLIE") - c.Close - Else - TOTAL_PROMO_CLIE = 0 - End If - DD.Close - Else - If TIPO_CLIENTE = "TDCK" Then - - c=Starter.skmt.ExecQuery("select PRECIO, NLISTA FROM LISTA_PRECIOS WHERE NLISTA ='10' AND CAT_GP_ID =" & "'" &L_PROID.TEXT&"' ORDER BY NLISTA ASC") - c.Position=0 - l_precio.Text = c.GetString("PRECIO") - c.Close - End If - End If - If l_tipo.Text = "SALTY SNACKS" Then - l_precio.Text = Round2(l_precio.Text -(l_precio.Text * DESC_SS/100),2) - ELSE IF l_tipo.Text = "PING" Then - l_precio.Text = Round2(l_precio.Text - (l_precio.Text * DESC_PING/100),2) - ELSE IF l_tipo.Text = "RTEC" Then - l_precio.Text = Round2(l_precio.Text - (l_precio.Text * DESC_RTEC/100),2) - End If - - If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" And l_bodega.Text = "0" Then - MsgboxAsync("ALERTA","EL CLIENTE NO PUEDE TENER ESTA PROMOCION") 'ignore - Panel1.Visible= False - End If - DD=Starter.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM HIST_CLIENTE_CANT_PROMOS WHERE HCCP_CLIENTE IN (Select cuenta from cuentaa) AND HCCP_PROMO =?", Array As String(L_PROID.Text)) - DD.Position =0 - SI_APLICA_PROMO = DD.GetString("CUANTOS") - DD.Close - DD=Starter.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM HIST_CLIENTE_CANT_PROMOS WHERE HCCP_PROMO =?", Array As String(L_PROID.Text)) - DD.Position =0 - PROMO_ESP = DD.GetString("CUANTOS") - DD.Close - - - If PROMO_ESP > 0 And SI_APLICA_PROMO = 0 Then - MsgboxAsync("ALERTA","EL CLIENTE NO PUEDE TENER ESTA PROMOCION 1") 'ignore - Panel1.Visible= False - End If - If L_PROID.Text = "PROMO58" Then - l_bodega.Text = 1 - End If - If L_PROID.Text = "PROMO58" And HCCP_CANT_E < 1 Then - MsgboxAsync("ALERTA","EL CLIENTE NO PUEDE TENER ESTA PROMOCION <") - Panel1.Visible= False - End If - If HCCP_CANT_E = 0 And ( L_PROID.Text = "1000000001" Or L_PROID.Text = "PROMO243" Or L_PROID.Text = "PROMO244" Or L_PROID.Text = "PROMO245" )Then - MsgboxAsync("ALERTA","EL CLIENTE NO PUEDE TENER ESTA PROMOCION 0 " &HCCP_CANT & " "& L_PROID.Text) 'ignore - Panel1.Visible= False - Else IF L_PROID.Text = "1000000001" Or L_PROID.Text = "PROMO243" Or L_PROID.Text = "PROMO244" Or L_PROID.Text = "PROMO245" Then - l_bodega.Text = 1 - End If - If L_PROID.Text = "PROMO76" And HCCP_CANT = 0 Then - MsgboxAsync("ALERTA","EL CLIENTE NO PUEDE TENER ESTA PROMOCION 2") 'ignore - Panel1.Visible= False - Else IF L_PROID.Text = "PROMO76" Then - l_bodega.Text = 1 - End If - C=Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS FROM CAT_DESCUENTOS_SKU WHERE CAT_DS_CLIENTE IN (Select cuenta from cuentaa) AND CAT_DS_PRODID = " & "'" &L_PROID.TEXT&"' ") - C.Position =0 - If c.GetString("CUANTOS") > 0 Then - DD=Starter.skmt.ExecQuery("SELECT CAT_DS_PORCENTAJE FROM CAT_DESCUENTOS_SKU WHERE CAT_DS_CLIENTE IN (Select cuenta from cuentaa) AND CAT_DS_PRODID = " & "'" &L_PROID.TEXT&"' ") - DD.Position =0 - l_precio.Text = Round2(l_precio.Text - (l_precio.Text * DD.GetString("CAT_DS_PORCENTAJE")/100),2) - End If - c.Close - '' ESTO ES PARA NO PASAR DE LAS PROMOS ABORDO Y MANDARLAS AL MINIMO INICIO - If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" Then - e=Starter.skmt.ExecQuery2("select count(*) as CUANTOS FROM pedido WHERE PE_PROID = ? AND PE_CLIENTE IN (Select cuenta from cuentaa) ", Array As String(L_PROID.Text)) - e.Position =0 - If e.GetString("CUANTOS") = 0 Then - l_bodega.Text = PROMOS_VENTAS - e=Starter.skmt.ExecQuery2("select count(*) as CUANTOS FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID = ? and cat_dp_tipo = 0", Array As String(L_PROID.Text) ) - e.Position = 0 - If e.GetString("CUANTOS") > 0 Then - F=Starter.skmt.ExecQuery2("select CAT_DP_IDPROD, sum(CAT_DP_PZAS) as CAT_DP_PZAS FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID = ? and cat_dp_tipo = 0 GROUP BY CAT_DP_IDPROD", Array As String(L_PROID.Text) ) - 'se coloco el if por la mala promocion. - For i=0 To F.RowCount -1 - F.Position=i - c=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from cat_gunaprod2 where CAT_GP_ID = ? and cat_gp_almacen > 0 ", Array As String(f.GetString("CAT_DP_IDPROD"))) - c.Position=0 - If c.GetString("CUANTOS") > 0 Then - h=Starter.skmt.ExecQuery2("select CAT_GP_NOMBRE, CAT_GP_ALMACEN from cat_gunaprod2 where CAT_GP_ID = ? ", Array As String(f.GetString("CAT_DP_IDPROD"))) - h.Position=0 - If TOTAL_PROMO_CLIE > l_bodega.Text Then - INV_TOTAL_PROMO = l_bodega.Text - Else - INV_TOTAL_PROMO = TOTAL_PROMO_CLIE - End If - If h.GetString("CAT_GP_ALMACEN") < INV_TOTAL_PROMO * f.GetString("CAT_DP_PZAS") Then - If h.GetString("CAT_GP_ALMACEN") < f.GetString("CAT_DP_PZAS") Then - l_bodega.Text = "0" - Else - l_bodega.Text = Round(h.GetString("CAT_GP_ALMACEN") / f.GetString("CAT_DP_PZAS")) - End If - End If - h.Close - else if c.GetString("CUANTOS") = 0 Then - l_bodega.Text = "0" - End If - c.Close - Next - f.Close - End If - e.Close - If l_bodega.Text = "0" Then - Msgbox ("PROMO LLEGO AL LIMITE PARA ESTE CLIENTE", "AVISO") 'ignore - Panel1.Visible= False - l_bodega.Text = "0" - Subs.iniciaActividad("Cliente") - End If - Else - Msgbox ("YA SE VENDIO LA PROMO.", "AVISO") 'ignore - Panel1.Visible= False - l_bodega.Text = "0" - Subs.iniciaActividad("Cliente") - End If - End If - If l_marca.text = "PROMOS" And B4XPages.MainPage.cliente.YA_IMPRIMIO2 = 1 Then - Msgbox ("YA SE IMPRIMIO EL TICKET.", "AVISO") 'ignore - Panel1.Visible= False - l_bodega.Text = "0" - Subs.iniciaActividad("Cliente") - l_sub.Text = "" - End If - - If l_marca.text = "PROMOS" Then - c=Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS FROM CLIENTE_CARGA_DIA WHERE CCD_CUENTA IN (Select CUENTA from cuentaa)") - c.Position = 0 - If c.GetString("CUANTOS") > 0 Then - Msgbox ("YA SE IMPRIMIO EL TICKET.", "AVISO") 'ignore - Panel1.Visible= False - l_bodega.Text = "0" - Subs.iniciaActividad("Cliente") - l_sub.Text = "" - End If - c.Close - End If - If l_marca.text = "PROMOS" Then - C7=Starter.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa) AND PE_PROID = ? ", Array As String(L_PROID.Text)) - C7.Position=0 - If C7.GetString("CUANTOS") > 0 Then - Msgbox ("YA SE VENDIO LA PROMO.", "AVISO") 'ignore - Panel1.Visible= False - End If - End If -End Sub - -Sub guardar_Click - B_MASC.Enabled = True - B_MENOSC.Enabled = True - E_CAMBIO.Enabled = True - guardar.Enabled = False - Panel1.Visible=False - If cantidad.Text = "" Then - cantidad.Text = 0 - End If - limite_actual = t_venta.Text + (cantidad.Text * l_precio.Text) - Log($"Limite actual=${limite_actual}"$) - If cuenta = "0" Then - limite_actual = limite_actual + limite_anterior - End If - Log($"Limite actual=${limite_actual}"$) - If Starter.lat_gps = 0 Or Starter.lat_gps = Null Then - Private coords As List = Subs.traeCoordsDeBD - Starter.lat_gps = coords.Get(0) - Starter.lon_gps = coords.Get(1) - End If -' If Logger Then Log($"cuenta: ${cuenta}, limite_actual:${limite_actual}, limite_abordo:${limite_abordo}"$) - If limite_abordo = "" Then limite_abordo = 0 'Mod por CHV - 211213 - Para que si limite_abordo no tiene valor, no nos saque de la app. - If cuenta ="0" And limite_actual > limite_abordo And cantidad.Text <> 0 And cantidad.Text <> "" Then - Log($"${cuenta},${limite_actual > limite_abordo},${cantidad.text}"$) - Msgbox("Excede el limite abordo","limite") 'ignore - Else IF (cuenta <> "0" And limite_actual < B4XPages.MainPage.cliente.CREDITO_DISPONIBLE) Or (cuenta ="0" And limite_actual < limite_abordo) Then - If E_CAMBIO.Text = "" Or E_CAMBIO.Text = "0" Then - Panel1.Visible= False - entro = "3" - If BUSCA.Text = "" Then - ListView1_ItemClick(1,V_ANT_SALIR) - Else - BUSCA_TextChanged(1, BUSCA.Text) - End If - Else - If E_CAMBIO.Text = "" Then E_CAMBIO.Text = "0" - If E_CAMBIO.Text * l_precio.Text > t_venta.Text Then - Msgbox("Excede EL MONTO DE LA VENTA", "ADVERTENCIA") 'ignore - else if E_CAMBIO.Text + cantidad.Text > l_bodega.Text Then - Msgbox("Excede existencia", "ADVERTENCIA") 'ignore - Else - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - '' para el rmi con costo se quita el comentado de abajo FL 11-05-2023 - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?) ", Array As Object ("DUR", E_CAMBIO.text * l_precio.Text * (-1),l_precio.Text, E_CAMBIO.text,"CAMBIO" & l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,Starter.tipov,precio2)) - '' Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?) ", Array As Object ("DUR", 0,0, E_CAMBIO.text,"CAMBIO" & l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,Starter.tipov,precio2)) - - 'Starter.skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(E_CAMBIO.Text, L_PROID.Text)) - E_CAMBIO.Text = "" - Panel1.Visible= False - entro = "3" - If BUSCA.Text = "" Then - ListView1_ItemClick(1,V_ANT_SALIR) - Else - BUSCA_TextChanged(1, BUSCA.Text) - End If - End If - End If - If cantidad.Text = "" Or cantidad.Text = "0.0" Or cantidad.Text = "0" Then - Panel1.Visible= False - entro = "3" - If BUSCA.Text = "" Then - ListView1_ItemClick(1,V_ANT_SALIR) - Else - BUSCA_TextChanged(1, BUSCA.Text) - End If - ELSE If cantidad.Text > l_bodega.Text Then - Msgbox("Excede la existencia", "ADVERTENCIA") 'ignore - Else If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" And PROMO_C > 0 And cantidad.Text > 0 Then - Starter.skmt.ExecNonQuery("delete from PROIDID") - Starter.skmt.ExecNonQuery2("INSERT INTO PROIDID VALUES (?)", Array As Object(L_PROID.text)) - c=Starter.skmt.ExecQuery("Select count(*) as CUANTOSD from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and length(pe_cedis) < 3 and PE_COSTOU > 0 and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_TIPO = 1)") - c.Position =0 - If c.GetString("CUANTOSD") = 0 Then - Msgbox("No tiene venta el cliente para la promo", "ADVERTENCIA") 'ignore - Else - c=Starter.skmt.ExecQuery("Select sum(pe_cant) As TOT_ART_PROMO, sum(PE_COSTO_TOT) as COSTO_TOT from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and length(pe_cedis) < 3 and PE_COSTOU > 0 and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_TIPO = 1)") - C.Position =0 - TOT_ART_PROMO = C.GetString("TOT_ART_PROMO") - COSTO_TOT = C.GetString("COSTO_TOT") - C.Close - ' se agrego and PE_COSTOU > 0 para que no tome los cambios - c=Starter.skmt.ExecQuery("Select count(*) as CUANTOSD from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and length(pe_cedis) < 3 and PE_COSTOU > 0 and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND (CAT_DP_PRECIO = 0.01 or CAT_DP_PRECIO = 1 OR CAT_DP_PRECIO = 0) AND CAT_DP_TIPO = 1)") - c.Position =0 - If c.GetString("CUANTOSD") = 0 Then - TOT_ART_PROMOR = "0" 'Msgbox("No tiene venta el cliente para la promo", "ADVERTENCIA") 'ignore - Else - c=Starter.skmt.ExecQuery("Select sum(pe_cant) As TOT_ART_PROMO, sum(PE_COSTO_TOT) as COSTO_TOT from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and length(pe_cedis) < 3 and PE_COSTOU > 0 and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND (CAT_DP_PRECIO = 0.01 or CAT_DP_PRECIO = 1 OR CAT_DP_PRECIO = 0) AND CAT_DP_TIPO = 1)") - C.Position =0 - TOT_ART_PROMOR = C.GetString("TOT_ART_PROMO") - End If - C.Close - If PROMO_C = "" Then PROMO_C = "0" - PROMO_C = PROMO_C * cantidad.Text - If PROMO_CR = "" Then PROMO_CR = "0" - PROMO_CR = PROMO_CR * cantidad.Text - If TOT_ART_PROMO = PROMO_C And TOT_ART_PROMOR = PROMO_CR Then - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_CEDIS = (?) WHERE PE_CEDIS and length(pe_cedis) < 3 and PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID))", Array As Object(L_PROID.text)) - D=Starter.skmt.ExecQuery("select CAT_DP_ID, CAT_DP_PRECIO, CAT_DP_PRECIO_SIMPTOS, CAT_DP_IDPROD FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) AND CAT_DP_PRECIO > 1 AND CAT_DP_TIPO = 1") ' MODIFCADO 05/05/2021 PARA QUE NO TOME LOS CAMBIOS - If D.RowCount>0 Then - For i=0 To D.RowCount -1 - D.Position=i - ' se agrega esta linea para que no tome los cambios - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_COSTOU = (?), PE_COSTO_TOT = PE_CANT * (?) , PE_COSTO_SIN = (?) WHERE PE_PROID = (?) And PE_CLIENTE IN (Select CUENTA from cuentaa) and length(pe_cedis) < 3 and PE_COSTOU > 0 and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_TIPO = 1 AND CAT_DP_PRECIO > 1) ",Array As Object( D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO_SIMPTOS"),D.GetString("CAT_DP_IDPROD"))) - Next - End If - D.Close - D=Starter.skmt.ExecQuery("select CAT_DP_ID, CAT_DP_PRECIO, CAT_DP_PRECIO_SIMPTOS, CAT_DP_IDPROD FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) AND (CAT_DP_PRECIO = 0.01 or CAT_DP_PRECIO = 1 OR CAT_DP_PRECIO = 0) AND CAT_DP_TIPO = 1") - If D.RowCount>0 Then - For i=0 To D.RowCount -1 - D.Position=i - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_COSTOU = (?), PE_COSTO_TOT = PE_CANT * (?) , PE_COSTO_SIN = (?) WHERE PE_PROID = (?) AND PE_CLIENTE IN (Select CUENTA from cuentaa) and length(pe_cedis) < 3 and PE_COSTOU > 0 and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_TIPO = 1",Array As Object( D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO_SIMPTOS"),D.GetString("CAT_DP_IDPROD"))) - Next - End If - D.Close - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c.Close - c=Starter.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - cl_ruta = "0" - If c.RowCount > 0 Then - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - End If - c.Close - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - usuario = "" - If c.RowCount > 0 Then - c.Position=0 - usuario = c.GetString("USUARIO") - End If - 'para insertar la promo de ades el de regalo en 0 - e=Starter.skmt.ExecQuery("select count(*) as CUANTOS FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) and CAT_DP_TIPO = 0 ") - e.Position =0 - If e.GetString("CUANTOS") > 0 Then - F=Starter.skmt.ExecQuery("select CAT_DP_IDPROD, CAT_DP_PZAS,CAT_DP_PRECIO FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) and CAT_DP_TIPO = 0 ") - 'meter el otro - If f.RowCount>0 Then - For i=0 To f.RowCount -1 - f.Position=i - 'F.Position =0 - PRECIO_CERO = f.GetString("CAT_DP_PRECIO") - h=Starter.skmt.ExecQuery2("select CAT_GP_NOMBRE from CAT_GUNAPROD2 where CAT_GP_ID = ? ", Array As String(f.GetString("CAT_DP_IDPROD"))) - h.Position=0 - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,PRECIO_CERO * f.GetString("CAT_DP_PZAS") * cantidad.text, PRECIO_CERO, f.GetString("CAT_DP_PZAS") * cantidad.text, h.GetString("CAT_GP_NOMBRE"), f.GetString("CAT_DP_IDPROD"),clie_id, sDate & sTime, usuario,cl_ruta,Starter.tipov,precio2)) - 'ESTO LO CAMBIE POR QUE NO DESCUENTA EL INVENTARIO ABORDO CON LAS PROMOS - Starter.skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(f.GetString("CAT_DP_PZAS") * cantidad.text, f.GetString("CAT_DP_IDPROD"))) - h.Close - Next - End If - f.Close - End If - e.Close - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,0, 0, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,cl_ruta,Starter.tipov,precio2)) - Starter.skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) - Else - Msgbox("Tiene " & TOT_ART_PROMO & " " & TOT_ART_PROMOR & " y necesita " & PROMO_C & " " & PROMO_CR & " Para la Promo. " , "ADVERTENCIA") 'ignore - End If - End If - cantidad.Text = "" - Panel1.Visible= False - entro = "3" - If BUSCA.Text = "" Then - ListView1_ItemClick(1,V_ANT_SALIR) - Else - BUSCA_TextChanged(1, BUSCA.Text) - End If - - ''''' PROMOS QUE NO SON VARIABLE - else If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" And PROMO_C = 0 Then - Starter.skmt.ExecNonQuery("delete from PROIDID") - Starter.skmt.ExecNonQuery2("INSERT INTO PROIDID VALUES (?)", Array As Object(L_PROID.text)) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c.Close - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - c.Close - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - 'para insertar la promo de ades el de regalo en 0 - e=Starter.skmt.ExecQuery("select count(*) as CUANTOS FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) ") - e.Position =0 - If e.GetString("CUANTOS") > 0 Then - F=Starter.skmt.ExecQuery("select CAT_DP_IDPROD, CAT_DP_PZAS, CAT_DP_PRECIO FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID)") - For i =0 To f.RowCount -1 - F.Position =i - h=Starter.skmt.ExecQuery2("select CAT_GP_NOMBRE from " & query & " where CAT_GP_ID = ? ", Array As String(f.GetString("CAT_DP_IDPROD"))) - h.Position=0 - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,f.GetString("CAT_DP_PRECIO") * cantidad.text * f.GetString("CAT_DP_PZAS"), f.GetString("CAT_DP_PRECIO"), f.GetString("CAT_DP_PZAS") * cantidad.text, h.GetString("CAT_GP_NOMBRE"), f.GetString("CAT_DP_IDPROD"),clie_id, sDate & sTime, usuario,cl_ruta,Starter.tipov,precio2)) - 'ESTO LO CAMBIE POR QUE NO DESCUENTA EL INVENTARIO ABORDO CON LAS PROMOS - Starter.skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(f.GetString("CAT_DP_PZAS") * cantidad.text, f.GetString("CAT_DP_IDPROD"))) - h.Close - Next - f.Close - End If - e.Close - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,0, 0, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,cl_ruta,Starter.tipov,precio2)) - Starter.skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) - cantidad.Text = "" - c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - If logger Then LogColor($"Insertamos coordenadas en pedido: ${Starter.lon_gps}, ${Starter.lat_gps}"$, Colors.Magenta) - Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT,PC_ALMACEN,PC_RUTA,PC_COSTO_SIN) VALUES (?,?,?,?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps,ALMACEN,cl_ruta,c.GetString("TOTAL_CLIE_SIN"))) - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - Panel1.Visible= False - entro = "3" - If BUSCA.Text = "" Then - ListView1_ItemClick(1,V_ANT_SALIR) - Else - BUSCA_TextChanged(1, BUSCA.Text) - End If - Else - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c.Close - c=Starter.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - c.Close - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (ALMACEN,cantidad.Text * l_precio.Text, l_precio.text, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,cl_ruta,preciosin,Starter.tipov,precio2)) - Starter.skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) - c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - If logger Then LogColor($"Insertamos coordenadas en pedido: ${Starter.lon_gps}, ${Starter.lat_gps}"$, Colors.Magenta) - Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT,PC_ALMACEN,PC_RUTA,PC_COSTO_SIN) VALUES (?,?,?,?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps, ALMACEN,cl_ruta,c.GetString("TOTAL_CLIE_SIN"))) - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - Panel1.Visible= False - entro = "3" - If BUSCA.Text = "" Then - ListView1_ItemClick(1,V_ANT_SALIR) - Else - BUSCA_TextChanged(1, BUSCA.Text) - End If - Starter.skmt.ExecNonQuery("delete from pedido3") - Starter.skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = 0 where PE_FOLIO IS NULL") - c=Starter.skmt.ExecQuery("SELECT SUM(PE_FOLIO) AS FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position = 0 - If c.GetString("FOLIO") <> Null And c.GetString("FOLIO") > 0 Then - YA_IMPRIMIO = 1 - Else - YA_IMPRIMIO = 0 - End If - c.Close - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_FECHA, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO ) SELECT PE_PRECIO2, PE_TIPO, PE_FECHA, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, SUM(PE_COSTO_TOT) AS PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE ") 'Mod por CHV - 220302 - Agregué PE_FECHA al select/insert - c=Starter.skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? ", Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"))) - Next - End If - c.Close - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FOLIO = ? WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As Object(YA_IMPRIMIO)) - Starter.skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") - 'StartActivity(fila) - End If - Starter.skmt.ExecNonQuery("delete from pedido3") - Starter.skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = 0 where PE_FOLIO IS NULL") - c=Starter.skmt.ExecQuery("SELECT SUM(PE_FOLIO) AS FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position = 0 - If c.GetString("FOLIO") <> Null And c.GetString("FOLIO") > 0 Then - YA_IMPRIMIO = 1 - Else - YA_IMPRIMIO = 0 - End If - c.Close - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_FECHA, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO ) SELECT PE_PRECIO2, PE_TIPO, PE_FECHA, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, SUM(PE_COSTO_TOT) AS PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE ") 'Mod por CHV - 220302 - Agregue PE_FECHA al select/insert - c=Starter.skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? ", Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"))) - Next - End If - c.Close - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FOLIO = ? WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As Object(YA_IMPRIMIO)) - Starter.skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") - Else - Log($"${cuenta},${limite_actual > limite_abordo},${cantidad.text},${B4XPages.MainPage.cliente.CREDITO_DISPONIBLE},${limite_actual},${limite_abordo}"$) - Msgbox("EXCEDE EL LIMITE DE CREDITO","AVISO") 'ignore - End If - Starter.skmt.ExecNonQuery("delete from pedido3") - Starter.skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = 0 where PE_FOLIO IS NULL") - If cuenta <> "0" Then - c=Starter.skmt.ExecQuery("SELECT SUM(PE_FOLIO) AS FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position = 0 - If c.GetString("FOLIO") <> Null And c.GetString("FOLIO") > 0 Then - YA_IMPRIMIO = 1 - Else - YA_IMPRIMIO = 0 - End If - c.Close - End If - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_FECHA, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO ) SELECT PE_PRECIO2, PE_TIPO, PE_FECHA, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, SUM(PE_COSTO_TOT) AS PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE ") 'Mod por CHV - 220302 - Agregué PE_FECHA al select/insert - c=Starter.skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? ", Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"))) - Next - End If - c.Close - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FOLIO = ? WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As Object(YA_IMPRIMIO)) - Starter.skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") - ListView1.Visible = True - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_FECHA = ? WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and PE_FECHA IS NULL", Array As Object(sDate & sTime)) - guardar.Enabled = True -End Sub - -Sub GPS_LocationChanged (Location1 As Location) -' lat_gps=Location1.ConvertToSeconds(Location1.Latitude) -' lon_gps=Location1.ConvertToSeconds(Location1.Longitude) -End Sub - -Sub Terminar_Click - B_MASC.Enabled = True - B_MENOSC.Enabled = True - E_CAMBIO.Enabled = True - Terminar.Enabled = False - Panel1.Visible=False - If cantidad.Text = "" Then - cantidad.Text = 0 - End If - If Starter.lat_gps = 0 Or Starter.lat_gps = Null Then - Private coords As List = Subs.traeCoordsDeBD - Starter.lat_gps = coords.Get(0) - Starter.lon_gps = coords.Get(1) - End If - limite_actual = t_venta.Text + (cantidad.Text * l_precio.Text) - Log($"Limite actual=${limite_actual}"$) - If cuenta = "0" Then - limite_actual = limite_actual + limite_anterior - End If - Log($"Limite actual=${limite_actual}"$) - If limite_abordo = "" Then limite_abordo = 0 'Mod por CHV - 211213 - Para que si limite_abordo no tiene valor, no nos saque de la app. - If cuenta ="0" And limite_actual > limite_abordo And cantidad.Text <> 0 And cantidad.Text <> "" Then - Msgbox("excede el limite abordo","limite") 'ignore - Else IF (cuenta <> "0" And limite_actual < B4XPages.MainPage.cliente.CREDITO_DISPONIBLE) Or (cuenta ="0" And limite_actual < limite_abordo) Then - If E_CAMBIO.Text = "" Or E_CAMBIO.Text = "0" Then - Panel1.Visible= False - Else - If E_CAMBIO.Text = "" Then E_CAMBIO.Text = "0" - If E_CAMBIO.Text * l_precio.Text > t_venta.Text Then - Msgbox("Excede EL MONTO DE LA VENTA", "ADVERTENCIA") 'ignore - else if E_CAMBIO.Text + cantidad.Text > l_bodega.Text Then - Msgbox("Excede existencia", "ADVERTENCIA") 'ignore - Else - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - '' cambio para el rmi con costo fl 11-05-2023 - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?) ", Array As Object ("DUR",E_CAMBIO.text * l_precio.Text * (-1),l_precio.Text, E_CAMBIO.text,"CAMBIO" & l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,Starter.tipov,precio2)) - '' Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?) ", Array As Object ("DUR",0,0, E_CAMBIO.text,"CAMBIO" & l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,Starter.tipov,precio2)) - - 'Starter.skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(E_CAMBIO.Text, L_PROID.Text)) - E_CAMBIO.Text = "" - Panel1.Visible= False - End If - End If - If cantidad.Text = "" Or cantidad.Text = "0.0" Or cantidad.Text = "0" Then - B4XPages.ShowPage("Cliente") - ELSE If cantidad.Text > l_bodega.Text Then - Msgbox("Excede la existencia", "ADVERTENCIA") 'ignore - Else If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" And PROMO_C > 0 And cantidad.Text > 0 Then - Starter.skmt.ExecNonQuery("delete from PROIDID") - Starter.skmt.ExecNonQuery2("INSERT INTO PROIDID VALUES (?)", Array As Object(L_PROID.text)) - c=Starter.skmt.ExecQuery("Select count(*) as CUANTOSD from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and length(pe_cedis) < 3 and PE_COSTOU > 0 and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_TIPO = 1)") - c.Position =0 - If c.GetString("CUANTOSD") = 0 Then - Msgbox("No tiene venta el cliente para la promo", "ADVERTENCIA") 'ignore - Else - c=Starter.skmt.ExecQuery("Select sum(pe_cant) As TOT_ART_PROMO, sum(PE_COSTO_TOT) as COSTO_TOT from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and length(pe_cedis) < 3 and PE_COSTOU > 0 and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_TIPO = 1)") - TOT_ART_PROMO = 0 - COSTO_TOT = 0 - If c.RowCount > 0 Then - c.Position =0 - TOT_ART_PROMO = c.GetString("TOT_ART_PROMO") - COSTO_TOT = c.GetString("COSTO_TOT") - End If - C.Close - ' Se agrego and PE_COSTOU > 0 para que no tome los cambios - c=Starter.skmt.ExecQuery("Select count(*) as CUANTOSD from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and length(pe_cedis) < 3 and PE_COSTOU > 0 and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND (CAT_DP_PRECIO = 0.01 or CAT_DP_PRECIO = 1 OR CAT_DP_PRECIO = 0) AND CAT_DP_TIPO = 1)") - c.Position =0 - If c.GetString("CUANTOSD") = 0 Then - TOT_ART_PROMOR = "0" 'Msgbox("No tiene venta el cliente para la promo", "ADVERTENCIA") 'ignore - Else - c=Starter.skmt.ExecQuery("Select sum(pe_cant) As TOT_ART_PROMO, sum(PE_COSTO_TOT) as COSTO_TOT from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and length(pe_cedis) < 3 and PE_COSTOU > 0 and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND (CAT_DP_PRECIO = 0.01 or CAT_DP_PRECIO = 1 OR CAT_DP_PRECIO = 0) AND CAT_DP_TIPO = 1)") - TOT_ART_PROMOR = 0 - If c.RowCount > 0 Then - C.Position =0 - TOT_ART_PROMOR = C.GetString("TOT_ART_PROMO") - End If - End If - C.Close - If PROMO_C = "" Then PROMO_C = "0" - PROMO_C = PROMO_C * cantidad.Text - If PROMO_CR = "" Then PROMO_CR = "0" - PROMO_CR = PROMO_CR * cantidad.Text - If TOT_ART_PROMO = PROMO_C And TOT_ART_PROMOR = PROMO_CR Then - ' anterior a 29/06/2015 - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_CEDIS = (?) WHERE length(pe_cedis) < 3 and PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID))", Array As Object(L_PROID.text)) - D=Starter.skmt.ExecQuery("select CAT_DP_ID, CAT_DP_PRECIO, CAT_DP_PRECIO_SIMPTOS, CAT_DP_IDPROD FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) AND CAT_DP_PRECIO > 1 AND CAT_DP_TIPO = 1") ' MODIFCADO 05/05/2021 PARA QUE NO TOME LOS CAMBIOS - If D.RowCount>0 Then - For i=0 To D.RowCount -1 - D.Position=i - ' se agrega esta linea para que no tome los cambios - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_COSTOU = (?), PE_COSTO_TOT = PE_CANT * (?) , PE_COSTO_SIN = (?) WHERE PE_PROID = (?) And PE_CLIENTE IN (Select CUENTA from cuentaa) and length(pe_cedis) < 3 and PE_COSTOU > 0 and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_TIPO = 1 AND CAT_DP_PRECIO > 1) ",Array As Object( D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO_SIMPTOS"),D.GetString("CAT_DP_IDPROD"))) - Next - End If - D.Close - D=Starter.skmt.ExecQuery("select CAT_DP_ID, CAT_DP_PRECIO, CAT_DP_PRECIO_SIMPTOS, CAT_DP_IDPROD FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) AND (CAT_DP_PRECIO = 0.01 or CAT_DP_PRECIO = 1 OR CAT_DP_PRECIO = 0) AND CAT_DP_TIPO = 1") - If D.RowCount>0 Then - For i=0 To D.RowCount -1 - D.Position=i - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_COSTOU = (?), PE_COSTO_TOT = PE_CANT * (?) , PE_COSTO_SIN = (?) WHERE PE_PROID = (?) AND PE_CLIENTE IN (Select CUENTA from cuentaa) and length(pe_cedis) < 3 and PE_COSTOU > 0 and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_TIPO = 1",Array As Object( D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO_SIMPTOS"),D.GetString("CAT_DP_IDPROD"))) - Next - End If - D.Close - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c.Close - c=Starter.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - cl_ruta = 0 - If c.RowCount > 0 Then - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - End If - c.Close - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - usuario = "0" - If c.RowCount > 0 Then - c.Position=0 - usuario = c.GetString("USUARIO") - End If - 'para insertar la promo de ades el de regalo en 0 - e=Starter.skmt.ExecQuery("select count(*) as CUANTOS FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) and CAT_DP_TIPO = 0 ") - e.Position =0 - If e.GetString("CUANTOS") > 0 Then - F=Starter.skmt.ExecQuery("select CAT_DP_IDPROD, CAT_DP_PZAS,CAT_DP_PRECIO FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) and CAT_DP_TIPO = 0 ") - 'meter el otro - If f.RowCount>0 Then - For i=0 To f.RowCount -1 - f.Position=i - PRECIO_CERO = f.GetString("CAT_DP_PRECIO") - h=Starter.skmt.ExecQuery2("select CAT_GP_NOMBRE from CAT_GUNAPROD2 where CAT_GP_ID = ? ", Array As String(f.GetString("CAT_DP_IDPROD"))) - h.Position=0 - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,PRECIO_CERO * f.GetString("CAT_DP_PZAS") * cantidad.text, PRECIO_CERO, f.GetString("CAT_DP_PZAS") * cantidad.text, h.GetString("CAT_GP_NOMBRE"), f.GetString("CAT_DP_IDPROD"),clie_id, sDate & sTime, usuario,cl_ruta,Starter.tipov,precio2)) - 'ESTO LO CAMBIE POR QUE NO DESCUENTA EL INVENTARIO ABORDO CON LAS PROMOS - Starter.skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(f.GetString("CAT_DP_PZAS") * cantidad.text, f.GetString("CAT_DP_IDPROD"))) - h.Close - Next - End If - f.Close - End If - e.Close - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,0, 0, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,cl_ruta,Starter.tipov,precio2)) - Starter.skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) - Else - Msgbox("Tiene " & TOT_ART_PROMO & " " & TOT_ART_PROMOR & " y necesita " & PROMO_C & " " & PROMO_CR & " Para la Promo. " , "ADVERTENCIA") 'ignore - End If - End If - cantidad.Text = "" - Panel1.Visible= False - Subs.iniciaActividad("Cliente") - else If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" And PROMO_C = 0 Then - Starter.skmt.ExecNonQuery("delete from PROIDID") - Starter.skmt.ExecNonQuery2("INSERT INTO PROIDID VALUES (?)", Array As Object(L_PROID.text)) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - clie_id = "0" - If c.RowCount > 0 Then - c.Position=0 - clie_id = c.GetString("CUENTA") - End If - c.Close - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - - c=Starter.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - c.Close - - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - 'para insertar la promo de ades el de regalo en 0 - e=Starter.skmt.ExecQuery("select count(*) as CUANTOS FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) ") - e.Position =0 - If e.GetString("CUANTOS") > 0 Then - F=Starter.skmt.ExecQuery("select CAT_DP_IDPROD, CAT_DP_PZAS, CAT_DP_PRECIO FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID)") - For i =0 To f.RowCount -1 - F.Position =i - h=Starter.skmt.ExecQuery2("select CAT_GP_NOMBRE from " & query & " where CAT_GP_ID = ? ", Array As String(f.GetString("CAT_DP_IDPROD"))) - h.Position=0 - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,f.GetString("CAT_DP_PRECIO") * cantidad.text * f.GetString("CAT_DP_PZAS"), f.GetString("CAT_DP_PRECIO"), f.GetString("CAT_DP_PZAS") * cantidad.text, h.GetString("CAT_GP_NOMBRE"), f.GetString("CAT_DP_IDPROD"),clie_id, sDate & sTime, usuario,cl_ruta,Starter.tipov,precio2)) - 'ESTO LO CAMBIE POR QUE NO DESCUENTA EL INVENTARIO ABORDO CON LAS PROMOS - Starter.skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(f.GetString("CAT_DP_PZAS") * cantidad.text, f.GetString("CAT_DP_IDPROD"))) - h.Close - Next - f.Close - End If - e.Close - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,0, 0, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,cl_ruta,Starter.tipov,precio2)) - Starter.skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) - cantidad.Text = "" - c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - If logger Then LogColor($"Insertamos coordenadas en pedido: ${Starter.lon_gps}, ${Starter.lat_gps}"$, Colors.Magenta) - Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT,PC_ALMACEN,PC_RUTA,PC_COSTO_SIN) VALUES (?,?,?,?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps, ALMACEN,cl_ruta,c.GetString("TOTAL_CLIE_SIN"))) - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - Subs.iniciaActividad("Cliente") - Else - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c.Close - c=Starter.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - c.Close - - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - - Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (ALMACEN,cantidad.Text * l_precio.Text, l_precio.text, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,cl_ruta,preciosin,Starter.tipov,precio2)) - Starter.skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) - c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - If logger Then LogColor($"Insertamos coordenadas en pedido: ${Starter.lon_gps}, ${Starter.lat_gps}"$, Colors.Magenta) - Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT,PC_ALMACEN,PC_RUTA,PC_COSTO_SIN) VALUES (?,?,?,?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps, ALMACEN,cl_ruta,c.GetString("TOTAL_CLIE_SIN"))) - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - Panel1.Visible= False - - Starter.skmt.ExecNonQuery("delete from pedido3") - Starter.skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = 0 where PE_FOLIO IS NULL") - c=Starter.skmt.ExecQuery("SELECT SUM(PE_FOLIO) AS FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position = 0 - If c.GetString("FOLIO") <> Null And c.GetString("FOLIO") > 0 Then - YA_IMPRIMIO = 1 - Else - YA_IMPRIMIO = 0 - End If - c.Close - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO ) SELECT PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, SUM(PE_COSTO_TOT) AS PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE ") - c=Starter.skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? ", Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"))) - Next - End If - c.Close - - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FOLIO = ? WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As Object(YA_IMPRIMIO)) - Starter.skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") - Subs.iniciaActividad("Cliente") - End If - Starter.skmt.ExecNonQuery("delete from pedido3") - Starter.skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = 0 where PE_FOLIO IS NULL") - c=Starter.skmt.ExecQuery("SELECT SUM(PE_FOLIO) AS FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position = 0 - If c.GetString("FOLIO") <> Null And c.GetString("FOLIO") > 0 Then - YA_IMPRIMIO = 1 - Else - YA_IMPRIMIO = 0 - End If - c.Close - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO ) SELECT PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, SUM(PE_COSTO_TOT) AS PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE ") - c=Starter.skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? ", Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"))) - Next - End If - c.Close - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FOLIO = ? WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As Object(YA_IMPRIMIO)) - Starter.skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") - Else - Log($"${cuenta},${limite_actual > limite_abordo},${cantidad.text},${B4XPages.MainPage.cliente.CREDITO_DISPONIBLE},${limite_actual},${limite_abordo}"$) - Msgbox("EXCEDE EL LIMITE DE CREDITO","AVISO") 'ignore - End If - Starter.skmt.ExecNonQuery("delete from pedido3") - Starter.skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = 0 where PE_FOLIO IS NULL") - If cuenta <> "0" Then - c=Starter.skmt.ExecQuery("SELECT SUM(PE_FOLIO) AS FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position = 0 - If c.GetString("FOLIO") <> Null And c.GetString("FOLIO") > 0 Then - YA_IMPRIMIO = 1 - Else - YA_IMPRIMIO = 0 - End If - c.Close - End If - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO ) SELECT PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, SUM(PE_COSTO_TOT) AS PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE ") - c=Starter.skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? ", Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"))) - Next - End If - c.Close - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FOLIO = ? WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As Object(YA_IMPRIMIO)) - Starter.skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") - ListView1.Visible = True - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_FECHA = ? where PE_CLIENTE IN (Select CUENTA from cuentaa) and PE_FECHA IS NULL", Array As Object(sDate & sTime)) - Terminar.Enabled = True - Starter.ultima_back_productos = 0 - Subs.iniciaActividad("Cliente") -End Sub - -Sub i_fotol_Click - i_fotol.Visible = False -End Sub - -Sub DESC_PROMO_Click - Starter.skmt.ExecNonQuery("delete from PROIDID") - Starter.skmt.ExecNonQuery2("INSERT INTO PROIDID VALUES (?)", Array As Object(L_PROID.text)) - Subs.iniciaActividad("detalle_promo") -End Sub - -Sub nopromo_Click - If cantidad.Text = "" Then - Panel1.Visible= False - Else - If cantidad.Text * l_precio.Text > t_venta.Text Then - Msgbox("Excede EL MONTO DE LA VENTA", "ADVERTENCIA") 'ignore -' Else -' DateTime.DateFormat = "MM/dd/yyyy" -' sDate=DateTime.Date(DateTime.Now) -' sTime=DateTime.Time(DateTime.Now) -' c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") -' c.Position=0 -' clie_id = c.GetString("CUENTA") -' c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") -' c.Position=0 -' usuario = c.GetString("USUARIO") -' Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?) ", Array As Object ("DUR",0,0, cantidad.text,"CAMBIO" & l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,Starter.tipov,precio2)) -' Starter.skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) -' cantidad.Text = "" -' Panel1.Visible= False - End If - End If -End Sub - -Sub LV_PRECIOS_ItemClick (Position As Int, Value As Object) - c=Starter.skmt.ExecQuery("select PRECIO, NLISTA FROM LISTA_PRECIOS WHERE NLISTA = " & "'" & Value &"' AND CAT_GP_ID =" & "'" &L_PROID.TEXT&"' ORDER BY NLISTA ASC") - c.Position=0 - l_precio.Text = c.GetString("PRECIO") - c.Close -End Sub - -Sub B_MENOS_Click - If cantidad.Text = "" Then - cantidad.Text = "" - Else IF cantidad.Text > 0 Then - cantidad.Text = cantidad.Text -1 - End If -End Sub - -Sub B_MAS_Click - If cantidad.Text = "" Then - cantidad.Text = 1 - Else - cantidad.Text = cantidad.Text + 1 - End If -End Sub - -Sub B_MENOSC_Click - If E_CAMBIO.Text = "" Then - E_CAMBIO.Text = "" - Else IF E_CAMBIO.Text > 0 Then - E_CAMBIO.Text = E_CAMBIO.Text -1 - End If -End Sub - -Sub B_MASC_Click - If E_CAMBIO.Text = "" Then - E_CAMBIO.Text = 1 - Else - E_CAMBIO.Text = E_CAMBIO.Text + 1 - End If -End Sub - - -Private Sub b_rmi_Click - Panel5.Visible = True - - r = Starter.skmt.ExecQuery("select CAT_ID, CAT_DESCRIPCION, CAT_MONTO FROM CAT_RMI") - clv_rmi.Clear - For i=0 To r.RowCount -1 - r.Position = i - clv_rmi.Add(CreateListItem(i &" ," &r.GetString("CAT_DESCRIPCION"), r.GetString("CAT_MONTO"), clv_rmi.AsView.Width , 50dip),i) - Next - r.Close -End Sub - - -Sub CreateListItem(descripcion As String, monto As String, Width As Int, Height As Int) As Panel - Dim p As B4XView = xui.CreatePanel("") - p.SetLayoutAnimated(0, 0, 0, Width, Height) - p.LoadLayout("proitem") - l_prodX.Text = descripcion& CRLF & " $ " & monto - Return p -End Sub \ No newline at end of file diff --git a/B4A/C_Promos.bas b/B4A/C_Promos.bas deleted file mode 100644 index 36fa8d1..0000000 --- a/B4A/C_Promos.bas +++ /dev/null @@ -1,24 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - 'load the layout to Root - -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. \ No newline at end of file diff --git a/B4A/C_TicketsDia.bas b/B4A/C_TicketsDia.bas deleted file mode 100644 index 0cf4c5c..0000000 --- a/B4A/C_TicketsDia.bas +++ /dev/null @@ -1,131 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - Dim c As Cursor - Dim ruta As String - Dim ListView1 As ListView - Dim b_noventa As Button - Dim nombre_boton As String -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - 'load the layout to Root - ruta = File.DirInternal - Root.LoadLayout("ticketsDia") - c=Starter.skmt.ExecQuery("select PC_CLIENTE,PC_MONTO,PC_NOART FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc") - ListView1.Clear - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 13 - label2.TextColor = Colors.Black - ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),"Cantidad #"& c.GetString("PC_NOART")& " SubTotal $"& c.GetString("PC_MONTO")) - Next - End If -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - -Sub B4XPage_Appear - nombre_boton = "NOVENTA" - c=Starter.skmt.ExecQuery("select PC_CLIENTE,PC_MONTO,PC_NOART,(select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pc_cliente ) as NOMBRE FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc") - ListView1.Clear - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 13 - label2.TextColor = Colors.Black - ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cant. #"& c.GetString("PC_NOART")& " SubTotal $"& c.GetString("PC_MONTO")) - Next - End If - c.Close -End Sub - -Sub Regresar_Click - B4XPages.ShowPage("Cliente") -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - ' I want to capture the key here so I return True - B4XPages.ShowPage("Principal") - 'Return True - End If - ' Returning False signals the system to handle the key - Return False -End Sub - -Sub ListView1_ItemLongClick (Position As Int, Value As Object) - Starter.skmt.ExecNonQuery("delete from CUENTAA") - Starter.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(Value)) - Subs.iniciaActividad("Cliente") -End Sub - -Sub b_noventa_Click - If nombre_boton = "NOVENTA" Then - nombre_boton = "VENTA" - b_noventa.Text ="VENTA" - c=Starter.skmt.ExecQuery("select NV_CLIENTE,NV_MOTIVO,NV_COMM, (select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = NV_CLIENTE ) as NOMBRE FROM NOVENTA ORDER BY NV_CLIENTE asc") - ListView1.Clear - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.Black - ListView1.AddTwoLines(c.GetString("NV_CLIENTE"),c.GetString("NOMBRE") &" Motivo #"& c.GetString("NV_MOTIVO")& " Comentario $"& c.GetString("NV_COMM")) - Next - End If - Else - nombre_boton = "NOVENTA" - b_noventa.Text ="NO VENTA" - c=Starter.skmt.ExecQuery("select PC_CLIENTE,PC_MONTO,PC_NOART,(select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pc_cliente ) as NOMBRE FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc") - ListView1.Clear - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.Black - ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& c.GetString("PC_NOART")& " SubTotal $"& c.GetString("PC_MONTO")) - Next - End If - c.Close - End If -End Sub \ No newline at end of file diff --git a/B4A/C_updateAvailable.bas b/B4A/C_updateAvailable.bas deleted file mode 100644 index 36fa8d1..0000000 --- a/B4A/C_updateAvailable.bas +++ /dev/null @@ -1,24 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - 'load the layout to Root - -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. \ No newline at end of file diff --git a/B4A/CameraExClass.bas b/B4A/CameraExClass.bas deleted file mode 100644 index bff2c72..0000000 --- a/B4A/CameraExClass.bas +++ /dev/null @@ -1,293 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=6.8 -@EndOfDesignText@ -'Class module -'version 1.20 -'See this page for the list of constants: -'http://developer.android.com/intl/fr/reference/android/hardware/Camera.Parameters.html -'Note that you should use the constant values instead of the names. -Sub Class_Globals - Private nativeCam As Object - Private cam As Camera - Private r As Reflector - Private target As Object - Private event As String - Public Front As Boolean - Type CameraInfoAndId (CameraInfo As Object, Id As Int) - Type CameraSize (Width As Int, Height As Int) - Private parameters As Object -End Sub - -Public Sub Initialize (Panel1 As Panel, FrontCamera As Boolean, TargetModule As Object, EventName As String) - target = TargetModule - event = EventName - Front = FrontCamera - Dim id As Int - id = FindCamera(Front).id - If id = -1 Then - Front = Not(Front) 'try different camera - id = FindCamera(Front).id - If id = -1 Then - ToastMessageShow("No camera found.", True) - Return - End If - End If - cam.Initialize2(Panel1, "camera", id) -End Sub - -Private Sub FindCamera (frontCamera As Boolean) As CameraInfoAndId - Dim ci As CameraInfoAndId - Dim cameraInfo As Object - Dim cameraValue As Int - If frontCamera Then cameraValue = 1 Else cameraValue = 0 - cameraInfo = r.CreateObject("android.hardware.Camera$CameraInfo") - Dim numberOfCameras As Int = r.RunStaticMethod("android.hardware.Camera", "getNumberOfCameras", Null, Null) - For i = 0 To numberOfCameras - 1 - r.RunStaticMethod("android.hardware.Camera", "getCameraInfo", Array As Object(i, cameraInfo), _ - Array As String("java.lang.int", "android.hardware.Camera$CameraInfo")) - r.target = cameraInfo - If r.GetField("facing") = cameraValue Then 'ignore - ci.cameraInfo = r.target - ci.Id = i - Return ci - End If - Next - ci.id = -1 - Return ci -End Sub - -Private Sub SetDisplayOrientation - r.target = r.GetActivity - r.target = r.RunMethod("getWindowManager") - r.target = r.RunMethod("getDefaultDisplay") - r.target = r.RunMethod("getRotation") - Dim previewResult, result, degrees As Int = r.target * 90 - Dim ci As CameraInfoAndId = FindCamera(Front) - r.target = ci.CameraInfo - Dim orientation As Int = r.GetField("orientation") - If Front Then - previewResult = (orientation + degrees) Mod 360 - result = previewResult - previewResult = (360 - previewResult) Mod 360 - Else - previewResult = (orientation - degrees + 360) Mod 360 - result = previewResult -' Log(previewResult) - End If - r.target = nativeCam - r.RunMethod2("setDisplayOrientation", previewResult, "java.lang.int") - r.target = parameters - r.RunMethod2("setRotation", result, "java.lang.int") - CommitParameters -End Sub - -Private Sub Camera_Ready (Success As Boolean) - If Success Then - r.target = cam - nativeCam = r.GetField("camera") - r.target = nativeCam - parameters = r.RunMethod("getParameters") - SetDisplayOrientation - Else - Log("success = false, " & LastException) - End If - CallSub2(target, event & "_ready", Success) -End Sub - -Sub Camera_Preview (Data() As Byte) - If SubExists(target, event & "_preview") Then - CallSub2(target, event & "_preview", Data) - End If -End Sub - -Public Sub TakePicture - cam.TakePicture -End Sub - -Private Sub Camera_PictureTaken (Data() As Byte) - CallSub2(target, event & "_PictureTaken", Data) -End Sub - -Public Sub StartPreview - cam.StartPreview -End Sub - -Public Sub StopPreview - cam.StopPreview -End Sub - -Public Sub Release - cam.Release -End Sub - -'Saves the data received from PictureTaken event -Public Sub SavePictureToFile(Data() As Byte, Dir As String, FileName As String) - Dim out As OutputStream = File.OpenOutput(Dir, FileName, False) - out.WriteBytes(Data, 0, Data.Length) - out.Close -End Sub - -Public Sub SetParameter(Key As String, Value As String) - r.target = parameters - r.RunMethod3("set", Key, "java.lang.String", Value, "java.lang.String") -End Sub - -Public Sub GetParameter(Key As String) As String - r.target = parameters - Return r.RunMethod2("get", Key, "java.lang.String") -End Sub - -Public Sub CommitParameters - Try - r.target = nativeCam - r.RunMethod4("setParameters", Array As Object(parameters), Array As String("android.hardware.Camera$Parameters")) - Catch - ToastMessageShow("Error setting parameters.", True) - Log(LastException) - End Try -End Sub - -Public Sub GetColorEffect As String - Return GetParameter("effect") -End Sub - -Public Sub SetColorEffect(Effect As String) - SetParameter("effect", Effect) -End Sub - -Public Sub GetSupportedPicturesSizes As CameraSize() - r.target = parameters - Dim list1 As List = r.RunMethod("getSupportedPictureSizes") - Dim cs(list1.Size) As CameraSize - For i = 0 To list1.Size - 1 - r.target = list1.Get(i) - cs(i).Width = r.GetField("width") - cs(i).Height = r.GetField("height") - Next - Return cs -End Sub - -Public Sub SetPictureSize(Width As Int, Height As Int) - r.target = parameters - r.RunMethod3("setPictureSize", Width, "java.lang.int", Height, "java.lang.int") -End Sub - -Public Sub SetJpegQuality(Quality As Int) - r.target = parameters - r.RunMethod2("setJpegQuality", Quality, "java.lang.int") -End Sub - -Public Sub SetFlashMode(Mode As String) - r.target = parameters - r.RunMethod2("setFlashMode", Mode, "java.lang.String") -End Sub - -Public Sub GetFlashMode As String - r.target = parameters - Return r.RunMethod("getFlashMode") -End Sub - -Public Sub GetSupportedFlashModes As List - r.target = parameters - Return r.RunMethod("getSupportedFlashModes") -End Sub - -Public Sub GetSupportedColorEffects As List - r.target = parameters - Return r.RunMethod("getSupportedColorEffects") -End Sub - -Public Sub GetPreviewSize As CameraSize - r.target = parameters - r.target = r.RunMethod("getPreviewSize") - Dim cs As CameraSize - cs.Width = r.GetField("width") - cs.Height = r.GetField("height") - Return cs -End Sub - -Public Sub GetPictureSize As CameraSize - r.target = parameters - r.target = r.RunMethod("getPictureSize") - Dim cs As CameraSize - cs.Width = r.GetField("width") - cs.Height = r.GetField("height") - Return cs -End Sub - -'Converts a preview image formatted in YUV format to JPEG. -'Note that you should not save every preview image as it will slow down the whole process. -Public Sub PreviewImageToJpeg(data() As Byte, quality As Int) As Byte() - Dim size, previewFormat As Object - r.target = parameters - size = r.RunMethod("getPreviewSize") - previewFormat = r.RunMethod("getPreviewFormat") - r.target = size - Dim width = r.GetField("width"), height = r.GetField("height") As Int - Dim yuvImage As Object = r.CreateObject2("android.graphics.YuvImage", _ - Array As Object(data, previewFormat, width, height, Null), _ - Array As String("[B", "java.lang.int", "java.lang.int", "java.lang.int", "[I")) - r.target = yuvImage - Dim rect1 As Rect - rect1.Initialize(0, 0, r.RunMethod("getWidth"), r.RunMethod("getHeight")) - Dim out As OutputStream - out.InitializeToBytesArray(100) - r.RunMethod4("compressToJpeg", Array As Object(rect1, quality, out), _ - Array As String("android.graphics.Rect", "java.lang.int", "java.io.OutputStream")) - Return out.ToBytesArray -End Sub - -Public Sub GetSupportedFocusModes As List - r.target = parameters - Return r.RunMethod("getSupportedFocusModes") -End Sub - -Public Sub SetContinuousAutoFocus - Dim modes As List = GetSupportedFocusModes - If modes.IndexOf("continuous-picture") > -1 Then - SetFocusMode("continuous-picture") - Else If modes.IndexOf("continuous-video") > -1 Then - SetFocusMode("continuous-video") - Else - Log("Continuous focus mode is not available") - End If -End Sub - -Public Sub SetFocusMode(Mode As String) - r.target = parameters - r.RunMethod2("setFocusMode", Mode, "java.lang.String") -End Sub - -Public Sub GetFocusDistances As Float() - Dim F(3) As Float - r.target = parameters - r.RunMethod4("getFocusDistances", Array As Object(F), Array As String("[F")) - Return F -End Sub - -'This method should only be called if you need to immediately release the camera. -'For example if you need to start another application that depends on the camera. -Public Sub CloseNow - cam.Release - r.target = cam - r.RunMethod2("releaseCameras", True, "java.lang.boolean") -End Sub - -'Calls AutoFocus and then takes the picture if focus was successfull. -Public Sub FocusAndTakePicture - cam.AutoFocus -End Sub - -Private Sub Camera_FocusDone (Success As Boolean) - If Success Then - TakePicture - Else - Log("AutoFocus error.") - End If -End Sub - - - diff --git a/B4A/DBRequestManager.bas b/B4A/DBRequestManager.bas deleted file mode 100644 index d8ebf11..0000000 --- a/B4A/DBRequestManager.bas +++ /dev/null @@ -1,270 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=6.8 -@EndOfDesignText@ -''Class module -Sub Class_Globals - Private mTarget As Object - Type DBResult (Tag As Object, Columns As Map, Rows As List) - Type DBCommand (Name As String, Parameters() As Object) - Private link As String - Private bc As ByteConverter - Private T_NULL = 0, T_STRING = 1, T_SHORT = 2, T_INT = 3, T_LONG = 4, T_FLOAT = 5 _ - ,T_DOUBLE = 6, T_BOOLEAN = 7, T_BLOB = 8 As Byte - Private VERSION As Float = 0.9 - Private tempArray(1) As Object - Dim jobTagAnterior As String = "" 'Mod por CHV - 211109 -End Sub - -'Target - The module that handles JobDone (usually Me). -'ConnectorLink - URL of the Java server. -Public Sub Initialize (Target As Object, ConnectorLink As String) - mTarget = Target - link = ConnectorLink -End Sub - -'Sends a query request. -'Command - Query name and parameters. -'Limit - Maximum rows to return or 0 for no limit. -'Tag - An object that will be returned in the result. -Public Sub ExecuteQuery(Command As DBCommand, Limit As Int, Tag As Object) - Dim j As HttpJob - Dim ms As OutputStream - Dim out2 As OutputStream = StartJob(j,ms, Tag) - - WriteObject(Command.Name, out2) - WriteInt(Limit, out2) - WriteList(Command.Parameters, out2) - out2.Close - j.PostBytes(link & "?method=query", ms.ToBytesArray) -End Sub - -'Executes a batch of (non-select) commands. -'ListOfCommands - List of the commands that will be executes. -'Tag - An object that will be returned in the result. -Public Sub ExecuteBatch(ListOfCommands As List, Tag As Object) - Dim j As HttpJob - Dim ms As OutputStream - Dim out2 As OutputStream = StartJob(j,ms, Tag) - WriteInt(ListOfCommands.Size, out2) - For Each Command As DBCommand In ListOfCommands - WriteObject(Command.Name, out2) - WriteList(Command.Parameters, out2) - Next - out2.Close - j.PostBytes(link & "?method=batch", ms.ToBytesArray) -End Sub - -'Similar to ExecuteBatch. Sends a single command. -Public Sub ExecuteCommand(Command As DBCommand, Tag As Object) - ExecuteBatch(Array As DBCommand(Command), Tag) -End Sub - -Private Sub StartJob(j As HttpJob, MemoryStream As OutputStream, Tag As Object) As OutputStream - j.Initialize("DBRequest", mTarget) - j.Tag = Tag - MemoryStream.InitializeToBytesArray(0) - Dim compress As CompressedStreams - Dim out As OutputStream = compress.WrapOutputStream(MemoryStream, "gzip") - WriteObject(VERSION, out) - Return out -End Sub - -Private Sub WriteList(Parameters As List, out As OutputStream) - Dim data() As Byte - If Parameters = Null Or Parameters.IsInitialized = False Then - Dim Parameters As List - Parameters.Initialize - End If - data = bc.IntsToBytes(Array As Int(Parameters.Size)) - out.WriteBytes(data, 0, data.Length) - For Each o As Object In Parameters - WriteObject(o, out) - Next -End Sub - -Private Sub WriteObject(o As Object, out As OutputStream) - Dim data() As Byte - tempArray(0) = o - If tempArray(0) = Null Then - out.WriteBytes(Array As Byte(T_NULL), 0, 1) - Else If tempArray(0) Is Short Then - out.WriteBytes(Array As Byte(T_SHORT), 0, 1) - data = bc.ShortsToBytes(Array As Short(o)) - Else If tempArray(0) Is Int Then - out.WriteBytes(Array As Byte(T_INT), 0, 1) - data = bc.IntsToBytes(Array As Int(o)) - Else If tempArray(0) Is Float Then - out.WriteBytes(Array As Byte(T_FLOAT), 0, 1) - data = bc.FloatsToBytes(Array As Float(o)) - Else If tempArray(0) Is Double Then - out.WriteBytes(Array As Byte(T_DOUBLE), 0, 1) - data = bc.DoublesToBytes(Array As Double(o)) - Else If tempArray(0) Is Long Then - out.WriteBytes(Array As Byte(T_LONG), 0, 1) - data = bc.LongsToBytes(Array As Long(o)) - Else If tempArray(0) Is Boolean Then - out.WriteBytes(Array As Byte(T_BOOLEAN), 0, 1) - Dim b As Boolean = 0 - Dim data(1) As Byte - If b Then data(0) = 1 Else data(0) = 0 - Else If GetType(tempArray(0)) = "[B" Then - data = o - out.WriteBytes(Array As Byte(T_BLOB), 0, 1) - WriteInt(data.Length, out) - Else 'If o Is String Then (treat all other values as string) - out.WriteBytes(Array As Byte(T_STRING), 0, 1) - data = bc.StringToBytes(o, "UTF8") - WriteInt(data.Length, out) - End If - If data.Length > 0 Then out.WriteBytes(data, 0, data.Length) -End Sub - -Private Sub ReadObject(In As InputStream) As Object - Dim data(1) As Byte - In.ReadBytes(data, 0, 1) - Select data(0) - Case T_NULL - Return Null - Case T_SHORT - Dim data(2) As Byte - Return bc.ShortsFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_INT - Dim data(4) As Byte - Return bc.IntsFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_LONG - Dim data(8) As Byte - Return bc.LongsFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_FLOAT - Dim data(4) As Byte - Return bc.FloatsFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_DOUBLE - Dim data(8) As Byte - Return bc.DoublesFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_BOOLEAN - Dim b As Byte = ReadByte(In) - Return b = 1 - Case T_BLOB - Dim len As Int = ReadInt(In) - Dim data(len) As Byte - Return ReadBytesFully(In, data, data.Length) - Case Else - Dim len As Int = ReadInt(In) - Dim data(len) As Byte - ReadBytesFully(In, data, data.Length) - Return BytesToString(data, 0, data.Length, "UTF8") - End Select -End Sub - -Private Sub ReadBytesFully(In As InputStream, Data() As Byte, Len As Int) As Byte() - Dim count = 0, read As Int - Do While count < Len And read > -1 - read = In.ReadBytes(Data, count, Len - count) - count = count + read - Loop - Return Data -End Sub - -Private Sub WriteInt(i As Int, out As OutputStream) - Dim data() As Byte - data = bc.IntsToBytes(Array As Int(i)) - out.WriteBytes(data, 0, data.Length) -End Sub - -Private Sub ReadInt(In As InputStream) As Int - Dim data(4) As Byte - Return bc.IntsFromBytes(ReadBytesFully(In, data, data.Length))(0) -End Sub - -Private Sub ReadByte(In As InputStream) As Byte - Dim data(1) As Byte - In.ReadBytes(data, 0, 1) - Return data(0) -End Sub - -'Handles the Job result and returns a DBResult. -Public Sub HandleJob(Job As HttpJob) As DBResult - Dim start As Long = DateTime.Now 'ignore - Dim In As InputStream = Job.GetInputStream - Dim cs As CompressedStreams - In = cs.WrapInputStream(In, "gzip") - Dim serverVersion As Float = ReadObject(In) 'ignore - Dim method As String = ReadObject(In) - Dim table As DBResult - table.Initialize - table.Columns.Initialize - table.rows.Initialize - table.Tag = Job.Tag - If jobTagAnterior <> Job.Tag Then LogColor("HandleJob: '"&Job.Tag&"'", Colors.Blue) 'Mod por CHV - 211109 - jobTagAnterior = Job.Tag 'Mod por CHV - 211109 - If method = "query" Then - Dim numberOfColumns As Int = ReadInt(In) - For i = 0 To numberOfColumns - 1 - table.Columns.Put(ReadObject(In), i) - Next - Do While ReadByte(In) = 1 - Dim rowObjects(numberOfColumns) As Object - table.rows.Add(rowObjects) - For col = 0 To numberOfColumns - 1 - Dim o As Object = ReadObject(In) - rowObjects(col) = o - Next - Loop - Else If method = "batch" Then - table.Columns.Put("AffectedRows", 0) - Dim rows As Int = ReadInt(In) - For i = 0 To rows - 1 - table.rows.Add(Array As Object(ReadInt(In))) - Next - End If - In.Close -' Log("HandleJob: " & (DateTime.Now - start))'Comentado por CHV - 211112 - Return table -End Sub -'Reads a file and returns the file as a bytes array. -Public Sub FileToBytes(Dir As String, FileName As String) As Byte() - Dim out As OutputStream - out.InitializeToBytesArray(0) - Dim In As InputStream = File.OpenInput(Dir, FileName) - File.Copy2(In, out) - out.Close - Return out.ToBytesArray -End Sub -'Converts an image to a bytes array (for BLOB fields). -Public Sub ImageToBytes(Image As Bitmap) As Byte() - Dim out As OutputStream - out.InitializeToBytesArray(0) - Image.WriteToStream(out, 100, "JPEG") - out.Close - Return out.ToBytesArray -End Sub -'Converts a bytes array to an image (for BLOB fields). -Public Sub BytesToImage(bytes() As Byte) As Bitmap - Dim In As InputStream - In.InitializeFromBytesArray(bytes, 0, bytes.Length) - Dim bmp As Bitmap - bmp.Initialize2(In) - Return bmp -End Sub -'Prints the table to the logs. -Public Sub PrintTable(Table As DBResult) - Log("Tag: " & Table.Tag & ", Columns: " & Table.Columns.Size & ", Rows: " & Table.Rows.Size) - Dim sb As StringBuilder - sb.Initialize - For Each col In Table.Columns.Keys - sb.Append(col).Append(TAB) - Next - Log(sb.ToString) - For Each row() As Object In Table.Rows - Dim sb As StringBuilder - sb.Initialize - For Each record As Object In row - sb.Append(record).Append(TAB) - Next - ToastMessageShow(sb.ToString, True) - Next -End Sub - - \ No newline at end of file diff --git a/B4A/DownloadService.bas b/B4A/DownloadService.bas deleted file mode 100644 index 036d602..0000000 --- a/B4A/DownloadService.bas +++ /dev/null @@ -1,114 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Service -Version=5.5 -@EndOfDesignText@ -#Region Service Attributes - #StartAtBoot: False -#End Region - -Sub Process_Globals - Private jobs As Map - Private timer1 As Timer - Type DownloadData (url As String, Target As Object, EventName As String) - Type JobTag (Data As DownloadData, _ - CountingStream As CountingOutputStream, Total As Long) - Private pw As PhoneWakeState -End Sub -Sub Service_Create - jobs.Initialize - timer1.Initialize("timer1", 1000) -End Sub - -Sub Service_Start (StartingIntent As Intent) - -End Sub - -Sub Service_Destroy - -End Sub - -Private Sub StartTimer (Target As Object) - Dim n As Notification - n.Initialize2(n.IMPORTANCE_LOW) - n.Icon = "icon" - n.Vibrate = False - n.Sound = False - n.Light = False - n.SetInfo("Downloading file...", "", Target) - Service.StartForeground(1, n) - timer1.Enabled = True - pw.PartialLock -End Sub - -Private Sub EndTimer 'ignore - Service.StopForeground(1) - timer1.Enabled = False - pw.ReleasePartialLock -End Sub - -Public Sub StartDownload(data As DownloadData) - If jobs.ContainsKey(data.url) Then - Log("Ignoring duplicate request.") - Return - End If - Dim J As HttpJob - J.Initialize(data.url, Me) - Log(J) - Dim tag As JobTag - tag.Initialize - tag.data = data - Log(tag) - J.tag = tag - jobs.Put(data.url, J) - Log(jobs) - J.Download(data.url) - If timer1.Enabled = False Then StartTimer(data.Target) -End Sub - -Public Sub CancelDownload(url As String) - If jobs.ContainsKey(url) = False Then - Log("Ignoring cancel request.") - Return - End If - Dim job As HttpJob = jobs.Get(url) - Dim jt As JobTag = job.Tag - If jt.CountingStream.IsInitialized Then - jt.CountingStream.Close - Else - jt.Data.url = "" - End If -End Sub - -Sub timer1_tick - For Each job As HttpJob In jobs.Values - Dim jt As JobTag = job.Tag - If jt.CountingStream.IsInitialized Then - CallSub3(jt.Data.Target, jt.Data.EventName & "_Progress", _ - jt.CountingStream.Count, jt.Total) - End If - Next -End Sub - -Sub JobDone(job As HttpJob) -' Log("1") -' jobs.Remove(job.JobName) -' Dim jt As JobTag = job.Tag -' Log(jt) -' If jobs.Size = 0 Then EndTimer -' Log(jobs.Size) -' If job.Success Then -' Log("5-"&jt.Data.Target&"-"&jt.Data.EventName&"-"&jt.CountingStream.Count&"-"&jt.Total) -' CallSubDelayed3(jt.Data.Target, jt.Data.EventName & "_Progress", jt.CountingStream.Count, jt.Total) -' Log("6") -' CallSubDelayed2(jt.Data.Target, jt.Data.EventName & "_Complete", job) -' Log("7") -' Else -' Log(job.ErrorMessage) -' Log("8") -' CallSubDelayed2(jt.Data.Target, jt.Data.EventName & "_Complete", job) -' Log("9") -' End If -' Log("10") -End Sub diff --git a/B4A/EscPosPrinter.bas b/B4A/EscPosPrinter.bas deleted file mode 100644 index 40292c1..0000000 --- a/B4A/EscPosPrinter.bas +++ /dev/null @@ -1,1148 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=9.3 -@EndOfDesignText@ -#IgnoreWarnings: 9 -' 9 = unused variable - -Sub Class_Globals - ' 1.0 Initial version - ' 2.0 Added FeedPaper, changed many WriteString(.." & Chr(number)) instances to WriteBytes(params) - ' This is to avoid Unicode code page transformations on some numbers > 32 - ' Added PrintAndFeedPaper, setRelativePrintPosn, - ' Added user defined characters, DefineCustomCharacter, DeleteCustomCharacter and setUseCustomCharacters - ' Addedhelper methods CreateCustomCharacter, CreateLine, CreateBox and CreateCircle - Private Version As Double = 2.0 ' Printer class version - - Type AnImage(Width As Int, Height As Int, Data() As Byte) - - Private EventName As String 'ignore - Private CallBack As Object 'ignore - - Private Serial1 As Serial - Private Astream As AsyncStreams - Private Connected As Boolean - Private ConnectedError As String - - Dim ESC As String = Chr(27) - Dim FS As String = Chr(28) - Dim GS As String = Chr(29) - - 'Bold and underline don't work well in reversed text - Dim UNREVERSE As String = GS & "B" & Chr(0) - Dim REVERSE As String = GS & "B" & Chr(1) - - ' Character orientation. Print upside down from right margin - Dim UNINVERT As String = ESC & "{0" - Dim INVERT As String = ESC & "{1" - - ' Character rotation clockwise. Not much use without also reversing the printed character sequence - Dim UNROTATE As String = ESC & "V0" - Dim ROTATE As String = ESC & "V1" - - ' Horizontal tab - Dim HT As String = Chr(9) - - ' Character underline - Dim ULINE0 As String = ESC & "-0" - Dim ULINE1 As String = ESC & "-1" - Dim ULINE2 As String = ESC & "-2" - - ' Character emphasis - Dim BOLD As String = ESC & "E1" - Dim NOBOLD As String = ESC & "E0" - - ' Character height and width - Dim SINGLE As String = GS & "!" & Chr(0x00) - Dim HIGH As String = GS & "!" & Chr(0x01) - Dim WIDE As String = GS & "!" & Chr(0x10) - Dim HIGHWIDE As String = GS & "!" & Chr(0x11) - - ' Default settings - Private LEFTJUSTIFY As String = ESC & "a0" - Private LINEDEFAULT As String = ESC & "2" - Private LINSET0 As String = ESC & "$" & Chr(0x0) & Chr(0x0) - Private LMARGIN0 As String = GS & "L" & Chr(0x0) & Chr(0x0) - Private WIDTH0 As String = GS & "W" & Chr(0xff) & Chr(0xff) - Private CHARSPACING0 As String = ESC & " " & Chr(0) - Private CHARFONT0 As String = ESC & "M" & Chr(0) - Dim DEFAULTS As String = CHARSPACING0 & CHARFONT0 & LMARGIN0 & WIDTH0 & LINSET0 & LINEDEFAULT & LEFTJUSTIFY _ - & UNINVERT & UNROTATE & UNREVERSE & NOBOLD & ULINE0 - -End Sub - -'********** -'PUBLIC API -'********** - -'Initialize the object with the parent and event name -Public Sub Initialize(vCallback As Object, vEventName As String) - EventName = vEventName - CallBack = vCallback - Serial1.Initialize("Serial1") - Connected = False - ConnectedError = "" -End Sub - -' Returns any error raised by the last attempt to connect a printer -Public Sub ConnectedErrorMsg As String - Return ConnectedError -End Sub - -' Returns whether a printer is connected or not -Public Sub IsConnected As Boolean - Return Connected -End Sub - -' Returns whether Bluetooth is on or off -Public Sub IsBluetoothOn As Boolean - Return Serial1.IsEnabled -End Sub - -' Ask the user to connect to a printer and return whether she tried or not -' If True then a subsequent Connected event will indicate success or failure -Public Sub Connect As Boolean - 'leos -' Serial1.Connect("88:6B:0F:3E:53:9E") -' Return True - Try - If Starter.MAC_IMPRESORA = "0" Then - Dim PairedDevices As Map - PairedDevices = Serial1.GetPairedDevices - Dim l As List - l.Initialize - For i = 0 To PairedDevices.Size - 1 - l.Add(PairedDevices.GetKeyAt(i)) - Next - Dim Res As Int - Res = InputList(l, "Choose a printer", -1) 'show list with paired devices 'ignore - If Res <> DialogResponse.CANCEL Then - Serial1.Connect(PairedDevices.Get(l.Get(Res))) 'convert the name to mac address - 'Msgbox(PairedDevices.Get(l.Get(Res)),"mac") - Starter.mac_impresora = PairedDevices.Get(l.Get(Res)) - Return True - End If - Return False - Else - Serial1.Connect(Starter.mac_impresora) - ' Starter.mac_impresora = colonia.MAC_IMPRESORA - Return True - End If - Catch - Log(LastException) - End Try -End Sub - -' Disconnect the printer -Public Sub DisConnect - Serial1.Disconnect - Connected = False -End Sub - -' Reset the printer to the power on state -Public Sub Reset - WriteString(ESC & "@") -End Sub - -'-------------- -' Text Commands -'-------------- - -' Print any outstanding characters then feed the paper the specified number of units of 0.125mm -' This is similar to changing LineSpacing before sending CRLF but this has a one off effect -' A full character height is always fed even if units = 0. Units defines the excess over this minimum -Public Sub PrintAndFeedPaper(units As Int) - WriteString(ESC & "J") - Dim params(1) As Byte - params(0) = units - WriteBytes(params) -End Sub - -' Set the distance between characters -Public Sub setCharacterSpacing(spacing As Int) - WriteString(ESC & " ") - Dim params(1) As Byte - params(0) = spacing - WriteBytes(params) -End Sub - -' Set the left inset of the next line to be printed -' Automatically resets to 0 for the following line -' inset is specified in units of 0.125mm -Public Sub setLeftInset(inset As Int) - Dim dh As Int = inset / 256 - Dim dl As Int = inset - dh - WriteString(ESC & "$" & Chr(dl) & Chr(dh)) - Dim params(2) As Byte - params(0) = dl - params(1) = dh - WriteBytes(params) -End Sub - -' Set the left margin of the print area, must be the first item on a new line -' margin is specified in units of 0.125mm -' This affects barcodes as well as text -Public Sub setLeftMargin(margin As Int) - Dim dh As Int = margin / 256 - Dim dl As Int = margin - dh - WriteString(GS & "L") - Dim params(2) As Byte - params(0) = dl - params(1) = dh - WriteBytes(params) -End Sub - -' Set the width of the print area, must be the first item on a new line -' margin is specified in units of 0.125mm -' This affects barcodes as well as text -' This appears to function more like a right margin than a print area width when used with LeftMargin -Public Sub setPrintWidth(width As Int) - Dim dh As Int = width / 256 - Dim dl As Int = width - dh - WriteString(GS & "W") - Dim params(2) As Byte - params(0) = dl - params(1) = dh - WriteBytes(params) -End Sub - -' Set the distance between lines in increments of 0.125mm -' If spacing is < 0 then the default of 30 is set -Public Sub setLineSpacing(spacing As Int) - If spacing < 0 Then - WriteString(ESC & "2") - Else - WriteString(ESC & "3") - Dim params(1) As Byte - params(0) = spacing - WriteBytes(params) - End If -End Sub - -' Set the line content justification, must be the first item on a new line -' 0 left, 1 centre, 2 right -Public Sub setJustify(justify As Int) - WriteString(ESC & "a" & Chr(justify + 48)) -End Sub - -' Set the codepage of the printer -' You need to look at the printer documentation to establish which codepages are supported -Public Sub setCodePage(codepage As Int) - WriteString(ESC & "t") - Dim params(1) As Byte - params(0) = codepage - WriteBytes(params) -End Sub - -' Select the size of the font for printing text. 0 = Font A (12 x 24), 1 = Font B (9 x 17) -' For font B you may want to set the line spacing to a lower value than the default of 30 -' This affects only the size of printed characters. The code page determines the actual character set -' On my printer setting UseCustomCharacters = while Font B is selected crashes the printer and turns it off -Public Sub setCharacterFont(font As Int) - WriteString(ESC & "M" & Chr(Bit.And(1,font))) -End Sub - -' Set the positions of the horizontal tabs -' Each tab is specified as a number of character widths from the beginning of the line -' There may be up to 32 tab positions specified each of size up to 255 characters -' The printer default is that no tabs are defined -Public Sub setTabPositions(tabs() As Int) - WriteString(ESC & "D") - Dim data(tabs.Length+1) As Byte - For i = 0 To tabs.Length - 1 - data(i) = tabs(i) - Next - data(tabs.Length) = 0 - WriteBytes(data) -End Sub - -' Set print position relative to the current position using horizontal units of 0.125mm -' relposn can be negative -' Unless I have misundertood this doesn't work as documented on my printer -' It only seems take effect at the beginning of a line as a one off effect -Public Sub setRelativePrintPosn(relposn As Int) - Dim dh As Int = relposn / 256 - Dim dl As Int = relposn - dh - WriteString(ESC & "\") - Dim params(2) As Byte - params(0) = dl - params(1) = dh - WriteBytes(params) -End Sub - -' Send the contents of an array of bytes to the printer -' Remember that if the printer is expecting text the bytes will be printed as characters in the current code page -Public Sub WriteBytes(data() As Byte) - If Connected Then - Astream.Write(data) - End If -End Sub - -' Send the string to the printer in IBM437 encoding which is the original PC DOS codepage -' This is usually the default codepage for a printer and is CodePage = 0 -' Beware of using WriteString with Chr() to send numeric values as they may be affected by Unicode to codepage translations -' Most character level operations are pre-defined as UPPERCASE string variables for easy concatenation with other string data -Public Sub WriteString(data As String) - WriteString2(data, "IBM437") -End Sub - -' Send the string to the printer in the specified encoding -' You also need to set the printer to a matching encoding using the CodePage property -' Beware of using WriteString2 with Chr() to send numeric values as they may be affected by codepage substitutions -' Most character level operations are pre-defined as UPPERCASE string variables for easy concatenatipon with other string data -Public Sub WriteString2(data As String, encoding As String) - Try - If Connected Then - Astream.Write(data.GetBytes(encoding)) - End If - Catch - Log("Printer error : " & LastException.Message) - AStream_Error - End Try -End Sub - -'----------------------------------------- -' User defined character commands commands -'----------------------------------------- - -' Delete the specified user defined character mode -' This command deletes the pattern defined for the specified code in the font selected by ESC ! -' If the code is subsequently printed in custom character mode the present code page character is printed instead -Public Sub DeleteCustomCharacter(charcode As Int) - WriteString(ESC & "?") - Dim params(1) As Byte - params(0) = charcode - WriteBytes(params) -End Sub - -' Enable the user defined character mode if custom is True, revert to normal if custom is False -' If a custom character has not been defined for a given character code then the default character for the present font is printed -' FontA and FontB have separate definitions for custom characters -' On my printer setting UseCustomCharacters = while Font B is selected crashes the printer and turns it off -' Therefore the cuatom character routines have not been tested on ont B -Public Sub setUseCustomCharacters(custom As Boolean) - If custom Then - WriteString(ESC & "%1") - Else - WriteString(ESC & "%0") - End If -End Sub - -' Define a user defined character -' The allowable character code range is the 95 characters) from ASCII code 32 (0x20) to 126 (0x7E) -' Characters can be defined in either font A (12*24) or font B (9*17) as selected by present setting of CharacterFont -' The programmer must ensure that the correct font size definition is used for the present setting of CharacterFont -' The user-defined character definition is cleared when Reset is invoked or the printer is turned off -' The vertical and horizontal printed resolution is approximaely 180dpi -' Characters are always defined by sets of three bytes in the vertical direction and up to 9 or 12 sets horizontally -' Each byte defines a vertical line of 8 dots. The MSB of each byte is the highest image pixel, the LSB is the lowest -' Byte(0+n) defines the topmost third of the vertical line, Byte(1+n) is below and Byte(2+n) is the lowest -' Set a bit to 1 to print a dot or 0 to not print a dot -' If the lines to the right of the character are blank then there set of three bytes can be omiited from the byte array -' When the user-defined characters are defined in font B (9*17) only the most significant bit of the 3rd byte of data is used -' charcode defines the character code for the character being defined -' bitdata is a Byte array containing the character definitiopn as described above. -' If the length of bitdata is not a multiple of 3 the definition is ignored and a value of -1 returned -Public Sub DefineCustomCharacter(charcode As Int, bitdata() As Byte) As Int - Dim excess As Int = bitdata.Length Mod 3 - If excess <> 0 Then Return -1 - Dim size As Int = bitdata.Length / 3 - WriteString(ESC & "&") - Dim params(4) As Byte - params(0) = 3 - params(1) = charcode - params(2) = charcode - params(3) = size - WriteBytes(params) - WriteBytes(bitdata) - Return 0 -End Sub - -' The third triangle point is hacked into spare bits keeping the generated Int human readable i hex for other shapes -' The shape array contains the character shapes and characterfont is 0 for a 12*24 character andd 1 for a 9*17 character -' Returns a Byte(36) for characterfont = 0 and a Byte(27) for characterfont = 1 -' The returned array can be directly passed to DefineCustomCharacter -' To define a custom character requires specifying up to 288 data points -' This is a lot of data and in most cases it is mainly white space -' This method takes a character definition that defines only the shapes in the character that are to be printed black -' It will be easier use the outputs from CreateLine, CreateTriangle, CreateBox and CreateCircle rather then building the actual Int values -' Each shape is defined by a single Int value containing four parameters in hex format plugs some single bit flags -' Taking the representation of the Int as eight hex characters numbered from the MS end as 0x01234567 -' 0 contains the shape to draw. 0 = Line, 1 = Box, 2 = Circle, 3 = Triangle -' 1 contains a value between 0 and 0xF. This is either an X coordinate or for a circle the radius -' 2 and 3 contain a value between 0 and 0x1F. This is either a Y coordinate or for a circle the quadrants to draw -' 4 contains a value between 0 and 0xF. This is 0 for an empty shope or 1 for a filled shape -' 5 contains a value between 0 and 0xF. This is an X coordinate -' 5 and 6 contain a value between 0 and 0x1F. This is a Y coordinate -' The coordinate 0,0 is at the top left of the character -' Line -' One point of the vector is contained in the top part of the Int and the other in the bottom half -' To define a single point place its coordinates as both sr=start and end of a line -' Box -' The two X,Y coordinates specify the top left and bottom right corners of the box -' Circle -' The left X parameter is now the radius of the circle, the left Y is the quadrants to be drawn -' The right X and Y parameters are the centre of the circle' -' The quadrants to draw are bit ORed together, UpperRight = 0x1, LowerRight = 0x2, LowerLeft = 0x4, Upper Left = 0x8 -' Triangle -' The left X and Y parameters are now one point of the triangle, the right X and Y parameters another point -' The third triangle point is hacked into spare bits keeping the generated Int human readable in hex for the other shapes -' The bit allocations of a shape are as follows. f = fill as 0 or 1, s = shape as 0 to 7, xn as 0 to 15, yn as 0 to 31 -' Shape 0 = line, 1 = box, 2 = triangle, 3 = circle, 4 to 7 = unused -' fsss xxxx -yyy yyyy xxxx xxxx yyyy yyyy -' 0000 220 0000 2222 1111 2221 1111 -' x0 y2 y0 x2 x1 y2 y1 -' The shape array contains the character shapes and characterfont is 0 for a 12*24 character andd 1 for a 9*17 character -' Returns a Byte(36) for characterfont = 0 and a Byte(27) for characterfont = 1 -' The returned array can be directly passed to DefineCustomCharacter -Public Sub CreateCustomCharacter(shapes() As Int, characterfont As Int) As Byte() - Dim masks(8) As Byte - masks(0) = 0x80 - masks(1) = 0x40 - masks(2) = 0x20 - masks(3) = 0x10 - masks(4) = 0x08 - masks(5) = 0x04 - masks(6) = 0x02 - masks(7) = 0x01 - ' rather than try to catch errors whenever we access this array we Dim it to the maximum possible values of X and Y - ' then copy the top left of it to the final character definition array of the correct size - Dim points(16,32) As Byte - ' initialise the character to all white - For x = 0 To 15 - For y = 0 To 31 - points(x,y) = 0 - Next - Next - Dim size As Int = 12 - If characterfont = 1 Then size = 9 - Dim charbyes(size * 3) As Byte - For c = 0 To charbyes.Length - 1 - charbyes(c) = 0 - Next - ' set the points array from the shapes provided - For i = 0 To shapes.Length -1 - Dim fill As Int = Bit.UnsignedShiftRight(Bit.And(0x80000000, shapes(i)), 31) - Dim shape As Int = Bit.UnsignedShiftRight(Bit.And(0x70000000, shapes(i)), 28) - Dim x0 As Int = Bit.UnsignedShiftRight(Bit.And(0x0f000000, shapes(i)), 24) - Dim y0 As Int = Bit.UnsignedShiftRight(Bit.And(0x001f0000, shapes(i)), 16) - Dim x1 As Int = Bit.UnsignedShiftRight(Bit.And(0x00000f00, shapes(i)), 8) - Dim y1 As Int = Bit.And(0x0000001f, shapes(i)) - Dim x2 As Int = Bit.UnsignedShiftRight(Bit.And(0x0000f000, shapes(i)), 12) - Dim y2 As Int = Bit.UnsignedShiftRight(Bit.And(0x00e00000, shapes(i)), 18) + Bit.UnsignedShiftRight(Bit.And(0x000000e0, shapes(i)), 5) - ' The bit allocations of a shape are as follows. f = fill as 0 or 1, s = shape as 0 to 7, xn as 0 to 15, yn as 0 to 31 - ' Shape 0 = line, 1 = box, 2 = triangle, 3 = circle, 4 to 7 = unused - ' fsss xxxx -yyy yyyy xxxx xxxx yyyy yyyy - ' 0000 220 0000 2222 1111 2221 1111 - ' x0 y2 y0 x2 x1 y2 y1 - Dim logmsg As String = ": Fill=" & fill & " : Points " & x0 & "," & y0 & " " & x1 & "," & y1 & " " & x2 & "," & y2 - If shape = 3 Then - Log("Triangle " & logmsg) - PlotTriangle(x0, y0, x1, y1, x2, y2, points, fill) - else If shape = 2 Then - Log("Circle " & logmsg) - PlotCircle(x0, y0, x1, y1, points, fill) - Else If shape = 1 Then - Log("Box " & logmsg) - PlotBox(x0, y0, x1, y1, points, fill) - Else - Log("Line " & logmsg) - PlotLine(x0, y0, x1, y1, points) - End If - ' map the points array onto the character definition array - For x = 0 To size -1 ' 9 or 12 horizontal bytes - For y = 0 To 2 ' 3 vertical bytes - Dim bits As Byte = 0 - For b = 0 To 7 ' 8 vertical bits - If points(x, y*8+b) <> 0 Then - bits = Bit.Or(bits, masks(b)) - End If - Next - charbyes(x*3+y) = bits - Next - Next - Next - Return charbyes -End Sub - -' This is a higher level method that builds the Int values to pass to CreateCustomCharacter in the shapes array -' Create the value to draw a line in a custom character -' The line starts at X0,Y0 and ends at X1,Y1 -Public Sub CreateLine(x0 As Int, y0 As Int, x1 As Int, y1 As Int) As Int - Dim line As Int = 0 - line = line + Bit.ShiftLeft(Bit.And(0xf,x0), 24) - line = line + Bit.ShiftLeft(Bit.And(0x1f,y0), 16) - line = line + Bit.ShiftLeft(Bit.And(0xf,x1), 8) - line = line + Bit.And(0x1f,y1) - Return line -End Sub - -' This is a higher level method that builds the Int values to pass to CreateCustomCharacter in the shapes array -' Create the value to draw a circle in a custom character -' The circle is centred on X1,Y1 and the quadrants to draw are bit ORed together -' UpperRight = 0x1, LowerRight = 0x2, LowerLeft = 0x4, Upper Left = 0x8 -Public Sub CreateCircle(radius As Int, quadrants As Int, x1 As Int, y1 As Int, fill As Boolean) As Int - Dim circle As Int = 0x20000000 - If fill Then circle = circle + 0x80000000 - circle = circle + Bit.ShiftLeft(radius, 24) - circle = circle + Bit.ShiftLeft(quadrants, 16) - circle = circle + Bit.ShiftLeft(x1, 8) - circle = circle + y1 - Return circle -End Sub - - -' This is a higher level method that builds the Int values to pass to CreateCustomCharacter in the shapes array -' Create the value to draw a triangle in a custom character -' The triangles corners are at X0,Y0 X1,Y1 and X2,Y2 -Public Sub CreateTriangle(x0 As Int, y0 As Int, x1 As Int, y1 As Int, x2 As Int, y2 As Int, fill As Boolean) As Int - Dim triangle As Int = 0x30000000 - If fill Then triangle = triangle + 0x80000000 - triangle = triangle + Bit.ShiftLeft(Bit.And(0xf,x0), 24) - triangle = triangle + Bit.ShiftLeft(Bit.And(0x1f,y0), 16) - triangle = triangle + Bit.ShiftLeft(Bit.And(0xf,x1), 8) - triangle = triangle + Bit.And(0x1f,y1) - triangle = triangle + Bit.ShiftLeft(Bit.And(0xf,x2), 12) ' extra X - triangle = triangle + Bit.ShiftLeft(Bit.And(0x7,y2), 5) ' extra Y lsbits * 3 - triangle = triangle + Bit.ShiftLeft(Bit.And(0x18,y2), 18) ' extra Y msbits * 2 - Return triangle -End Sub - -' This is a higher level method that builds the Int values to pass to CreateCustomCharacter in the shapes array -' Create the value to draw a box in a custom character -' The box top left start is X0,Y0 and bottom right is X1,Y1 -Public Sub CreateBox(x0 As Int, y0 As Int, x1 As Int, y1 As Int, fill As Boolean) As Int - Dim box As Int = 0x10000000 - If fill Then box = box + 0x80000000 - box = box + Bit.ShiftLeft(Bit.And(0xf,x0), 24) - box = box + Bit.ShiftLeft(Bit.And(0x1f,y0), 16) - box = box + Bit.ShiftLeft(Bit.And(0xf,x1), 8) - box = box + Bit.And(0x1f,y1) - Return box -End Sub - -'----------------------------------------- -' Private custom character drawing methods -'----------------------------------------- - -Private Sub PlotTriangle(x0 As Int, y0 As Int, x1 As Int, y1 As Int, x2 As Int, y2 As Int, points(,) As Byte, Fill As Int) - ' This is a pretty crude algorithm, but it is simple, works and it isn't invoked often - PlotLine(x0, y0, x1, y1, points) - PlotLine(x1, y1, x2, y2, points) - PlotLine(x2, y2, x0, y0, points) - If Fill > 0 Then - FillTriangle(x0, y0, x1, y1, x2, y2, points) - End If -End Sub - -Private Sub FillTriangle(x0 As Int, y0 As Int, x1 As Int, y1 As Int, x2 As Int, y2 As Int, points(,) As Byte) - ' first sort the three vertices by y-coordinate ascending so v0 Is the topmost vertice */ - Dim tx, ty As Int - If y0 > y1 Then - tx = x0 : ty = y0 - x0 = x1 : y0 = y1 - x1 = tx : y1 = ty - End If - If y0 > y2 Then - tx = x0 : ty = y0 - x0 = x2 : y0 = y2 - x2 = tx : y2 = ty - End If - If y1 > y2 Then - tx = x1 : ty = y1 - x1 = x2 : y1 = y2 - x2 = tx : y2 = ty - End If - - Dim dx0, dx1, dx2 As Double - Dim x3, x4, y3, y4 As Double - Dim inc As Int - - If y1 - y0 > 0 Then dx0=(x1-x0)/(y1-y0) Else dx0=0 - If y2 - y0 > 0 Then dx1=(x2-x0)/(y2-y0) Else dx1=0 - If y2 - y1 > 0 Then dx2=(x2-x1)/(y2-y1) Else dx2=0 - x3 = x0 : x4 = x0 - y3 = y0 : y4 = y0 - If dx0 > dx1 Then - While - Do While y3 <= y1 - If x3 > x4 Then inc = -1 Else inc = 1 - For x = x3 To x4 Step inc - points(x, y3) = 1 - Next - y3 = y3 + 1 : y4 = y4 + 1 : x3 = x3 + dx1 : x4 = x4 + dx0 - Loop - x4=x1 - y4=y1 - Do While y3 <= y2 - If x3 > x4 Then inc = -1 Else inc = 1 - For x = x3 To x4 Step inc - points(x ,y3) = 1 - Next - y3 = y3 + 1 : y4 = y4 + 1 : x3 = x3 + dx1 : x4 = x4 + dx2 - Loop - Else - While - Do While y3 <= y1 - If x3 > x4 Then inc = -1 Else inc = 1 - For x = x3 To x4 Step inc - points(x, y3) = 1 - Next - y3 = y3 + 1 : y4 = y4 + 1 : x3 = x3 + dx0 : x4 = x4 +dx1 - Loop - x3=x1 - y3=y1 - Do While y3<=y2 - If x3 > x4 Then inc = -1 Else inc = 1 - For x = x3 To x4 Step inc - points(x, y3) = 1 - Next - y3 = y3 + 1 : y4 = y4 + 1 : x3 = x3 + dx2 : x4 = x4 + dx1 - Loop - End If -End Sub - -Private Sub PlotBox(x0 As Int, y0 As Int, x1 As Int, y1 As Int, points(,) As Byte, Fill As Int) - ' This is a pretty crude algorithm, but it is simple, works and itsn't invoked often - PlotLine(x0, y0, x0, y1, points) - PlotLine(x0, y0, x1, y0, points) - PlotLine(x1, y0, x1, y1, points) - PlotLine(x0, y1, x1, y1, points) - If Fill > 0 Then - For x = x0 To x1 - PlotLine(x, y0, x, y1, points) - Next - End If -End Sub - - -Private Sub PlotCircle(radius As Int, quadrants As Int, x1 As Int, y1 As Int, points(,) As Byte, fill As Int) - ' This is a pretty crude algorithm, but it is simple, works and itsn't invoked often - Dim mask As Int = 1 - For q = 3 To 0 Step -1 - If Bit.And(quadrants, mask) <> 0 Then - For i = q*90 To q*90+90 Step 1 - Dim x,y As Double - x = x1 - SinD(i)*radius - y = y1 - CosD(i)*radius - If fill > 0 Then - PlotLine(x1, y1, x, y, points) - Else - points(Round(x), Round(y)) = 1 - End If - Next - End If - mask = Bit.ShiftLeft(mask, 1) - Next -End Sub - -' Bresenham's line algorithm - see Wikipedia -Private Sub PlotLine(x0 As Int, y0 As Int, x1 As Int, y1 As Int, points(,) As Byte ) - If Abs(y1 - y0) < Abs(x1 - x0) Then - If x0 > x1 Then - PlotLineLow(x1, y1, x0, y0, points) - Else - PlotLineLow(x0, y0, x1, y1, points) - End If - Else - If y0 > y1 Then - PlotLineHigh(x1, y1, x0, y0, points) - Else - PlotLineHigh(x0, y0, x1, y1, points) - End If - End If -End Sub - -Private Sub PlotLineHigh(x0 As Int, y0 As Int, x1 As Int, y1 As Int, points(,) As Byte ) - Dim dx As Int = x1 - x0 - Dim dy As Int = y1 - y0 - Dim xi As Int = 1 - If dx < 0 Then - xi = -1 - dx = -dx - End If - Dim D As Int = 2*dx - dy - Dim x As Int = x0 - For y = y0 To y1 - points(x,y) = 1 - If D > 0 Then - x = x + xi - D = D - 2*dy - End If - D = D + 2*dx - Next -End Sub - -Private Sub PlotLineLow(x0 As Int, y0 As Int, x1 As Int,y1 As Int, points(,) As Byte ) - Dim dx As Int = x1 - x0 - Dim dy As Int = y1 - y0 - Dim yi As Int = 1 - If dy < 0 Then - yi = -1 - dy = -dy - End If - Dim D As Int = 2*dy - dx - Dim y As Int = y0 - For x = x0 To x1 - points(x,y) = 1 - If D > 0 Then - y = y + yi - D = D - 2*dx - End If - D = D + 2*dy - Next -End Sub - - -'------------------- -' Image commands -'------------------- -' There are two different image printing options with different pixel formats. -' PrintImage prints an entire image at once with a maximum size of 576x512 -' PrintImage2 prints a slice of an image with a height of 8 or 24 and a maximum width of 576 -' One or other may look better on your particular printer - -' Printer support method for pre-processing images to print -' Convert the bitmap supplied to an array of pixel values representing the luminance value of each original pixel -Sub ImageToBWIMage(bmp As Bitmap) As AnImage - Dim BC As BitmapCreator 'ignore - Dim W As Int = bmp.Width - Dim H As Int = bmp.Height - Dim pixels(W * H) As Byte - - For y = 0 To H - 1 - For x = 0 To W - 1 - Dim j As Int = bmp.GetPixel(x, y) - ' convert color to approximate luminance value - Dim col As ARGBColor - BC.ColorToARGB(j, col ) - Dim lum As Int = col.r * 0.2 + col.b*0.1 + col.g*0.7 - If lum> 255 Then lum = 255 - ' save the pixel luminance - pixels(y*W + x) = lum - Next - Next - Dim ret As AnImage - ret.Width = bmp.Width - ret.Height = bmp.Height - ret.Data = pixels - Return ret -End Sub - -' Printer support method for pre-processing images to print -' Convert the array of luminance values to an array of 0s and 1s according to the threshold value -Sub ThresholdImage(img As AnImage, threshold As Int) As AnImage 'ignore - Dim pixels(img.Data.Length) As Byte - For i = 0 To pixels.Length - 1 - Dim lum As Int = Bit.And(img.Data(i), 0xff) ' bytes are signed values - If lum < threshold Then - lum = 1 - Else - lum = 0 - End If - pixels(i) = lum - Next - Dim ret As AnImage - ret.Width = img.Width - ret.Height = img.Height - ret.Data = pixels - Return ret -End Sub - -' Printer support method for pre-processing images to print -' Convert the array of luminance values to a dithered array of 0s and 1s according to the threshold value -' The dithering algorithm is the simplest one-dimensional error diffusion algorithm -' Normally threshold should be 128 but some images may look better with a little more or less. -' This algorithm tends to produce vertical lines. DitherImage2D will probably look far better -Sub DitherImage1D(img As AnImage, threshold As Int) As AnImage 'ignore - Dim pixels(img.Data.Length) As Byte - Dim error As Int - For y = 0 To img.Height - 1 - error = 0 ' reset on each new line - For x = 0 To img.Width - 1 - Dim lum As Int = Bit.And(img.Data(y*img.Width + x), 0xff) ' bytes are signed values - lum = lum + error - If lum < threshold Then - error = lum - lum = 1 - Else - error = lum - 255 - lum = 0 - End If - pixels(y*img.Width + x) = lum - Next - Next - Dim ret As AnImage - ret.Width = img.Width - ret.Height = img.Height - ret.Data = pixels - Return ret -End Sub - - -' Printer support method for pre-processing images to print -' Convert the array of luminance values to a dithered array of 0s and 1s according to the threshold value -' The dithering algorithm is the simplest two-dimensional error diffusion algorithm -' Normally threshold should be 128 but some images may look better with a little more or less. -' Anything more sophisticated might be overkill considering the image quality of most thermal printers -Sub DitherImage2D(img As AnImage, threshold As Int) As AnImage - Dim pixels(img.Data.Length) As Byte - Dim xerror As Int - Dim yerrors(img.Width) As Int - For i = 0 To yerrors.Length -1 - yerrors(0) = 0 - Next - For y = 0 To img.Height - 1 - xerror = 0 ' reset on each new line - For x = 0 To img.Width - 1 - Dim lum As Int = Bit.And(img.Data(y*img.Width + x), 0xff) ' bytes are signed values - lum = lum + xerror + yerrors(x) - If lum < threshold Then - xerror = lum/2 - yerrors(x) = xerror - lum = 1 - Else - xerror = (lum - 255)/2 - yerrors(x) = xerror - lum = 0 - End If - pixels(y*img.Width + x) = lum - Next - Next - Dim ret As AnImage - ret.Width = img.Width - ret.Height = img.Height - ret.Data = pixels - Return ret -End Sub - - -' GS v0 printing -'--------------- - -' Prints the given image at the specified height and width using the "GS v" command -' Image data is supplied as bytes each containing 8 bits of horizontal image data -' The top left of the image is Byte(0) and the bottom right is Byte(width*height-1) -' MSB of the byte is the leftmost image pixel, the LSB is the rightmost -' Maximum width is 72 bytes (576 bits), Maximum height is 512 bytes -' The printed pixels are square -' Returns status 0 : OK, -1 : too wide, -2 : too high, -3 : array too small -' The printer can take a long time to process the data and start printing -Public Sub PrintImage(img As AnImage) As Int - ' max width = 72 ' 72mm/576 bits wide - ' max height = 512 ' 64mm/512 bits high - If img.width > 72 Then Return -1 - If img.height > 512 Then Return -2 - If img.data.Length < img.width * img.height Then Return -3 - Dim xh As Int = img.width / 256 - Dim xl As Int = img.width - xh * 256 - Dim yh As Int = img.height / 256 - Dim yl As Int = img.height - yh * 256 - Dim params(5) As Byte - params(0) = 0 ' - params(1) = xl - params(2) = xh - params(3) = yl - params(4) = yh - WriteString(GS & "v0") - WriteBytes(params) - WriteBytes(img.data) - WriteString(CRLF) - Return 0 -End Sub - -' Printer support method for pre-processing images to print by PrintImage -' Takes an array of image pixels and packs it for use with PrintImage -' Each byte in the imagedata array is a single pixel valued zero or non-zero for white and black -' The returned array is 8 x smaller and packs 8 horizontal black or white pixels into each byte -' If the horizontal size of the image is not a multiple of 8 it will be truncated so that it is. -Public Sub PackImage(imagedata As AnImage) As AnImage - Dim xbytes As Int = imagedata.width/8 - Dim pixels(xbytes * imagedata.height) As Byte - Dim masks(8) As Byte - masks(0) = 0x80 - masks(1) = 0x40 - masks(2) = 0x20 - masks(3) = 0x10 - masks(4) = 0x08 - masks(5) = 0x04 - masks(6) = 0x02 - masks(7) = 0x01 - Dim index As Int = 0 - For y = 0 To imagedata.Height - 1 - For x = 0 To xbytes - 1 - Dim xbyte As Byte = 0 - For b = 0 To 7 - ' get a pixel - Dim pix As Byte = imagedata.Data(index) - If pix <> 0 Then - xbyte = xbyte + masks(b) - End If - index = index + 1 - Next - pixels(y*xbytes + x) = xbyte - Next - Next - Dim ret As AnImage - ret.Width = xbytes - ret.Height = imagedata.Height - ret.Data = pixels - Return ret -End Sub - - -' ESC * printing -'--------------- - -' Prints the given image slice at the specified height and width using the "ESC *" command -' Image data is supplied as bytes each containing 8 bits of vertical image data -' Pixels are not square, the width:height ratio varies with density and line height -' Returns status 0 = OK, -1 = too wide, -2 = too high, -3 = wrong array length -' Line spacing needs to be set to 0 if printing consecutive slices -' The printed pixels are not square, the ratio varies with the highdensity and dots24 parameter settings -' The highdensity parameter chooses high or low horizontal bit density when printed -' The dots24 parameter chooses 8 or 24 bit data slice height when printed -' Not(highdensity) -' Maximum width is 288 bits. Horizontal dpi is approximately 90 -' MSB of each byte is the highest image pixel, the LSB is the lowest -' highdensity -' Maximum width is 576 bits. Horizontal dpi is approximately 180 -' Not(dots24) -' Vertical printed height is 8 bits at approximately 60dpi -' One byte in the data Array represents one vertical line when printed -' Array size is the same as the width -' MSB of each byte is the highest image pixel, the LSB is the lowest -' dots24 -' Vertical printed height is 24 bits at approximately 180dpi -' Three consecutive bytes in the data array represent one vertical 24bit line when printed -' Array size is 3 times the width -' Byte(n+0) is the highest, byte (n+2) us the lowest -' MSB of each byte is the highest image pixel, the LSB is the lowest -Public Sub PrintImage2(width As Int, data() As Byte, highdensity As Boolean, dotds24 As Boolean) As Int - Dim d As String = Chr(0) - If Not(highdensity) And Not(dotds24 ) Then - d = Chr(0) - If width > 288 Then Return -1 - If data.Length <> width Then Return -3 - Else If highdensity And Not(dotds24) Then - d = Chr(1) - If width > 576 Then Return -1 - If data.Length <> width Then Return -3 - Else If Not(highdensity) And dotds24 Then - d = Chr(32) - If width > 288 Then Return -1 - If data.Length <> width*3 Then Return -3 - Else ' highdensity And dotds24 - d = Chr(33) - If width > 576 Then Return -1 - If data.Length <> width*3 Then Return -3 - End If - Dim xh As Int = width / 256 - Dim xl As Int = width - xh * 256 - Dim params(2) As Byte - params(0) = xl - params(1) = xh - WriteString(ESC & "*" & d) - WriteBytes(params) - WriteBytes(data) - WriteString(CRLF) - Return 0 -End Sub - -' Printer support method for pre-processing images to print by PrintImage2 -' Takes an array of image pixels and packs one slice of it for use with PrintImage2 -' Each byte in the imagedata array is a single pixel valued zero or non-zero for white and black -' The returned array packs 8 vertical black or white pixels into each byte -' If dots24 is True then the slice is 24 pixels high otherwise it is 8 pixels high -Public Sub PackImageSlice(img As AnImage, slice As Int, dots24 As Boolean) As Byte() - Dim bytes As Int = img.width - If dots24 Then - Dim pixels(bytes * 3) As Byte - Dim slicestart As Int = slice * bytes * 8 * 3 - Else - Dim pixels(bytes) As Byte - Dim slicestart As Int = slice * bytes * 8 - End If - - Dim masks(8) As Byte - masks(0) = 0x80 - masks(1) = 0x40 - masks(2) = 0x20 - masks(3) = 0x10 - masks(4) = 0x08 - masks(5) = 0x04 - masks(6) = 0x02 - masks(7) = 0x01 - ' You could compress this into a single code block but I left it as two to make it more obvious what's happening - If dots24 Then - For x = 0 To bytes - 1 - For s = 0 To 2 - Dim xbyte As Byte = 0 - For b = 0 To 7 - ' get a pixel - Dim pix As Byte = img.Data(slicestart + ((b + s*8) * bytes) + x) - If pix <> 0 Then - xbyte = xbyte + masks(b) - End If - Next - pixels(x*3+s) = xbyte - Next - Next - Else - For x = 0 To bytes - 1 - Dim xbyte As Byte = 0 - For b = 0 To 7 - ' get a pixel - Dim pix As Byte = img.Data(slicestart + (b * bytes) + x) - If pix <> 0 Then - xbyte = xbyte + masks(b) - End If - Next - pixels(x) = xbyte - Next - End If - Return pixels -End Sub - -'---------------- -'Barcode commands -'---------------- - -' Set the height of a 2D bar code as number of dots vertically, 1 to 255 -' Automatically resets to the default after printing the barcode -Public Sub setBarCodeHeight(height As Int) - WriteString(GS & "h") - Dim params(1) As Byte - params(0) = height - WriteBytes(params) -End Sub - -' Set the left inset of a 2D barcode, 0 to 255 -' This does not reset on receipt of RESET -Public Sub setBarCodeLeft(left As Int) - WriteString(GS & "x") - Dim params(1) As Byte - params(0) = left - WriteBytes(params) -End Sub - -' Set the width of each bar in a 2D barcode. width value is 2 to 6, default is 3 -' 2 = 0.250, 3 - 0.375, 4 = 0.560, 5 = 0.625, 6 = 0.75 -' Resets to default after printing the barcode -Public Sub setBarCodeWidth(width As Int) - WriteString(GS & "w") - Dim params(1) As Byte - params(0) = width - WriteBytes(params) -End Sub - -'Selects the printing position of HRI (Human Readable Interpretation) characters when printing a 2D bar code. -'0 Not printed, 1 Above the bar code, 2 Below the bar code, 3 Both above And below the bar code -' Automatically resets to the default of 0 after printing the barcode -' The docs say this can be Chr(0, 1 2 or 3) or "0" "1" "2" or "3" but the numeric characters don't work -Public Sub setHriPosn(posn As Int) - WriteString(GS & "H") - Dim params(1) As Byte - params(0) = posn - WriteBytes(params) -End Sub - -'Selects the font for HRI (Human Readable Interpretation) characters when printing a 2D bar code. -'0 Font A (12 x 24), 1 Font B (9 x 17) -' Automatically resets to the default of 0 after printing the barcode -' The docs say this can be Chr(0 or 1) or "0" or "1" but the numeric characters don't work -Public Sub setHriFont(font As Int) - WriteString(GS & "f" & Chr(font)) -End Sub - -' If given invalid data no barcode is printed, only strange characters -' CODABAR needs any of A,B,C or D at the start and end of the barcode. Some decoders may not like them anywhere else -' Bartype Code Number of characters Permitted values -' A | UPC-A | 11 or 12 characters | 0 to 9 | The 12th printed character is always the check digit -' B | UPC-E | 6 characters | 0 to 9 | The 12th printed character is always the check digit -' C | EAN13 | 12 or 13 characters | 0 to 9 | The 12th printed character is always the check digit -' D | EAN8 | 7 or 8 characters | 0 to 9 | The 8th printed character is always the check digit -' E | CODE39 | 1 or more characters | 0 to 9, A to Z, Space $ % + - . / -' F | ITF | 1 or more characters | 0 to 9 | even number of characters only -' G | CODABAR| 3 to 255 characters | 0 to 9, A to D, $ + - . / : | needs any of A,B,C or D at the start and end -' H | CODE93 | 1 to 255 characters | Same as CODE39 -' I | CODE128| 2 to 255 characters | entire 7 bit ASCII set -Public Sub WriteBarCode(bartype As String, data As String) - Dim databytes() As Byte = data.GetBytes("ASCII") - Dim dlow As Int = databytes.Length - Log("Barcode " & bartype & ", Size " & dlow & ", " & data) - WriteString(GS & "k" & bartype.ToUpperCase.CharAt(0)) - Dim params(1) As Byte - params(0) = dlow - WriteBytes(params) - WriteBytes(databytes) -End Sub - -' On my printer QR codes don't seem to be able to be decoded and on high ECs look obviously wrong :( -' size is 1 to 40, 0 is auto-size. Successive versions increase module size by 4 each side -' size = 1 is 21x21, 2 = 25x25 ... size 40 = 177x177 -' EC is error correction level, "L"(7%) or "M"(15%) or "Q"(25%) or "H"(30%) -' scale is 1 to 8, 1 is smallest, 8 is largest -Public Sub WriteQRCode(size As Int, EC As String, scale As Int, data As String) - Dim databytes() As Byte = data.GetBytes("ISO-8859-1") - Dim dhigh As Int = databytes.Length / 256 - Dim dlow As Int = databytes.Length - dhigh*256 - Log("QR Code : Size " & size & ", EC " & EC & ", Scale " & scale & ", Size " & dlow & " " & dhigh & " : Data = " & data) - Dim params(3) As Byte - params(0) = scale - params(1) = dlow - params(2) = dhigh - WriteString(ESC & "Z" & Chr(size) & EC.ToUpperCase.CharAt(0)) - WriteBytes(params) - WriteBytes(databytes) -End Sub - - -'**************** -' PRIVATE METHODS -'**************** - -'----------------------- -' Internal Serial Events -'----------------------- - -Private Sub Serial1_Connected (Success As Boolean) - If Success Then - Astream.Initialize(Serial1.InputStream, Serial1.OutputStream, "astream") - Connected = True - ConnectedError = "" - Serial1.Listen - Else - Connected = False - ConnectedError = LastException.Message - End If - If SubExists(CallBack, EventName & "_Connected") Then - CallSub2(CallBack, EventName & "_Connected", Success) - End If -End Sub - -'---------------------------- -' Internal AsyncStream Events -'---------------------------- - -Private Sub AStream_NewData (Buffer() As Byte) - If SubExists(CallBack, EventName & "_NewData") Then - CallSub2(CallBack, EventName & "_NewData", Buffer) - End If - Log("Data " & Buffer(0)) -End Sub - -Private Sub AStream_Error - If SubExists(CallBack, EventName & "_Error") Then - CallSub(CallBack, EventName & "_Error") - End If -End Sub - -Private Sub AStream_Terminated - Connected = False - If SubExists(CallBack, EventName & "_Terminated") Then - CallSub(CallBack, EventName & "_Terminated") - End If -End Sub diff --git a/B4A/Files/WHATSTEL.jpeg b/B4A/Files/WHATSTEL.jpeg deleted file mode 100644 index 5f50eb8..0000000 Binary files a/B4A/Files/WHATSTEL.jpeg and /dev/null differ diff --git a/B4A/Files/WhatsApp Image 2022-11-17 at 11.50.59 AM.jpeg b/B4A/Files/WhatsApp Image 2022-11-17 at 11.50.59 AM.jpeg deleted file mode 100644 index 03a496a..0000000 Binary files a/B4A/Files/WhatsApp Image 2022-11-17 at 11.50.59 AM.jpeg and /dev/null differ diff --git a/B4A/Files/alcancia.png b/B4A/Files/alcancia.png deleted file mode 100644 index 5f5cd3d..0000000 Binary files a/B4A/Files/alcancia.png and /dev/null differ diff --git a/B4A/Files/alert2.png b/B4A/Files/alert2.png deleted file mode 100644 index 44d3b7e..0000000 Binary files a/B4A/Files/alert2.png and /dev/null differ diff --git a/B4A/Files/alerta.jpg b/B4A/Files/alerta.jpg deleted file mode 100644 index 5edc6ba..0000000 Binary files a/B4A/Files/alerta.jpg and /dev/null differ diff --git a/B4A/Files/alerta_amarilla.png b/B4A/Files/alerta_amarilla.png deleted file mode 100644 index 4f4beac..0000000 Binary files a/B4A/Files/alerta_amarilla.png and /dev/null differ diff --git a/B4A/Files/amarillo.png b/B4A/Files/amarillo.png deleted file mode 100644 index 44e8c49..0000000 Binary files a/B4A/Files/amarillo.png and /dev/null differ diff --git a/B4A/Files/anterior.jpg b/B4A/Files/anterior.jpg deleted file mode 100644 index 48e56e4..0000000 Binary files a/B4A/Files/anterior.jpg and /dev/null differ diff --git a/B4A/Files/blacnco.jpg b/B4A/Files/blacnco.jpg deleted file mode 100644 index 1b44567..0000000 Binary files a/B4A/Files/blacnco.jpg and /dev/null differ diff --git a/B4A/Files/carrito.png b/B4A/Files/carrito.png deleted file mode 100644 index 03889f6..0000000 Binary files a/B4A/Files/carrito.png and /dev/null differ diff --git a/B4A/Files/checklist.bal b/B4A/Files/checklist.bal deleted file mode 100644 index d05448b..0000000 Binary files a/B4A/Files/checklist.bal and /dev/null differ diff --git a/B4A/Files/checks.bal b/B4A/Files/checks.bal deleted file mode 100644 index eac2be3..0000000 Binary files a/B4A/Files/checks.bal and /dev/null differ diff --git a/B4A/Files/cliente.bal b/B4A/Files/cliente.bal deleted file mode 100644 index 8766d14..0000000 Binary files a/B4A/Files/cliente.bal and /dev/null differ diff --git a/B4A/Files/clientes.bal b/B4A/Files/clientes.bal deleted file mode 100644 index 69852fe..0000000 Binary files a/B4A/Files/clientes.bal and /dev/null differ diff --git a/B4A/Files/detalle_promo.bal b/B4A/Files/detalle_promo.bal deleted file mode 100644 index c696d91..0000000 Binary files a/B4A/Files/detalle_promo.bal and /dev/null differ diff --git a/B4A/Files/durakelo.png b/B4A/Files/durakelo.png deleted file mode 100644 index e1c956c..0000000 Binary files a/B4A/Files/durakelo.png and /dev/null differ diff --git a/B4A/Files/durakelo1.png b/B4A/Files/durakelo1.png deleted file mode 100644 index 00cb434..0000000 Binary files a/B4A/Files/durakelo1.png and /dev/null differ diff --git a/B4A/Files/engrane.jpg b/B4A/Files/engrane.jpg deleted file mode 100644 index 01159de..0000000 Binary files a/B4A/Files/engrane.jpg and /dev/null differ diff --git a/B4A/Files/engrane.png b/B4A/Files/engrane.png deleted file mode 100644 index 5d27e8e..0000000 Binary files a/B4A/Files/engrane.png and /dev/null differ diff --git a/B4A/Files/errormanager.bal b/B4A/Files/errormanager.bal deleted file mode 100644 index ff0d659..0000000 Binary files a/B4A/Files/errormanager.bal and /dev/null differ diff --git a/B4A/Files/fondo_kmt.jpg b/B4A/Files/fondo_kmt.jpg deleted file mode 100644 index 4055faf..0000000 Binary files a/B4A/Files/fondo_kmt.jpg and /dev/null differ diff --git a/B4A/Files/foto.bal b/B4A/Files/foto.bal deleted file mode 100644 index a6ed4a6..0000000 Binary files a/B4A/Files/foto.bal and /dev/null differ diff --git a/B4A/Files/foto1.jpg b/B4A/Files/foto1.jpg deleted file mode 100644 index 88a6820..0000000 Binary files a/B4A/Files/foto1.jpg and /dev/null differ diff --git a/B4A/Files/foto2.jpg b/B4A/Files/foto2.jpg deleted file mode 100644 index ecdc104..0000000 Binary files a/B4A/Files/foto2.jpg and /dev/null differ diff --git a/B4A/Files/foto3.jpg b/B4A/Files/foto3.jpg deleted file mode 100644 index 6179697..0000000 Binary files a/B4A/Files/foto3.jpg and /dev/null differ diff --git a/B4A/Files/foto4.jpg b/B4A/Files/foto4.jpg deleted file mode 100644 index 9828b3e..0000000 Binary files a/B4A/Files/foto4.jpg and /dev/null differ diff --git a/B4A/Files/guardagestion.bal b/B4A/Files/guardagestion.bal deleted file mode 100644 index b5b5216..0000000 Binary files a/B4A/Files/guardagestion.bal and /dev/null differ diff --git a/B4A/Files/guna_viejo.png b/B4A/Files/guna_viejo.png deleted file mode 100644 index d937027..0000000 Binary files a/B4A/Files/guna_viejo.png and /dev/null differ diff --git a/B4A/Files/historico.bal b/B4A/Files/historico.bal deleted file mode 100644 index a70aeb1..0000000 Binary files a/B4A/Files/historico.bal and /dev/null differ diff --git a/B4A/Files/info_gral.resp b/B4A/Files/info_gral.resp deleted file mode 100644 index 85c1dc6..0000000 Binary files a/B4A/Files/info_gral.resp and /dev/null differ diff --git a/B4A/Files/infonavit1.jpg b/B4A/Files/infonavit1.jpg deleted file mode 100644 index b8cce4c..0000000 Binary files a/B4A/Files/infonavit1.jpg and /dev/null differ diff --git a/B4A/Files/inventario (1).jpg b/B4A/Files/inventario (1).jpg deleted file mode 100644 index 1eccaf3..0000000 Binary files a/B4A/Files/inventario (1).jpg and /dev/null differ diff --git a/B4A/Files/inventario.jpg b/B4A/Files/inventario.jpg deleted file mode 100644 index 1b5fd18..0000000 Binary files a/B4A/Files/inventario.jpg and /dev/null differ diff --git a/B4A/Files/inventario.png b/B4A/Files/inventario.png deleted file mode 100644 index 952429d..0000000 Binary files a/B4A/Files/inventario.png and /dev/null differ diff --git a/B4A/Files/itembuttonblue.png b/B4A/Files/itembuttonblue.png deleted file mode 100644 index af4dc0b..0000000 Binary files a/B4A/Files/itembuttonblue.png and /dev/null differ diff --git a/B4A/Files/itembuttonred.png b/B4A/Files/itembuttonred.png deleted file mode 100644 index 312b8b8..0000000 Binary files a/B4A/Files/itembuttonred.png and /dev/null differ diff --git a/B4A/Files/kelloggs.png b/B4A/Files/kelloggs.png deleted file mode 100644 index 427e8fa..0000000 Binary files a/B4A/Files/kelloggs.png and /dev/null differ diff --git a/B4A/Files/kelloggs2.jpg b/B4A/Files/kelloggs2.jpg deleted file mode 100644 index 74afa95..0000000 Binary files a/B4A/Files/kelloggs2.jpg and /dev/null differ diff --git a/B4A/Files/kelloggs2.png b/B4A/Files/kelloggs2.png deleted file mode 100644 index 4c7fa2c..0000000 Binary files a/B4A/Files/kelloggs2.png and /dev/null differ diff --git a/B4A/Files/keymon_logo.png b/B4A/Files/keymon_logo.png deleted file mode 100644 index 945e546..0000000 Binary files a/B4A/Files/keymon_logo.png and /dev/null differ diff --git a/B4A/Files/kmt.db b/B4A/Files/kmt.db deleted file mode 100644 index 6d9dc45..0000000 Binary files a/B4A/Files/kmt.db and /dev/null differ diff --git a/B4A/Files/login.bal b/B4A/Files/login.bal deleted file mode 100644 index 1c3900e..0000000 Binary files a/B4A/Files/login.bal and /dev/null differ diff --git a/B4A/Files/logo sanfer.jpg b/B4A/Files/logo sanfer.jpg deleted file mode 100644 index 791fe4f..0000000 Binary files a/B4A/Files/logo sanfer.jpg and /dev/null differ diff --git a/B4A/Files/logo2.png b/B4A/Files/logo2.png deleted file mode 100644 index 6c8b479..0000000 Binary files a/B4A/Files/logo2.png and /dev/null differ diff --git a/B4A/Files/logo2_192x192.png b/B4A/Files/logo2_192x192.png deleted file mode 100644 index d979ea0..0000000 Binary files a/B4A/Files/logo2_192x192.png and /dev/null differ diff --git a/B4A/Files/logo_exitus1.jpg b/B4A/Files/logo_exitus1.jpg deleted file mode 100644 index b8cce4c..0000000 Binary files a/B4A/Files/logo_exitus1.jpg and /dev/null differ diff --git a/B4A/Files/mainpage.bal b/B4A/Files/mainpage.bal deleted file mode 100644 index acba0d3..0000000 Binary files a/B4A/Files/mainpage.bal and /dev/null differ diff --git a/B4A/Files/malo.jpg b/B4A/Files/malo.jpg deleted file mode 100644 index bbf3c87..0000000 Binary files a/B4A/Files/malo.jpg and /dev/null differ diff --git a/B4A/Files/mapa.bal b/B4A/Files/mapa.bal deleted file mode 100644 index de2f3ab..0000000 Binary files a/B4A/Files/mapa.bal and /dev/null differ diff --git a/B4A/Files/mapa_rutas.bal b/B4A/Files/mapa_rutas.bal deleted file mode 100644 index 3da2b5d..0000000 Binary files a/B4A/Files/mapa_rutas.bal and /dev/null differ diff --git a/B4A/Files/mapas.bal b/B4A/Files/mapas.bal deleted file mode 100644 index 27ff766..0000000 Binary files a/B4A/Files/mapas.bal and /dev/null differ diff --git a/B4A/Files/marker-azul-0.png b/B4A/Files/marker-azul-0.png deleted file mode 100644 index 17a8f6b..0000000 Binary files a/B4A/Files/marker-azul-0.png and /dev/null differ diff --git a/B4A/Files/marker-azul-1.png b/B4A/Files/marker-azul-1.png deleted file mode 100644 index 899d8e1..0000000 Binary files a/B4A/Files/marker-azul-1.png and /dev/null differ diff --git a/B4A/Files/marker-azul-10.png b/B4A/Files/marker-azul-10.png deleted file mode 100644 index ec613c7..0000000 Binary files a/B4A/Files/marker-azul-10.png and /dev/null differ diff --git a/B4A/Files/marker-azul-100.png b/B4A/Files/marker-azul-100.png deleted file mode 100644 index 45793a2..0000000 Binary files a/B4A/Files/marker-azul-100.png and /dev/null differ diff --git a/B4A/Files/marker-azul-11.png b/B4A/Files/marker-azul-11.png deleted file mode 100644 index 473dfd2..0000000 Binary files a/B4A/Files/marker-azul-11.png and /dev/null differ diff --git a/B4A/Files/marker-azul-12.png b/B4A/Files/marker-azul-12.png deleted file mode 100644 index 92aa8f5..0000000 Binary files a/B4A/Files/marker-azul-12.png and /dev/null differ diff --git a/B4A/Files/marker-azul-13.png b/B4A/Files/marker-azul-13.png deleted file mode 100644 index af75744..0000000 Binary files a/B4A/Files/marker-azul-13.png and /dev/null differ diff --git a/B4A/Files/marker-azul-14.png b/B4A/Files/marker-azul-14.png deleted file mode 100644 index d477221..0000000 Binary files a/B4A/Files/marker-azul-14.png and /dev/null differ diff --git a/B4A/Files/marker-azul-15.png b/B4A/Files/marker-azul-15.png deleted file mode 100644 index 97d8538..0000000 Binary files a/B4A/Files/marker-azul-15.png and /dev/null differ diff --git a/B4A/Files/marker-azul-16.png b/B4A/Files/marker-azul-16.png deleted file mode 100644 index e8a9951..0000000 Binary files a/B4A/Files/marker-azul-16.png and /dev/null differ diff --git a/B4A/Files/marker-azul-17.png b/B4A/Files/marker-azul-17.png deleted file mode 100644 index b6d0538..0000000 Binary files a/B4A/Files/marker-azul-17.png and /dev/null differ diff --git a/B4A/Files/marker-azul-18.png b/B4A/Files/marker-azul-18.png deleted file mode 100644 index 068a465..0000000 Binary files a/B4A/Files/marker-azul-18.png and /dev/null differ diff --git a/B4A/Files/marker-azul-19.png b/B4A/Files/marker-azul-19.png deleted file mode 100644 index d9da3c9..0000000 Binary files a/B4A/Files/marker-azul-19.png and /dev/null differ diff --git a/B4A/Files/marker-azul-2.png b/B4A/Files/marker-azul-2.png deleted file mode 100644 index 0442732..0000000 Binary files a/B4A/Files/marker-azul-2.png and /dev/null differ diff --git a/B4A/Files/marker-azul-20.png b/B4A/Files/marker-azul-20.png deleted file mode 100644 index 5eaae1a..0000000 Binary files a/B4A/Files/marker-azul-20.png and /dev/null differ diff --git a/B4A/Files/marker-azul-21.png b/B4A/Files/marker-azul-21.png deleted file mode 100644 index 6461085..0000000 Binary files a/B4A/Files/marker-azul-21.png and /dev/null differ diff --git a/B4A/Files/marker-azul-22.png b/B4A/Files/marker-azul-22.png deleted file mode 100644 index 16fe14b..0000000 Binary files a/B4A/Files/marker-azul-22.png and /dev/null differ diff --git a/B4A/Files/marker-azul-23.png b/B4A/Files/marker-azul-23.png deleted file mode 100644 index 6006f4d..0000000 Binary files a/B4A/Files/marker-azul-23.png and /dev/null differ diff --git a/B4A/Files/marker-azul-24.png b/B4A/Files/marker-azul-24.png deleted file mode 100644 index b747dcb..0000000 Binary files a/B4A/Files/marker-azul-24.png and /dev/null differ diff --git a/B4A/Files/marker-azul-25.png b/B4A/Files/marker-azul-25.png deleted file mode 100644 index 8b7f0fc..0000000 Binary files a/B4A/Files/marker-azul-25.png and /dev/null differ diff --git a/B4A/Files/marker-azul-26.png b/B4A/Files/marker-azul-26.png deleted file mode 100644 index 08de106..0000000 Binary files a/B4A/Files/marker-azul-26.png and /dev/null differ diff --git a/B4A/Files/marker-azul-27.png b/B4A/Files/marker-azul-27.png deleted file mode 100644 index f3b4058..0000000 Binary files a/B4A/Files/marker-azul-27.png and /dev/null differ diff --git a/B4A/Files/marker-azul-28.png b/B4A/Files/marker-azul-28.png deleted file mode 100644 index 30eb4e4..0000000 Binary files a/B4A/Files/marker-azul-28.png and /dev/null differ diff --git a/B4A/Files/marker-azul-29.png b/B4A/Files/marker-azul-29.png deleted file mode 100644 index 66bc0c1..0000000 Binary files a/B4A/Files/marker-azul-29.png and /dev/null differ diff --git a/B4A/Files/marker-azul-3.png b/B4A/Files/marker-azul-3.png deleted file mode 100644 index 0de2d16..0000000 Binary files a/B4A/Files/marker-azul-3.png and /dev/null differ diff --git a/B4A/Files/marker-azul-30.png b/B4A/Files/marker-azul-30.png deleted file mode 100644 index 613f60d..0000000 Binary files a/B4A/Files/marker-azul-30.png and /dev/null differ diff --git a/B4A/Files/marker-azul-31.png b/B4A/Files/marker-azul-31.png deleted file mode 100644 index 1282d99..0000000 Binary files a/B4A/Files/marker-azul-31.png and /dev/null differ diff --git a/B4A/Files/marker-azul-32.png b/B4A/Files/marker-azul-32.png deleted file mode 100644 index eb87a1d..0000000 Binary files a/B4A/Files/marker-azul-32.png and /dev/null differ diff --git a/B4A/Files/marker-azul-33.png b/B4A/Files/marker-azul-33.png deleted file mode 100644 index 0da4e53..0000000 Binary files a/B4A/Files/marker-azul-33.png and /dev/null differ diff --git a/B4A/Files/marker-azul-34.png b/B4A/Files/marker-azul-34.png deleted file mode 100644 index 9c398e8..0000000 Binary files a/B4A/Files/marker-azul-34.png and /dev/null differ diff --git a/B4A/Files/marker-azul-35.png b/B4A/Files/marker-azul-35.png deleted file mode 100644 index ef09cd8..0000000 Binary files a/B4A/Files/marker-azul-35.png and /dev/null differ diff --git a/B4A/Files/marker-azul-36.png b/B4A/Files/marker-azul-36.png deleted file mode 100644 index f2819af..0000000 Binary files a/B4A/Files/marker-azul-36.png and /dev/null differ diff --git a/B4A/Files/marker-azul-37.png b/B4A/Files/marker-azul-37.png deleted file mode 100644 index 856fce2..0000000 Binary files a/B4A/Files/marker-azul-37.png and /dev/null differ diff --git a/B4A/Files/marker-azul-38.png b/B4A/Files/marker-azul-38.png deleted file mode 100644 index 016bd9f..0000000 Binary files a/B4A/Files/marker-azul-38.png and /dev/null differ diff --git a/B4A/Files/marker-azul-39.png b/B4A/Files/marker-azul-39.png deleted file mode 100644 index a73f734..0000000 Binary files a/B4A/Files/marker-azul-39.png and /dev/null differ diff --git a/B4A/Files/marker-azul-4.png b/B4A/Files/marker-azul-4.png deleted file mode 100644 index 26be4c1..0000000 Binary files a/B4A/Files/marker-azul-4.png and /dev/null differ diff --git a/B4A/Files/marker-azul-40.png b/B4A/Files/marker-azul-40.png deleted file mode 100644 index 33c5d5f..0000000 Binary files a/B4A/Files/marker-azul-40.png and /dev/null differ diff --git a/B4A/Files/marker-azul-41.png b/B4A/Files/marker-azul-41.png deleted file mode 100644 index 09fd1d0..0000000 Binary files a/B4A/Files/marker-azul-41.png and /dev/null differ diff --git a/B4A/Files/marker-azul-42.png b/B4A/Files/marker-azul-42.png deleted file mode 100644 index 09f032f..0000000 Binary files a/B4A/Files/marker-azul-42.png and /dev/null differ diff --git a/B4A/Files/marker-azul-43.png b/B4A/Files/marker-azul-43.png deleted file mode 100644 index 55ee249..0000000 Binary files a/B4A/Files/marker-azul-43.png and /dev/null differ diff --git a/B4A/Files/marker-azul-44.png b/B4A/Files/marker-azul-44.png deleted file mode 100644 index acde8e4..0000000 Binary files a/B4A/Files/marker-azul-44.png and /dev/null differ diff --git a/B4A/Files/marker-azul-45.png b/B4A/Files/marker-azul-45.png deleted file mode 100644 index e646d8e..0000000 Binary files a/B4A/Files/marker-azul-45.png and /dev/null differ diff --git a/B4A/Files/marker-azul-46.png b/B4A/Files/marker-azul-46.png deleted file mode 100644 index dd25e3b..0000000 Binary files a/B4A/Files/marker-azul-46.png and /dev/null differ diff --git a/B4A/Files/marker-azul-47.png b/B4A/Files/marker-azul-47.png deleted file mode 100644 index 77fd47c..0000000 Binary files a/B4A/Files/marker-azul-47.png and /dev/null differ diff --git a/B4A/Files/marker-azul-48.png b/B4A/Files/marker-azul-48.png deleted file mode 100644 index 40c0bbc..0000000 Binary files a/B4A/Files/marker-azul-48.png and /dev/null differ diff --git a/B4A/Files/marker-azul-49.png b/B4A/Files/marker-azul-49.png deleted file mode 100644 index 49a852a..0000000 Binary files a/B4A/Files/marker-azul-49.png and /dev/null differ diff --git a/B4A/Files/marker-azul-5.png b/B4A/Files/marker-azul-5.png deleted file mode 100644 index bf12336..0000000 Binary files a/B4A/Files/marker-azul-5.png and /dev/null differ diff --git a/B4A/Files/marker-azul-50.png b/B4A/Files/marker-azul-50.png deleted file mode 100644 index f67e274..0000000 Binary files a/B4A/Files/marker-azul-50.png and /dev/null differ diff --git a/B4A/Files/marker-azul-51.png b/B4A/Files/marker-azul-51.png deleted file mode 100644 index b9be7b6..0000000 Binary files a/B4A/Files/marker-azul-51.png and /dev/null differ diff --git a/B4A/Files/marker-azul-52.png b/B4A/Files/marker-azul-52.png deleted file mode 100644 index 1115bd0..0000000 Binary files a/B4A/Files/marker-azul-52.png and /dev/null differ diff --git a/B4A/Files/marker-azul-53.png b/B4A/Files/marker-azul-53.png deleted file mode 100644 index b0ccc4d..0000000 Binary files a/B4A/Files/marker-azul-53.png and /dev/null differ diff --git a/B4A/Files/marker-azul-54.png b/B4A/Files/marker-azul-54.png deleted file mode 100644 index 5b4c8cb..0000000 Binary files a/B4A/Files/marker-azul-54.png and /dev/null differ diff --git a/B4A/Files/marker-azul-55.png b/B4A/Files/marker-azul-55.png deleted file mode 100644 index 1499701..0000000 Binary files a/B4A/Files/marker-azul-55.png and /dev/null differ diff --git a/B4A/Files/marker-azul-56.png b/B4A/Files/marker-azul-56.png deleted file mode 100644 index 85b27ba..0000000 Binary files a/B4A/Files/marker-azul-56.png and /dev/null differ diff --git a/B4A/Files/marker-azul-57.png b/B4A/Files/marker-azul-57.png deleted file mode 100644 index bb71e82..0000000 Binary files a/B4A/Files/marker-azul-57.png and /dev/null differ diff --git a/B4A/Files/marker-azul-58.png b/B4A/Files/marker-azul-58.png deleted file mode 100644 index f593e65..0000000 Binary files a/B4A/Files/marker-azul-58.png and /dev/null differ diff --git a/B4A/Files/marker-azul-59.png b/B4A/Files/marker-azul-59.png deleted file mode 100644 index 0f7d449..0000000 Binary files a/B4A/Files/marker-azul-59.png and /dev/null differ diff --git a/B4A/Files/marker-azul-6.png b/B4A/Files/marker-azul-6.png deleted file mode 100644 index 38021e6..0000000 Binary files a/B4A/Files/marker-azul-6.png and /dev/null differ diff --git a/B4A/Files/marker-azul-60.png b/B4A/Files/marker-azul-60.png deleted file mode 100644 index cf5d8df..0000000 Binary files a/B4A/Files/marker-azul-60.png and /dev/null differ diff --git a/B4A/Files/marker-azul-61.png b/B4A/Files/marker-azul-61.png deleted file mode 100644 index e0e58c4..0000000 Binary files a/B4A/Files/marker-azul-61.png and /dev/null differ diff --git a/B4A/Files/marker-azul-62.png b/B4A/Files/marker-azul-62.png deleted file mode 100644 index 4a53f2f..0000000 Binary files a/B4A/Files/marker-azul-62.png and /dev/null differ diff --git a/B4A/Files/marker-azul-63.png b/B4A/Files/marker-azul-63.png deleted file mode 100644 index f679f01..0000000 Binary files a/B4A/Files/marker-azul-63.png and /dev/null differ diff --git a/B4A/Files/marker-azul-64.png b/B4A/Files/marker-azul-64.png deleted file mode 100644 index ebe5a9e..0000000 Binary files a/B4A/Files/marker-azul-64.png and /dev/null differ diff --git a/B4A/Files/marker-azul-65.png b/B4A/Files/marker-azul-65.png deleted file mode 100644 index be9a15c..0000000 Binary files a/B4A/Files/marker-azul-65.png and /dev/null differ diff --git a/B4A/Files/marker-azul-66.png b/B4A/Files/marker-azul-66.png deleted file mode 100644 index 50f342b..0000000 Binary files a/B4A/Files/marker-azul-66.png and /dev/null differ diff --git a/B4A/Files/marker-azul-67.png b/B4A/Files/marker-azul-67.png deleted file mode 100644 index 8aa412a..0000000 Binary files a/B4A/Files/marker-azul-67.png and /dev/null differ diff --git a/B4A/Files/marker-azul-68.png b/B4A/Files/marker-azul-68.png deleted file mode 100644 index 09c887b..0000000 Binary files a/B4A/Files/marker-azul-68.png and /dev/null differ diff --git a/B4A/Files/marker-azul-69.png b/B4A/Files/marker-azul-69.png deleted file mode 100644 index ed2e8a7..0000000 Binary files a/B4A/Files/marker-azul-69.png and /dev/null differ diff --git a/B4A/Files/marker-azul-7.png b/B4A/Files/marker-azul-7.png deleted file mode 100644 index 8413c29..0000000 Binary files a/B4A/Files/marker-azul-7.png and /dev/null differ diff --git a/B4A/Files/marker-azul-70.png b/B4A/Files/marker-azul-70.png deleted file mode 100644 index 0c1c482..0000000 Binary files a/B4A/Files/marker-azul-70.png and /dev/null differ diff --git a/B4A/Files/marker-azul-71.png b/B4A/Files/marker-azul-71.png deleted file mode 100644 index 905b19e..0000000 Binary files a/B4A/Files/marker-azul-71.png and /dev/null differ diff --git a/B4A/Files/marker-azul-72.png b/B4A/Files/marker-azul-72.png deleted file mode 100644 index cfb4098..0000000 Binary files a/B4A/Files/marker-azul-72.png and /dev/null differ diff --git a/B4A/Files/marker-azul-73.png b/B4A/Files/marker-azul-73.png deleted file mode 100644 index 511f0e7..0000000 Binary files a/B4A/Files/marker-azul-73.png and /dev/null differ diff --git a/B4A/Files/marker-azul-74.png b/B4A/Files/marker-azul-74.png deleted file mode 100644 index 02bd35e..0000000 Binary files a/B4A/Files/marker-azul-74.png and /dev/null differ diff --git a/B4A/Files/marker-azul-75.png b/B4A/Files/marker-azul-75.png deleted file mode 100644 index 01493a0..0000000 Binary files a/B4A/Files/marker-azul-75.png and /dev/null differ diff --git a/B4A/Files/marker-azul-76.png b/B4A/Files/marker-azul-76.png deleted file mode 100644 index 0d5aa06..0000000 Binary files a/B4A/Files/marker-azul-76.png and /dev/null differ diff --git a/B4A/Files/marker-azul-77.png b/B4A/Files/marker-azul-77.png deleted file mode 100644 index a3f9457..0000000 Binary files a/B4A/Files/marker-azul-77.png and /dev/null differ diff --git a/B4A/Files/marker-azul-78.png b/B4A/Files/marker-azul-78.png deleted file mode 100644 index e01d1da..0000000 Binary files a/B4A/Files/marker-azul-78.png and /dev/null differ diff --git a/B4A/Files/marker-azul-79.png b/B4A/Files/marker-azul-79.png deleted file mode 100644 index 438248d..0000000 Binary files a/B4A/Files/marker-azul-79.png and /dev/null differ diff --git a/B4A/Files/marker-azul-8.png b/B4A/Files/marker-azul-8.png deleted file mode 100644 index c4afaa5..0000000 Binary files a/B4A/Files/marker-azul-8.png and /dev/null differ diff --git a/B4A/Files/marker-azul-80.png b/B4A/Files/marker-azul-80.png deleted file mode 100644 index 438406c..0000000 Binary files a/B4A/Files/marker-azul-80.png and /dev/null differ diff --git a/B4A/Files/marker-azul-81.png b/B4A/Files/marker-azul-81.png deleted file mode 100644 index ba7b5a8..0000000 Binary files a/B4A/Files/marker-azul-81.png and /dev/null differ diff --git a/B4A/Files/marker-azul-82.png b/B4A/Files/marker-azul-82.png deleted file mode 100644 index 6d4471b..0000000 Binary files a/B4A/Files/marker-azul-82.png and /dev/null differ diff --git a/B4A/Files/marker-azul-83.png b/B4A/Files/marker-azul-83.png deleted file mode 100644 index 0adbcf0..0000000 Binary files a/B4A/Files/marker-azul-83.png and /dev/null differ diff --git a/B4A/Files/marker-azul-84.png b/B4A/Files/marker-azul-84.png deleted file mode 100644 index 181af1f..0000000 Binary files a/B4A/Files/marker-azul-84.png and /dev/null differ diff --git a/B4A/Files/marker-azul-85.png b/B4A/Files/marker-azul-85.png deleted file mode 100644 index 1a7a81a..0000000 Binary files a/B4A/Files/marker-azul-85.png and /dev/null differ diff --git a/B4A/Files/marker-azul-86.png b/B4A/Files/marker-azul-86.png deleted file mode 100644 index 6a8ed41..0000000 Binary files a/B4A/Files/marker-azul-86.png and /dev/null differ diff --git a/B4A/Files/marker-azul-87.png b/B4A/Files/marker-azul-87.png deleted file mode 100644 index 5833b00..0000000 Binary files a/B4A/Files/marker-azul-87.png and /dev/null differ diff --git a/B4A/Files/marker-azul-88.png b/B4A/Files/marker-azul-88.png deleted file mode 100644 index 9726f25..0000000 Binary files a/B4A/Files/marker-azul-88.png and /dev/null differ diff --git a/B4A/Files/marker-azul-89.png b/B4A/Files/marker-azul-89.png deleted file mode 100644 index 98a88f8..0000000 Binary files a/B4A/Files/marker-azul-89.png and /dev/null differ diff --git a/B4A/Files/marker-azul-9.png b/B4A/Files/marker-azul-9.png deleted file mode 100644 index 6db0a59..0000000 Binary files a/B4A/Files/marker-azul-9.png and /dev/null differ diff --git a/B4A/Files/marker-azul-90.png b/B4A/Files/marker-azul-90.png deleted file mode 100644 index 83278bd..0000000 Binary files a/B4A/Files/marker-azul-90.png and /dev/null differ diff --git a/B4A/Files/marker-azul-91.png b/B4A/Files/marker-azul-91.png deleted file mode 100644 index 8765559..0000000 Binary files a/B4A/Files/marker-azul-91.png and /dev/null differ diff --git a/B4A/Files/marker-azul-92.png b/B4A/Files/marker-azul-92.png deleted file mode 100644 index b5838e5..0000000 Binary files a/B4A/Files/marker-azul-92.png and /dev/null differ diff --git a/B4A/Files/marker-azul-93.png b/B4A/Files/marker-azul-93.png deleted file mode 100644 index 6d4f390..0000000 Binary files a/B4A/Files/marker-azul-93.png and /dev/null differ diff --git a/B4A/Files/marker-azul-94.png b/B4A/Files/marker-azul-94.png deleted file mode 100644 index 702beff..0000000 Binary files a/B4A/Files/marker-azul-94.png and /dev/null differ diff --git a/B4A/Files/marker-azul-95.png b/B4A/Files/marker-azul-95.png deleted file mode 100644 index 67e9be2..0000000 Binary files a/B4A/Files/marker-azul-95.png and /dev/null differ diff --git a/B4A/Files/marker-azul-96.png b/B4A/Files/marker-azul-96.png deleted file mode 100644 index 7f7d1f4..0000000 Binary files a/B4A/Files/marker-azul-96.png and /dev/null differ diff --git a/B4A/Files/marker-azul-97.png b/B4A/Files/marker-azul-97.png deleted file mode 100644 index bb83f5f..0000000 Binary files a/B4A/Files/marker-azul-97.png and /dev/null differ diff --git a/B4A/Files/marker-azul-98.png b/B4A/Files/marker-azul-98.png deleted file mode 100644 index 1baf391..0000000 Binary files a/B4A/Files/marker-azul-98.png and /dev/null differ diff --git a/B4A/Files/marker-azul-99.png b/B4A/Files/marker-azul-99.png deleted file mode 100644 index 3a8e4dc..0000000 Binary files a/B4A/Files/marker-azul-99.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-0.png b/B4A/Files/marker-rojo-0.png deleted file mode 100644 index c2f508a..0000000 Binary files a/B4A/Files/marker-rojo-0.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-1.png b/B4A/Files/marker-rojo-1.png deleted file mode 100644 index 4a38c88..0000000 Binary files a/B4A/Files/marker-rojo-1.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-10.png b/B4A/Files/marker-rojo-10.png deleted file mode 100644 index 878642f..0000000 Binary files a/B4A/Files/marker-rojo-10.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-100.png b/B4A/Files/marker-rojo-100.png deleted file mode 100644 index 3cf987b..0000000 Binary files a/B4A/Files/marker-rojo-100.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-11.png b/B4A/Files/marker-rojo-11.png deleted file mode 100644 index 89598b8..0000000 Binary files a/B4A/Files/marker-rojo-11.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-12.png b/B4A/Files/marker-rojo-12.png deleted file mode 100644 index 7eb6c40..0000000 Binary files a/B4A/Files/marker-rojo-12.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-13.png b/B4A/Files/marker-rojo-13.png deleted file mode 100644 index 093e073..0000000 Binary files a/B4A/Files/marker-rojo-13.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-14.png b/B4A/Files/marker-rojo-14.png deleted file mode 100644 index b0065d7..0000000 Binary files a/B4A/Files/marker-rojo-14.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-15.png b/B4A/Files/marker-rojo-15.png deleted file mode 100644 index ba35cef..0000000 Binary files a/B4A/Files/marker-rojo-15.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-16.png b/B4A/Files/marker-rojo-16.png deleted file mode 100644 index 43d6533..0000000 Binary files a/B4A/Files/marker-rojo-16.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-17.png b/B4A/Files/marker-rojo-17.png deleted file mode 100644 index 4b3a15b..0000000 Binary files a/B4A/Files/marker-rojo-17.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-18.png b/B4A/Files/marker-rojo-18.png deleted file mode 100644 index 13deb65..0000000 Binary files a/B4A/Files/marker-rojo-18.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-19.png b/B4A/Files/marker-rojo-19.png deleted file mode 100644 index 37bf798..0000000 Binary files a/B4A/Files/marker-rojo-19.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-2.png b/B4A/Files/marker-rojo-2.png deleted file mode 100644 index 8b6fde5..0000000 Binary files a/B4A/Files/marker-rojo-2.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-20.png b/B4A/Files/marker-rojo-20.png deleted file mode 100644 index 666d7df..0000000 Binary files a/B4A/Files/marker-rojo-20.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-21.png b/B4A/Files/marker-rojo-21.png deleted file mode 100644 index 366795c..0000000 Binary files a/B4A/Files/marker-rojo-21.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-22.png b/B4A/Files/marker-rojo-22.png deleted file mode 100644 index 3ce407f..0000000 Binary files a/B4A/Files/marker-rojo-22.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-23.png b/B4A/Files/marker-rojo-23.png deleted file mode 100644 index 55e3a4b..0000000 Binary files a/B4A/Files/marker-rojo-23.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-24.png b/B4A/Files/marker-rojo-24.png deleted file mode 100644 index c8f8988..0000000 Binary files a/B4A/Files/marker-rojo-24.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-25.png b/B4A/Files/marker-rojo-25.png deleted file mode 100644 index 11a6b96..0000000 Binary files a/B4A/Files/marker-rojo-25.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-26.png b/B4A/Files/marker-rojo-26.png deleted file mode 100644 index c9ca4da..0000000 Binary files a/B4A/Files/marker-rojo-26.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-27.png b/B4A/Files/marker-rojo-27.png deleted file mode 100644 index e7ff1c0..0000000 Binary files a/B4A/Files/marker-rojo-27.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-28.png b/B4A/Files/marker-rojo-28.png deleted file mode 100644 index a6854ee..0000000 Binary files a/B4A/Files/marker-rojo-28.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-29.png b/B4A/Files/marker-rojo-29.png deleted file mode 100644 index 77ef66b..0000000 Binary files a/B4A/Files/marker-rojo-29.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-3.png b/B4A/Files/marker-rojo-3.png deleted file mode 100644 index 481ed6d..0000000 Binary files a/B4A/Files/marker-rojo-3.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-30.png b/B4A/Files/marker-rojo-30.png deleted file mode 100644 index 0487006..0000000 Binary files a/B4A/Files/marker-rojo-30.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-31.png b/B4A/Files/marker-rojo-31.png deleted file mode 100644 index 7f6c2ec..0000000 Binary files a/B4A/Files/marker-rojo-31.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-32.png b/B4A/Files/marker-rojo-32.png deleted file mode 100644 index 630a62c..0000000 Binary files a/B4A/Files/marker-rojo-32.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-33.png b/B4A/Files/marker-rojo-33.png deleted file mode 100644 index a80ecda..0000000 Binary files a/B4A/Files/marker-rojo-33.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-34.png b/B4A/Files/marker-rojo-34.png deleted file mode 100644 index 1bcdaf4..0000000 Binary files a/B4A/Files/marker-rojo-34.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-35.png b/B4A/Files/marker-rojo-35.png deleted file mode 100644 index 5757e67..0000000 Binary files a/B4A/Files/marker-rojo-35.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-36.png b/B4A/Files/marker-rojo-36.png deleted file mode 100644 index f455e2a..0000000 Binary files a/B4A/Files/marker-rojo-36.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-37.png b/B4A/Files/marker-rojo-37.png deleted file mode 100644 index 2e9ab4f..0000000 Binary files a/B4A/Files/marker-rojo-37.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-38.png b/B4A/Files/marker-rojo-38.png deleted file mode 100644 index 23a83ce..0000000 Binary files a/B4A/Files/marker-rojo-38.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-39.png b/B4A/Files/marker-rojo-39.png deleted file mode 100644 index 3306d3b..0000000 Binary files a/B4A/Files/marker-rojo-39.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-4.png b/B4A/Files/marker-rojo-4.png deleted file mode 100644 index 7a104b3..0000000 Binary files a/B4A/Files/marker-rojo-4.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-40.png b/B4A/Files/marker-rojo-40.png deleted file mode 100644 index cbe0b39..0000000 Binary files a/B4A/Files/marker-rojo-40.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-41.png b/B4A/Files/marker-rojo-41.png deleted file mode 100644 index 9f06504..0000000 Binary files a/B4A/Files/marker-rojo-41.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-42.png b/B4A/Files/marker-rojo-42.png deleted file mode 100644 index c34f146..0000000 Binary files a/B4A/Files/marker-rojo-42.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-43.png b/B4A/Files/marker-rojo-43.png deleted file mode 100644 index 8579b75..0000000 Binary files a/B4A/Files/marker-rojo-43.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-44.png b/B4A/Files/marker-rojo-44.png deleted file mode 100644 index fe923a3..0000000 Binary files a/B4A/Files/marker-rojo-44.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-45.png b/B4A/Files/marker-rojo-45.png deleted file mode 100644 index d21b1ff..0000000 Binary files a/B4A/Files/marker-rojo-45.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-46.png b/B4A/Files/marker-rojo-46.png deleted file mode 100644 index e60a891..0000000 Binary files a/B4A/Files/marker-rojo-46.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-47.png b/B4A/Files/marker-rojo-47.png deleted file mode 100644 index b83f51e..0000000 Binary files a/B4A/Files/marker-rojo-47.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-48.png b/B4A/Files/marker-rojo-48.png deleted file mode 100644 index 2b94152..0000000 Binary files a/B4A/Files/marker-rojo-48.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-49.png b/B4A/Files/marker-rojo-49.png deleted file mode 100644 index a96c078..0000000 Binary files a/B4A/Files/marker-rojo-49.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-5.png b/B4A/Files/marker-rojo-5.png deleted file mode 100644 index 07edb89..0000000 Binary files a/B4A/Files/marker-rojo-5.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-50.png b/B4A/Files/marker-rojo-50.png deleted file mode 100644 index cc6cbea..0000000 Binary files a/B4A/Files/marker-rojo-50.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-51.png b/B4A/Files/marker-rojo-51.png deleted file mode 100644 index fb10bbe..0000000 Binary files a/B4A/Files/marker-rojo-51.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-52.png b/B4A/Files/marker-rojo-52.png deleted file mode 100644 index 6b91537..0000000 Binary files a/B4A/Files/marker-rojo-52.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-53.png b/B4A/Files/marker-rojo-53.png deleted file mode 100644 index 12d7d68..0000000 Binary files a/B4A/Files/marker-rojo-53.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-54.png b/B4A/Files/marker-rojo-54.png deleted file mode 100644 index 134857a..0000000 Binary files a/B4A/Files/marker-rojo-54.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-55.png b/B4A/Files/marker-rojo-55.png deleted file mode 100644 index a6448c7..0000000 Binary files a/B4A/Files/marker-rojo-55.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-56.png b/B4A/Files/marker-rojo-56.png deleted file mode 100644 index 13a83e2..0000000 Binary files a/B4A/Files/marker-rojo-56.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-57.png b/B4A/Files/marker-rojo-57.png deleted file mode 100644 index f78cbe9..0000000 Binary files a/B4A/Files/marker-rojo-57.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-58.png b/B4A/Files/marker-rojo-58.png deleted file mode 100644 index 3e0d74e..0000000 Binary files a/B4A/Files/marker-rojo-58.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-59.png b/B4A/Files/marker-rojo-59.png deleted file mode 100644 index f0b6893..0000000 Binary files a/B4A/Files/marker-rojo-59.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-6.png b/B4A/Files/marker-rojo-6.png deleted file mode 100644 index 59e4f11..0000000 Binary files a/B4A/Files/marker-rojo-6.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-60.png b/B4A/Files/marker-rojo-60.png deleted file mode 100644 index d43ae90..0000000 Binary files a/B4A/Files/marker-rojo-60.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-61.png b/B4A/Files/marker-rojo-61.png deleted file mode 100644 index 4357d6d..0000000 Binary files a/B4A/Files/marker-rojo-61.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-62.png b/B4A/Files/marker-rojo-62.png deleted file mode 100644 index 3c8b717..0000000 Binary files a/B4A/Files/marker-rojo-62.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-63.png b/B4A/Files/marker-rojo-63.png deleted file mode 100644 index 615904f..0000000 Binary files a/B4A/Files/marker-rojo-63.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-64.png b/B4A/Files/marker-rojo-64.png deleted file mode 100644 index d58fda6..0000000 Binary files a/B4A/Files/marker-rojo-64.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-65.png b/B4A/Files/marker-rojo-65.png deleted file mode 100644 index ec82963..0000000 Binary files a/B4A/Files/marker-rojo-65.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-66.png b/B4A/Files/marker-rojo-66.png deleted file mode 100644 index cdd6a90..0000000 Binary files a/B4A/Files/marker-rojo-66.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-67.png b/B4A/Files/marker-rojo-67.png deleted file mode 100644 index 426e4d3..0000000 Binary files a/B4A/Files/marker-rojo-67.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-68.png b/B4A/Files/marker-rojo-68.png deleted file mode 100644 index ba24d79..0000000 Binary files a/B4A/Files/marker-rojo-68.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-69.png b/B4A/Files/marker-rojo-69.png deleted file mode 100644 index 2241ba6..0000000 Binary files a/B4A/Files/marker-rojo-69.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-7.png b/B4A/Files/marker-rojo-7.png deleted file mode 100644 index c4d60f3..0000000 Binary files a/B4A/Files/marker-rojo-7.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-70.png b/B4A/Files/marker-rojo-70.png deleted file mode 100644 index 3c6b4fa..0000000 Binary files a/B4A/Files/marker-rojo-70.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-71.png b/B4A/Files/marker-rojo-71.png deleted file mode 100644 index b120276..0000000 Binary files a/B4A/Files/marker-rojo-71.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-72.png b/B4A/Files/marker-rojo-72.png deleted file mode 100644 index ca042e4..0000000 Binary files a/B4A/Files/marker-rojo-72.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-73.png b/B4A/Files/marker-rojo-73.png deleted file mode 100644 index 207c726..0000000 Binary files a/B4A/Files/marker-rojo-73.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-74.png b/B4A/Files/marker-rojo-74.png deleted file mode 100644 index 832476f..0000000 Binary files a/B4A/Files/marker-rojo-74.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-75.png b/B4A/Files/marker-rojo-75.png deleted file mode 100644 index ee95407..0000000 Binary files a/B4A/Files/marker-rojo-75.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-76.png b/B4A/Files/marker-rojo-76.png deleted file mode 100644 index eea3c80..0000000 Binary files a/B4A/Files/marker-rojo-76.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-77.png b/B4A/Files/marker-rojo-77.png deleted file mode 100644 index cc4b52f..0000000 Binary files a/B4A/Files/marker-rojo-77.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-78.png b/B4A/Files/marker-rojo-78.png deleted file mode 100644 index 2ca2aed..0000000 Binary files a/B4A/Files/marker-rojo-78.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-79.png b/B4A/Files/marker-rojo-79.png deleted file mode 100644 index 82b5d74..0000000 Binary files a/B4A/Files/marker-rojo-79.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-8.png b/B4A/Files/marker-rojo-8.png deleted file mode 100644 index 68b46ff..0000000 Binary files a/B4A/Files/marker-rojo-8.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-80.png b/B4A/Files/marker-rojo-80.png deleted file mode 100644 index e555061..0000000 Binary files a/B4A/Files/marker-rojo-80.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-81.png b/B4A/Files/marker-rojo-81.png deleted file mode 100644 index 0fbb379..0000000 Binary files a/B4A/Files/marker-rojo-81.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-82.png b/B4A/Files/marker-rojo-82.png deleted file mode 100644 index 832b635..0000000 Binary files a/B4A/Files/marker-rojo-82.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-83.png b/B4A/Files/marker-rojo-83.png deleted file mode 100644 index b9021a0..0000000 Binary files a/B4A/Files/marker-rojo-83.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-84.png b/B4A/Files/marker-rojo-84.png deleted file mode 100644 index 9dc88c5..0000000 Binary files a/B4A/Files/marker-rojo-84.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-85.png b/B4A/Files/marker-rojo-85.png deleted file mode 100644 index 6f49fdd..0000000 Binary files a/B4A/Files/marker-rojo-85.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-86.png b/B4A/Files/marker-rojo-86.png deleted file mode 100644 index 592e9ae..0000000 Binary files a/B4A/Files/marker-rojo-86.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-87.png b/B4A/Files/marker-rojo-87.png deleted file mode 100644 index 938aca9..0000000 Binary files a/B4A/Files/marker-rojo-87.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-88.png b/B4A/Files/marker-rojo-88.png deleted file mode 100644 index f93407f..0000000 Binary files a/B4A/Files/marker-rojo-88.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-89.png b/B4A/Files/marker-rojo-89.png deleted file mode 100644 index ddfc4cc..0000000 Binary files a/B4A/Files/marker-rojo-89.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-9.png b/B4A/Files/marker-rojo-9.png deleted file mode 100644 index 2f8d39c..0000000 Binary files a/B4A/Files/marker-rojo-9.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-90.png b/B4A/Files/marker-rojo-90.png deleted file mode 100644 index 24a52cf..0000000 Binary files a/B4A/Files/marker-rojo-90.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-91.png b/B4A/Files/marker-rojo-91.png deleted file mode 100644 index f45cce0..0000000 Binary files a/B4A/Files/marker-rojo-91.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-92.png b/B4A/Files/marker-rojo-92.png deleted file mode 100644 index 73c0ddc..0000000 Binary files a/B4A/Files/marker-rojo-92.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-93.png b/B4A/Files/marker-rojo-93.png deleted file mode 100644 index ad9499b..0000000 Binary files a/B4A/Files/marker-rojo-93.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-94.png b/B4A/Files/marker-rojo-94.png deleted file mode 100644 index 99c864d..0000000 Binary files a/B4A/Files/marker-rojo-94.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-95.png b/B4A/Files/marker-rojo-95.png deleted file mode 100644 index 0d0c2a7..0000000 Binary files a/B4A/Files/marker-rojo-95.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-96.png b/B4A/Files/marker-rojo-96.png deleted file mode 100644 index d08f85a..0000000 Binary files a/B4A/Files/marker-rojo-96.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-97.png b/B4A/Files/marker-rojo-97.png deleted file mode 100644 index 7645d01..0000000 Binary files a/B4A/Files/marker-rojo-97.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-98.png b/B4A/Files/marker-rojo-98.png deleted file mode 100644 index 9196062..0000000 Binary files a/B4A/Files/marker-rojo-98.png and /dev/null differ diff --git a/B4A/Files/marker-rojo-99.png b/B4A/Files/marker-rojo-99.png deleted file mode 100644 index 3fcb55d..0000000 Binary files a/B4A/Files/marker-rojo-99.png and /dev/null differ diff --git a/B4A/Files/marker-verde-0.png b/B4A/Files/marker-verde-0.png deleted file mode 100644 index 2ce1df5..0000000 Binary files a/B4A/Files/marker-verde-0.png and /dev/null differ diff --git a/B4A/Files/marker-verde-1.png b/B4A/Files/marker-verde-1.png deleted file mode 100644 index b317d43..0000000 Binary files a/B4A/Files/marker-verde-1.png and /dev/null differ diff --git a/B4A/Files/marker-verde-10.png b/B4A/Files/marker-verde-10.png deleted file mode 100644 index b9f6f61..0000000 Binary files a/B4A/Files/marker-verde-10.png and /dev/null differ diff --git a/B4A/Files/marker-verde-100.png b/B4A/Files/marker-verde-100.png deleted file mode 100644 index 985db2c..0000000 Binary files a/B4A/Files/marker-verde-100.png and /dev/null differ diff --git a/B4A/Files/marker-verde-11.png b/B4A/Files/marker-verde-11.png deleted file mode 100644 index 331a0f1..0000000 Binary files a/B4A/Files/marker-verde-11.png and /dev/null differ diff --git a/B4A/Files/marker-verde-12.png b/B4A/Files/marker-verde-12.png deleted file mode 100644 index 99f39c4..0000000 Binary files a/B4A/Files/marker-verde-12.png and /dev/null differ diff --git a/B4A/Files/marker-verde-13.png b/B4A/Files/marker-verde-13.png deleted file mode 100644 index 80d8d05..0000000 Binary files a/B4A/Files/marker-verde-13.png and /dev/null differ diff --git a/B4A/Files/marker-verde-14.png b/B4A/Files/marker-verde-14.png deleted file mode 100644 index 3a161ee..0000000 Binary files a/B4A/Files/marker-verde-14.png and /dev/null differ diff --git a/B4A/Files/marker-verde-15.png b/B4A/Files/marker-verde-15.png deleted file mode 100644 index d1bc6fd..0000000 Binary files a/B4A/Files/marker-verde-15.png and /dev/null differ diff --git a/B4A/Files/marker-verde-16.png b/B4A/Files/marker-verde-16.png deleted file mode 100644 index 18f2133..0000000 Binary files a/B4A/Files/marker-verde-16.png and /dev/null differ diff --git a/B4A/Files/marker-verde-17.png b/B4A/Files/marker-verde-17.png deleted file mode 100644 index e44ec2c..0000000 Binary files a/B4A/Files/marker-verde-17.png and /dev/null differ diff --git a/B4A/Files/marker-verde-18.png b/B4A/Files/marker-verde-18.png deleted file mode 100644 index eef4bab..0000000 Binary files a/B4A/Files/marker-verde-18.png and /dev/null differ diff --git a/B4A/Files/marker-verde-19.png b/B4A/Files/marker-verde-19.png deleted file mode 100644 index 999b2db..0000000 Binary files a/B4A/Files/marker-verde-19.png and /dev/null differ diff --git a/B4A/Files/marker-verde-2.png b/B4A/Files/marker-verde-2.png deleted file mode 100644 index 61ab429..0000000 Binary files a/B4A/Files/marker-verde-2.png and /dev/null differ diff --git a/B4A/Files/marker-verde-20.png b/B4A/Files/marker-verde-20.png deleted file mode 100644 index 2c40e51..0000000 Binary files a/B4A/Files/marker-verde-20.png and /dev/null differ diff --git a/B4A/Files/marker-verde-21.png b/B4A/Files/marker-verde-21.png deleted file mode 100644 index 125c182..0000000 Binary files a/B4A/Files/marker-verde-21.png and /dev/null differ diff --git a/B4A/Files/marker-verde-22.png b/B4A/Files/marker-verde-22.png deleted file mode 100644 index 192e285..0000000 Binary files a/B4A/Files/marker-verde-22.png and /dev/null differ diff --git a/B4A/Files/marker-verde-23.png b/B4A/Files/marker-verde-23.png deleted file mode 100644 index 217312d..0000000 Binary files a/B4A/Files/marker-verde-23.png and /dev/null differ diff --git a/B4A/Files/marker-verde-24.png b/B4A/Files/marker-verde-24.png deleted file mode 100644 index e0e2039..0000000 Binary files a/B4A/Files/marker-verde-24.png and /dev/null differ diff --git a/B4A/Files/marker-verde-25.png b/B4A/Files/marker-verde-25.png deleted file mode 100644 index 25590ce..0000000 Binary files a/B4A/Files/marker-verde-25.png and /dev/null differ diff --git a/B4A/Files/marker-verde-26.png b/B4A/Files/marker-verde-26.png deleted file mode 100644 index 119e92a..0000000 Binary files a/B4A/Files/marker-verde-26.png and /dev/null differ diff --git a/B4A/Files/marker-verde-27.png b/B4A/Files/marker-verde-27.png deleted file mode 100644 index 48bf7c7..0000000 Binary files a/B4A/Files/marker-verde-27.png and /dev/null differ diff --git a/B4A/Files/marker-verde-28.png b/B4A/Files/marker-verde-28.png deleted file mode 100644 index dceee5a..0000000 Binary files a/B4A/Files/marker-verde-28.png and /dev/null differ diff --git a/B4A/Files/marker-verde-29.png b/B4A/Files/marker-verde-29.png deleted file mode 100644 index ae4cbdf..0000000 Binary files a/B4A/Files/marker-verde-29.png and /dev/null differ diff --git a/B4A/Files/marker-verde-3.png b/B4A/Files/marker-verde-3.png deleted file mode 100644 index bc79da4..0000000 Binary files a/B4A/Files/marker-verde-3.png and /dev/null differ diff --git a/B4A/Files/marker-verde-30.png b/B4A/Files/marker-verde-30.png deleted file mode 100644 index fcaa4e0..0000000 Binary files a/B4A/Files/marker-verde-30.png and /dev/null differ diff --git a/B4A/Files/marker-verde-31.png b/B4A/Files/marker-verde-31.png deleted file mode 100644 index c8dd474..0000000 Binary files a/B4A/Files/marker-verde-31.png and /dev/null differ diff --git a/B4A/Files/marker-verde-32.png b/B4A/Files/marker-verde-32.png deleted file mode 100644 index f491032..0000000 Binary files a/B4A/Files/marker-verde-32.png and /dev/null differ diff --git a/B4A/Files/marker-verde-33.png b/B4A/Files/marker-verde-33.png deleted file mode 100644 index e9045fb..0000000 Binary files a/B4A/Files/marker-verde-33.png and /dev/null differ diff --git a/B4A/Files/marker-verde-34.png b/B4A/Files/marker-verde-34.png deleted file mode 100644 index 90500f4..0000000 Binary files a/B4A/Files/marker-verde-34.png and /dev/null differ diff --git a/B4A/Files/marker-verde-35.png b/B4A/Files/marker-verde-35.png deleted file mode 100644 index 0aa922d..0000000 Binary files a/B4A/Files/marker-verde-35.png and /dev/null differ diff --git a/B4A/Files/marker-verde-36.png b/B4A/Files/marker-verde-36.png deleted file mode 100644 index a295437..0000000 Binary files a/B4A/Files/marker-verde-36.png and /dev/null differ diff --git a/B4A/Files/marker-verde-37.png b/B4A/Files/marker-verde-37.png deleted file mode 100644 index fac6931..0000000 Binary files a/B4A/Files/marker-verde-37.png and /dev/null differ diff --git a/B4A/Files/marker-verde-38.png b/B4A/Files/marker-verde-38.png deleted file mode 100644 index bb0eff1..0000000 Binary files a/B4A/Files/marker-verde-38.png and /dev/null differ diff --git a/B4A/Files/marker-verde-39.png b/B4A/Files/marker-verde-39.png deleted file mode 100644 index ba3ca5d..0000000 Binary files a/B4A/Files/marker-verde-39.png and /dev/null differ diff --git a/B4A/Files/marker-verde-4.png b/B4A/Files/marker-verde-4.png deleted file mode 100644 index 4d4c268..0000000 Binary files a/B4A/Files/marker-verde-4.png and /dev/null differ diff --git a/B4A/Files/marker-verde-40.png b/B4A/Files/marker-verde-40.png deleted file mode 100644 index b3f4dd2..0000000 Binary files a/B4A/Files/marker-verde-40.png and /dev/null differ diff --git a/B4A/Files/marker-verde-41.png b/B4A/Files/marker-verde-41.png deleted file mode 100644 index f3703fa..0000000 Binary files a/B4A/Files/marker-verde-41.png and /dev/null differ diff --git a/B4A/Files/marker-verde-42.png b/B4A/Files/marker-verde-42.png deleted file mode 100644 index 290e787..0000000 Binary files a/B4A/Files/marker-verde-42.png and /dev/null differ diff --git a/B4A/Files/marker-verde-43.png b/B4A/Files/marker-verde-43.png deleted file mode 100644 index b6fc701..0000000 Binary files a/B4A/Files/marker-verde-43.png and /dev/null differ diff --git a/B4A/Files/marker-verde-44.png b/B4A/Files/marker-verde-44.png deleted file mode 100644 index fd600a8..0000000 Binary files a/B4A/Files/marker-verde-44.png and /dev/null differ diff --git a/B4A/Files/marker-verde-45.png b/B4A/Files/marker-verde-45.png deleted file mode 100644 index 32608e4..0000000 Binary files a/B4A/Files/marker-verde-45.png and /dev/null differ diff --git a/B4A/Files/marker-verde-46.png b/B4A/Files/marker-verde-46.png deleted file mode 100644 index c144603..0000000 Binary files a/B4A/Files/marker-verde-46.png and /dev/null differ diff --git a/B4A/Files/marker-verde-47.png b/B4A/Files/marker-verde-47.png deleted file mode 100644 index 0df3c65..0000000 Binary files a/B4A/Files/marker-verde-47.png and /dev/null differ diff --git a/B4A/Files/marker-verde-48.png b/B4A/Files/marker-verde-48.png deleted file mode 100644 index 63fda42..0000000 Binary files a/B4A/Files/marker-verde-48.png and /dev/null differ diff --git a/B4A/Files/marker-verde-49.png b/B4A/Files/marker-verde-49.png deleted file mode 100644 index e86d131..0000000 Binary files a/B4A/Files/marker-verde-49.png and /dev/null differ diff --git a/B4A/Files/marker-verde-5.png b/B4A/Files/marker-verde-5.png deleted file mode 100644 index 0cb0d02..0000000 Binary files a/B4A/Files/marker-verde-5.png and /dev/null differ diff --git a/B4A/Files/marker-verde-50.png b/B4A/Files/marker-verde-50.png deleted file mode 100644 index fea9ebf..0000000 Binary files a/B4A/Files/marker-verde-50.png and /dev/null differ diff --git a/B4A/Files/marker-verde-51.png b/B4A/Files/marker-verde-51.png deleted file mode 100644 index c25429b..0000000 Binary files a/B4A/Files/marker-verde-51.png and /dev/null differ diff --git a/B4A/Files/marker-verde-52.png b/B4A/Files/marker-verde-52.png deleted file mode 100644 index cb0022c..0000000 Binary files a/B4A/Files/marker-verde-52.png and /dev/null differ diff --git a/B4A/Files/marker-verde-53.png b/B4A/Files/marker-verde-53.png deleted file mode 100644 index a67f9d9..0000000 Binary files a/B4A/Files/marker-verde-53.png and /dev/null differ diff --git a/B4A/Files/marker-verde-54.png b/B4A/Files/marker-verde-54.png deleted file mode 100644 index cf040c7..0000000 Binary files a/B4A/Files/marker-verde-54.png and /dev/null differ diff --git a/B4A/Files/marker-verde-55.png b/B4A/Files/marker-verde-55.png deleted file mode 100644 index 1d1557f..0000000 Binary files a/B4A/Files/marker-verde-55.png and /dev/null differ diff --git a/B4A/Files/marker-verde-56.png b/B4A/Files/marker-verde-56.png deleted file mode 100644 index 8a84e20..0000000 Binary files a/B4A/Files/marker-verde-56.png and /dev/null differ diff --git a/B4A/Files/marker-verde-57.png b/B4A/Files/marker-verde-57.png deleted file mode 100644 index 0fdff90..0000000 Binary files a/B4A/Files/marker-verde-57.png and /dev/null differ diff --git a/B4A/Files/marker-verde-58.png b/B4A/Files/marker-verde-58.png deleted file mode 100644 index 961d5bc..0000000 Binary files a/B4A/Files/marker-verde-58.png and /dev/null differ diff --git a/B4A/Files/marker-verde-59.png b/B4A/Files/marker-verde-59.png deleted file mode 100644 index 760e66b..0000000 Binary files a/B4A/Files/marker-verde-59.png and /dev/null differ diff --git a/B4A/Files/marker-verde-6.png b/B4A/Files/marker-verde-6.png deleted file mode 100644 index fdf72ff..0000000 Binary files a/B4A/Files/marker-verde-6.png and /dev/null differ diff --git a/B4A/Files/marker-verde-60.png b/B4A/Files/marker-verde-60.png deleted file mode 100644 index fdc2b5a..0000000 Binary files a/B4A/Files/marker-verde-60.png and /dev/null differ diff --git a/B4A/Files/marker-verde-61.png b/B4A/Files/marker-verde-61.png deleted file mode 100644 index b7a00de..0000000 Binary files a/B4A/Files/marker-verde-61.png and /dev/null differ diff --git a/B4A/Files/marker-verde-62.png b/B4A/Files/marker-verde-62.png deleted file mode 100644 index c07d103..0000000 Binary files a/B4A/Files/marker-verde-62.png and /dev/null differ diff --git a/B4A/Files/marker-verde-63.png b/B4A/Files/marker-verde-63.png deleted file mode 100644 index fdb84e0..0000000 Binary files a/B4A/Files/marker-verde-63.png and /dev/null differ diff --git a/B4A/Files/marker-verde-64.png b/B4A/Files/marker-verde-64.png deleted file mode 100644 index 509b955..0000000 Binary files a/B4A/Files/marker-verde-64.png and /dev/null differ diff --git a/B4A/Files/marker-verde-65.png b/B4A/Files/marker-verde-65.png deleted file mode 100644 index 646a789..0000000 Binary files a/B4A/Files/marker-verde-65.png and /dev/null differ diff --git a/B4A/Files/marker-verde-66.png b/B4A/Files/marker-verde-66.png deleted file mode 100644 index 8765de9..0000000 Binary files a/B4A/Files/marker-verde-66.png and /dev/null differ diff --git a/B4A/Files/marker-verde-67.png b/B4A/Files/marker-verde-67.png deleted file mode 100644 index 7683549..0000000 Binary files a/B4A/Files/marker-verde-67.png and /dev/null differ diff --git a/B4A/Files/marker-verde-68.png b/B4A/Files/marker-verde-68.png deleted file mode 100644 index 40baa6c..0000000 Binary files a/B4A/Files/marker-verde-68.png and /dev/null differ diff --git a/B4A/Files/marker-verde-69.png b/B4A/Files/marker-verde-69.png deleted file mode 100644 index 8964a67..0000000 Binary files a/B4A/Files/marker-verde-69.png and /dev/null differ diff --git a/B4A/Files/marker-verde-7.png b/B4A/Files/marker-verde-7.png deleted file mode 100644 index d3d1c74..0000000 Binary files a/B4A/Files/marker-verde-7.png and /dev/null differ diff --git a/B4A/Files/marker-verde-70.png b/B4A/Files/marker-verde-70.png deleted file mode 100644 index dbe22fc..0000000 Binary files a/B4A/Files/marker-verde-70.png and /dev/null differ diff --git a/B4A/Files/marker-verde-71.png b/B4A/Files/marker-verde-71.png deleted file mode 100644 index 22ce3b3..0000000 Binary files a/B4A/Files/marker-verde-71.png and /dev/null differ diff --git a/B4A/Files/marker-verde-72.png b/B4A/Files/marker-verde-72.png deleted file mode 100644 index e1da10e..0000000 Binary files a/B4A/Files/marker-verde-72.png and /dev/null differ diff --git a/B4A/Files/marker-verde-73.png b/B4A/Files/marker-verde-73.png deleted file mode 100644 index b13439d..0000000 Binary files a/B4A/Files/marker-verde-73.png and /dev/null differ diff --git a/B4A/Files/marker-verde-74.png b/B4A/Files/marker-verde-74.png deleted file mode 100644 index 21cdb8a..0000000 Binary files a/B4A/Files/marker-verde-74.png and /dev/null differ diff --git a/B4A/Files/marker-verde-75.png b/B4A/Files/marker-verde-75.png deleted file mode 100644 index 8ac9232..0000000 Binary files a/B4A/Files/marker-verde-75.png and /dev/null differ diff --git a/B4A/Files/marker-verde-76.png b/B4A/Files/marker-verde-76.png deleted file mode 100644 index 619484b..0000000 Binary files a/B4A/Files/marker-verde-76.png and /dev/null differ diff --git a/B4A/Files/marker-verde-77.png b/B4A/Files/marker-verde-77.png deleted file mode 100644 index df97587..0000000 Binary files a/B4A/Files/marker-verde-77.png and /dev/null differ diff --git a/B4A/Files/marker-verde-78.png b/B4A/Files/marker-verde-78.png deleted file mode 100644 index b2014f1..0000000 Binary files a/B4A/Files/marker-verde-78.png and /dev/null differ diff --git a/B4A/Files/marker-verde-79.png b/B4A/Files/marker-verde-79.png deleted file mode 100644 index 3eec8de..0000000 Binary files a/B4A/Files/marker-verde-79.png and /dev/null differ diff --git a/B4A/Files/marker-verde-8.png b/B4A/Files/marker-verde-8.png deleted file mode 100644 index 84353cd..0000000 Binary files a/B4A/Files/marker-verde-8.png and /dev/null differ diff --git a/B4A/Files/marker-verde-80.png b/B4A/Files/marker-verde-80.png deleted file mode 100644 index 8b97221..0000000 Binary files a/B4A/Files/marker-verde-80.png and /dev/null differ diff --git a/B4A/Files/marker-verde-81.png b/B4A/Files/marker-verde-81.png deleted file mode 100644 index ebd400b..0000000 Binary files a/B4A/Files/marker-verde-81.png and /dev/null differ diff --git a/B4A/Files/marker-verde-82.png b/B4A/Files/marker-verde-82.png deleted file mode 100644 index 680bd4f..0000000 Binary files a/B4A/Files/marker-verde-82.png and /dev/null differ diff --git a/B4A/Files/marker-verde-83.png b/B4A/Files/marker-verde-83.png deleted file mode 100644 index 1a8acb4..0000000 Binary files a/B4A/Files/marker-verde-83.png and /dev/null differ diff --git a/B4A/Files/marker-verde-84.png b/B4A/Files/marker-verde-84.png deleted file mode 100644 index f4bc40e..0000000 Binary files a/B4A/Files/marker-verde-84.png and /dev/null differ diff --git a/B4A/Files/marker-verde-85.png b/B4A/Files/marker-verde-85.png deleted file mode 100644 index 1143b40..0000000 Binary files a/B4A/Files/marker-verde-85.png and /dev/null differ diff --git a/B4A/Files/marker-verde-86.png b/B4A/Files/marker-verde-86.png deleted file mode 100644 index 2f4aaf8..0000000 Binary files a/B4A/Files/marker-verde-86.png and /dev/null differ diff --git a/B4A/Files/marker-verde-87.png b/B4A/Files/marker-verde-87.png deleted file mode 100644 index e518310..0000000 Binary files a/B4A/Files/marker-verde-87.png and /dev/null differ diff --git a/B4A/Files/marker-verde-88.png b/B4A/Files/marker-verde-88.png deleted file mode 100644 index d2012fc..0000000 Binary files a/B4A/Files/marker-verde-88.png and /dev/null differ diff --git a/B4A/Files/marker-verde-89.png b/B4A/Files/marker-verde-89.png deleted file mode 100644 index 5fd8701..0000000 Binary files a/B4A/Files/marker-verde-89.png and /dev/null differ diff --git a/B4A/Files/marker-verde-9.png b/B4A/Files/marker-verde-9.png deleted file mode 100644 index e499aff..0000000 Binary files a/B4A/Files/marker-verde-9.png and /dev/null differ diff --git a/B4A/Files/marker-verde-90.png b/B4A/Files/marker-verde-90.png deleted file mode 100644 index 723b4f5..0000000 Binary files a/B4A/Files/marker-verde-90.png and /dev/null differ diff --git a/B4A/Files/marker-verde-91.png b/B4A/Files/marker-verde-91.png deleted file mode 100644 index 015e858..0000000 Binary files a/B4A/Files/marker-verde-91.png and /dev/null differ diff --git a/B4A/Files/marker-verde-92.png b/B4A/Files/marker-verde-92.png deleted file mode 100644 index c2d59d0..0000000 Binary files a/B4A/Files/marker-verde-92.png and /dev/null differ diff --git a/B4A/Files/marker-verde-93.png b/B4A/Files/marker-verde-93.png deleted file mode 100644 index f3128b4..0000000 Binary files a/B4A/Files/marker-verde-93.png and /dev/null differ diff --git a/B4A/Files/marker-verde-94.png b/B4A/Files/marker-verde-94.png deleted file mode 100644 index 38acfdb..0000000 Binary files a/B4A/Files/marker-verde-94.png and /dev/null differ diff --git a/B4A/Files/marker-verde-95.png b/B4A/Files/marker-verde-95.png deleted file mode 100644 index 4d1340a..0000000 Binary files a/B4A/Files/marker-verde-95.png and /dev/null differ diff --git a/B4A/Files/marker-verde-96.png b/B4A/Files/marker-verde-96.png deleted file mode 100644 index c0f2a0d..0000000 Binary files a/B4A/Files/marker-verde-96.png and /dev/null differ diff --git a/B4A/Files/marker-verde-97.png b/B4A/Files/marker-verde-97.png deleted file mode 100644 index a4e1612..0000000 Binary files a/B4A/Files/marker-verde-97.png and /dev/null differ diff --git a/B4A/Files/marker-verde-98.png b/B4A/Files/marker-verde-98.png deleted file mode 100644 index 78e0199..0000000 Binary files a/B4A/Files/marker-verde-98.png and /dev/null differ diff --git a/B4A/Files/marker-verde-99.png b/B4A/Files/marker-verde-99.png deleted file mode 100644 index 6628e9a..0000000 Binary files a/B4A/Files/marker-verde-99.png and /dev/null differ diff --git a/B4A/Files/mas-azul-red1.png b/B4A/Files/mas-azul-red1.png deleted file mode 100644 index c17f050..0000000 Binary files a/B4A/Files/mas-azul-red1.png and /dev/null differ diff --git a/B4A/Files/menosred.png b/B4A/Files/menosred.png deleted file mode 100644 index f13f1fd..0000000 Binary files a/B4A/Files/menosred.png and /dev/null differ diff --git a/B4A/Files/nota.bal b/B4A/Files/nota.bal deleted file mode 100644 index 3399587..0000000 Binary files a/B4A/Files/nota.bal and /dev/null differ diff --git a/B4A/Files/noventa.bal b/B4A/Files/noventa.bal deleted file mode 100644 index 4e8d932..0000000 Binary files a/B4A/Files/noventa.bal and /dev/null differ diff --git a/B4A/Files/nuevocliente.bal b/B4A/Files/nuevocliente.bal deleted file mode 100644 index b2992c6..0000000 Binary files a/B4A/Files/nuevocliente.bal and /dev/null differ diff --git a/B4A/Files/palomita_verde.png b/B4A/Files/palomita_verde.png deleted file mode 100644 index f8e11e6..0000000 Binary files a/B4A/Files/palomita_verde.png and /dev/null differ diff --git a/B4A/Files/pedido.bal b/B4A/Files/pedido.bal deleted file mode 100644 index ed7d7ef..0000000 Binary files a/B4A/Files/pedido.bal and /dev/null differ diff --git a/B4A/Files/planfia_logo.png b/B4A/Files/planfia_logo.png deleted file mode 100644 index 680ffd0..0000000 Binary files a/B4A/Files/planfia_logo.png and /dev/null differ diff --git a/B4A/Files/planfia_logo_old.png b/B4A/Files/planfia_logo_old.png deleted file mode 100644 index 4adb130..0000000 Binary files a/B4A/Files/planfia_logo_old.png and /dev/null differ diff --git a/B4A/Files/planfia_logo_old2.png b/B4A/Files/planfia_logo_old2.png deleted file mode 100644 index 316f337..0000000 Binary files a/B4A/Files/planfia_logo_old2.png and /dev/null differ diff --git a/B4A/Files/principal.bal b/B4A/Files/principal.bal deleted file mode 100644 index 2fe5b96..0000000 Binary files a/B4A/Files/principal.bal and /dev/null differ diff --git a/B4A/Files/productos.bal b/B4A/Files/productos.bal deleted file mode 100644 index c146fd6..0000000 Binary files a/B4A/Files/productos.bal and /dev/null differ diff --git a/B4A/Files/profina.jpg b/B4A/Files/profina.jpg deleted file mode 100644 index f092f0f..0000000 Binary files a/B4A/Files/profina.jpg and /dev/null differ diff --git a/B4A/Files/profina.png b/B4A/Files/profina.png deleted file mode 100644 index d307055..0000000 Binary files a/B4A/Files/profina.png and /dev/null differ diff --git a/B4A/Files/proitem.bal b/B4A/Files/proitem.bal deleted file mode 100644 index 6075883..0000000 Binary files a/B4A/Files/proitem.bal and /dev/null differ diff --git a/B4A/Files/qr.bal b/B4A/Files/qr.bal deleted file mode 100644 index 0faca59..0000000 Binary files a/B4A/Files/qr.bal and /dev/null differ diff --git a/B4A/Files/rechazo.jpg b/B4A/Files/rechazo.jpg deleted file mode 100644 index afb7ed3..0000000 Binary files a/B4A/Files/rechazo.jpg and /dev/null differ diff --git a/B4A/Files/rojo.png b/B4A/Files/rojo.png deleted file mode 100644 index 81d363d..0000000 Binary files a/B4A/Files/rojo.png and /dev/null differ diff --git a/B4A/Files/salma.jpg b/B4A/Files/salma.jpg deleted file mode 100644 index 8308c95..0000000 Binary files a/B4A/Files/salma.jpg and /dev/null differ diff --git a/B4A/Files/salma.png b/B4A/Files/salma.png deleted file mode 100644 index 00cb434..0000000 Binary files a/B4A/Files/salma.png and /dev/null differ diff --git a/B4A/Files/senial.jpg b/B4A/Files/senial.jpg deleted file mode 100644 index a758065..0000000 Binary files a/B4A/Files/senial.jpg and /dev/null differ diff --git a/B4A/Files/sync.png b/B4A/Files/sync.png deleted file mode 100644 index ff7d32e..0000000 Binary files a/B4A/Files/sync.png and /dev/null differ diff --git a/B4A/Files/tache_rojo.png b/B4A/Files/tache_rojo.png deleted file mode 100644 index 2f5f59d..0000000 Binary files a/B4A/Files/tache_rojo.png and /dev/null differ diff --git a/B4A/Files/telefonos.bal b/B4A/Files/telefonos.bal deleted file mode 100644 index 1f048f6..0000000 Binary files a/B4A/Files/telefonos.bal and /dev/null differ diff --git a/B4A/Files/ticketsdia.bal b/B4A/Files/ticketsdia.bal deleted file mode 100644 index bdd4cac..0000000 Binary files a/B4A/Files/ticketsdia.bal and /dev/null differ diff --git a/B4A/Files/tiendita.jpg b/B4A/Files/tiendita.jpg deleted file mode 100644 index 5f52563..0000000 Binary files a/B4A/Files/tiendita.jpg and /dev/null differ diff --git a/B4A/Files/transporte.png b/B4A/Files/transporte.png deleted file mode 100644 index e03cfc0..0000000 Binary files a/B4A/Files/transporte.png and /dev/null differ diff --git a/B4A/Files/verde.png b/B4A/Files/verde.png deleted file mode 100644 index 59edded..0000000 Binary files a/B4A/Files/verde.png and /dev/null differ diff --git a/B4A/Files/vista1.png b/B4A/Files/vista1.png deleted file mode 100644 index 9de6491..0000000 Binary files a/B4A/Files/vista1.png and /dev/null differ diff --git a/B4A/Files/vista2.png b/B4A/Files/vista2.png deleted file mode 100644 index ba7da40..0000000 Binary files a/B4A/Files/vista2.png and /dev/null differ diff --git a/B4A/Files/vista3.png b/B4A/Files/vista3.png deleted file mode 100644 index cb02c91..0000000 Binary files a/B4A/Files/vista3.png and /dev/null differ diff --git a/B4A/Files/vista4.png b/B4A/Files/vista4.png deleted file mode 100644 index 5331963..0000000 Binary files a/B4A/Files/vista4.png and /dev/null differ diff --git a/B4A/Files/whatsapp image 2022-11-17 at 11.50.59 am.jpg b/B4A/Files/whatsapp image 2022-11-17 at 11.50.59 am.jpg deleted file mode 100644 index 03a496a..0000000 Binary files a/B4A/Files/whatsapp image 2022-11-17 at 11.50.59 am.jpg and /dev/null differ diff --git a/B4A/Files/whatsapp.png b/B4A/Files/whatsapp.png deleted file mode 100644 index 9fe9a80..0000000 Binary files a/B4A/Files/whatsapp.png and /dev/null differ diff --git a/B4A/Files/whatstel.png b/B4A/Files/whatstel.png deleted file mode 100644 index 314da67..0000000 Binary files a/B4A/Files/whatstel.png and /dev/null differ diff --git a/B4A/HttpUtils2Service.bas b/B4A/HttpUtils2Service.bas deleted file mode 100644 index 0a01215..0000000 --- a/B4A/HttpUtils2Service.bas +++ /dev/null @@ -1,86 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Service -Version=5.5 -@EndOfDesignText@ -#Region Module Attributes - #StartAtBoot: False -#End Region - -'Modified version of HttpUtils2 -'Service module -Sub Process_Globals - Private hc As OkHttpClient - Private TaskIdToJob As Map - Public TempFolder As String - Private taskCounter As Int -End Sub - -Sub Service_Create - TempFolder = File.DirInternalCache - hc.Initialize("hc") - TaskIdToJob.Initialize -End Sub - -Sub Service_Start (StartingIntent As Intent) - -End Sub - -Sub Service_Destroy - -End Sub - -Public Sub SubmitJob(job As HttpJob) As Int - taskCounter = taskCounter + 1 - TaskIdToJob.Put(taskCounter, job) - If job.Username <> "" And job.Password <> "" Then - hc.ExecuteCredentials(job.GetRequest, taskCounter, job.Username, job.Password) - Else - hc.Execute(job.GetRequest, taskCounter) - End If - Return taskCounter -End Sub - -Sub hc_ResponseSuccess (Response As OkHttpResponse, TaskId As Int) - ' ********** Modified code ************* - Dim cs As CountingOutputStream - cs.Initialize(File.OpenOutput(TempFolder, TaskId, False)) - Dim j As HttpJob = TaskIdToJob.Get(TaskId) - Dim jt As JobTag = j.Tag - jt.CountingStream = cs - jt.Total = Response.ContentLength - If jt.Data.url = "" Then - Log("Job cancelled before downloaded started") - cs.Close - End If - Response.GetAsynchronously("response", cs , _ - True, TaskId) - '************************************** -End Sub - -Sub Response_StreamFinish (Success As Boolean, TaskId As Int) - If Success Then - CompleteJob(TaskId, Success, "") - Else - CompleteJob(TaskId, Success, LastException.Message) - End If -End Sub - -Sub hc_ResponseError (Response As OkHttpResponse, Reason As String, StatusCode As Int, TaskId As Int) - If Response <> Null Then - Log(Response.ErrorResponse) - Response.Release - End If - CompleteJob(TaskId, False, Reason) -End Sub - -Sub CompleteJob(TaskId As Int, success As Boolean, errorMessage As String) - Dim job As HttpJob - job = TaskIdToJob.Get(TaskId) - TaskIdToJob.Remove(TaskId) - job.success = success - job.errorMessage = errorMessage - job.Complete(TaskId) -End Sub - diff --git a/B4A/KelloggsV3.b4a b/B4A/KelloggsV3.b4a deleted file mode 100644 index 52b2156..0000000 --- a/B4A/KelloggsV3.b4a +++ /dev/null @@ -1,236 +0,0 @@ -Build1=Default,kelloggsV2.keymon.lat,HU2_PUBLIC -File1=alcancia.png -File10=durakelo.png -File11=durakelo1.png -File12=engrane.jpg -File13=engrane.png -File14=fondo_kmt.jpg -File15=foto.bal -File16=historico.bal -File17=INVENTARIO (1).jpg -File18=INVENTARIO.jpg -File19=inventario.PNG -File2=alert2.png -File20=itembuttonblue.png -File21=kelloggs.png -File22=login.bal -File23=logo2.png -File24=MainPage.bal -File25=Malo.jpg -File26=mapas.bal -File27=mas-azul-red1.png -File28=menosred.png -File29=nota.bal -File3=alerta_amarilla.png -File30=noventa.bal -File31=nuevocliente.bal -File32=palomita_verde.png -File33=planfia_logo.png -File34=principal.bal -File35=productos.bal -File36=profina.jpg -File37=proitem.bal -File38=rechazo.jpg -File39=salma.jpg -File4=BLACNCO.jpg -File40=senial.jpg -File41=sync.png -File42=ticketsDia.bal -File43=Tiendita.jpg -File44=transporte.png -File45=vista1.png -File46=vista2.png -File47=vista3.png -File48=vista4.png -File49=WhatsApp Image 2022-11-17 at 11.50.59 AM.jpg -File5=carrito.png -File50=whatsapp.png -File51=WHATSTEL.png -File6=checklist.bal -File7=checks.bal -File8=cliente.bal -File9=clientes.bal -FileGroup1=Default Group -FileGroup10=Default Group -FileGroup11=Default Group -FileGroup12=Default Group -FileGroup13=Default Group -FileGroup14=Default Group -FileGroup15=Default Group -FileGroup16=Default Group -FileGroup17=Default Group -FileGroup18=Default Group -FileGroup19=Default Group -FileGroup2=Default Group -FileGroup20=Default Group -FileGroup21=Default Group -FileGroup22=Default Group -FileGroup23=Default Group -FileGroup24=Default Group -FileGroup25=Default Group -FileGroup26=Default Group -FileGroup27=Default Group -FileGroup28=Default Group -FileGroup29=Default Group -FileGroup3=Default Group -FileGroup30=Default Group -FileGroup31=Default Group -FileGroup32=Default Group -FileGroup33=Default Group -FileGroup34=Default Group -FileGroup35=Default Group -FileGroup36=Default Group -FileGroup37=Default Group -FileGroup38=Default Group -FileGroup39=Default Group -FileGroup4=Default Group -FileGroup40=Default Group -FileGroup41=Default Group -FileGroup42=Default Group -FileGroup43=Default Group -FileGroup44=Default Group -FileGroup45=Default Group -FileGroup46=Default Group -FileGroup47=Default Group -FileGroup48=Default Group -FileGroup49=Default Group -FileGroup5=Default Group -FileGroup50=Default Group -FileGroup51=Default Group -FileGroup6=Default Group -FileGroup7=Default Group -FileGroup8=Default Group -FileGroup9=Default Group -Group=Default Group -Library1=appupdating -Library10=googlemaps -Library11=googlemapsextras -Library12=gps -Library13=ime -Library14=json -Library15=okhttputils2 -Library16=pdfium -Library17=phone -Library18=randomaccessfile -Library19=reflection -Library2=b4xpages -Library20=runtimepermissions -Library21=serial -Library22=sql -Library23=stringutils -Library24=togglelibrary -Library25=websocket -Library26=xui -Library27=zxing_scanner -Library28=xcustomlistview -Library3=baqrcode -Library4=bitmapcreator -Library5=byteconverter -Library6=camera -Library7=contentresolver -Library8=core -Library9=fusedlocationprovider -ManifestCode='This code will be applied to the manifest file during compilation.~\n~'You do not need to modify it in most cases.~\n~'See this link for for more information: https://www.b4x.com/forum/showthread.php?p=78136~\n~AddManifestText(~\n~~\n~)~\n~SetApplicationAttribute(android:icon, "@drawable/icon")~\n~SetApplicationAttribute(android:label, "$LABEL$")~\n~CreateResourceFromFile(Macro, Themes.LightTheme)~\n~'End of default text.~\n~~\n~AddApplicationText(~\n~)~\n~'Set activity to Landscape~\n~SetActivityAttribute(foto, android:screenOrientation, "landscape")~\n~AddApplicationText(~\n~~\n~ ~\n~)~\n~AddManifestText(~\n~~\n~)~\n~'''' para el teclado~\n~ SetActivityAttribute(main, android:windowSoftInputMode, adjustResize|stateHidden)~\n~ SetApplicationAttribute(android:allowBackup, "false")~\n~ SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~ ~\n~ AddManifestText(~\n~~\n~)~\n~''CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ 'End of default text.~\n~ ~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~ AddManifestText(~\n~~\n~)~\n~AddPermission(android.permission.ACCESS_BACKGROUND_LOCATION)~\n~AddManifestText(~\n~~\n~)~\n~AddManifestText(~\n~~\n~)~\n~AddManifestText(~\n~~\n~) 'in order to access the device non-resettable identifiers such as IMEI and serial number.~\n~~\n~'///////////////////////// FLP Y PUSH /////////////~\n~' CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~' CreateResourceFromFile(Macro, FirebaseAnalytics.Firebase)~\n~' CreateResourceFromFile(Macro, FirebaseAnalytics.FirebaseAnalytics)~\n~' CreateResourceFromFile(Macro, FirebaseNotifications.FirebaseNotifications)~\n~ SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~'//////////////////////////////////////////////////////~\n~'Le da mas memoria a la aplicacion~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~~\n~'Si al cargar un mapa de google mande este error "java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/ProtocolVersion". agregar la siguiente linea:~\n~AddApplicationText() -Module1=B4XMainPage -Module10=C_Pedidos -Module11=C_Principal -Module12=C_Productos -Module13=C_Promos -Module14=C_TicketsDia -Module15=C_updateAvailable -Module16=CameraExClass -Module17=DBRequestManager -Module18=DownloadService -Module19=errorManager -Module2=C_CheckList -Module20=EscPosPrinter -Module21=foto -Module22=MAPA_RUTAS -Module23=Mods -Module24=SD_Spinner -Module25=Starter -Module26=Subs -Module27=Tracker -Module3=C_Cliente -Module4=C_Clientes -Module5=C_Historico -Module6=C_Mapas -Module7=C_Nota -Module8=C_NoVenta -Module9=C_NuevoCliente -NumberOfFiles=51 -NumberOfLibraries=28 -NumberOfModules=27 -Version=12.2 -@EndOfDesignText@ -#Region Project Attributes - #ApplicationLabel: Kelloggs Venta - #VersionCode: 3000 - #VersionName: 3.07.28 RMI - #SupportedOrientations: portrait - #CanInstallToExternalStorage: False - #BridgeLogger:true - #AdditionalJar: com.android.support:support-v4 - #AdditionalJar: com.google.android.gms:play-services-location - 'Para PDFViewer - #AdditionalJar: android-pdf-viewer.aar - #AdditionalJar: Pdfium.aar -#End Region - -#Region Activity Attributes - #FullScreen: False - #IncludeTitle: False -#End Region - -Sub Process_Globals - Public ActionBarHomeClicked As Boolean -End Sub - -Sub Globals - -End Sub - -Sub Activity_Create(FirstTime As Boolean) - Dim pm As B4XPagesManager - pm.Initialize(Activity) -End Sub - -'Template version: B4A-1.01 -#Region Delegates - -Sub Activity_ActionBarHomeClick - ActionBarHomeClicked = True - B4XPages.Delegate.Activity_ActionBarHomeClick - ActionBarHomeClicked = False -End Sub - -Sub Activity_KeyPress (KeyCode As Int) As Boolean - Return B4XPages.Delegate.Activity_KeyPress(KeyCode) -End Sub - -Sub Activity_Resume - B4XPages.Delegate.Activity_Resume -End Sub - -Sub Activity_Pause (UserClosed As Boolean) - B4XPages.Delegate.Activity_Pause -End Sub - -Sub Activity_PermissionResult (Permission As String, Result As Boolean) - B4XPages.Delegate.Activity_PermissionResult(Permission, Result) -End Sub - -Sub Create_Menu (Menu As Object) - B4XPages.Delegate.Create_Menu(Menu) -End Sub - -#if Java -public boolean _onCreateOptionsMenu(android.view.Menu menu) { - processBA.raiseEvent(null, "create_menu", menu); - return true; - -} -#End If -#End Region - -'Program code should go into B4XMainPage and other pages. \ No newline at end of file diff --git a/B4A/MAPA_RUTAS.bas b/B4A/MAPA_RUTAS.bas deleted file mode 100644 index b04f792..0000000 --- a/B4A/MAPA_RUTAS.bas +++ /dev/null @@ -1,320 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Activity -Version=9.3 -@EndOfDesignText@ -#Region Activity Attributes - #FullScreen: False - #IncludeTitle: False -#End Region - -'Activity module -Sub Process_Globals - Dim GPS As GPS - Dim rp As RuntimePermissions - Dim ruta As String -' Dim skmt As SQL - Dim c As Cursor - Dim c2 As Cursor - Dim c22 As Cursor - Dim c3 As Cursor -End Sub - -Sub Globals - Private gmap As GoogleMap - Private MapFragment1 As MapFragment - Dim Latitud As Double = 0 - Dim Longitud As Double = 0 - Dim Lat2 As Double = 0 - Dim Lon2 As Double = 0 - Dim p1, p2 As Location - Dim Distance As Float - Dim boton1 As Button - Dim HUE_BLUE As Float - Dim HUE_RED As Float - Dim HUE_GREEN As Float - Private B_AZUL As Button - Private B_ROJO As Button - Private B_VERDE As Button - Private B_TODOS As Button - Dim Tienda As String - Dim LatitudRU As String - Dim LongitudRU As String - Dim LIST_AZUL As List - Dim LIST_ROJO As List - Dim LIST_VERDE As List - Dim MARK_AZUL As Marker - Dim MARK_ROJO As Marker - Dim MARK_VERDE As Marker - Dim MARK_CEDIS As Marker - Dim rojo As String - Dim azul As String - Dim verde As String - Dim todos As String - Dim NumSerie As Int - Dim OnInfoWindowClickListener1 As OnInfoWindowClickListener - Dim GoogleMapEXTRA As GoogleMapsExtras - Dim CODIGO As String - Private SEMANA As String -End Sub - -Sub Activity_Create(FirstTime As Boolean) - Activity.LoadLayout("MAPA_RUTAS") - ruta = File.DirInternal -' If File.Exists(ruta, "kmt.db") = False Then -' File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db") -' End If -' skmt.Initialize(ruta,"kmt.db", True) - 'GPS - If(FirstTime) Then - GPS.Initialize("GPS") - End If - If MapFragment1.IsGooglePlayServicesAvailable = False Then - ToastMessageShow("Please install Google Play Services.", True) - End If - - 'Boton velocidad' - boton1.Initialize(0) - boton1.Text = 0 &" "&"km/h" - boton1.TextColor = Colors.Red - boton1.TextSize = 15 - Activity.AddView(boton1, 40%x, 5dip, 25%x, 40dip) - 'Fin Boton velocidad' - 'MARK_CEDIS.IsInitialized - MARK_AZUL.IsInitialized - MARK_ROJO.IsInitialized - MARK_VERDE.IsInitialized - - LIST_AZUL.Initialize - LIST_ROJO.Initialize - LIST_VERDE.Initialize - verde = 0 - azul = 0 - rojo = 0 - todos = 1 - c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SEMANA")) - c.Position =0 - SEMANA = c.GetString("CUANTOS") - c.Close - If SEMANA > 0 Then - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SEMANA")) - c.Position =0 - SEMANA = c.GetString("CAT_VA_VALOR") - c.Close - End If -End Sub - -Sub Activity_Resume - If GPS.GPSEnabled = False Then - ToastMessageShow("Debe Activar el GPS del Equipo.", True) - StartActivity(GPS.LocationSettingsIntent) - Else - GPS.Start(19.4316281, -99.1333579) - End If -' Subs.ultimaActividad(Me) -End Sub - -Sub MapFragment1_Ready - gmap = MapFragment1.GetMap - LongitudRU = 19.4316281 - LatitudRU = -99.1333579 - -' todos= 1 - 'permisos - rp.CheckAndRequest(rp.PERMISSION_ACCESS_FINE_LOCATION) - Wait For Activity_PermissionResult (Permission As String, Result As Boolean) - gmap.MyLocationEnabled = Result - - Dim JavaMapsObject As JavaObject - JavaMapsObject = gmap.GetUiSettings - JavaMapsObject.RunMethod("setMapToolbarEnabled", Array As Object(True)) - - '''''''---------------------------- MARKER AZUL - POR VISITAR - If azul = 1 Or todos = 1 Then - c.IsInitialized - c=Starter.skmt.ExecQuery2("select CAT_CL_CODIGO,CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_NUM_SERIEFISICO from kmt_info where CAT_CL_NOMBRE <>'VENTA ABORDO' AND CAT_CL_CODIGO NOT IN (Select PE_CLIENTE from PEDIDO) AND CAT_CL_CODIGO NOT In (Select NV_CLIENTE from NOVENTA) AND CAT_CL_CODIGO NOT LIKE 'N%' and CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = 'DIA_VISITA') and cat_cl_codigo <> 0 AND CAT_CL_TIPO_RUTA IN (?,?) ORDER BY CAT_CL_NUM_SERIEFISICO", Array As String(SEMANA, "SEMANAL")) -' skmt.Initialize(ruta,"kmt.db", True) - If c.RowCount > 0 Then - For i = 0 To c.RowCount -1 - c.Position = i - LongitudRU = c.GetDouble("CAT_CL_LONG") - LatitudRU = c.GetDouble("CAT_CL_LAT") - CODIGO=c.GetString("CAT_CL_CODIGO") - Tienda= c.GetString("CAT_CL_NOMBRE") - NumSerie=c.GetInt("CAT_CL_NUM_SERIEFISICO") - 'MARK_AZUL = gmap.AddMarker2(LongitudRU,LatitudRu,Tienda, gmap.HUE_BLUE) - MARK_AZUL = gmap.AddMarker3(LatitudRU, LongitudRU, CODIGO, LoadBitmap(File.DirAssets, "marker-azul-" & NumSerie &".png")) - MARK_AZUL.Snippet = Tienda - Next - c .Close - If MARK_AZUL.IsInitialized Then LIST_AZUL.Add(MARK_AZUL) - End If - End If - - '''''''---------------------------- MARKER VERDE - VENTA - If verde = 1 Or todos = 1 Then - c2.IsInitialized - c2=Starter.skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_NUM_SERIEFISICO from kmt_info WHERE CAT_CL_NOMBRE <>'VENTA ABORDO' AND CAT_CL_CODIGO IN (Select PE_CLIENTE from PEDIDO) AND CAT_CL_CODIGO NOT In (Select NV_CLIENTE from NOVENTA) and CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = 'DIA_VISITA')") - For i = 0 To c2.RowCount -1 - c2.Position = i - LongitudRU = c2.GetDouble("CAT_CL_LONG") - LatitudRU = c2.GetDouble("CAT_CL_LAT") - CODIGO=c2.GetString("CAT_CL_CODIGO") - Tienda= c2.GetString("CAT_CL_NOMBRE") - NumSerie=c2.GetInt("CAT_CL_NUM_SERIEFISICO") - MARK_VERDE = gmap.AddMarker3(LongitudRU,LatitudRU,CODIGO, LoadBitmap(File.DirAssets, "marker-verde-"&NumSerie&".png")) - MARK_VERDE.Snippet = Tienda - Next - Else - If verde = 1 Or todos = 1 Then - c2.IsInitialized - c2=Starter.skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT, CAT_CL_NUM_SERIEFISICO from kmt_info WHERE CAT_CL_NOMBRE <>'VENTA ABORDO' AND CAT_CL_CODIGO IN (Select PE_CLIENTE from PEDIDO) AND CAT_CL_CODIGO NOT In (Select NV_CLIENTE from NOVENTA ) AND CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = 'DIA_VISITA')") - For i = 0 To c2.RowCount -1 - c2.Position = i - LongitudRU = c2.GetDouble("CAT_CL_LONG") - LatitudRU = c2.GetDouble("CAT_CL_LAT") - CODIGO=c2.GetString("CAT_CL_CODIGO") - Tienda= c2.GetString("CAT_CL_NOMBRE") - NumSerie=c2.GetInt("CAT_CL_NUM_SERIEFISICO") - MARK_VERDE = gmap.AddMarker3(LongitudRU,LatitudRU,CODIGO, LoadBitmap(File.DirAssets, "marker-verde-"&NumSerie&".png")) - MARK_VERDE.Snippet = Tienda - Next - c2 .Close - If MARK_VERDE.IsInitialized Then LIST_VERDE.Add(MARK_VERDE) - End If - End If - - '''''''---------------------------- MARKER ROJO - NO VENTA - - If rojo =1 Or todos = 1 Then - c3.IsInitialized - c3=Starter.skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT ,CAT_CL_NUM_SERIEFISICO from kmt_info where CAT_CL_NOMBRE <>'VENTA ABORDO' AND CAT_CL_CODIGO In (Select NV_CLIENTE from NOVENTA ) AND CAT_CL_CODIGO NOT IN (Select PE_CLIENTE from PEDIDO) and CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = 'DIA_VISITA')order by CAT_CL_NUM_SERIEFISICO") - For i = 0 To c3.RowCount -1 - c3.Position = i - LongitudRU = c3.GetDouble("CAT_CL_LONG") - LatitudRU = c3.GetDouble("CAT_CL_LAT") - CODIGO=c3.GetString("CAT_CL_CODIGO") - Tienda= c3.GetString("CAT_CL_NOMBRE") - NumSerie=c3.GetInt("CAT_CL_NUM_SERIEFISICO") - MARK_ROJO = gmap.AddMarker3(LongitudRU,LatitudRU,CODIGO, LoadBitmap(File.DirAssets, "marker-rojo-" & NumSerie &".png")) - MARK_ROJO.Snippet = Tienda - Next - Else - If rojo =1 Or todos = 1 Then - c3.IsInitialized - c3=Starter.skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT ,CAT_CL_NUM_SERIEFISICO from kmt_info where CAT_CL_NOMBRE <>'VENTA ABORDO' AND CAT_CL_CODIGO In (Select NV_CLIENTE from NOVENTA ) AND CAT_CL_CODIGO NOT IN (Select PE_CLIENTE from PEDIDO) and CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = 'DIA_VISITA')order by CAT_CL_NUM_SERIEFISICO") - For i = 0 To c3.RowCount -1 - c3.Position = i - LongitudRU = c3.GetDouble("CAT_CL_LONG") - LatitudRU = c3.GetDouble("CAT_CL_LAT") - CODIGO=c3.GetString("CAT_CL_CODIGO") - Tienda= c3.GetString("CAT_CL_NOMBRE") - NumSerie=c3.GetInt("CAT_CL_NUM_SERIEFISICO") - MARK_ROJO = gmap.AddMarker3(LongitudRU,LatitudRU,CODIGO, LoadBitmap(File.DirAssets, "marker-rojo-" & NumSerie &".png")) - MARK_ROJO.Snippet = Tienda - Next - If MARK_ROJO.IsInitialized Then LIST_ROJO.Add(MARK_ROJO) - c3.Close - End If - End If - '''------------------------------ - -' MARK_CEDIS = gmap.AddMarker3("19.3961802","-99.0784293","CEDIS", LoadBitmap(File.DirAssets, "marker-azul-0.png")) -' If MARK_VERDE.Visible Or MARK_ROJO.Visible Then -' MARK_CEDIS.Remove -' End If - If LatitudRU > -1 Then - LongitudRU = 19.4316281 - LatitudRU = -99.1333579 - End If - Dim aa As CameraPosition - aa.Initialize(LongitudRU,LatitudRU,10)''' RECOMENDABLE CAMBIAR A 10 PARA QUE SE VEAN MAS MARCADORES - gmap.AnimateCamera(aa) - - '''''---------------------- ESTO ES PARA LOS CLICK EN LAS VENTANAS DE INFORMACION----------- - Dim OnInfoWindowClickListener1 As OnInfoWindowClickListener - OnInfoWindowClickListener1.Initialize("OnInfoWindowClickListener1") - GoogleMapEXTRA.SetOnInfoWindowClickListener(gmap, OnInfoWindowClickListener1) -End Sub -' -''''-------------------------- PRUEBA CON MARKER _CLICK - -Sub OnInfoWindowClickListener1_click(Marker1 As Marker) - Starter.skmt.ExecNonQuery("delete from CUENTAA") - Starter.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?) ", Array As Object(Marker1.Title)) - Activity.Finish - Subs.iniciaActividad("Cliente") -End Sub - -Sub GPS_LocationChanged (Parametro As Location) - gmap = MapFragment1.GetMap - MARK_CEDIS.IsInitialized - Dim sp As Int - sp = Ceil(Parametro.Speed * 3.6) - boton1.Text = sp &" "&"km/h" - Latitud = Parametro.Latitude - Longitud = Parametro.Longitude - p2.Initialize2(Latitud,Longitud) - p1.Initialize2(Lat2, Lon2) - Distance = p1.DistanceTo(p2) -' If Latitud <> 0 And Longitud <> 0 Then -' If Distance > 10 Then -' Lat2 = Latitud -' Lon2 = Longitud -' Dim cp As CameraPosition -' cp.Initialize2(Parametro.Latitude, Parametro.Longitude, gmap.CameraPosition.Zoom, Parametro.Bearing, 0) -' gmap.AnimateCamera(cp) -' End If -' End If -End Sub - -Sub Activity_Pause (UserClosed As Boolean) - GPS.Stop -End Sub - -Sub B_TODOS_Click - todos = 1 - verde = 0 - azul = 0 - rojo = 0 - If gmap.IsInitialized Then gmap.Clear - MapFragment1_Ready -End Sub - -Sub B_VERDE_Click - verde = 1 - azul = 0 - rojo = 0 - todos = 0 - If gmap.IsInitialized Then gmap.Clear - MapFragment1_Ready -End Sub - -Sub B_ROJO_Click - rojo = 1 - verde = 0 - azul = 0 - todos = 0 - If gmap.IsInitialized Then gmap.Clear - MapFragment1_Ready -End Sub - -Sub B_AZUL_Click - azul = 1 - verde = 0 - rojo = 0 - todos = 0 - If gmap.IsInitialized Then gmap.Clear - MapFragment1_Ready -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean 'ignore - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - Subs.iniciaActividad("Principal") - Return False - 'End If - End If - ' Returning False signals the system to handle the key -End Sub \ No newline at end of file diff --git a/B4A/Mods.bas b/B4A/Mods.bas deleted file mode 100644 index c0672eb..0000000 --- a/B4A/Mods.bas +++ /dev/null @@ -1,15 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=StaticCode -Version=11.5 -@EndOfDesignText@ -Sub process_globals -End Sub - -'Ver 2.10.17 -'Se corrigieron en "mapas_rutas" y en "c_mapas" errores donde la longitud y latitud estaban invertidas y marcaba las tiendas en Africa. -'Ver 2.09.03 -'Se agregó código en "C_Cliente.GPS_LocationChanged" para que cuando haya un cambio de ubicacion, se actualize el texto del boton "b_ubicacion". -'Se agregó código en "C_Cliente.B4XPage_Appear" para que cuando se entre a "C_Cliente" el cambio minimo de distancia (SetSmallestDisplacement) de la ubicacion sea 1, -'y cuando se salga de "C_Cliente" regrese a 75 (C_Cliente.Guardar_Click). \ No newline at end of file diff --git a/B4A/SD_Spinner.bas b/B4A/SD_Spinner.bas deleted file mode 100644 index 7e35139..0000000 --- a/B4A/SD_Spinner.bas +++ /dev/null @@ -1,491 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=8.3 -@EndOfDesignText@ -' Update 1.0.2 (04/01/2018) -#Event: ItemClick (Position As Int, Value as String) -#DesignerProperty: Key: TextColor, DisplayName: TextColor, FieldType: Color, DefaultValue: 0xFF000000,Description: Text color -#DesignerProperty: Key: TextSize, DisplayName: TextSize, FieldType: int, DefaultValue: 14,Description: Label Text Size -#DesignerProperty: Key: HintColor, DisplayName: HintColor, FieldType: Color, DefaultValue: 0xFF888888,Description: Hint color, noselected opstion -#DesignerProperty: Key: BackgroundColor, DisplayName: Color background, FieldType: Color, DefaultValue: 0xFFFFFFFF, Description: You can use the built-in color picker to find the color values. -#DesignerProperty: Key: BackgroundColorList, DisplayName: ListColor background, FieldType: Color, DefaultValue: 0xFF000000, Description: You can use the built-in color picker to find the color values. -#DesignerProperty: Key: GrayDisplay, DisplayName: Gray Display, FieldType: boolean, DefaultValue: False, Description: Gray Display. -#DesignerProperty: Key: RoundCorner, DisplayName:RoundCorner, FieldType: boolean, DefaultValue: False, Description: RoundCorner. - -Sub Class_Globals - Public SelectedItem As String - Public SelectedID As String - Public SelectedIndex As Int - Public GrayDisplay As Boolean - Public BColor, TColor,HintColor, BColorList As Int - Public RoundCorner As Boolean - Public ScrollViewParent As ScrollView = Null - - Private EventName As String 'ignore - Private CallBack As Object 'ignore - Private mBase As Panel - Public MyAct As Panel - Private Lab As Label - Private AppPanel As Panel - Public Top,Left As Int - Private ListPanel As ScrollView - - Private ListItem As List - Private TextSize As Int - Type Item (Text As String,TextHelp As String,ID As String, BackgroundColor As Int, TextColor As Int, Image As Bitmap, G As Int) -End Sub - -Public Sub Initialize (vCallback As Object, vEventName As String) - EventName = vEventName - CallBack = vCallback - ListItem.Initialize - Lab.Initialize("Lab") - SelectedItem="" - SelectedID="" - SelectedIndex=-1 - - AppPanel.Initialize("AppPanel") - ListPanel.Initialize(1000dip) -End Sub - -Public Sub Invalidate - mBase.Invalidate -End Sub - -Public Sub DesignerCreateView (Base As Panel, Lbl As Label, Props As Map) - mBase = Base - mBase.Tag=Me - - Left=0 - Top=0 - Try - Dim Obj As View = mBase - Log(GetType(Obj)) - Do While Not(GetType(Obj) = "android.widget.FrameLayout") - Left=Left+Obj.Left - Top=Top+Obj.Top - Obj=Obj.Parent - Loop - MyAct=Obj - Catch - Dim r As Reflector - r.Target = r.GetActivityBA - MyAct=r.GetField("vg") - End Try - - If Props.ContainsKey("BackgroundColor") Then BColor=Props.Get("BackgroundColor") - If Props.ContainsKey("BackgroundColorList") Then BColorList=Props.Get("BackgroundColorList") - If Props.ContainsKey("TextColor") Then TColor=Props.Get("TextColor") - If Props.ContainsKey("TextSize") Then TextSize=Props.Get("TextSize") - If Props.ContainsKey("HintColor") Then HintColor=Props.Get("HintColor") - If Props.ContainsKey("GrayDisplay") Then GrayDisplay=Props.Get("GrayDisplay") - If Props.ContainsKey("RoundCorner") Then RoundCorner=Props.Get("RoundCorner") - - Lab.TextColor=TColor - Lab.Color=BColor - Lab.Gravity=Gravity.CENTER - Lab.TextSize=TextSize - Lab.BringToFront - SetIndex(SelectedIndex) - mBase.AddView(Lab,0,0,mBase.Width,mBase.Height) - - Dim Ima As Panel - Ima.Initialize("") - LoadDrawableByName(Ima,"dropdown_ic_arrow_normal_holo_light") - mBase.AddView(Ima,mBase.Width-40dip,(mBase.Height/2)-20dip,40dip,40dip) - -End Sub - -Private Sub LoadDrawableByName(Control As View, ImageName As String) As Boolean - Dim R As Reflector - Try - R.Target = R.GetContext - R.Target = R.RunMethod("getResources") - R.Target = R.RunMethod("getSystem") - Dim ID_Drawable As Int - ID_Drawable = R.RunMethod4("getIdentifier", Array As Object(ImageName, "drawable", "android"), _ - Array As String("java.lang.String", "java.lang.String", "java.lang.String")) - R.Target = R.GetContext - R.Target = R.RunMethod("getResources") - Control.Background = R.RunMethod2("getDrawable", ID_Drawable, "java.lang.int") - Return True - - Catch - LogColor("ERROR.LoadDrawableByName:" & LastException.Message, Colors.Red) - Return False - - End Try -End Sub - -Public Sub GetBase As Panel - Return mBase -End Sub - -#Region Private - -private Sub Lab_Click - Dim I As IME - I.Initialize("") - I.HideKeyboard - - DesignerList -End Sub - -Private Sub AppPanel_Touch (Action As Int, X As Float, Y As Float) - 'AppPanel.Visible=False - AppPanel.RemoveView -End Sub - -Sub Corner(Colore As Int) As ColorDrawable - Dim cdb As ColorDrawable - cdb.Initialize(Colore, 20dip) - Return cdb -End Sub - -Sub RoundBorders(B0 As Bitmap, radius As Int) As Bitmap - - Dim B1,B2 As Bitmap - Dim cv As Canvas - Dim Rect1 As Rect - - B2.InitializeMutable(40dip,40dip) - cv.Initialize2(B2) - Dim Drawable1 As ColorDrawable - Drawable1.Initialize(Colors.White,radius) - Rect1.Initialize(0,0,B2.Width-1,B2.Height-1) - cv.DrawDrawable(Drawable1,Rect1) - - B1.InitializeMutable(40dip,40dip) - cv.Initialize2(B1) - cv.DrawBitmap(B0,Null,Rect1) - - For r=0 To B2.Height-1 - For c=0 To B2.Width-1 - If B2.GetPixel(c,r)=0 Then - cv.DrawPoint(c,r,0) - End If - Next - Next - cv.DrawCircle(20dip,20dip,20dip,Colors.Black,False,1dip) - 'P.SetBackgroundImage(B1) - Return B1 -End Sub - -private Sub DesignerList - Dim HeightListView As Int = 0 - Dim Space As Int - - If ListItem.size>0 Then - If AppPanel.IsInitialized Then AppPanel.RemoveView - MyAct.addview(AppPanel,0,0,100%x,100%Y) - - If RoundCorner Then ListPanel.Color=Colors.Transparent Else ListPanel.Color=BColorList - ListPanel.RemoveView - ListPanel.Panel.RemoveAllViews - ListPanel.Panel.Height=0 - - For i=0 To ListItem.Size-1 - Dim Item As Item - Item.Initialize - - Item = ListItem.Get(i) - Dim P As Panel - P.Initialize("PanelClick") - If RoundCorner Then P.Background=Corner(Item.BackgroundColor) Else P.Color=Item.BackgroundColor - - P.Tag=I - Try - Space=40dip - Dim Ima As ImageView - Ima.Initialize("") - Ima.Gravity=Gravity.FILL - If RoundCorner Then - Ima.SetBackgroundImage(RoundBorders(Item.Image,20dip)) - Else - Ima.SetBackgroundImage(Item.Image) - End If - - P.AddView(Ima,0dip,5dip,40dip,40dip) - Catch - Space=0dip - End Try - - Dim La As Label - La.Initialize("") - La.Text=Item.text - La.TextSize=15 - La.Color=Colors.Transparent - La.TextColor=Item.TextColor - La.Typeface=Typeface.DEFAULT_BOLD - La.Gravity=Item.G - - P.AddView(La,Space,0dip,mBase.Width-Space,30dip) - If Item.texthelp.Trim<>"" Then - Dim La As Label - La.Initialize("") - La.Text=Item.TextHelp - La.TextSize=12 - La.Color=Colors.Transparent - La.TextColor=Item.TextColor - La.Gravity=Item.G - P.AddView(La,Space,25dip,mBase.Width-Space,30dip) - Else - La.Height=50dip - End If - ListPanel.Panel.AddView(P,-mBase.Width,HeightListView,mBase.Width-2DIP,49dip) - P.SetLayoutAnimated(100+(HeightListView/3),1dip,HeightListView,mBase.Width-2DIP,49dip) - HeightListView=HeightListView+50dip - Next - ListPanel.Panel.Height=HeightListView - - Dim LeftSpinner,TopSpinner,HeightSpinner,Yafter As Int - - If GrayDisplay Then AppPanel.Color=Colors.aRGB(200,0,0,0) Else AppPanel.Color=Colors.Transparent - If ScrollViewParent.IsInitialized Then - If Left+mBase.Width+ScrollViewParent.Left>100%x Then LeftSpinner=100%x-mBase.Width Else LeftSpinner=Left - Else - If Left+mBase.Width>100%x Then LeftSpinner=100%x-mBase.Width Else LeftSpinner=Left - End If - - Yafter=100%y-Top-mBase.Height - If ScrollViewParent.IsInitialized Then - Yafter=Yafter+ScrollViewParent.ScrollPosition - Top=Top-ScrollViewParent.ScrollPosition - End If - If (HeightListView>Top)And (HeightListView>Yafter) Then - ' Non va bene dappertutto - If (Top>100%y-Top-mBase.Height) Then - 'sopra é più grande - TopSpinner=0dip - HeightSpinner=Top - Else - 'sotto è più grande - TopSpinner=Top+mBase.Height - HeightSpinner=100%y-Top-mBase.Height - End If - Else if (HeightListView>Top) And (HeightListView<=Yafter) Then - ' Va bene di sotto - TopSpinner=Top+mBase.Height - HeightSpinner=HeightListView - Else If (HeightListView<=Top)And (HeightListView>Yafter) Then - ' Va bene di sopra - TopSpinner=Top+mBase.Height-HeightListView - HeightSpinner=HeightListView - Else - ' Haqspazio sopra e sotto - TopSpinner=Top+mBase.Height - HeightSpinner=HeightListView - End If - - If ScrollViewParent.IsInitialized=False Then - AppPanel.AddView(ListPanel,LeftSpinner,TopSpinner,mBase.Width,HeightSpinner) - Else - AppPanel.AddView(ListPanel,LeftSpinner,TopSpinner,mBase.Width,HeightSpinner) - End If - 'AppPanel.Visible=True - End If -End Sub - -Private Sub PanelClick_Click - Dim P As Panel = Sender - Dim Position As Int = P.Tag - - SelectedIndex=Position - SelectedID=GetID(Position) - SelectedItem=GetItem(Position) - Lab.TextColor=TColor - Lab.Text=SelectedItem - Lab.BringToFront - If SubExists(CallBack,EventName & "_ItemClick") Then CallSub3(CallBack,EventName & "_ItemClick",Position,GetItem(Position)) - - 'AppPanel.Visible=False - AppPanel.RemoveView -End Sub - - #End Region - - #Region Method - -Public Sub Add(Text As String, TextHelp As String,ID As String, BackgroundColor As Int, TextColor As Int, Gravities As Int,Image As Bitmap) - Dim Item As Item - - Item.Initialize - Item.Text=Text - Item.TextHelp=TextHelp - Item.ID=ID - Item.BackgroundColor=BackgroundColor - Item.TextColor=TextColor - Item.G=Gravities - 'Log(Image) - If Image.IsInitialized Then - Item.Image=Image - Else - Dim Bmp As Bitmap - Bmp=Null - Item.Image=Bmp - End If - ListItem.Add(Item) - -End Sub - -Public Sub AddAll(L As List, TextHelp As String, BackgroundColor As Int, TextColor As Int, Gravities As Int) - Dim Bmp As Bitmap = Null - - For i=0 To L.Size-1 - Dim Item As Item - Item.Text=L.Get(i) - Item.TextHelp=TextHelp - Item.ID=i - Item.BackgroundColor=BackgroundColor - Item.TextColor=TextColor - Item.G=Gravities - Item.Image=Bmp - ListItem.Add(Item) - Next -End Sub - -public Sub Size As Int - Return ListItem.Size -End Sub - -Public Sub Clear - ListItem.Clear - DesignerList - SelectedIndex=-1 - SelectedID="" - SelectedItem="" - Lab.Textcolor=HintColor - Lab.Text="Seleccionar Categoria" - Lab.BringToFront -End Sub - -Public Sub RemoveIndex(Position As Int) - If Position>-1 And Position-1 Then ListItem.RemoveAt(Position) -End Sub - -Public Sub GetItem(Position As Int) As String - Dim Ret As String = "" - If Position>-1 And Position-1 And Position-1 And Position-1 And Position 0 Then - s.Position=0 - Private laSemana As String = s.GetString("semana") - Else - Private laSemana As String = "" - End If - - Private cpv As Cursor=skmt.ExecQuery2("select count(*) as CUANTOS from kmt_info where CAT_CL_DIAS_VISITA = (SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?) and cat_cl_codigo <> 0 AND CAT_CL_TIPO_RUTA IN (?,?) ORDER BY CAT_CL_NUM_SERIEFISICO", Array As String("DIA_VISITA", laSemana, "SEMANAL"))'Traemos los clientes a visitar hoy. - cpv.Position=0 - Private clientesVisitaHoy As String=cpv.GetString("CUANTOS") - If lat_gps = 0 Or lat_gps = Null Then 'Si latitud es CERO o NULL traemos las ultimas coordenadas de la base de datos. - Private coords As List = Subs.traeCoordsDeBD - lat_gps = coords.Get(0) - lon_gps = coords.Get(1) - End If - s.Close - cpv.Close - Private rtec, ping, salty As String -' Log(Application.VersionName) - Subs.dameClientesFueraDeFrecuencia - Private h As Cursor - For Each i As String In Array As String ("RTEC", "PING", "SALTY SNACKS") - h=skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod2 where CAT_GP_TIPO = ? )", Array As String(i)) - Private x As String = 0 - If h.RowCount > 0 Then - h.Position = 0 - x = $"$1.3{h.GetString("MONTO_DIA")}"$ - End If - x = $"$1.3{x}"$ - If x="NaN" Then X = "0" - If i = "RTEC" Then rtec = x - If i = "PING" Then ping = x - If i = "SALTY SNACKS" Then salty = x - Next - h.Close -' -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "UPDATE_KELL_ACTUAL4_GPS" -' cmd.Parameters = Array As Object(montoActual, clientesVisitaHoy, clientesVenta, clientesVisitados, lat_gps, lon_gps, batt, 0, 0, 0, Application.VersionName, rtec, ping, salty, Subs.dameClientesFueraDeFrecuencia,pedodo_doe almacen, rutaPreventa) -' If Logger Then LogColor(montoActual&","&clientesVisitaHoy&","&clientesVenta&","&clientesVisitados&","&lat_gps&","&lon_gps&","&batt&","&0&","&0&","&0&","&Application.VersionName&","&rtec&","&ping&","&salty&","& Subs.dameClientesFueraDeFrecuencia&","&almacen&","&rutaPreventa, Colors.Magenta) -' reqManager.ExecuteCommand(cmd,"updateKell_UTR") - - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "UPDATE_KELL_ACTUAL3_GPS" - cmd.Parameters = Array As Object(montoActual, clientesVisitados, clientesVenta, clientesVisitaHoy, lat_gps, lon_gps, batt, 0, 0, 0, Application.VersionName, rtec, ping, salty, Subs.dameClientesFueraDeFrecuencia, almacen, rutaPreventa) - If Logger Then LogColor(montoActual&","&clientesVisitaHoy&","&clientesVenta&","&clientesVisitados&","&lat_gps&","&lon_gps&","&batt&","&0&","&0&","&0&","&Application.VersionName&","&rtec&","&ping&","&salty&","& Subs.dameClientesFueraDeFrecuencia&","&almacen&","&rutaPreventa, Colors.Magenta) - reqManager.ExecuteCommand(cmd,"updateKell_UTR") -' Log("GPS ACTUALIZACION: " & montoActual&","&clientesVisitaHoy&","&clientesVenta&","&clientesVisitados&","&lat_gps&","&lon_gps&","&batt&","&0&","&0&","&0&","&Application.VersionName&","&rtec&","&ping&","&salty&","& Subs.dameClientesFueraDeFrecuencia&","&almacen&","&rutaPreventa) -' If Logger Then Log(reqManager) -' If Logger Then Log("++ ++ ++ Envia_Ultima GPS - Inst_visitas - server: "& server) - skmt.ExecNonQuery2("Update cat_variables set CAT_VA_VALOR = ? WHERE CAT_VA_DESCRIPCION = ?" , Array As String(DateTime.Time(DateTime.Now),"HoraIngreso")) - 'Reiniciamos el timer para cuando llamamos el Sub desde otra actividad - Timer1.Enabled = False - Timer1.Interval = Interval * 1000 - Timer1.Enabled = True -End Sub - -Sub JobDone(Job As HttpJob) - If Job.Success = False Then -' ToastMessageShow("Error: " & Job.ErrorMessage, True) - Else - If Logger Then LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211110 - If Job.JobName = "DBRequest" Then - Dim result As DBResult = reqManager.HandleJob(Job) - If result.Tag = "updateKell_UTR" Then 'query tag - For Each records() As Object In result.Rows - For Each k As String In result.Columns.Keys - If Logger Then Log("Ubicacion en tiempo real: " & k & ": " & records(result.Columns.Get(k))) - Next - Next - End If - End If - End If - Job.Release -End Sub - -'Para los Logs -Private Sub logcat_LogCatData (Buffer() As Byte, Length As Int) - logs.Append(BytesToString(Buffer, 0, Length, "utf8")) - If logs.Length > 4000 Then - logs.Remove(0, logs.Length - 2000) 'Obtenemos log de 2000 ~ 4000 chars - End If -End Sub - -'Revisa que la conexion a la base de datos este bien. -Sub revisaBD 'ignore - If Logger Then Log("revisaBD") - If Not(File.Exists(ruta, "kmt.db")) Then File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db") - If Not(skmt.IsInitialized) Then skmt.Initialize(ruta, "kmt.db", True) -End Sub diff --git a/B4A/Subs.bas b/B4A/Subs.bas deleted file mode 100644 index 74262cf..0000000 --- a/B4A/Subs.bas +++ /dev/null @@ -1,817 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=StaticCode -Version=11 -@EndOfDesignText@ -'Code module -'Subs in this code module will be accessible from all modules. -Sub Process_Globals - 'These global variables will be declared once when the application starts. - 'These variables can be accessed from all modules. -' Public GZip As GZipStrings 'Usa la libreria CompressStrings - Private su As StringUtils 'Usa la libreria StringUtils - Dim phn As Phone - Dim devModel As String - Dim errorLog As SQL 'Requiere la libreria "SQL" -' Dim wifi As MLwifi - Dim ssid As String 'ignore - Dim rutaMaxPoints As Int = 3000 - Dim rutaHrsAtras As Int = 48 -' Dim rutaInicioHoy As String = "" -End Sub - -'Pone el valor de phn.Model en la variable global "devModel" -Sub getPhnId As String 'ignore - 'Requiere la libreria "Phone" - devModel = phn.Model - If devModel.Length <= 3 Then 'Si phn.Model esta en blanco ... - Dim t As String = phn.GetSettings("android_id") 'Intentamos con "android_id" - devModel = t - End If - If devModel.Length >= 3 Then 'Si tenemos valor para phn.Model - File.WriteString(File.DirInternal, "phnId.txt", devModel) 'Sobreescribimos archivo phnId.txt with deviceId -' if starter.logger then Log("Tenemos phnId: "&devModel&" "&File.DirInternal&"/phn.txt sobreescrito") - Else If devModel.Length < 3 Then ' Si no tenemos valor, lo leemos de phnId.txt - Dim s As String = File.ReadString(File.DirInternal, "phnId.txt") - devModel = s -' if starter.logger then Log("Leemos id de "&File.DirInternal&"/phnId.txt") -' if starter.logger then Log(devModel) - End If - Return devModel -End Sub - -'Comprime y regresa un texto (str) en base64 -Sub compress(str As String) As String 'ignore - 'Requiere la libreria "CompressStrings" -' Dim compressed() As Byte = GZip.compress(str) -' Dim base64 As String = su.EncodeBase64(compressed) -' if starter.logger then Log($"Comprimido: ${base64.Length}"$) -' Return base64 -End Sub - -'Descomprime y regresa un texto en base64 -Sub decompress(base64 As String) As String 'ignore - Dim decompressedbytes() As Byte = su.DecodeBase64(base64) -' if starter.logger then Log($"decompressedbytesLength: ${decompressedbytes.Length}"$) - Dim bc As ByteConverter - Dim uncompressed As String = bc.StringFromBytes(decompressedbytes,"UTF8") - Log($"Descomprimido: ${uncompressed.Length}"$) -' if starter.logger then Log($"Decompressed String = ${uncompressed}"$) - Return uncompressed -End Sub - -'Convierte una fecha al formato yyMMddHHmmss -Sub fechaKMT(fecha As String) As String 'ignore -' if starter.logger then Log(fecha) - Dim OrigFormat As String = DateTime.DateFormat 'save orig date format - DateTime.DateFormat="yyMMddHHmmss" - Dim nuevaFecha As String=DateTime.Date(fecha) - DateTime.DateFormat=OrigFormat 'return to orig date format -' if starter.logger then Log(nuevaFecha) - Return nuevaFecha -End Sub - -'Genera una notificacion con importancia alta -Sub notiHigh(title As String, body As String, activity As Object) 'ignore - Private notif As Notification - notif.Initialize2(notif.IMPORTANCE_HIGH) - notif.Icon = "icon" - notif.Vibrate = False - notif.Sound = False - notif.AutoCancel = True - Log("notiHigh: "&title) - notif.SetInfo(title, body, activity) -' if starter.logger then Log("notiHigh SetInfo") - notif.Notify(777) -End Sub - -'Regresa el objeto de una notificacion con importancia baja -Sub notiLowReturn(title As String, Body As String, id As Int) As Notification 'ignore - Private notification As Notification - notification.Initialize2(notification.IMPORTANCE_LOW) - If Starter.logger Then Log("notiLowReturn: "&title) - notification.Icon = "icon" - notification.Sound = False - notification.Vibrate = False - notification.SetInfo(title, Body, Main) - notification.Notify(id) -' if starter.logger then Log("notiLowReturn SetInfo") - Return notification -End Sub - -'Escribimos las coordenadas y fecha a un archivo de texto -Sub guardaInfoEnArchivo(coords As String) 'ignore - ' Cambiamos el formato de la hora - Dim OrigFormat As String=DateTime.DateFormat 'save orig date format - DateTime.DateFormat="MMM-dd HH:mm:ss" - Dim lastUpdate As String=DateTime.Date(DateTime.Now) - DateTime.DateFormat=OrigFormat 'return to orig date format - - Dim ubic As String = coords&","&lastUpdate - Dim out As OutputStream = File.OpenOutput(File.DirInternal, "gps.txt", True) - Dim s As String = ubic & CRLF - Dim t() As Byte = s.GetBytes("UTF-8") - out.WriteBytes(t, 0, t.Length) - out.Close -End Sub - -'Escribimos las coordenadas (latitud, longitud, fecha) y fecha a una BD -Sub guardaInfoEnBD(coords As String) 'ignore - Log("Guardamos ubicacion en BD - "&coords) - Try - Dim latlon() As String = Regex.Split("\|", coords) - If latlon.Length < 2 Then latlon = Regex.Split(",", coords) 'Si son menos de 2, entonces estan separadas por comas y no por "|" -' If Main.Logger Then Log("LatLon="&latlon) - If Not(Starter.skmt.IsInitialized) Then revisaBD - Starter.skmt.ExecNonQuery2("INSERT INTO RUTA_GPS(fecha, lat, lon) VALUES (?,?,?)", Array As Object (latlon(2),latlon(0),latlon(1))) - Catch - If Starter.logger Then Log(LastException) - End Try -End Sub - -'Regresa la ruta gps solicitada comprimida y en base64 -Sub dameRutaGPS(inicioRuta As String, origenRuta As String) As String 'ignore - 'Requiere la libreria "SQL" - Dim fechaInicio As String - Try 'incioRuta es numero - inicioRuta = inicioRuta * 1 -' Log("fechaInicio numerica="&fechaInicio) - fechaInicio = fechaKMT(DateTime.Now - (DateTime.TicksPerHour * inicioRuta)) - Catch 'inicioRuta es string - fechaInicio = fechaInicioHoy -' Log("fechaInicio string="&fechaInicio) - End Try - If Starter.logger Then Log("fechaInicio: "&fechaInicio&" | rutaHrsAtras="&rutaHrsAtras) 'fechaKMT(DateTime.Now) - Dim c As Cursor - If Starter.skmt.IsInitialized = False Then Starter.skmt.Initialize(Starter.ruta, "kmt.db", True) - If Starter.logger Then Log("select FECHA, LAT, LON from "& origenRuta &" where FECHA > " & fechaInicio & " order by FECHA desc limit " & rutaMaxPoints) - c = Starter.skmt.ExecQuery("select FECHA, LAT, LON from "& origenRuta &" where FECHA > " & fechaInicio & " order by FECHA desc limit " & rutaMaxPoints) - c.Position = 0 - Dim ruta2 As String = "" - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - ruta2=ruta2&CRLF&c.GetString("LAT")&","&c.GetString("LON")&","&c.GetString("FECHA") - Starter.fechaRuta = c.GetString("FECHA") - Next - End If - c.Close - Return compress(ruta2) -End Sub - -'Limpiamos la tabla RUTA_GPS de la BD -Sub deleteGPS_DB 'ignore - Starter.skmt.ExecNonQuery("delete from RUTA_GPS") - Starter.skmt.ExecNonQuery("vacuum;") -End Sub - -'Limpiamos la tabla errorLog de la BD -Sub deleteErrorLog_DB 'ignore - If Not(Starter.errorLog.IsInitialized) Then revisaBD - Starter.errorLog.ExecNonQuery("delete from errores") - Starter.errorLog.ExecNonQuery("vacuum;") -' ToastMessageShow("Borrada", False) -End Sub - -'Borramos el archio "gps.txt" -Sub borramosArchivoGPS 'ignore - Dim out As OutputStream = File.OpenOutput(File.DirInternal, "gps.txt", False) - Dim s As String = "" - Dim t() As Byte = s.GetBytes("UTF-8") - out.WriteBytes(t, 0, t.Length) - out.Close -End Sub - -'Revisa que exista la BD y si es necesario crea algunas tablas dentro de ella -Sub revisaBD 'ignore -' if starter.logger then Log("subs.revisaBD") - Starter.ruta = File.DirInternal - If Not(File.Exists(Starter.ruta, "kmt.db")) Then File.Copy(File.DirAssets, "kmt.db", Starter.ruta, "kmt.db") - If Not(Starter.skmt.IsInitialized) Then Starter.skmt.Initialize(Starter.ruta, "kmt.db", True) - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_RMI(CAT_ID TEXT, CAT_DESCRIPCION TEXT, CAT_MONTO TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS RUTA_GPS(fecha INTEGER, lat TEXT, lon TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA2(HE_CLIENTE TEXT)") -' Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS UUC(fecha INTEGER, lat TEXT, lon TEXT)") 'LastKnownLocation - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS bitacora(fecha INTEGER, texto TEXT)") 'Bitacora - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_DEV(CAT_GP_ID TEXT,CAT_GP_NOMBRE TEXT, CAT_GP_PRECIO TEXT)") - Try 'Si no existe la columna CAT_CL_CATEGORIA la agregamos. - Starter.skmt.ExecQuery("select count(CAT_CL_CATEGORIA) from kmt_info") - Catch - Try - Starter.skmt.ExecNonQuery("ALTER TABLE kmt_info ADD COLUMN CAT_CL_CATEGORIA TEXT") - Catch - If Starter.logger Then LogColor("No pudimos agregar la columna CAT_CL_CATEGORIA.", Colors.Red) - If Starter.logger Then LogColor(LastException, Colors.Red) - End Try - End Try - Try 'Si no existe la columna CAT_CL_SEGMENTO la agregamos. - Starter.skmt.ExecQuery("select count(CAT_CL_SEGMENTO) from kmt_info") - Catch - Try - Starter.skmt.ExecNonQuery("ALTER TABLE kmt_info ADD COLUMN CAT_CL_SEGMENTO TEXT") - Catch - If Starter.logger Then LogColor("No pudimos agregar la columna CAT_CL_SEGMENTO.", Colors.Red) - If Starter.logger Then LogColor(LastException, Colors.Red) - End Try - End Try - 'Tabla para la bitacora de errores - If Not(Starter.errorLog.IsInitialized) Then Starter.errorLog.Initialize(Starter.ruta, "errorLog.db", True) - Starter.errorLog.ExecNonQuery("CREATE TABLE IF NOT EXISTS errores(fecha INTEGER, error TEXT)") -End Sub - -'Obtiene el ssid al que esta conectado el telefono -Sub getSSID 'ignore -' 'Requiere la libreria "MLWifi400" -' If wifi.isWifiConnected Then -' ssid = wifi.WifiSSID -' End If -End Sub - -'Convierte un texto en formato JSON a un objeto "Map" -Sub JSON2Map(theJson As String) As Map 'ignore - 'Requiere la libreria "JSON" - Try - Private json As JSONParser - json.Initialize(theJson) - Return json.NextObject - Catch - Log(LastException) - log2DB("JSON2Map: "&LastException) - Private m As Map = CreateMap("title":"Error generating JSON", "t":"Error", "Message":LastException, "text" : LastException) - Return m - End Try -End Sub - -'Convierte un mapa a formato JSON -Sub map2JSON(m As Map) As String 'ignore - 'Requiere la libreria "JSON" - 'Convierte un objecto "Map" a JSON - Dim jg As JSONGenerator - jg.Initialize(m) - Dim t As String = jg.ToString - Return t -End Sub - -'Mandamos "coords" en un mensaje a "Sprvsr" -Sub mandamosLoc(coords As String) 'ignore -'' Log("Iniciamos mandamosLoc "&coords) - '' if starter.logger then Log("locRequest="&Tracker.locRequest) -' guardaInfoEnBD(coords)'Escribimos coordenadas y fecha a una bd -' Dim t As String -' If Tracker.locRequest="Activa" Then -' If PushService.au = 1 Then -' t = "au" ' es una actualizacion -' Else -' t = "u" ' es una peticion -' End If -' Dim params As Map = CreateMap("topic":"Sprvsr", "coords":coords, "t":t, "b":PushService.battery) -' CallSub2(PushService, "mandaMensaje",params) -' Tracker.locRequest="Enviada" -' CallSubDelayed(Tracker,"CreateLocationRequest") -' End If -End Sub - -'Regresa la fecha y hora de hoy a las 00:00 en el formato "yyMMddHHMMSS" -Sub fechaInicioHoy As String 'ignore - Dim OrigFormat As String = DateTime.DateFormat 'save orig date format - DateTime.DateFormat="yyMMdd" - Private h As String = DateTime.Date(DateTime.Now)&"000000" - DateTime.DateFormat=OrigFormat 'return to orig date format - If Starter.logger Then Log("Hoy="&h) - Return h -End Sub - -'Guardamos "texto" a la bitacora -Sub log2DB(texto As String) 'ignore - If Starter.logger Then LogColor(fechaKMT(DateTime.Now)&" - log2BD: '"&texto&"'", Colors.Magenta) - If Starter.skmt.IsInitialized Then Starter.skmt.ExecNonQuery2("INSERT INTO bitacora(fecha, texto) VALUES (?,?)", Array As Object (fechaKMT(DateTime.now), texto)) -End Sub - -'Regresa verdadero si ya pasaron XX minutos de la fecha dada -Sub masDeXXMins(hora As Int, mins As Int) As Boolean 'ignore - If (hora + mins * DateTime.TicksPerMinute) < DateTime.Now Then - Return True - Else - Return False - End If -End Sub - -'Regresa verdadero si ya pasaron XX minutos de la fechaKMT dada -Sub masDeXXMinsKMT(hora As String, mins As Int) As Boolean 'ignore - Try - ' if starter.logger then LogColor($"Hora=${fechaKMT(fechaKMT2Ticks(hora) + mins * DateTime.TicksPerMinute)}, Mins=${mins}, Actual=${fechaKMT(DateTime.Now)}"$,Colors.red) - If fechaKMT2Ticks(hora) + mins * DateTime.TicksPerMinute < DateTime.Now Then -' if starter.logger then Log("+++ +++ "&fechaKMT(fechaKMT2Ticks(hora) + mins * DateTime.TicksPerMinute) & " < " & fechaKMT(DateTime.Now)) - Return True - Else - ' if starter.logger then Log("+++ +++ "&fechaKMT(fechaKMT2Ticks(hora) + mins * DateTime.TicksPerMinute) & " > " & fechaKMT(DateTime.Now)) - Return False - End If - Catch - Log(LastException) - End Try -End Sub - -'Limpiamos la tabla "bitacora" de la BD -Sub borraLogDB 'ignore - If Starter.logger Then LogColor("Borramos BD de log", Colors.Magenta) - Starter.skmt.ExecNonQuery("delete from bitacora") - Starter.skmt.ExecNonQuery("vacuum;") -End Sub - -'Monitoreamos los servicios PushService y Tracker para ver si estan activos (No pausados), y si no, los reniciamos -Sub Monitor 'ignore -' Private monitorStatus As Boolean = True -' if starter.logger then LogColor("Corriendo Subs.Monitor", Colors.RGB(161,150,0)) -' If IsPaused(Tracker) Then -' log2DB("Reiniciando 'Tracker Pausado' desde Subs.Monitor") -' StartService(Tracker) -' monitorStatus = False -' Else -' revisaFLP -' End If -' If IsPaused(PushService) Then -' log2DB("Reiniciando 'PushService Pausado' desde Subs.Monitor") -' StartService(PushService) -' monitorStatus = False -' Else -' revisaPushService -' End If -' If monitorStatus Then LogColor(" +++ +++ Servicios Activos", Colors.Green) -End Sub - -'Compara la UUG (Ultima Ubicacion Guardada) con FLP.LastKnowLocation y si -'cumple con los requisitos de distancia y precision la guardamos en la BD. -Sub revisaUUG 'ignore - revisaFLP - If Tracker.FLP.GetLastKnownLocation.IsInitialized Then - Dim daa As Int = Tracker.UUGCoords.DistanceTo(Tracker.FLP.GetLastKnownLocation) 'Distancia de la UUG a la actual de Tracker.FLP.GetLastKnownLocation - If Starter.Logger Then LogColor($"**** UUC "${fechaKMT(Tracker.FLP.GetLastKnownLocation.Time)}|$0.2{Tracker.FLP.GetLastKnownLocation.Accuracy}|$0.8{Tracker.FLP.GetLastKnownLocation.Latitude}|$0.8{Tracker.FLP.GetLastKnownLocation.Longitude}|$0.2{Tracker.FLP.GetLastKnownLocation.Speed}|"$, Colors.RGB(255,112,35)) - If daa > 40 And Tracker.FLP.GetLastKnownLocation.Accuracy < 35 Then 'Si la distancia de la ubicacion anterior es mayor de XX y la precision es menor de XX, la guardamos ... - Starter.skmt.ExecNonQuery2("INSERT INTO RUTA_GPS(fecha, lat, lon) VALUES (?,?,?)", Array As Object (fechaKMT(Tracker.FLP.GetLastKnownLocation.Time),Tracker.FLP.GetLastKnownLocation.Latitude,Tracker.FLP.GetLastKnownLocation.Longitude)) - If Starter.Logger Then Log("++++ Distancia a anterior="&daa&"|"&"Precision="&Tracker.FLP.GetLastKnownLocation.Accuracy) - End If - Tracker.UUGCoords = Tracker.FLP.GetLastKnownLocation - End If -End Sub - -'Revisamos que el FLP (FusedLocationProvider) este inicializado y activo -Sub revisaFLP 'ignore - If Starter.logger Then LogColor($"**** **** Revisamos FLP - ${fechaKMT(DateTime.Now)}**** ****"$, Colors.RGB(78,0,227)) - Private todoBienFLP As Boolean = True - If Not(Tracker.FLP.IsInitialized) Then - log2DB("revisaFLP: No esta inicializado ... 'Reinicializando FLP'") - Tracker.FLP.Initialize("flp") - todoBienFLP = False - End If - If Tracker.FLP.IsInitialized Then - If Not(Tracker.FLP.IsConnected) Then - log2DB("revisaFLP: No esta conectado ... 'Reconectando FLP'") -' Tracker.FLP.Connect - CallSubDelayed(Tracker,"StartFLP") - todoBienFLP = False - End If - If Tracker.FLP.IsConnected And _ - Tracker.FLP.GetLastKnownLocation.IsInitialized And _ - Tracker.FLP.GetLastKnownLocation.DistanceTo(Tracker.UUGCoords) > 500 Then - log2DB("revisaFLP: 'No se esta actualizando, lo reiniciamos ...'") - StartService(Tracker) - todoBienFLP = False - End If - End If - If todoBienFLP Then LogColor(" +++ +++ Sin errores en FLP", Colors.Green) - ' revisar hora de lastKnownlocation y si es mayor de 10 minutos llamar StartFLP -End Sub - -'Revisamos que el servicio "PushService" este inicializado y activo -Sub revisaPushService 'ignore -' Private todoBienPS As Boolean = True - '' if starter.logger then LogColor("**** **** Revisamos PushService **** ****", Colors.RGB(78,0,227)) -' Try -' If Not(PushService.wsh.IsInitialized) Then 'Si no esta inicializado ... -' log2DB("revisaPushService: No esta inicializado ... 'Reinicializando PushService'") -' CallSubDelayed(PushService, "Connect") -' todoBienPS = False -' End If -' Catch -' Log(LastException) -' insertaEnErrores("Subs.revisaPushService: Reiniciando - "&LastException) -' End Try -' Try -' If Not(PushService.wsh.ws.Connected) Then 'Si no esta conectado ... -' log2DB("revisaPushService: No esta conectado ... 'Reconectando PushService'") -' CallSubDelayed(PushService, "Connect") -' todoBienPS = False -' End If -' Catch -' Log(LastException) -' insertaEnErrores("Subs.revisaPushService: Reconectando - "&LastException) -' End Try -' Try -' If masDeXXMinsKMT(Starter.pushServiceActividad, 5) Then 'Si mas de xx minutos de la ultima actividad entonces ... -' PushService.wsh.Close -' CallSubDelayed(PushService, "Connect") -' ' StartService(PushService) -' ' If Main.Logger Then Log("Ultima act: "&Starter.pushServiceActividad) -' log2DB("revisaPushService: 'Reconectamos 'PushService' por inactividad") -' Starter.pushServiceActividad = fechaKMT(DateTime.Now) -' todoBienPS = False -' End If -' Catch -' Log(LastException) -' insertaEnErrores("Subs.revisaPushService: Reconectando por inactividad - "&LastException) -' End Try -' If todoBienPS Then LogColor(" +++ +++ Sin errores en PushService", Colors.Green) -End Sub - -'Borramos renglones extra de la tabla de errores -Sub borraArribaDe100Errores 'ignore - If Not(Starter.errorLog.IsInitialized) Then revisaBD - If Starter.logger Then LogColor("Recortamos la tabla de Errores, limite de 100", Colors.Magenta) - Starter.errorLog.ExecNonQuery("DELETE FROM errores WHERE fecha NOT in (SELECT fecha FROM errores ORDER BY fecha desc LIMIT 99 )") - Starter.errorLog.ExecNonQuery("vacuum;") -' if starter.logger then Log("Borramos mas de 100 de errorLog") -End Sub - -'Borramos renglones extra de la tabla de bitacora -Sub borraArribaDe600RenglonesBitacora 'ignore - revisaBD - If Starter.logger Then LogColor("Recortamos la tabla de la Bitacora, limite de 600", Colors.Magenta) - Private c As Cursor - c = Starter.skmt.ExecQuery("select fecha from bitacora") - c.Position = 0 - If c.RowCount > 650 Then - Starter.skmt.ExecNonQuery("DELETE FROM bitacora WHERE fecha NOT in (SELECT fecha FROM bitacora ORDER BY fecha desc LIMIT 599 )") - Starter.skmt.ExecNonQuery("vacuum;") -' if starter.logger then Log("Borramos mas de 600 de bitacora") - End If - c.Close -End Sub - -'Inserta 50 renglones de prueba a la tabla "errores" -Sub insertaRenglonesPruebaEnErrorLog 'ignore - If Not(Starter.errorLog.IsInitialized) Then revisaBD - Log("insertamos 50 renglones a errorLog") - For x = 1 To 50 - Starter.errorLog.ExecNonQuery2("INSERT INTO errores(fecha, error) VALUES (?,?)", Array As Object (fechaKMT(DateTime.now), "abc")) - If Starter.logger Then Log(x) - Next -End Sub - -'Regresa la tabla "errores" en una lista de mapas convertida a JSON -Sub dameErroresJSON(SQL As SQL, maxErrores As Int, comprimido As Boolean) As String 'ignore - If Starter.logger Then Log("dameErroresJSON") - Private j As JSONGenerator - Private lim As String - Private cur As ResultSet - Private l As List - Private i As Int = 0 - l.Initialize - Dim m, m2 As Map - m2.Initialize - If maxErrores = 0 Then lim = "" Else lim = "limit "&maxErrores - cur = SQL.ExecQuery("select * from errores order by fecha desc "&lim) - Do While cur.NextRow - m.Initialize - m.Put("fecha", cur.GetString("fecha")) - m.Put("error", cur.GetString("error")) - m2.Put(i,m) - i = i + 1 - Loop - cur.Close - j.Initialize(m2) - If Starter.logger Then Log(j.ToString) - If comprimido Then - Return compress(j.ToString) - Else - Return j.ToString - End If -End Sub - -'Convierte una fecha en formato YYMMDDHHMMSS a Ticks -Sub fechaKMT2Ticks(fKMT As String) As Long 'ignore - Try - If fKMT.Length = 12 Then - Private parteFecha As String = fKMT.SubString2(0,6) - Private parteHora As String = fKMT.SubString(6) - Private OrigFormat As String = DateTime.DateFormat 'save original date format - DateTime.DateFormat="yyMMdd" - DateTime.TimeFormat="HHmmss" - Private ticks As Long = DateTime.DateTimeParse(parteFecha,parteHora) -' Log(" +++ +++ pFecha:"&parteFecha&" | pHora:"&parteHora) - DateTime.DateFormat=OrigFormat 'return to original date format - Return ticks - Else - Log("Formato de fecha incorrecto, debe de ser 'yyMMddHHmmss', no '"&fKMT&"' largo="&fKMT.Length) - Return 0 - End If - Catch - Log(LastException) - If Starter.logger Then LogColor($"Fecha dada: ${fKMT}, Parte Fecha: ${parteFecha}, Parte Hora: ${parteHora}"$, Colors.Red) - Return 0 - End Try -End Sub - -'Sub InstallAPK(dir As String, apk As String) 'ignore -' If File.Exists(dir, apk) Then -' Dim i As Intent -' i.Initialize(i.ACTION_VIEW, "file://" & File.Combine(dir, apk)) -' i.SetType("application/vnd.android.package-archive") -' StartActivity(i) -' End If -'End Sub - -'Copia la base de datos del almacenamiento interno al externo en el directorio kmts -Sub copiaDB(result As Boolean) 'ignore - If result Then - Dim p As String - Dim safeDir As String = Starter.rp.GetSafeDirDefaultExternal("erroresDir") - p = Starter.ruta - Dim theDir As String - Try - File.MakeDir(p,"kmts") - theDir = "/kmts" - Catch - theDir = "" - End Try - Try - Private nombreDB As String = $"kell_${Starter.rutaPreventa}_kmt.db"$ - File.Copy(p,"kmt.db",File.DirInternal&theDir, nombreDB) - File.Copy(p,"errorLog.db",File.DirInternal&theDir,"kell_errorLog.db") - ToastMessageShow("BD copiada a " & File.DirInternal&theDir, False) - Catch - Try - Private nombreDB As String = $"kell_${Starter.rutaPreventa}_kmt.db"$ - File.Copy(p,"kmt.db", safeDir, nombreDB) - File.Copy(p,"errorLog.db", safeDir,"kell_errorLog.db") - ToastMessageShow("BD copiada a " & safeDir, False) - Catch - ToastMessageShow("No se puedo copiar la base de datos.", False) - End Try -' ToastMessageShow("No se pudo hacer la copia: "&LastException, True) - End Try - If Starter.logger Then Log("rootExternal="&p) - If Starter.logger Then Log("safe="&safeDir) - Else - ToastMessageShow("Sin permisos", False) - End If -End Sub - -'Hace visible el panel con los parametros "Top" y "Left" dados -Sub panelVisible(panel As Panel, top As Int, left As Int) 'ignore - panel.BringToFront - panel.Visible = True - panel.Top = top - panel.Left = left -End Sub - -'Oculta el panel especificado y lo manda al fondo -Sub panelOculto(panel As Panel) 'ignore - panel.SendToBack - panel.Visible = False -End Sub - -'Centra una etiqueta dentro de un elemento superior -Sub centraEtiqueta(elemento As Label, anchoElementoSuperior As Int) 'ignore - elemento.Left = Round(anchoElementoSuperior/2)-(elemento.Width/2) -End Sub - -'Centra un panel dentro de un elemento superior -Sub centraPanel(elemento As Panel, anchoElementoSuperior As Int) 'ignore - elemento.Left = Round(anchoElementoSuperior/2)-(elemento.Width/2) -End Sub - -Sub centraEditText(elemento As EditText, anchoElementoSuperior As Int) 'ignore - elemento.Left = Round(anchoElementoSuperior/2)-(elemento.Width/2) -End Sub - -'Centra una barra de progreso dentro de un elemento superior -Sub centraProgressBar(elemento As ProgressBar, anchoElementoSuperior As Int) 'ignore - elemento.Left = Round(anchoElementoSuperior/2)-(elemento.Width/2) -End Sub - -Sub insertaEnErrores(error As String) 'ignore - If Not(Starter.errorLog.IsInitialized) Then revisaBD - Starter.errorLog.ExecNonQuery2("INSERT INTO errores(fecha, error) VALUES (?,?)", Array As Object (fechaKMT(DateTime.now), error)) -End Sub - -'Saca el usuario de la tabla USUARIOA -Sub dameUsuarioDeDB As String 'ignore - Private c As Cursor - Private u As String = "SinUsuario" - If Not(Starter.skmt.IsInitialized) Then revisaBD - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - If c.RowCount > 0 Then u = c.GetString("USUARIO") - c.Close - Return u -End Sub - -'Regresa el tiempo transcurrido entre la primera vez que se llama (paso 1) y la segunda (paso 2), usa el mapa global "Main.tiempos" -Sub cronoX(thisCrono As String, paso As Int) As String 'ignore - If paso = 1 Then - Starter.tiempos.Put(thisCrono, DateTime.Now) - Else - Return $"Tiempo transcurrido ${thisCrono}: ${DateTime.Now-Starter.tiempos.Get(thisCrono)} "$ - End If -End Sub - -'Cierra todas las actividades y sale de la aplicacion (Android 4.1+ - API 16+) -Sub cierraActividades - If Starter.logger Then Log("closing activities") - Dim jo As JavaObject - jo.InitializeContext - jo.RunMethod("finishAffinity", Null) -End Sub - -'Regresa el cliente actual de CUENTAA como un string, y si no encuenta nada regresa "". -Sub clienteActual As String - Private x As String = "" - Private c As Cursor = Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - If c.RowCount > 0 Then - c.Position = 0 - x = c.GetString("CUENTA") - End If - c.Close - Return x -End Sub - -'Marca un cliente como impreso, lo agrega a la tabla "CLIENTE_IMPRESO" y lo actualiza en "kmt_info" (IMPRESION). -Sub ponImpreso (cliente As String) - Starter.skmt.ExecNonQuery2("UPDATE kmt_info set IMPRESION = 1 where CAT_CL_CODIGO = ?", Array As String(cliente)) - Starter.skmt.ExecNonQuery2("insert into CLIENTE_IMPRESO (CI_CUENTA) values (?)",Array As String(cliente)) - If Starter.logger Then Log($"Cliente ${cliente} agegado a CLIENTE_IMPRESO y actualizado en kmt_info."$) -End Sub - -'Guarda el nombre de la ultima actividad mostrada "ultimaActividad(Me)". -Sub ultimaActividad(ea As String) - Private x() As String = Regex.Split("\.", ea) - Starter.ultimaActividad = "" - If x.Length = 4 Then - Starter.ultimaActividad = x(3) - File.WriteString(File.DirInternal, "ua.txt", Starter.ultimaActividad) - End If -' If File.Exists(File.DirInternal, "ua.txt") Then Starter.ultimaActividad = File.ReadString(File.DirInternal, "ua.txt") -' if starter.logger then LogColor($"${DateTime.Now} - Ultima actividad=${Starter.ultimaActividad}"$, Colors.Magenta) -End Sub - -'Guarda el nombre de la ultima actividad en base de datos "ultimaActividad(Me)". -Sub guardaUltimaActividadBD(ua As String) -' if starter.logger then LogColor($"Guardamos ultima actividad '${ua}'"$, Colors.Blue) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("ULTIMOMODULO")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("ULTIMOMODULO", ua)) -End Sub - -'Regresa la ultima actividad guardada en base de datos. -Sub traeUltimaActividadBD As String -' if starter.logger then LogColor("Buscamos ultima actividad en BD", Colors.Magenta) - Private c As Cursor - Private x As String - c = Starter.skmt.ExecQuery("select CAT_VA_VALOR from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'ULTIMOMODULO'") - If c.RowCount > 0 Then - c.Position = 0 - x = c.GetString("CAT_VA_VALOR") -' if starter.logger then Log("Encontramos: " & x) - End If - c.Close - Return x -End Sub - -'Guarda el nombre de la pagina en base de datos la muestra. -Sub iniciaActividad(ia As String) -' if starter.logger then LogColor($"Guardamos en BD '${ia}'"$, Colors.Yellow) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("ULTIMOMODULO")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("ULTIMOMODULO", ia)) -' StartActivity(ia) - B4XPages.ShowPage(ia) - If Starter.logger Then LogColor("Iniciamos --> " & ia, Colors.Blue) -End Sub - -'Guarda el nombre de la actividad en base de datos e inicia la actividad. -Sub iniciaActividad2(ia As String) -' if starter.logger then LogColor($"Guardamos en BD '${ia}'"$, Colors.Yellow) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("ULTIMOMODULO")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("ULTIMOMODULO", ia)) - StartActivity(ia) -' B4XPages.ShowPage(ia) -' if starter.logger then LogColor("Iniciamos --> " & ia, Colors.Blue) -End Sub - -'Agrega la variable al mapa de sesion. -Sub agregaASesion(nombre As String, valor As String) - Starter.sesion.put(nombre, valor) -' if starter.logger then Log(Starter.sesion) -End Sub - -'Regresa una lista con las coordenadas ( latitud y longitud) guardadas en BD. -Sub traeCoordsDeBD As List - Private c As Cursor - c=Starter.skmt.ExecQuery("SELECT HGLAT as HGLAT, HGLON as HGLON FROM HIST_GPS") - c.Position=0 - Private lon As String = c.GetString("HGLON") - Private lat As String = c.GetString("HGLAT") - c.Close - Private coords As List - coords.Initialize - coords.Add(lat) - coords.Add(lon) - Return coords -End Sub - -'Modifica el ancho y alto de un panel dado con el ancho y alto proporcionados. -Sub panelAnchoAlto(p As Panel, w As Int, h As Int) - If Starter.logger Then Log($"panel:${p}, alncho=${w}, alto=${h}"$) - p.Top = 0 - p.Left = 0 - p.Width = w - p.Height = h -End Sub - -'Regresa el dia de HOY como string, en español y mayusculas. -Sub dameDiaSemana As String - Private ds As String = DateTime.GetDayOfWeek(DateTime.Now) - If ds = "1" Then - ds = "DOMINGO" - else if ds = "2" Then - ds = "LUNES" - else if ds = "3" Then - ds = "MARTES" - else if ds = "4" Then - ds = "MIERCOLES" - else if ds = "5" Then - ds = "JUEVES" - else if ds = "6" Then - ds = "VIERNES" - Else - ds = "SABADO" - End If - Return ds -End Sub - -'Regresa cuentos clientes fuera de frecuencia hay con venta. -Sub dameClientesFueraDeFrecuencia As String - Private dia_visita As String = dameDiaSemana - Private f As Cursor = Starter.skmt.ExecQuery("SELECT CAT_VA_VALOR as dia_visita FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = 'DIA_VISITA'") - If f.RowCount > 0 Then - f.Position=0 - dia_visita = f.GetString("dia_visita") - End If -' Log("-> "&dia_visita) - f = Starter.skmt.ExecQuery("Select count(distinct PE_CLIENTE) as cff FROM kmt_info INNER JOIN PEDIDO ON kmt_info.CAT_CL_CODIGO = PEDIDO.PE_CLIENTE WHERE kmt_info.CAT_CL_DIAS_VISITA <> '"&dia_visita&"'") - f.Position=0 -' Log(f.GetString("cff")) - Private cff As String = f.GetString("cff") - f.Close - Return cff -End Sub - -'Regresa el almacen actual de la base de datos. -Sub traeAlmacen As String 'ignore - Private c As Cursor - Private a As String - c=Starter.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") - c.Position = 0 - a = C.GetString("ID_ALMACEN") - c.Close - Return a -End Sub - -'Regresa la ruta de venta actual de la base de datos. -Sub traeRuta As String 'ignore - Private c As Cursor - Private r As String - c=Starter.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - r = "0" - If c.RowCount > 0 Then - c.Position=0 - r = c.GetString("CAT_CL_RUTA") - End If - c.Close - Return r -End Sub - -'Regresa el cliente actual desde la base de datos -Sub traeCliente As String 'ignore - Private c As Cursor - Private cl As String - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - cl = c.GetString("CUENTA") - c.Close - Return cl -End Sub - -Sub revisaimpreso (cliente As String) As Boolean - Dim c1, c2 As Cursor - Dim yaimpreso As Boolean = False - c1 = Starter.skmt.ExecQuery2("select count(*) as IMPRESOS FROM kmt_info WHERE IMPRESION = 1 AND CAT_CL_CODIGO = ?", Array As String(cliente)) - c2 = Starter.skmt.ExecQuery2("SELECT COUNT(*) AS IMPRESO2 FROM CLIENTE_IMPRESO WHERE CI_CUENTA= ?",Array As String(cliente)) - c1.Position = 0 - c2.Position = 0 - - If c1.GetString("IMPRESOS") <> 0 Or c2.GetString("IMPRESO2") <> 0 Then - yaimpreso = True - End If - Return yaimpreso -End Sub \ No newline at end of file diff --git a/B4A/Tracker.bas b/B4A/Tracker.bas deleted file mode 100644 index 19e084e..0000000 --- a/B4A/Tracker.bas +++ /dev/null @@ -1,237 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Service -Version=11 -@EndOfDesignText@ -#Region Service Attributes - #StartAtBoot: True -#End Region -'****************************************************************************** -'No olvidar agregar esta linea al editor de manifiesto: -' SetServiceAttribute(Tracker, android:foregroundServiceType, "location") -' -'En Starter agregar estas lineas en Process_Globals -' Public rp As RuntimePermissions -' Public FLP As FusedLocationProvider -' Private flpStarted As Boolean -' -'En Main agregar estas lineas a Activity_Resume -' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION) -' Wait For Activity_PermissionResult (Permission As String, Result As Boolean) -' If Result Then -' StartService(Tracker) -' Log("Start Tracker") -' Else -' ToastMessageShow("No permission", True) -' End If -' -'Se necesitan las librerias FusedLocationProvider, GPS, Phone y RunTimePermissions -' -'Y en Main agregar estas dos lineas: -'#AdditionalJar: com.android.support:support-v4 -'#AdditionalJar: com.google.android.gms:play-services-location - -Sub Process_Globals -' Private nid As Int = 1 - Private Tracking As Boolean - Private lock As PhoneWakeState - 'Para FusedLocationProvider (2 lineas) - Public FLP As FusedLocationProvider - Dim actualLR As LocationRequest - Private flpStarted As Boolean -' Dim locRequest As String - Dim UUGCoords As Location 'Ultima Ubicacion Guardada -' Dim trackerActividad, pushServiceActividad As String - Dim logger As Boolean -End Sub - -Sub Service_Create - Service.AutomaticForegroundMode = Service.AUTOMATIC_FOREGROUND_NEVER 'we are handling it ourselves - UUGCoords.Initialize - logger = False - 'Para FusedLocationProvider (2 lineas) - FLP.Initialize("flp") - FLP.Connect - lock.PartialLock - StartFLP -End Sub - -Sub flp_ConnectionSuccess -' If logger Then Log("Connected to location provider") - 'FLP.GetLastKnownLocation -End Sub - -Sub flp_ConnectionFailed(ConnectionResult1 As Int) - If logger Then Log("Failed to connect to location provider") -End Sub - -Sub flp_ConnectionSuspended(ConnectionResult1 As Int) - If logger Then Log("FLP conection suspended") - StartFLP -End Sub - -Sub Service_Start (StartingIntent As Intent) - LogColor("Iniciando Tracker ...", Colors.Green) - Service.StopAutomaticForeground -' Service.StartForeground(51042, Subs.notiLowReturn("Kelloggs", "Activo", 51042)) - StartServiceAt(Me, DateTime.Now + 10 * DateTime.TicksPerMinute, True) - Track - If Not(Starter.Logger) Then logger = False -End Sub - -Public Sub Track - If logger Then Log("Inicia Track - Tracking : "&Tracking) - If Tracking Then -' Log(actualLR.GetSmallestDisplacement) - Return 'Si ya estamos "rastreando" no hacemos nada (return) - End If - If Starter.rp.Check(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION) = False Then - If logger Then Log("Sin permisos de ublicación.") - Return - End If - StartFLP 'Iniciamos FusedLocationProvider - Tracking = True -End Sub - -Public Sub StartFLP - If logger Then Log("StartFLP - flpStarted="&flpStarted) - Do While FLP.IsConnected = False - Sleep(500) - If logger Then Log("sleeping") - Loop -' If flpStarted = False Then -' If logger Then Log("RequestLocationUpdates") - FLP.RequestLocationUpdates(CreateLocationRequest) 'Buscamos ubicacion - If logger Then LogColor("Buscamos ubicacion (movimientoMinimo = "&actualLR.GetSmallestDisplacement&")", Colors.Magenta) -' If logger Then Log(actualLR.GetSmallestDisplacement) - flpStarted = True -' End If -End Sub - -Public Sub StartFLP2 - If logger Then Log("StartFLP2 - flpStarted="&flpStarted) - Do While FLP.IsConnected = False - Sleep(500) - If logger Then Log("sleeping") - Loop - dameUltimaUbicacionConocida 'Regresamos ultima ubicacion conocida - FLP.RequestLocationUpdates(CreateLocationRequest2) 'Buscamos ubicacion 2 peticiones - If logger Then LogColor("Buscamos ubicacion (movimientoMinimo = "&actualLR.GetSmallestDisplacement&")", Colors.Magenta) -' If logger Then Log(actualLR.GetSmallestDisplacement) -End Sub - -Private Sub CreateLocationRequest As LocationRequest -' If logger Then Log("CreateLocationRequest") - Dim lr As LocationRequest - lr.Initialize - lr.SetInterval(10000) 'Intervalo deseado para actualizaciones de ubicacion - lr.SetFastestInterval(lr.GetInterval / 2) 'Intervalo minimo para actualizaciones de ubicacion - lr.SetSmallestDisplacement(75) 'Solo registra cambio de ubicacion si es mayor a XX mts - lr.SetPriority(lr.Priority.PRIORITY_HIGH_ACCURACY) - actualLR=lr - Return lr -End Sub - -Private Sub CreateLocationRequest2 As LocationRequest - If logger Then Log("Iniciamos CreateLocationRequest2") - Dim lr As LocationRequest - lr.Initialize - lr.SetInterval(2000) 'Intervalo deseado para actualizaciones de ubicacion - lr.SetFastestInterval(lr.GetInterval / 2) 'Intervalo minimo para actualizaciones de ubicacion - lr.setNumUpdates(2) 'Solicitamos solo 2 actualizaciones con estos parametros - lr.SetSmallestDisplacement(1) 'Solo registra cambio de ubicacion si es mayor a XX mts - lr.SetPriority(lr.Priority.PRIORITY_HIGH_ACCURACY) - actualLR=lr - Return lr -End Sub - -Sub dameUltimaUbicacionConocida - If FLP.GetLastKnownLocation.IsInitialized Then 'Mandamos ultima ubicacion guardada -' If logger Then LogColor($"Mandamos UUC "${Subs.fechaKMT(FLP.GetLastKnownLocation.Time)}|Acc:$0.2{FLP.GetLastKnownLocation.Accuracy}|$0.8{FLP.GetLastKnownLocation.Latitude}|$0.8{FLP.GetLastKnownLocation.Longitude}|Spd:$0.2{FLP.GetLastKnownLocation.Speed}|"$, Colors.RGB(255,112,35)) -' Dim coords As String = FLP.GetLastKnownLocation.Latitude&","&FLP.GetLastKnownLocation.Longitude&","&formatoFecha(FLP.GetLastKnownLocation.Time) -' CallSubDelayed2(FirebaseMessaging,"mandamosLoc",coords) -' Subs.mandamosLoc(coords) - End If -End Sub - -Public Sub StopFLP - 'Log("StopFLP") - If flpStarted Then - FLP.RemoveLocationUpdates 'Eliminamos todas las solicitudes de ubicacion - flpStarted = False - End If -End Sub - -Sub flp_LocationChanged (Location1 As Location) - LogColor($"Location changed lat=${Location1.Latitude}, lon=${Location1.Longitude}, Acc=${Location1.Accuracy}, SD=$1.0{actualLR.GetSmallestDisplacement}"$, Colors.green) - UUGCoords = Location1 -' If logger Then Log("SmallestDisplacement="&actualLR.GetSmallestDisplacement) -' CallSub2(Starter, "GPS_LocationChanged", Location1) -' CallSub2(gestion, "GPS_LocationChanged", Location1) - Starter.lat_gps = Location1.Latitude - Starter.lon_gps = Location1.Longitude - Starter.ubicacionActual = Location1 - 'Si las coordenadas estan en CERO o NULL entonces usamos "GetLastKnownLocation" - If Starter.lat_gps = 0 Or Starter.lat_gps = Null And FLP.GetLastKnownLocation.IsInitialized Then - Starter.lat_gps = FLP.GetLastKnownLocation.Latitude - Starter.lon_gps = FLP.GetLastKnownLocation.Longitude - Starter.ubicacionActual = FLP.GetLastKnownLocation - LogColor("Coords en CERO - Guardamos ultima ubicacion conocida", Colors.red) - End If -' Starter.ubicacionActual.Latitude = Starter.lat_gps -' Starter.ubicacionActual.Longitude = Starter.lon_gps -' Starter.ubicacionActual.Accuracy = Location1.Accuracy - - '/////// para la ultima ubicacion FL - Dim sDate,sTime As String - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - If Starter.lat_gps <> 0 And Starter.lat_gps <> Null Then - Try - Starter.skmt.ExecNonQuery("DELETE FROM HIST_GPS") - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_GPS (HGDATE, HGLAT, HGLON) VALUES(?,?,?) ", Array As Object (sDate & sTime, Starter.lat_gps, Starter.lon_gps)) - Catch - If logger Then Log("Error al borrar o insertar nuevas coordendas en HIST_GPS") - End Try - End If - - Dim origFormat As String = DateTime.TimeFormat 'Guardamos formato de fecha. - DateTime.TimeFormat = "HHmmss" ' Modificamos formato de fecha. - Dim minsDif As Int = DateTime.Time(DateTime.Now) - Starter.ultimaActualizacionGPS -' If logger Then Log("UltimaAct="&Starter.ultimaActualizacionGPS&" MinsDif="&minsDif) - If Location1.Accuracy < 100 And minsDif > 240 Then 'Si precision de 100 y 4 min transcurridos manda a web. - If logger Then Log("Actualizamos Ubicacion Web") - CallSubDelayed(Starter, "ENVIA_ULTIMA_GPS") - End If - DateTime.TimeFormat = origFormat 'Regresamos formato de fecha original. - B4XPages.MainPage.cliente.GPS_LocationChanged(Location1) - If Not(IsPaused(MAPA_RUTAS)) Then CallSubDelayed2(MAPA_RUTAS, "GPS_LocationChanged", Location1) -End Sub - -Sub CreateNotification (Body As String) As Notification 'ignore - Dim notification As Notification - notification.Initialize2(notification.IMPORTANCE_LOW) - notification.Icon = "icon" - notification.SetInfo("This", Body, Main) - Return notification -End Sub - -Sub Service_Destroy - If Tracking Then - StopFLP - End If - Tracking = False - lock.ReleasePartialLock -End Sub - -Sub formatoFecha(fecha As String) As String 'ignore 'Convierte una fecha al formato yyMMddHHmmss -' Log(fecha) - Dim OrigFormat As String = DateTime.DateFormat 'save orig date format - DateTime.DateFormat="yyMMddHHmmss" - Dim lastUpdate As String=DateTime.Date(fecha) - DateTime.DateFormat=OrigFormat 'return to orig date format -' Log(lastUpdate) - Return lastUpdate -End Sub \ No newline at end of file diff --git a/B4A/errorManager.bas b/B4A/errorManager.bas deleted file mode 100644 index 1b2e9a0..0000000 --- a/B4A/errorManager.bas +++ /dev/null @@ -1,165 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Activity -Version=10.2 -@EndOfDesignText@ -#Region Activity Attributes - #FullScreen: False - #IncludeTitle: True -#End Region -'****************************************************************************** -'Este modulo intercepta los errores de la aplicación mediante "Starter.Application_Error" y muestra una pantalla -'con el log del error y lo manda al servidor con un query de DBRequestManager, se necesita que exista el query -'en el "config.properties" llamado "guardaErrores" y que tenga el siguiente texto: -' -'sql.guardaErrores=INSERT INTO KELLOGGS.PUSH_INFO (ID, RUTA, FECHA, DATOS) VALUES((?),(?),(?),(?)) -' -'Agregar estas lineas a "Starter.Process_Globals" -' 'Para los Logs -' Dim logs As StringBuilder -' Private logcat As LogCat -' -'Agregar estas lineas a "Starter.Service_Create" -' 'Para los Logs -' #if RELEASE -' logcat.LogCatStart(Array As String("-v","raw","*:F","B4A:v"), "logcat") -' #end if -' logs.Initialize -' -'Agregar este Sub a "Starter" -' -'Return true to allow the OS default exceptions handler to handle the uncaught exception. 'Para los Logs -'Sub Application_Error (Error As Exception, StackTrace As String) As Boolean -' 'wait for 500ms to allow the logs to be updated. -' Dim jo As JavaObject -' Dim l As Long = 500: jo.InitializeStatic("java.lang.Thread").RunMethod("sleep", Array(l)) 'Sleep 500ms -' logcat.LogCatStop -' logs.Append(StackTrace) -' Subs.revisaBD -' Subs.errorLog.ExecNonQuery2("INSERT INTO errores(fecha, error) VALUES (?,?)", Array As Object (Subs.fechaKMT(DateTime.now), logs)) -' StartActivity(errorManager) -' Return True -'End Sub -'****************************************************************************** - -Sub Process_Globals - 'These global variables will be declared once when the application starts. - 'These variables can be accessed from all modules. - -End Sub - -Sub Globals - 'These global variables will be redeclared each time the activity is created. - 'These variables can only be accessed from this module. -' Dim errorLog As SQL - Dim c As Cursor - Private p_principal As Panel - Private l_titulo As Label - Private svScroll As ScrollView - Private etText As EditText - Private c_continuar As Button - Private p_botones As Panel - Private b_salir As Button -End Sub - -Sub Activity_Create(FirstTime As Boolean) - 'Do not forget to load the layout file created with the visual designer. For example: - Activity.LoadLayout("errorManager") -End Sub - -Sub Activity_Resume - Dim elError As String = "" - Dim laFecha As String = "" -' svScroll.Initialize(500dip) -' Activity.AddView(svScroll, 0, 300, 100%x, 80%y) - p_principal.Height = Activity.Height - p_principal.Width = Activity.Width - svScroll.Width = Round(p_principal.Width * 0.9) - svScroll.Left = Round(p_principal.Width/2)-Round(svScroll.Width/2) - p_botones.Left = Round(p_principal.Width/2)-Round(p_botones.Width/2) - p_botones.Top = Activity.Height - (p_botones.Height + 80) - etText.Initialize("") - svScroll.Panel.AddView(etText, 0, 0, 90%x, 80%y) - etText.InputType = etText.INPUT_TYPE_NONE - etText.Gravity = Gravity.TOP - etText.SingleLine = False - etText.Wrap = False -' Dim lblText, edtText As StringBuilder - Dim lbl As Label - lbl.Initialize("") - Activity.AddView(lbl, 0, 300, 100%x, 100%y) 'ignore - etText.Text = "" - Subs.revisaBD - c = Subs.errorLog.ExecQuery("select * from errores order by fecha desc limit 1") - If c.RowCount > 0 Then - c.Position = 0 - elError = c.GetString("error") - laFecha = c.GetString("fecha") - etText.Text = elError - End If - c.Close - Dim usuario As String = "" - c = Starter.skmt.ExecQuery("select usuario from usuarioa") - If c.RowCount > 0 Then - c.Position = 0 - usuario = c.GetString("USUARIO") - End If - -' Log("++++++" & Starter.logsStr) -' etText.Text = etText.Text & Starter.logsStr -' lbl.TextSize = etText.TextSize -' lbl.Text = etText.Text -' Dim su As StringUtils -' Dim edheight As Int = su.MeasureMultilineTextHeight(lbl, lbl.Text) -' lbl.RemoveView -' etText.Height = edheight -' svScroll.Panel.Height = edheight - svScroll.Height = Round(Activity.Height * 0.9) -' Log(edheight) - - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "guardaErrores" - cmd.Parameters = Array As Object(laFecha, usuario&"|"&Starter.rutaV, laFecha, elError) - Log($"Mandamos: ${Subs.fechaKMT(DateTime.Now)}, |${usuario}|, ${Subs.fechaKMT(DateTime.Now)}"$) - Starter.reqManager.ExecuteCommand(cmd,"guardaErrores") -End Sub - -Sub Activity_Pause (UserClosed As Boolean) - -End Sub - -Sub JobDone(Job As HttpJob) - If Job.Success = False Then - ToastMessageShow("Error: " & Job.ErrorMessage, True) - Else - LogColor("JobDone: '" & Starter.reqManager.HandleJob(Job).tag & "' - Registros: " & Starter.reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211110 - If Job.JobName = "DBRequest" Then - Dim result As DBResult = Starter.reqManager.HandleJob(Job) - If result.Tag = "guardaErrores" Then 'query tag - For Each records() As Object In result.Rows - For Each k As String In result.Columns.Keys - Log("GuardaErrores: " & k & ": " & records(result.Columns.Get(k))) - Next - Next - End If - End If - End If - Job.Release -End Sub - -Private Sub c_continuar_Click - B4XPages.ShowPage("Principal") -End Sub - -Private Sub b_salir_Click - cierraActividades -End Sub - -Sub cierraActividades - Log("closing activities") - Dim jo As JavaObject - jo.InitializeContext - jo.RunMethod("finishAffinity", Null) -End Sub \ No newline at end of file diff --git a/B4A/foto.bas b/B4A/foto.bas deleted file mode 100644 index 43b365c..0000000 --- a/B4A/foto.bas +++ /dev/null @@ -1,173 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Activity -Version=6.8 -@EndOfDesignText@ -#Region Activity Attributes - #FullScreen: False - #IncludeTitle: False -#End Region - -Sub Process_Globals - 'These global variables will be declared once when the application starts. - 'These variables can be accessed from all modules. - Dim ruta As String - Dim g As GPS - Private frontCamera As Boolean = False - Dim quien_llamo As String - Dim foto_g () As Byte - Dim foto_g1 () As Byte - Dim foto_g2 () As Byte - Dim foto_g3 () As Byte - Dim foto_g4 () As Byte -End Sub - -Sub Globals - Dim btnTakePicture As Button - Dim Panel1 As Panel -' Dim skmt As SQL - Dim c As Cursor - Dim cuenta As String - Dim lat_gps As String - Dim lon_gps As String - Private camEx As CameraExClass - Private i_foto As ImageView - Private b_guardar As Button -End Sub - -Sub Activity_Create(FirstTime As Boolean) - Activity.LoadLayout("foto") - Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA) - Wait For Activity_PermissionResult (Permission As String, Result As Boolean) - ruta = File.DirInternal -End Sub - -Sub Camera1_Ready (Success As Boolean) -' Log("Camara lista") - If Success Then - Dim ps As CameraSize - ps.Width =640'480 '1280 - ps.Height =480'360 '960 - camEx.SetPictureSize(ps.Width, ps.Height) - camEx.CommitParameters - Try - camEx.StartPreview - Catch - camEx.Release - B4XPages.ShowPage("CheckList") - End Try - Else - B4XPages.ShowPage("CheckList") - 'ToastMessageShow("Cannot open camera.", True) - End If -End Sub - -Sub Activity_Resume - i_foto.Visible = False - InitializeCamera - btnTakePicture.Enabled = True - b_guardar.Enabled = False -End Sub - -Sub Activity_Pause (UserClosed As Boolean) - camEx.Release -End Sub - -Sub GPS_LocationChanged (Location1 As Location) -' lat_gps=Location1.ConvertToSeconds(Location1.Latitude) -' lon_gps=Location1.ConvertToSeconds(Location1.Longitude) -' 'btnTakePicture.Enabled = True -' 's.ExecNonQuery2("INSERT INTO HIST_GPS (HGDATE,HGLAT, HGLON) VALUES(?,?,?) ", Array As Object (sDate & sTime, lat_gps, lon_gps)) -End Sub - -Private Sub InitializeCamera - camEx.Initialize(Panel1, frontCamera, Me, "Camera1") - frontCamera = camEx.Front -End Sub - -Sub Camera1_PictureTaken (Data() As Byte) -' Log("foto tomada") - btnTakePicture.Enabled = True - Dim filename As String = "2.jpg" - Dim dir As String = File.DirInternal - camEx.SavePictureToFile(Data, dir, filename) - camEx.StartPreview 'restart preview - i_foto.Visible = True - i_foto.Bitmap = LoadBitmap(File.DirInternal, "2.jpg") - If B4XPages.MainPage.cliente.TOMAR_FOTO = 1 Then - Dim InputStream1 As InputStream - InputStream1 = File.OpenInput(File.DirInternal, "2.jpg") - Dim OutputStream1 As OutputStream - OutputStream1.InitializeToBytesArray(500) - File.Copy2(InputStream1, OutputStream1) - foto_g = OutputStream1.ToBytesArray - End If - b_guardar.Enabled = True - camEx.Release - InitializeCamera - btnTakePicture.Enabled = True - 'CallSubDelayed(seleccion,"seleccion") -' StartActivity(fila) -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - ' I want to capture the key here so I return True - B4XPages.ShowPage("Principal") - 'Return True - End If - ' Returning False signals the system to handle the key - Return False -End Sub - -Sub b_guardar_Click - camEx.Release -' Log("liberamos camara") - 'If quien_llamo = "1" Then - Try - If quien_llamo = "1" Then - File.Copy(File.DirInternal, "2.jpg",File.DirInternal, "FOTO1.jpg") - Activity.Finish - B4XPages.ShowPage("CheckList") - else if quien_llamo = "2" Then - File.Copy(File.DirInternal, "2.jpg",File.DirInternal, "FOTO2.jpg") - Activity.Finish - B4XPages.ShowPage("CheckList") - else if quien_llamo = "3" Then - File.Copy(File.DirInternal, "2.jpg",File.DirInternal, "FOTO3.jpg") - Activity.Finish - B4XPages.ShowPage("CheckList") - else if quien_llamo = "4" Then - File.Copy(File.DirInternal, "2.jpg",File.DirInternal, "FOTO4.jpg") - Activity.Finish - B4XPages.ShowPage("CheckList") - End If - If B4XPages.MainPage.cliente.TOMAR_FOTO = 1 Then - c=Starter.skmt.ExecQuery("select cuenta from cuentaa") - c.Position = 0 - cuenta = c.GetString("CUENTA") - c.Close - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_FOTOS (HF_FOTO, HF_CUENTA, HF_IDENCUESTA) VALUES(?,?,?) ", Array As Object (foto_g,cuenta,B4XPages.MainPage.cliente.id_encuesta )) - Subs.iniciaActividad("Cliente") - End If - Catch - Msgbox("ERROR EN FOTO","") 'ignore - If B4XPages.MainPage.cliente.TOMAR_FOTO = 1 Then - Subs.iniciaActividad("Cliente") - Else - B4XPages.ShowPage("CheckList") - End If - End Try -End Sub - -Sub btnTakePicture_Click - btnTakePicture.Enabled = False - Dim ps As CameraSize - ps.Width =640'480 '1280 - ps.Height =480'360 '960 - camEx.SetPictureSize(ps.Width, ps.Height) - camEx.CommitParameters - camEx.TakePicture -End Sub \ No newline at end of file