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 LongitudRU = Starter.lon_gps LatitudRU = Starter.lat_gps ' 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 ''''''''''''' 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') 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)") 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") If LongitudRU < 0 Then LatitudRU= c2.GetDouble("CAT_CL_LONG") LongitudRU = c2.GetDouble("CAT_CL_LAT") End If 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 ''''''''''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') 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) ") 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") If LongitudRU < 0 Then LatitudRU= c2.GetDouble("CAT_CL_LONG") LongitudRU = c2.GetDouble("CAT_CL_LAT") End If 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 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 = 1 LongitudRU = c.GetDouble("CAT_CL_LONG") LatitudRU = c.GetDouble("CAT_CL_LAT") If LongitudRU < 0 Then LatitudRU= c.GetDouble("CAT_CL_LONG") LongitudRU = c.GetDouble("CAT_CL_LAT") End If End If ' Next c .Close 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