GENERACIÓN DE MAPAS CON MapInfo
Page 1 of 31
ÍNDICE
1.- Creación de mapas con MapInfo.................................................................3 1.1.- GENERACIÓN DE LA TABLA............................................................................................................3 1.2.- CREACIÓN DE PUNTOS...............................................................................................................11 1.3.- COMPROBACIÓN DE LOS MAPAS....................................................................................................14
Apéndice 1: ......................................................................................................16 CÓDIGOS SQL DE TABLAS Y VISTAS UTILIZADAS......................................................................................16
Apéndice 2: ......................................................................................................25 VENTANA DBMS DE M APINFO...........................................................................................................25
Apéndice 3: ......................................................................................................26 CREACIÓN DE TEMÁTICOS...................................................................................................................26
1.- Creación de mapas con MapInfo. Para una mayor sencillez y claridad se ha dividido el documento en dos apartados principales. Sin embargo, embargo, la generación generación de mapas requiere realizar los pasos indicados, indicados, de forma consecutiva, consecutiva, en ambos apartados.
1.1.- Generación de la tabla. En este primer apartado, se indican los pasos que hay que seguir para obtener la tabla con la información necesaria para generar los mapas. 1.- Abrir MapInfo. En general, al abrir MapInfo se obtienen las ventanas que se observan en la imagen siguiente.
1.1.- Seleccionar Cancel en el la ventana Quick Start. 1.2.- Si la ventana DBMS no aparece en el escritorio, consultar el APÉNDICE 2; en caso contrario, pasar al apartado 2.
Page 3 of 31
2.- Abrir una conexión DBMS a través de la ventana DBMS.
A continuación se abrirá la ventana Select Data Source.
3.- En la pestaña Machine Data Source de la ventana anterior, seleccionar el servidor en el que se encuentran los datos y pulsar OK. Como se muestra en la imagen, el servidor utilizado para almacenar los datos es SRV003.
Page 4 of 31
Después de lo anterior, se abrirá la ventana SQL Server Login que se muestra a continuación.
4.- Pulsar en Options>> y seleccionar la base de datos utilizada para generar la tabla; el resto de valores permanecen tal y como se ve en la imagen. Pulsar OK. En el ejemplo seguido en este documento se utilizará la base de datos UMTS_0806_50K_Z1.
Page 5 of 31
5.- La ventana que aparece a continucación muestra el contenido de la BBDD seleccionada.
En la parte superior, el botón Filter Tables permite seleccionar el contenido de la BBDD a mostrar. Para nuestros propósitos, la información necesaria para generar la tabla se obtendrá a través de una vista o directamente mediante la consulta a una tabla.
6.- En la ventana Open DBMS Table se selecciona la vista o la tabla que corresponda y se pulsa en Open. La vista o tabla seleccionada depende del tipo de mapa que se esté buscando. Hay tres casos: 6.1.- Mapas de cobertura UMTS. 6.2.- Mapas de eventos de llamadas 6.3.- Mapas MOSDL y MOSUL
Page 6 of 31
6.1.- Mapas de cobertura UMTS. En este caso, se tienen tantas vistas como operadores se quieran comparar. Los nombres de las vistas utilizadas son:
vlcc_UMTSMapCov_SampledTableScanner_Movistar vlcc_UMTSMapCov_SampledTableScanner_Orange vlcc_UMTSMapCov_SampledTableScanner_Vodafone Seleccionar la vista correspondiente y pulsar Open. Consultar el apéndice 1 para obtener más detalles. En la ventana Open DBMS Table, filtrando por views, se encuentran las vistas dentro de la base de datos seleccionada anteriormente.
6.2.- Mapas MOSDL y MOSUL En este caso, se tienen tantas vistas como operadores se quieran comparar para cada sentido. Para MOSDL, tenemos las vistas:
Vlcc_UMTSMapMOSDL_Movistar Vlcc_ UMTSMapMOSDL _Vodafone Vlcc_ UMTSMapMOSDL _Orange Para MOSUL, tenemos las vistas:
Vlcc_UMTSMapMOSUL_Movistar Vlcc_ UMTSMapMOSUL _Vodafone Vlcc_ UMTSMapMOSUL _Orange Seleccionar la vista correspondiente y pulsar Open.
Page 7 of 31
Consultar el apéndice 2 para obtener más detalles. En la ventana Open DBMS Table, filtrando por views, se encuentran las vistas dentro de la base de datos seleccionada anteriormente.
6.3.- Mapas de eventos de llamadas. En este caso se utiliza la tabla lcc_tCallAnalysisResults. Seleccionar esta tabla y pulsar Open. Consultar el apéndice 2 para obtener más detalles. En la ventana Open DBMS Table, filtrando por tables, se encuentra esta tabla dentro de la base de datos seleccionada anteriormente.
Page 8 of 31
7.- En la ventana Open DBMS Table Options : 7.1.- En el apartado MapInfo TAB file location , se tiene que indicar el directorio y el nombre del archivo .TAB que será generado; se recomienda dar un nombre corto pero suficientemente descriptivo. Por ejemplo, -para el caso de cobertura UMTS, MapCov_Movistar_Z1.TAB. -para el caso de MOSDL, MapMOSDL_Movistar_Z1.TAB -para el caso de MOSUL, MapMOSUL_Movistar_Z1.TAB -para el caso de eventos de llamadas, Events_Movistar_Z1.TAB 7.2.- Se pueden seleccionar dos modos de trabajo: Standard Mode o Expert Mode. En el primero, se puede filtrar tanto por columnas como por filas. El segundo permite introducir una consulta propia sobre la base de datos, así como establecer condiciones adicionales si éstas fueran necesarias. -para el caso de cobertura UMTS, se utiliza Standard Mode -para el caso de MOSDL, se utiliza Standard Mode -para el caso de MOSUL, se utiliza Standard Mode -para el caso de eventos de llamadas, se utiliza Expert Mode, ya que hay que añadir una condición adicional a la tabla. En este caso, añadir la condición para separar por operadores (ver apéndice 1).
Pulsar OK y esperar a que MapInfo indique que la tarea ha finalizado. MapInfo informa de la finalización del proceso mediante el siguiente mensaje o similar.
Page 9 of 31
Al mismo tiempo, se muestra la tabla creada por MapInfo. Esta tabla será la utilizada para la generación de los mapas.
Page 10 of 31
1.2.- Creación de puntos. 1.- Antes de iniciar la creación de puntos se debe: 1.1.- Desconectarse de la base de datos:
1.2.- Hacer un unlink DBMS de la tabla:
Page 11 of 31
2.- En el menú superior, seleccionar Table -> Create points, se abrirá la ventana que se muestra abajo.
En la ventana anterior:
1.- En Create Points for Table , se selecciona la tabla que se acaba de generar (el nombre dado en el punto 8.1 del apartado anterior). Siempre es el último nombre que aparece en la lista desplegable. 2.- En using Symbol se selecciona: el tipo y tamaño de fuente, el tipo y color del símbolo que se utilizará en el mapa. Valores típicos son los mostrados en la figura siguiente.
3.- Los valores de las coordenadas X e Y deben tomarse de las columnas apropiadas. Para X se toma la longitud Coordenada X Longitud Coordenada Y Latitud Page 12 of 31
4.- En Choose Projection , elegir la proyección Longitude/Latitude (WGS 84).
5.- Pulsar OK para terminar de generar el mapa. El mapa es totalmente generado cuando se cierra la ventana Status.
Page 13 of 31
1.3.- Comprobación de los mapas. Es conveniente comprobar los mapas para poder detectar cualquier posible inconsistencia o error: recorridos, diferencias entre operadores, étc. Para tener una idea aproximada de la apariencia de los mapas generados, se presentan las siguientes imágenes: - para el caso de cobertura UMTS el mapa sería como el de la figura.
- para el caso de MOSDL el mapa sería como el de la figura.
Page 14 of 31
- para el caso de MOSUL el mapa sería como el de la figura.
- para el caso de eventos de llamadas el mapa sería como el de la figura.
Page 15 of 31
Apéndice 1: Códigos SQL de tablas y vistas utilizadas. 1.- Códigos de las vistas necesarias para generar el mapa de cobertura UMTS: Existe una vista por cada operador: Movistar, Vodafone, Orange y Yoigo; los nombres de estas vistas son: • •
• •
vlcc_UMTSMapCov_SampledTableScanner_Movistar vlcc_UMTSMapCov_SampledTableScanner_Orange vlcc_UMTSMapCov_SampledTableScanner_Vodafone vlcc_UMTSMapCov_SampledTableScanner_Yoigo
Todas las vistas tienen la misma estructura y los campos de la tabla generada por la vista son los siguientes: • • • • • • • • • •
longitude latitude collectionname sessionId date entorno operator ecio rscp coverage
El tipo de cobertura (coverage) se clasifica en: indoor, outdoor y no coverage; y se determina en función del entorno en el que se realice la medida y los valores de EcIo y RSCP. La única diferencia entre las distintas vistas está en el canal seleccionado para poder distinguir entre los distintos operadores:
Operador seleccionado
Canales
Movistar Vodafone Orange Yoigo
10788-10838 10713-10763 10638-10688 10563-10613
Page 16 of 31
Para Movistar: vlcc_UMTSMapCov_SampledTableScanner_Movistar select longitude, latitude, lcc_sessions.collectionname, lcc_sessions.sessionId, convert(char(10), scanner.msgtime, 112) as 'date', lcc_position.entorno, case when channel when channel when channel when channel end as operator, ecio, rscp,
between between between between
10563 10638 10713 10788
and and and and
10613 10688 10763 10838
then then then then
'Yoigo' 'Orange' 'Vodafone' 'Movistar'
case when ((lcc_position.entorno = then 'indoor' when ((lcc_position.entorno = then 'indoor' when ((lcc_position.entorno = then 'indoor' when ((lcc_position.entorno = then 'indoor' when ((lcc_position.entorno = then 'outdoor' when ((lcc_position.entorno = then 'outdoor' when ((lcc_position.entorno = then 'outdoor' when ((lcc_position.entorno = then 'outdoor' when (lcc_position.entorno is else 'nocoverage'
'DU') and (-15<=ecio) and ( -73<=rscp)) 'U') and (-15<=ecio) and ( -79<=rscp)) 'SU') and (-15<=ecio) and ( -88<=rscp)) 'R') and (-15<=ecio) and ( -79<=rscp)) 'DU') and (-15<=ecio) and ( -97<=rscp)) 'U') and (-15<=ecio) and ( -98<=rscp)) 'SU') and (-15<=ecio) and (-100<=rscp)) 'R') and (-15<=ecio) and ( -98<=rscp)) null) then null
END AS coverage from dbo.lcc_msgWCDMAScannerSampled_prueba scanner, dbo.lcc_position, lcc_sessions where channel between 10788 and 10838 and scanner.posid = lcc_position.posid and lcc_sessions.sessionid=scanner.sessionid and lcc_sessions.valid = 1
Page 17 of 31
Para Vodafone: vlcc_UMTSMapCov_SampledTableScanner_Vodafone
select longitude, latitude, lcc_sessions.collectionname, lcc_sessions.sessionId, convert(char(10), scanner.msgtime, 112) as 'date', lcc_position.entorno, case when channel when channel when channel when channel end as operator, ecio, rscp,
between between between between
10563 10638 10713 10788
and and and and
10613 10688 10763 10838
then then then then
'Yoigo' 'Orange' 'Vodafone' 'Movistar'
case when ((lcc_position.entorno = then 'indoor' when ((lcc_position.entorno = then 'indoor' when ((lcc_position.entorno = then 'indoor' when ((lcc_position.entorno = then 'indoor' when ((lcc_position.entorno = then 'outdoor' when ((lcc_position.entorno = then 'outdoor' when ((lcc_position.entorno = then 'outdoor' when ((lcc_position.entorno = then 'outdoor' when (lcc_position.entorno is else 'nocoverage'
'DU') and (-15<=ecio) and ( -73<=rscp)) 'U') and (-15<=ecio) and ( -79<=rscp)) 'SU') and (-15<=ecio) and ( -88<=rscp)) 'R') and (-15<=ecio) and ( -79<=rscp)) 'DU') and (-15<=ecio) and ( -97<=rscp)) 'U') and (-15<=ecio) and ( -98<=rscp)) 'SU') and (-15<=ecio) and (-100<=rscp)) 'R') and (-15<=ecio) and ( -98<=rscp)) null) then null
END AS coverage from dbo.lcc_msgWCDMAScannerSampled_prueba scanner, dbo.lcc_position, lcc_sessions where channel between 10713 and 10763 and scanner.posid = lcc_position.posid and lcc_sessions.sessionid=scanner.sessionid and lcc_sessions.valid = 1
Page 18 of 31
Para Orange: vlcc_UMTSMapCov_SampledTableScanner_Orange
select longitude, latitude, lcc_sessions.collectionname, lcc_sessions.sessionId, convert(char(10), scanner.msgtime, 112) as 'date', lcc_position.entorno, case when channel when channel when channel when channel end as operator, ecio, rscp,
between between between between
10563 10638 10713 10788
and and and and
10613 10688 10763 10838
then then then then
'Yoigo' 'Orange' 'Vodafone' 'Movistar'
case when ((lcc_position.entorno = then 'indoor' when ((lcc_position.entorno = then 'indoor' when ((lcc_position.entorno = then 'indoor' when ((lcc_position.entorno = then 'indoor' when ((lcc_position.entorno = then 'outdoor' when ((lcc_position.entorno = then 'outdoor' when ((lcc_position.entorno = then 'outdoor' when ((lcc_position.entorno = then 'outdoor' when (lcc_position.entorno is else 'nocoverage'
'DU') and (-15<=ecio) and ( -73<=rscp)) 'U') and (-15<=ecio) and ( -79<=rscp)) 'SU') and (-15<=ecio) and ( -88<=rscp)) 'R') and (-15<=ecio) and ( -79<=rscp)) 'DU') and (-15<=ecio) and ( -97<=rscp)) 'U') and (-15<=ecio) and ( -98<=rscp)) 'SU') and (-15<=ecio) and (-100<=rscp)) 'R') and (-15<=ecio) and ( -98<=rscp)) null) then null
END AS coverage from dbo.lcc_msgWCDMAScannerSampled_prueba scanner, dbo.lcc_position, lcc_sessions where channel between 10638 and 10688 and scanner.posid = lcc_position.posid and lcc_sessions.sessionid=scanner.sessionid and lcc_sessions.valid = 1
Page 19 of 31
2.- Códigos de las vistas necesarias para generar los mapas de MOSDL y MOSUL: 2.1.- Para MOSDL: exiten tantas vistas como operadores se estén comparando, los nombres de estas vistas son:
•
• •
Vlcc_UMTSMapMOSDL_Movistar Vlcc_UMTSMapMOSDL_Vodafone Vlcc_UMTSMapMOSDL_Orange
Todas las vistas tienen la misma estructura y los campos de la tabla generada por la vista son los siguientes: • • • • • • • • • • • •
Longitude Latitude Provincia Zona Suministrador Direction operator cgi MOS QualityIndication chType Codec
Para poder diferenciar los diferentes operadores se utiliza el valor de CallingModule:
CallingModule
Operador
3 4 5
Orange Movistar Vodafone
Para fijar que se trata de MOS DL se utiliza el campo Direction de la tabla SampleSettingsInfo:
Direction 'B->A' 'A->B'
MOS DL MOS UL
Page 20 of 31
Para Movistar: Vlcc_UMTSMapMOSDL_Movistar SELECT Position.Longitude, Position.Latitude, FileList.CollectionName as Provincia, FileList.ASideLocation as Zona, FileList.BSideLocation as Suministrador, SampleSettingsInfo.Direction, CASE callingmodule WHEN '3' THEN 'Orange' WHEN '4' THEN 'Movistar' WHEN '5' THEN 'Vodafone' END as operator, NetworkInfo.cgi, ResultsLqAvg.Lq as MOS, TestInfo.QualityIndication, vChannelType.chType, vChannelType.Codec
FROM FileList, Sessions, TestInfo, SampleSettingsInfo, NetworkInfo, ResultsLqAvg, Position, vChannelType WHERE Sessions.Valid = 1 AND TestInfo.Valid = 1 AND FileList.FileId = Sessions.FileId AND TestInfo.SessionId = Sessions.SessionId AND TestInfo.SampleId = SampleSettingsInfo.SampleId AND ResultsLqAvg.TestId = TestInfo.TestId AND TestInfo.NetworkId = NetworkInfo.NetworkId AND TestInfo.posId = Position.PosId AND ResultsLqAvg.testid *=vChannelType.TestId AND SampleSettingsInfo.Direction = 'B->A' AND callingmodule=4
Page 21 of 31
Para Vodafone: Vlcc_UMTSMapMOSDL_Vodafone
SELECT Position.Longitude, Position.Latitude, FileList.CollectionName as Provincia, FileList.ASideLocation as Zona, FileList.BSideLocation as Suministrador, SampleSettingsInfo.Direction, CASE callingmodule WHEN '3' THEN 'Orange' WHEN '4' THEN 'Movistar' WHEN '5' THEN 'Vodafone' END as operator, NetworkInfo.cgi, ResultsLqAvg.Lq as MOS, TestInfo.QualityIndication, vChannelType.chType, vChannelType.Codec
FROM FileList, Sessions, TestInfo, SampleSettingsInfo, NetworkInfo, ResultsLqAvg, Position, vChannelType WHERE Sessions.Valid = 1 AND TestInfo.Valid = 1 AND FileList.FileId = Sessions.FileId AND TestInfo.SessionId = Sessions.SessionId AND TestInfo.SampleId = SampleSettingsInfo.SampleId AND ResultsLqAvg.TestId = TestInfo.TestId AND TestInfo.NetworkId = NetworkInfo.NetworkId AND TestInfo.posId = Position.PosId AND ResultsLqAvg.testid *=vChannelType.TestId AND SampleSettingsInfo.Direction = 'B->A' AND callingmodule =5
Page 22 of 31
Para Orange: Vlcc_UMTSMapMOSDL_Orange
SELECT Position.Longitude, Position.Latitude, FileList.CollectionName as Provincia, FileList.ASideLocation as Zona, FileList.BSideLocation as Suministrador, SampleSettingsInfo.Direction, CASE callingmodule WHEN '3' THEN 'Orange' WHEN '4' THEN 'Movistar' WHEN '5' THEN 'Vodafone' END as operator, NetworkInfo.cgi, ResultsLqAvg.Lq as MOS, TestInfo.QualityIndication, vChannelType.chType, vChannelType.Codec
FROM FileList, Sessions, TestInfo, SampleSettingsInfo, NetworkInfo, ResultsLqAvg, Position, vChannelType WHERE Sessions.Valid = 1 AND TestInfo.Valid = 1 AND FileList.FileId = Sessions.FileId AND TestInfo.SessionId = Sessions.SessionId AND TestInfo.SampleId = SampleSettingsInfo.SampleId AND ResultsLqAvg.TestId = TestInfo.TestId AND TestInfo.NetworkId = NetworkInfo.NetworkId AND TestInfo.posId = Position.PosId AND ResultsLqAvg.testid *=vChannelType.TestId AND SampleSettingsInfo.Direction = 'B->A' AND callingmodule =3
Page 23 of 31
2.1.- Para MOSUL: exiten tantas vistas como operadores se estén comparando, los nombres de estas vistas son:
• • •
Vlcc_UMTSMapMOSUL_Movistar Vlcc_ UMTSMapMOSUL _Vodafone Vlcc_ UMTSMapMOSUL _Orange
Se pueden realizar los mismos comentarios que en el caso anterior. En los códigos sólo cambia el valor de la última condición que para este caso sería: SampleSettingsInfo.Direction = 'B->A'
2.- Tabla utilizada para generar el mapa de eventos de llamadas: Para generar los mapas de eventos, fallos de establecimiento y caídas,se seleccionan todos los datos de la tabla lcc_tCallAnalysisResults. Se tomarán todos los datos contenidos en esta tabla pero separando los resultados y, en consecuencia, los mapas para cada operador. Para ello, basta añadir una condición al valor del campo CallingModule, teniendo encuenta la siguiente tabla:
CallingModule
Operador
3 4 5
Orange Movistar Vodafone
Para Orange: Select * from lcc_tCallAnalysisResults where CallingModule = 3
Para Movistar: Select * from lcc_tCallAnalysisResults where CallingModule = 4
Para Vodafone: Select * from lcc_tCallAnalysisResults where CallingModule = 5
Page 24 of 31
Apéndice 2: Ventana DBMS de MapInfo. La ventana DBMS hace el trabajo mucho más rápido y cómodo. Para conseguir que ésta aparezca en el escritorio inicial de MapInfo se deben seguir los siguientes pasos: 1.- En el menú superior elegir Options -> Toolbars . 2.- En la ventana Toolbars Options, seleccionar mostrar la barra de herramientas DBMS. 3.- Pulsar OK y la ventana DBMS será mostrado en el escritorio.
Page 25 of 31
Apéndice 3: Creación de temáticos. 1.- En el menú superior, seleccionar Maps -> Create thematic Map. 2.- Se realizarán dos tipos de de temáticos: individual (Individual) y por rango (Ranges).
3.- Para el caso de cobertura UMTS se realizaría un temático individual, ya que la vista realiza una clasificación indoor, outdoor y no coverage. En la columna Type, se selecciona Individual y se pulsa Next.
By Javier Cameán
Page 26 of 31
4.- En el cuadro siguiente se tienen que elegir: la tabla para la cual se quiere hacer el temático y el campo utilizado para la creación del temático.
4.1.- Elección de la tabla: en el desplegable Table se elige la tabla.
4.2.- Elección del campo utilizado para generar el temático: en el desplegable Field se elige el campo. En este caso, cobertura UMTS, el campo debe ser coverage.
By Javier Cameán
Page 27 of 31
5.- Pulsar Next y esperar a que MapInfo termine de generar el temático.
6.- Finalmente, y antes de finalizar la generación del temático, hay que elegir colores y símbolos para cada uno de los valores individuales del temático (en el caso de cobertura UMTS: indoor, outdoor y no coverage).
By Javier Cameán
Page 28 of 31
6.1.- En el apartado Customize, seleccionar Styles. En el apartado Apply, seleccionar All Atributes, así se podrán cambiar tanto símbolos como colores para cada unos de los valores individuales. Presionar sobre el cuadro Style que se muestra en la imagen.
6.2.- En el cuadro Symbol Style, elegir: -
los símbolos que se utilizarán en la representación el tipo de fuente (elegir siempre MapInfo Symbols) y su tamaño el color utilizado para cada valor individual
Para los dos primeros puntos son valores normales los mostrados en la imagen. En cambio, el color estará en función de los criterios utilizados para cada valor individual.
By Javier Cameán
Page 29 of 31
7.- Por último, volver a la pantalla Create Thematic Map - Step 3 of 3 y pulsar OK.
A modo de ejemplo, la imagen siguiente muestra el mapa para el caso de cobertura UMTS pero con el temático generado.
En el caso de Cobertura UMTS, debería hacerse un temático para cada operador en cada base de datos.
By Javier Cameán
Page 30 of 31