Академический Документы
Профессиональный Документы
Культура Документы
08 – 05 – 2008
LOJA
ii
TEMARIO
Introducción…………………………………………………………………………… iii
1.1 Objetivos………………………………………………………………………. 2
1.2 Metodología……………………………………………………………………. 3
1.3 Requerimientos………………………………………………………………... 4
3.1 Conclusiones…………………………………………………………………….. 21
3.2 Recomendaciones………………………………………………………………. 23
Referencias………………………………………………………………………………. 25
iii
Índice de figuras
INTRODUCCION:
1.1 OBJETIVOS
1.2 METODOLOGIA
Con todo esto, se espera tener al final del mismo, un sistema catastral que
ayude al consultor a realizar tareas de investigación, actualización y manipulación de
datos de una forma rápida, donde en un mismo sistema se tenga presente los datos
y la información cartográfica, logrando un manejo eficiente de sus recursos con la
ayuda de un programa que posee información actualizada y visual de las redes
telefónicas de Loja.
1
Distrito 50: Es el sector comprendido entre las calles: Al norte con la calle Colón (con anexo hasta la
antigua ubicación de la Superintendencia de Compañía, al sur con la calle Miguel Riofrío, al este con la
Av. Emiliano Ortega y al oeste con la calle José Joaquín de Olmedo)
4
1.3 REQUERIMIENTOS:
- El programa debe ser accesible al usuario, donde el manejo del mismo no sea
complicado y la consulta a realizar no lleve demasiado tiempo. Esto representa
que la interfaz gráfica del programa debe ser lo más amigable posible con el
usuario.
- Los datos obtenidos como resultado de una consulta se presentarán una vez
realizada la misma, y no estar siempre a la vista.
Una vez establecidos los alcances del proyecto, el primer paso realizado fue
el de encontrar información relacionada al tema propuesto, la misma que al validarla
y ver sus aplicaciones, se las consideraría para el desarrollo del mismo o caso
contrario se las descartará.
permisos necesarios para trabajar en ello, debían ser autorizados por los
encargados del sistema en la central. Para lograr esto se realizaron las propuestas y
se realizo el envió de los oficios requeridos para obtener la información y permisos
requeridos, lo mismo que incluyó un viaje a Guayaquil para conversar con la gente
encargada del sistema, para presentar nuestro proyecto y solicitar la ayuda
correspondiente. Pero lamentablemente no se tuvo una respuesta inmediata y
positiva a nuestra solicitud, todo esto conllevo la inversión de mucho tiempo sin
resultados halagadores, influyendo totalmente a que no se cumpla con esta parte.
1 2 3
2
Central: Se entiende como central, a la división principal que se hace de la cuidad Loja, en base a la
creación de sus redes telefónicas principales, por ello se tiene la Central Norte, Central Centro y
Central Sur.
3
Distrito: Se entiende por distrito, al área que contiene una red telefónica secundaria, como es el caso
del Distrito 50, donde el mismo está dentro o pertenece a una Central.
11
(*.dxf); es decir, que permita abrir estos archivos en otro programa y nos ayude a
solucionar este problema de incompatibilidad. Este tipo de extensión está contenido
en el AutoCAD
Para ello utilizamos el ArcView, que nos servirá para cambiar de extensión y
manipular las tablas de atributos3 de cada mapa, lo que nos permitirá crear un nexo
que garantice la compatibilidad con el Visual Basic. Con esto, debemos cambiar
nuevamente de extensión para que estos se los pueda leer, logrando hacer este
cambio con la opción del ArcView llamada “Convertir a Shapefile” (Convert to
Shapefile), creándose los nuevos archivos, incluido la tabla de atributos, con la
extensión *.shp, propia de este programa, de esta forma podemos resolver esta
parte, permitiendo visualizarlos en el Visual Basic.
No es necesario tener todos los mapas que vamos a utilizar, ya que se los
puede ir creando de acuerdo a las necesidades o como se va avanzando; es decir,
que no es preciso tener esta parte para desarrollar lo demás, lo mejor es ir
avanzando conforme los requerimientos se presenten para evitar repeticiones.
3
Tabla de Atributos: Es una hoja, tipo Excel, donde se presentan las características o datos que
contiene un mapa, dichos datos están organizados en secciones denominados Campos. Este tiene una
extensión *.dbf, generada en el ArcView.
12
Microsoft Data Formatting Object Library 6.0 (SP4), a pesar de que algunas se
activan al instalar el Visual Basic, otros no lo hacen y por lo tanto es necesario
verificar, para evitar problemas al momento de programar o ejecutar el programa.
Central Norte
Central Sur
Central Centro
Para lograr que cada parte de este mapa se enlace con su correspondiente
información; es decir, que al escoger una determinada central, esté presente en otra
pantalla sus datos o contenido, para ello es necesario que cada parte que conforma
este mapa, haya sido dibujado como polígono y de esta forma poder enlazar los
mapas sin dificultades. Pero este detalle, por la falta de conocimiento, se convirtió en
un problema a resolver, porque al pasar la cartografía de AutoCAD a ArcView se
tenía que las líneas que lo conformaban, no eran del tipo que necesitamos y por lo
tanto no se logrará establecer el enlace entre mapas. Estos datos característicos se
los puede observar en la tabla de atributos del mapa; figura 2.3.
13
Figura 2.3: Tabla de atributos, del mapa de Centrales; donde el campo Shape indica el tipo de línea que
conforma dicho mapa.
Fuente: Autor
La primera parte se puede dejar con el shape de tipo polígono, sin afectar
para nada la ejecución y eficiencia del programa, y con el resto se puede trabajar
como esta.
Visual, denominado Option Button; , que nos permite crear el ícono para activarlo
y su correspondiente espacio de programación. Otra función necesaria, es la que
permita, al usuario, poder seleccionar un área determinada del mapa. Esto se lo
logra con la ayuda de la misma herramienta, empleada para la creación del zoom,
pero la programación de esta será otra. Con el uso de esta herramienta, podemos
utilizar al ratón (mouse) para que cumpla tareas diferentes, facilitando la movilidad
dentro del programa.
Figura 2.4: Primera Pantalla del Programa, presentando la ciudad de Loja y la división por Centrales.
Fuente: Autor
15
Figura 2.5: Segunda Pantalla del Programa, presentando la División Distrital de la Central escogida.
Fuente: Sistema de Catastro Pacifictel-Loja: Autor
Por ser una aplicación en donde los mapas se enlazan hasta llegar a la parte
más pequeña, y aquí esa parte es llegar a la información que contiene cada distrito,
se debe relacionar cada uno de estos (que se observan en la segunda pantalla del
programa), con su respectiva información.
Esta tercera pantalla; figura 2.6, presenta las opciones de búsqueda, a nivel
de número telefónico, a nivel de nombre del abonado y de dirección. Esto requiere
de la creación de una base de datos con información de la cartografía y de los datos
correspondientes. Para la creación de la base de datos, es necesario primero
organizar dichos datos con la ayuda del Microsoft Excel y guardarlos bajo la
extensión del Excel 2003, para poder importarlos al Microsoft Access y crear nuestra
base de datos. En el Access se crea una nueva base importando la información que
vamos a utilizar, ello implica que la información contenida como una hoja de Excel
se la importa con la ayuda de la herramienta Información Externa (External Data) y
se escoge la opción de Importar Archivo de Excel, y de esta forma vinculamos el
archivo que tiene la información de los abonados; a la que llamamos DT, con sus
campos de referencia: Central, Teléfono, Cliente (Abonado), Dirección, Armario,
Regleta, Par Primario, Estado, Caja y Par Secundario; los mismo que ayudan a
determinar las características y condiciones en que se encuentra la red. En cambio,
la información cartográfica se la importa de otro modo debido a la extensión que
presentan. A estas se las importa con un formato denominado dBASE File, que
trabaja con la extensión *.dbf; es decir, estamos importando la tabla de atributos del
mapa, para vincularla y que se pueda presentar en la pantalla, de esta forma
presentamos en el mismo sistema o lugar la parte gráfica y su correspondiente
información.
17
Figura 2.6: Tercera Pantalla del Programa, presentando información de la red del distrito y su ubicación.
Fuente: Autor
Por tener información actual y de rápido acceso, se logra tener una idea de la
realidad o condiciones en que se encuentra una red determinada y poder concluir si
18
Con la ayuda de este sistema se puede buscar datos propios de una red,
para este caso del Distrito 50, los mismos que dan información de las condiciones en
que esta se encuentra y cuáles son sus posibilidades de expansión, que es una de
las principales informaciones que necesita el usuario para satisfacer las necesidades
de los clientes.
Por medio del uso de este programa podemos llegar a saber la información
técnica de los abonados; es decir, conocer datos que indican a que Central, Caja de
distribución, Par primario y Par secundario está conectado dicho abonado, y cuál es
su ubicación dentro del distrito, permitiendo determinar su accesibilidad. Este
programa nos da también información del estado de las líneas (libres; L, ocupadas;
O, dañadas; D, reubicadas; R, mantenimiento; M) con lo cual podemos concluir si
hay espacio en la red para nuevas asignaciones de números o no es el caso y si
toca realizar cambios más profundos en la red para satisfacer las demandas de los
clientes y abonados. Con la ayuda de la visualización cartográfica se puede observar
la ubicación de las cajas y constatar si estas pueden abarcar nuevos abonados, ya
que por la posición de estas se determina si se puede dar o no una nueva línea
telefónica, o poder realizar una reubicación de esta.
Para que este sistema sea usado eficientemente y sin fallas, se debe tener
siempre presente que la información sea lo más actualizada y lo más cerca a la
realidad, como ya se ha expresado.
CAPITULO III
CONCLUSIONES Y RECOMENDACIONES
20
3.1 CONCLUSIONES:
herramienta de consulta, no solo para ver datos en forma textual, sino que
y trabajar con nuestros mapas, de una forma sencilla y efectiva para poder
por que las interfaces gráficas han mejorado o son una nueva forma de
que programas desarrollados en Visual Basic 6.0, como nuestro caso, sean
digital, o con información SIG, permite trabajar con tablas, cuyos datos están
tabulados, creando una relación entre la parte textual y gráfica del mapa y
manipulación, brindan una mejor seguridad para los datos (acceso restringido
23
o total), entre otras, que hacen que estos sean de agrado y uso en muchas
áreas profesionales.
3.2 RECOMENDACIONES:
importaciones de información.
realidad, con la que se cuenta. Esto para evitar datos erróneos, que
- Los datos (dirección y caja) referentes a las líneas que pertenecen a una red
REFERENCIA BIBLIOGRAFICA
TEMARIO
I. Introducción…………………………………………………………………….. 32
Índice de figuras
MANUAL DE USUARIO
SISTEMA DE CATASTRO TELEFONICO PARA PACIFICTEL
32
I. INTRODUCCION
El programa está conformado por una serie de pantallas, en donde cada una de estas
presenta información ya sea de tipo cartográfico o textual (datos de abonados o cajas de
distribución), con ciertas herramientas que permitirán tanto la navegación por las pantallas
como aquellas que nos permitirán realizar consultas en ellas.
Dentro de este programa se tiene un buscador principal de calles, con el cual podemos
relacionar las calles principales y secundarias, y de este modo conseguir la ubicación (central y
distrito) a la que pertenece, facilitando la búsqueda. Con los demás buscadores, presentes en
el programa, se puede realizar consultas a nivel de número telefónico, por cajas de distribución
o por campos (cliente, dirección, regleta, caja, armario, teléfono, central, estado), obteniendo de
este modo los principales campos de consulta.
A pesar de que algunas opciones o herramientas ofrecidas al usuario para su uso, están
siempre visibles en la pantalla, algunas de estas se las llama a través de los menús o con la
ayuda de una combinación de las teclas del teclado.
El manejo del programa no representa una gran dificultad, ya que la interfaz gráfica del
mismo es amigable para el usuario, pero como es un programa nuevo es necesario el manual
de usuario, esto para responder a cualquier consulta por parte de él, hasta que su
adiestramiento o conocimiento del programa no lo requiera.
33
En este punto, el usuario podrá hacer uso del “Busca Calles”, para tener una referencia
de la ubicación de las calles; es decir, saber en qué Central y Distrito están dichas calles. O la
otra opción es dirigirse al distrito deseado, siguiendo el proceso de mapas enlazados.
Calle a buscar
Calles ingresadas
Por medio de esta herramienta se puede buscar calles, sean estas principales o
secundarias, y poder determinar la ubicación de estas. Este está dividido en calles Principales y
calles Secundarias, una pantalla de texto para ingresar la calle a buscar (principal o
secundaria), un botón para activar la búsqueda y otro que nos permite recuperar las calles
ingresadas luego de realizar una búsqueda.
Para ver las calles ingresadas, sean principales o secundarias; fig. 3, lo que se hace es
colocar el puntero sobre el botón de activación; y con un clic se presentan las calles
35
ingresadas, y para escoger, se coloca el puntero sobre una de ellas, resaltándose, y con un clic
se escoge y se coloca en el visor respectivo, este proceso es igual para las calles principales y
secundarias. Escogido las calles a buscar nos valemos del botón “Buscar” para realizar la
consulta.
Se debe tener presente que las calles están divididas en principales y secundarias, y al
momento de hacer la consulta hay que tener presente este antecedente, para que al buscar el
resultado sea el deseado; es decir, buscar calles principales en su sección y secundarias en su
respectiva sección para evitar los errores.
Una vez que se ha encontrado o escogido las calles a ubicar, se emplea el botón de
“Buscar”, en este momento el programa relaciona la información brindada y en base a nuestra
base este nos brindara una respuesta positiva o negativa. Si las calles ingresadas están
correctas se presentará una cuadro; fig. 5, indicando la Central y Distrito al que están
relacionadas las calles ingresadas, de no ser el caso se visualizará un cuadro; fig. 6, como
respuesta negativa, donde al aceptar, se deberá hacer correctamente esta introducción de
información.
Para esta parte, el usuario no dependerá del “Busca Calles” y llegará al distrito deseado
por medio del enlace de mapas, como se lo resume a continuación; fig. 7.
38
1 2 3
Para llegar al distrito requerido, se debe escoger en la pantalla inicial “División por
Centrales”, una de las centrales: Norte, Centro o Sur, haciendo clic sobre los nombres de
los mismos, presentando la segunda pantalla “División por Distritos”; fig. 9, de la central
correspondiente.
40
Figura 9: Segunda Pantalla del Programa, presentando la División Distrital de la Central escogida.
Dentro de esta pantalla se presenta la central con su división distrital, y con ciertas
herramientas que ayudan al usuario a guiarse dentro de este. En la barra de menú, se tiene
la opción denominada “Opciones”, donde este presenta otras funciones de ayuda como:
Autoetiquetar, Full extent y Salir. A estas se las activa desde esta parte o con la ayuda de
las teclas junto a estas. Y también presenta otras, visibles directamente en la pantalla; fig.
10.
41
directamente, al hacer esto aparece una ventana de texto, la misma que al hacer clic en ,
se presenta una lista de los distritos de esta central, que al escoger uno de ellos se
presentará en ambas ventanas de texto, y al hacer clic en la ventana de texto superior y
luego sobre el mapa, se podrá ver la ubicación del mismo ya que este titilará por unos
segundos.
Para llegar a este, de ser el caso se puede usar la opción de “zoom/pan”, donde al
estar esta activa, podremos usar el botón izquierdo del ratón (mouse) para hacer
42
Para escoger una distrito, se debe activar la opción de “Escoger distrito” y colocar el
puntero cercano a una línea del contorno del distrito, para ello es recomendable hacer
acercamientos del distrito, para tener el contorno bien claro y poder escoger sin problemas.
Cuando se acerca el puntero sobre los distritos, se presentará el nombre de los mismos
para mayor referencia; fig. 11.
Una vez encontrado y escogido el distrito deseado, el programa abre una nueva
ventana, la tercera pantalla y última; fig. 11. En esta pantalla, se presenta al distrito
escogido con su red y división urbana, se tiene la barra de menús con las opciones
principales de: Opciones, Herramientas y Buscadores. Dentro de “Opciones”, se tiene las
funciones de: Observar todos los datos, Presentar Calles, Presentan Cajas y Salir. En la
opción de “Herramientas” se tiene: Zoom, Pan y Full extent. Con “Buscadores” se tiene las
opciones de consulta de: Buscar por campos, Buscar por teléfono y Buscar por cajas.
Las opciones mencionadas se activan desde el menú o con las teclas indicadas a un
lado de estas.
Antes de empezar a trabajar o realizar una consulta, se deberá presentar las calles y
luego las cajas, caso contrario no se las puede realizar, y no se hará ninguna búsqueda.
Para presentar las calles se lo hace desde el menú o con las teclas ctrl + C y luego las
cajas, igual desde el menú o con ctrl + B, de no ser de este modo se presentará un cuadro
de texto expresando que primero se debe presentar las calles. Realizado esto, se podrá
consultar sin mayores problemas
Las opciones de zoom se las activa desde el menú, con las teclas ctrl + Z o
directamente presionando la tecla izquierda del ratón, para hacer acercamientos. La opción
pan, desde el menú, con las teclas ctrl + P presionando la tecla central del ratón o
directamente con el botón derecho del mismo. Si al realizar un zoom o pan se pierde los
nombres de las calles y cajas, se debe volver a activarlas.
La función de “Observar todos los datos” permite observar todos los datos de los
abonados que están en dicho distrito, esto se lo activa por el menú o con las teclas ctrl + O.
44
La opción de “Buscar por cajas” permite visualizar los datos contenidos dentro de
una caja de distribución y al hacer doble clic a un lado de este comenzará a titilar, indicando
su posición, y el mapa se centra en referencia a la búsqueda. Luego de esto se presentan
los datos de la caja en la parte inferior. Al presentarse los datos la ventana del buscador
desaparece y se queda visible la ventana con los datos buscados; fig. 11.
La opción de “Buscar por teléfono”, activada desde el menú o con las teclas ctrl + T,
permite buscar a través del número telefónico, donde al activar la búsqueda titilará la caja
donde está ubicado y al final se presentan los datos requeridos. Sucediendo que al
presentarse los datos la ventana respectiva del buscador se quita; fig. 11.
En cambio al usar el “Buscador por campos”; fig. 11, activado desde el menú o con
la ayuda de las teclas ctrl + M, permite buscar por los campos de: Central, Cliente,
Dirección, Teléfono, Armario, Regleta, Estado y Caja. A pesar de que se pueda escoger
consultar por Par Primario y Par Secundario, este no está activado ya que no es relevante
para nuestros propósitos, y no se recomienda hacerlo. Activada esta opción el manejo es
Al igual que los anteriores al efectuar una búsqueda, la parte de donde proviene la
información titilará y se presentará luego. Si esta búsqueda representa la visualización de
varias opciones, se visualizará una ventana que nos indicará si deseamos seguir con la
búsqueda o detenerla. Si se continua, aparecerán las demás datos, preguntándonos si
deseamos seguir, hasta que se termine la búsqueda, pero de ser lo contrario esta se
detiene, desaparece la ventana respectiva y esta visible la ventana de datos.
45
La ventana de datos que se presenta con este tipo de búsqueda, solo deja ver dos
campos, el del campo de base de la búsqueda y del campo de la caja a la que pertenece.
Lo que no sucede con los otros buscadores. Pero al tener la referencia de la caja ya se
podrá presentar los datos con todos los campos.
La tabla donde se presentan los datos, como resultado de las búsquedas realizadas,
se puede cerrar con la ayuda del botón denominado “Cerrar tabla” y de ese modo no estará
todo el tiempo visible; fig. 12.
Figura 12: Pantalla de “División de Consulta Distrital”, visualizando los Buscadores, la Tabla de datos y el
mapa del distrito con su red, calles y cajas
Para salir del programa se lo puede hacer desde el menú, con la opción salir o con
la ayuda de las teclas ctrl + S, saliendo de todo el programa. Si lo que se desea es salir de
una pantalla, se la cierra desde la parte superior derecha.
46
En conclusión, con la ayuda de este manual, el usuario tendrá las pautas necesarias
para poder usar este programa o interactuar con el mismo, en sus inicios, hasta que el uso
de este se le sea familiar.
ANEXO 3
MANUAL PROGRAMADOR
48
TEMARIO
I. Introducción……………………………………………………………………....52
MANUAL DE PROGRAMADOR
SISTEMA DE CATASTRO TELEFÓNICO PARA PACIFICTEL
50
I. INTRODUCCIÓN
Con este manual, se brindan las pautas de ingreso de datos, desde un punto
mínimo (la extracción del distrito) hasta llegar a su visualización y uso en el
programa.
Dentro del Access se crea una base de datos, la misma que se la llama
“Base”, para este propósito. En esta se introducirá o se vinculará los
datos necesarios para presentar y visualizar la información de cada
distrito.
Al inicio se tiene que poner el código que permite hacer consultas por
número telefónico y se debe cambiar las partes resaltadas por el nombre
del distrito nuevo.
Toca ahora ingresar la parte que permite, buscar las cajas dentro de un
distrito, a través del buscador por campo. Cambiar lo resaltado.
pann = False
For i = 0 To Adodc2.Recordset.Fields.Count - 1
Combo1.AddItem Adodc2.Recordset.Fields(i).Name
Next i
End If
mlyr.Symbol.Color = moRed
Map1.Layers.Add mlyr
dibujar = True
Map1.Refresh
nombrecalles(iii) = registro.Fields("caja")
nombrecalles(iii) = registro.Fields("caja")
registro.MoveNext
iii = iii + 1
Wend
dibujar = True
Map1.Refresh
End If
Else
MsgBox "Es necesario adicionar las calles, vaya a opciones"
End If
nombrecallescalles(ii) = registro.Fields("calles")
nombrecallescalles(ii) = registro.Fields("calles")
registro.MoveNext
ii = ii + 1
Wend
58
dibujar = True
Map1.Refresh
End If
Una vez realizado todo el proceso indicado, se podrá trabajar con un nuevo
distrito, presentando tanto su parte gráfica y textual, permitiendo consultar y
observar la ubicación de donde provienen dichos datos. Este proceso es para cada
distrito nuevo a ingresar.
PRIMER PASO:
Una vez realizado esto, se abre esta carpeta y se escoge el icono con el nombre
“acmboot”, haciendo doble clic en este se empezará a instalar el programa, con la clave: 330-
9865824, vista en el archivo ID Producto de esta carpeta. De allí se siguen los pasos hasta que
se complete la instalación.
SEGUNDO PASO:
Una vez completada la instalación, se podrá ejecutar y trabajar con el programa. Para
llamarlo, se lo hace desde un icono colocado en el Escritorio (Desktop), o desde la barra de
menú inicial.
ANEXO 6
Option Explicit
Dim g_poly As New MapObjects2.Polygon
Dim g_line As New MapObjects2.Line
Dim g_o1Poly As New MapObjects2.Polygon
Dim g_o2Poly As New MapObjects2.Polygon
Private strsLabels As New MapObjects2.Strings
Private lnsLabels As New VBA.Collection
Dim dc As New MapObjects2.DataConnection
Dim lyr As New MapObjects2.MapLayer
Dim closestLine As MapObjects2.Polygon
Dim closestLineLabel As String
Dim tsym As New MapObjects2.TextSymbol
Dim shp As MapObjects2.Point
End Sub
End Sub
'encontrado = False
'Adodc1.RecordSource = "select * from DT50"
'Adodc1.Refresh
'Adodc1.Recordset.MoveNext
'Wend
'End If
'Adodc1.Recordset.MoveNext
'Wend
'End If
67
End Sub
End Sub
lsym.SymbolType = moLineSymbol
lsym.Color = moBlack
op1sym.SymbolType = moFillSymbol
op1sym.Color = moDarkGreen
op1sym.Style = moGrayFill
op2sym.SymbolType = moFillSymbol
op2sym.Color = moMagenta
op2sym.Style = moGrayFill
psym.SymbolType = moFillSymbol
psym.Color = moGreen
End Sub
Else
MsgBox "Seleccione Central"
End If
Map1.Refresh
' Exit Sub
'End If
69
If Option1 Then
'Set g_poly = Map1.TrackPolygon
Else
'Set g_line = Map1.TrackLine
Set g_o1Poly = Nothing
Set g_o2Poly = Nothing
End If
Map1.Refresh
End Sub
'encontrado = False
'Adodc1.RecordSource = "select * from DT50"
' Adodc1.Refresh
'Adodc1.Recordset.MoveNext
71
'Wend
' End If
'Adodc1.Recordset.MoveNext
'Wend
'End If
Buscacalles.Show 1
End Sub
BUSCA CALLES
Else
MsgBox " No existen resultados para la busqueda"
End If
End Sub
Adodc2.Recordset.MoveFirst
While Not Adodc2.Recordset.EOF
encontrado = False
For i = 0 To Combo1.ListCount
If Combo1.List(i) = Adodc2.Recordset.Fields("principales") Then
encontrado = True
i = Combo1.ListCount
End If
Next i
Adodc2.Recordset.MoveNext
Wend
Combo2.Clear
Next i
Adodc3.Recordset.MoveNext
Wend
End Sub
Adodc2.Recordset.MoveFirst
While Not Adodc2.Recordset.EOF
encontrado = False
For i = 0 To Combo1.ListCount
If Combo1.List(i) = Adodc2.Recordset.Fields("principales") Then
encontrado = True
i = Combo1.ListCount
End If
Next i
Adodc2.Recordset.MoveNext
Wend
Adodc3.Recordset.MoveFirst
While Not Adodc3.Recordset.EOF
encontrado = False
For i = 0 To Combo2.ListCount
If Combo2.List(i) = Adodc3.Recordset.Fields("secundarias") Then
encontrado = True
i = Combo2.ListCount
End If
Next i
74
Adodc3.Recordset.MoveNext
Wend
End Sub
Combo1.Clear
For i = 1 To j
Combo1.AddItem arreglo(i)
Next i
Buscacalles.Refresh
BBuscar.Refresh
Command1.Refresh
Text1.Refresh
Text2.Refresh
End Sub
Combo2.Clear
For i = 1 To j
Combo2.AddItem arreglo(i)
Next i
Buscacalles.Refresh
BBuscar.Refresh
Command1.Refresh
Text1.Refresh
Text2.Refresh
End Sub
Option Explicit
Dim closestLine As MapObjects2.Line
Dim closestLineLabel As String
Dim tsym As New MapObjects2.TextSymbol
Dim shp As MapObjects2.Point
Dim arreglolinea(100) As MapObjects2.Line
Dim etiquetas(100) As String
Dim i As Integer
Dim dibujar As Boolean
dc.Connect
'Set gds = dc.FindGeoDataset("redlands")
Set gds = dc.FindGeoDataset(vDistritos)
Map1.Layers.Add mlyr
End Sub
dibujar = False
HScroll1.Min = 1
HScroll1.Max = 30
HScroll1.Value = 3
dc.Connect
'Set gds = dc.FindGeoDataset("redlands")
Set gds = dc.FindGeoDataset(vDistritos)
End Sub
End Sub
If Option2 Then
Dim ptClicked As New MapObjects2.Point
Set ptClicked = Map1.ToMapPoint(X, Y)
Dim tol As Double
'Make the search tolerance to be
'whatever the map units equivalent
'is for 3 pixels, regardless of the
'current scale/extent.
tol = HScroll1.Value * Screen.TwipsPerPixelX
tol = Map1.ToMapDistance(tol)
Dim selRecs As MapObjects2.Recordset
Set selRecs = Map1.Layers(0).SearchByDistance _
(ptClicked, tol, "")
selRecs.MoveNext
Loop
Map1.Refresh
Else 'if there were no selected records
Set closestLine = Nothing
Map1.Refresh
End If
End Sub
dibujar = True
Map1.Refresh
dibujar = False
Combo1.Visible = True
End Sub
End Sub
End If
End Sub
'*************************************************************************************
'***************************************************************************************
'***************************************************************************************
'*******************************************************************************************
'*******************************************************************************************
'*******************************************************************************************
Command4.Visible = False
Label2.Visible = False
Text2.Visible = False
DataGrid2.Visible = True
Command9.Visible = True
End Sub
'******************************************************************************
'**********************************************************************************
End If
'**********************************************************************************
'*************************************************************************************
'***************************************************************************************
'***************************************************************************************
'**************************************************************************************
'*********************************************************************************************
'********************************************************************************************
'*****************************************************************************************
'********************************************************************************************
'*********************************************************************************************
'Adodc2.RecordSource = "select * from DT50 where " & Text3.Text & " = " + "'" & Text5.Text & "'"
''Adodc2.Refresh
Adodc2.Recordset.MoveFirst
DataGrid2.Visible = True
Command9.Visible = True
88
If resp = 6 Then
fin = True
End If
End If
End If
Adodc2.Recordset.MoveNext
Wend
Else
MsgBox ("No existen los datos suficientes para la búsqueda")
End If
Text5.Visible = False
Text3.Visible = False
Frame1.Visible = False
Command5.Visible = False
End Sub
'*******************************************************************************
mlyr.Symbol.Color = moBlue
Map1.Layers.Add mlyr
dibujar = True
Map1.Refresh
End If
Else
MsgBox "Es necesario adicionar las calles, vaya a opciones"
End If
'**************************************************************************************
'*******************************************************************************************
'**********************************************************************************************
'**************************************************************************************************
'**************************************************************************************************
End Sub
'*************************************************************************************************
'****************************************************************************************************
'*********************************************************************************************************
'**************************************************************************************************************
Adodc2.Refresh
End If
'********************************************************************************************************
'*************************************************************************************************************
End If
End If
Label1.Visible = False
DataGrid1.Visible = False
DataGrid2.Visible = True
Command9.Visible = True
End Sub
ii = 0
iii = 0
dibujar = False
dc.Database = "C:\pacifictel\"
dc.Connect
93
Combo1.Clear
'*************************************************************************************
pann = False
For i = 0 To Adodc2.Recordset.Fields.Count - 1
Combo1.AddItem Adodc2.Recordset.Fields(i).Name
Next i
End If
'*****************************************************************************************
pann = False
For i = 0 To Adodc2.Recordset.Fields.Count - 1
Combo1.AddItem Adodc2.Recordset.Fields(i).Name
Next i
End If
'************************************************************************************************
pann = False
For i = 0 To Adodc2.Recordset.Fields.Count - 1
Combo1.AddItem Adodc2.Recordset.Fields(i).Name
Next i
End If
'*************************************************************************************************
pann = False
For i = 0 To Adodc2.Recordset.Fields.Count - 1
Combo1.AddItem Adodc2.Recordset.Fields(i).Name
Next i
End If
'*****************************************************************************************************
pann = False
For i = 0 To Adodc2.Recordset.Fields.Count - 1
Combo1.AddItem Adodc2.Recordset.Fields(i).Name
Next i
End If
'*******************************************************************************************************
DataGrid1.Refresh
vzoomm = False
'turisticos = False
DataGrid2.Visible = False
Command9.Visible = False
End Sub
96
If dibujar Then
'fnt.Name = "Arial"
'fnt.Size = 12
tsym.Color = moWhite
tsym1.Color = moRed
For j = 0 To ii - 1
Map1.DrawText nombrecallescalles(j), puntocallescalles(j), tsym
Next j
For j = 0 To iii - 1
Map1.DrawText nombrecalles(j), puntocalles(j), tsym1
Next j
dibujar = False
End If
'fnt.Name = "Arial"
'fnt.Size = 12
'tsym.Color = moWhite
'Set tsym.Font = fnt
'End If
End Sub
Dim p As Point
97
Map1.MousePointer = moArrow
Set p = Map1.ToMapPoint(X, Y)
Else
'With recs
'.AddNew
'.Fields("Shape").Value = p
'.Fields("CAJA").Value = DataGrid1.Text
'.Fields("ID").Value = "0"
'.Update
'.StopEditing
'Map1.Layers(0).BuildIndex True
'Map1.Refresh
'End With
End If
End If
End Sub
'End If
'fnt.Name = "Arial"
'fnt.Size = 12
'tsym.Color = moWhite
'Set tsym.Font = fnt
'End Sub
DataGrid2.Visible = True
Command9.Visible = True
End Sub
dc.Database = "C:\pacifictel\"
101
'turisticos = False
If Map1.Layers.Count > 1 Then
If Trim(vDistritosm) = "Dis50" Then
Set gds = dc.FindGeoDataset("cajasd50")
Set mlyr.GeoDataset = gds
mlyr.Symbol.Color = moRed
Map1.Layers.Add mlyr
dibujar = True
Map1.Refresh
nombrecalles(iii) = registro.Fields("caja")
nombrecalles(iii) = registro.Fields("caja")
registro.MoveNext
iii = iii + 1
Wend
dibujar = True
Map1.Refresh
End If
Else
MsgBox "Es necesario adicionar las calles, vaya a opciones"
End If
'**********************************************************
nombrecalles(iii) = registro.Fields("caja")
nombrecalles(iii) = registro.Fields("caja")
registro.MoveNext
iii = iii + 1
Wend
dibujar = True
Map1.Refresh
End If
Else
MsgBox "Es necesario adicionar las calles, vaya a opciones"
End If
'************************************************************
nombrecalles(iii) = registro.Fields("caja")
nombrecalles(iii) = registro.Fields("caja")
registro.MoveNext
iii = iii + 1
Wend
dibujar = True
Map1.Refresh
End If
Else
MsgBox "Es necesario adicionar las calles, vaya a opciones"
End If
103
'******************************************************************
nombrecalles(iii) = registro.Fields("caja")
nombrecalles(iii) = registro.Fields("caja")
registro.MoveNext
iii = iii + 1
Wend
dibujar = True
Map1.Refresh
End If
Else
MsgBox "Es necesario adicionar las calles, vaya a opciones"
End If
'***********************************************************************
registro.MoveNext
iii = iii + 1
Wend
dibujar = True
Map1.Refresh
End If
Else
MsgBox "Es necesario adicionar las calles, vaya a opciones"
End If
'***************************************************************************
End Sub
dc.Database = "C:\pacifictel\"
'*******************************************************************************
If Trim(vDistritosm) = "Dis50" Then
Set gds = dc.FindGeoDataset("callesd50")
Set mlyr.GeoDataset = gds
mlyr.Symbol.Color = moGreen
Map1.Layers.Add mlyr
Map1.Refresh
nombrecallescalles(ii) = registro.Fields("calles")
nombrecallescalles(ii) = registro.Fields("calles")
105
registro.MoveNext
ii = ii + 1
Wend
dibujar = True
Map1.Refresh
End If
'*************************************************************************************
If Trim(vDistritosm) = "Dis59" Then
Set gds = dc.FindGeoDataset("callesd59")
Set mlyr.GeoDataset = gds
mlyr.Symbol.Color = moGreen
Map1.Layers.Add mlyr
Map1.Refresh
nombrecallescalles(ii) = registro.Fields("calles")
nombrecallescalles(ii) = registro.Fields("calles")
registro.MoveNext
ii = ii + 1
Wend
dibujar = True
Map1.Refresh
End If
'***************************************************************************************
If Trim(vDistritosm) = "Dis52" Then
Set gds = dc.FindGeoDataset("callesd52")
Set mlyr.GeoDataset = gds
mlyr.Symbol.Color = moGreen
Map1.Layers.Add mlyr
Map1.Refresh
nombrecallescalles(ii) = registro.Fields("calles")
nombrecallescalles(ii) = registro.Fields("calles")
registro.MoveNext
ii = ii + 1
Wend
dibujar = True
Map1.Refresh
End If
'*******************************************************************************************
If Trim(vDistritosm) = "Dis64" Then
Set gds = dc.FindGeoDataset("callesd64")
Set mlyr.GeoDataset = gds
mlyr.Symbol.Color = moGreen
Map1.Layers.Add mlyr
Map1.Refresh
nombrecallescalles(ii) = registro.Fields("calles")
nombrecallescalles(ii) = registro.Fields("calles")
registro.MoveNext
ii = ii + 1
Wend
dibujar = True
Map1.Refresh
End If
'***********************************************************************************************
If Trim(vDistritosm) = "Dis65" Then
Set gds = dc.FindGeoDataset("callesd65")
Set mlyr.GeoDataset = gds
mlyr.Symbol.Color = moGreen
Map1.Layers.Add mlyr
Map1.Refresh
nombrecallescalles(ii) = registro.Fields("calles")
nombrecallescalles(ii) = registro.Fields("calles")
registro.MoveNext
ii = ii + 1
Wend
dibujar = True
Map1.Refresh
End If
'End If
' ii = ii + 1
'Wend
'dibujar = True
'Map1.Refresh
'End If
'turisticos = True
109
'Map1.Layers.Clear
End Sub