Flujo de trabajo: Usar ArcGIS Spatial Data Server for IIS para atender los datos de la base de datos

Complejidad: Principante Requisito de datos: Utilizar datos propios

Puede configurar ArcGIS Spatial Data Server for IIS y publicar los datos desde su base de datos existente al seguir el ejemplo que se presenta en este tema. Simplemente reemplace la información específica (nombre del servidor de datos espaciales, nombre de la base de datos, nombre de usuario, etc.) con la información correspondiente a su sitio.

En este ejemplo, una aplicación se creará para permitir que los clientes de un transportador de desechos soliciten nuevas entregas bin o programen las recolecciones de grandes elementos.

La clase de entidades de clientes en una base de datos de SQL Server se publicarán como un servicio de entidad editable y una clase de entidades service_area se publicará como un servicio de entidad solo de lectura al servidor de datos espaciales.

Implemente un servidor de datos espaciales

Primero, configure el servidor de datos espaciales, el usuario y la fuente de datos.

Instale ArcGIS Spatial Data Server for IIS

Para instalar ArcGIS Spatial Data Server for IIS, siga las instrucciones de la guía de instalación que se proporciona con el software. Esta guía incluye información sobre los requisitos del sistema, requisitos IIS, la autorización y la instalación del software.

NotaNota:

Para permitir la edición a través de los servicios publicados en ArcGIS.com, debe instalar ArcGIS Spatial Data Server for IIS en un servidor público (uno fuera de su firewall).

Conceda los privilegios al usuario conectado

Cuando llegue al siguiente conjunto de pasos, especificará un usuario para conectarse a la fuente de datos. A este usuario se le deben otorgar privilegios en los datasets que desea publicar en el servidor de datos espaciales. Por ejemplo, si desea que los usuarios tengan acceso solo de consulta a los datos en el servicio de entidades, el usuario especificado de la fuente de datos solo debe tener privilegios selectos en los datasets en el servicio de entidades.

En este ejemplo de flujo de trabajo, el servicio de entidades permitirá consultas y crear privilegios; por tanto, al usuario que se conecta a la fuente de datos se le deben otorgar privilegios de selección e inserción en la clase de entidad de los clientes.

Según se muestra aquí, un inicio de sesión, webeditor se crea en la instancia SQL Server y se agrega a la base de datos, threers. Un esquema se crea después para el usuario de la base de datos, y al usuario se le otorgan privilegios de selección y de inserción en clase de entidades de los clientes:

CREATE LOGIN webeditor WITH PASSWORD=N'We4Svcs',    DEFAULT_DATABASE=threers,    CHECK_EXPIRATION=OFF,    CHECK_POLICY=ON; GO  USE threers;  CREATE USER webeditor FOR LOGIN webeditor; ALTER USER webeditor WITH DEFAULT_SCHEMA=webeditor; GO  CREATE SCHEMA webeditor AUTHORIZATION webeditor; GO  GRANT SELECT,INSERT   ON cdata.customers   TO webeditor;

Crear una fuente de datos

Al crear una fuente de datos, le indica al servidor de datos espaciales a que base de datos conectarse y como que usuario.

Puede crear varias fuentes de datos, pero para este ejemplo, sólo una es necesaria.

Pasos:
  1. Abra un navegador Web y diríjase a la vista opinión Admin. de REST API del servidor de datos espaciales. La dirección URL de esto está en formato http://<server name>/<spatial data server name>/admin.

    En este ejemplo, el servidor de datos espaciales se instala en aplicaciones Web del servidor y el servidor de datos espaciales es sdsi2s; por lo tanto, el extremo de admin. de REST API de la dirección URL es http://webapps/sdsi2s/admin.

  2. Haga clic en el vínculo Fuentes de datos y, a continuación, haga clic en el vínculo Crear fuentes de datos para abrir la página Crear fuentes de datos.

    Cree la página Fuente de datos

  3. Proporcione la información necesaria:
    1. Escriba un nombre y una descripción para la nueva fuente de datos. En este ejemplo, el nombre de la fuente de datos será cust_reqs.
    2. Servidor es el nombre de la instancia de DBMS en la que reside la base de datos. Para este ejemplo, el nombre de la instancia de SQL Server es abe\sspub.
    3. Base de datos es el nombre de la base de datos que contiene los datos que desea publicar. En este ejemplo, la base de datos es threers.
    4. Proporcione el nombre de usuario (webeditor) y la contraseña (We4Svcs) que se creó en la sección anterior.
    5. Una vez que haya escrito la información correcta, haga clic en Crear fuente de datos.

Configure una cuenta de ArcGIS Online

En este ejemplo, se publicará el servicio de ArcGIS Online, en donde se creará una aplicación.

Utilice su cuenta global de Esri para iniciar sesión en ArcGIS Online. Puede registrar su cuenta global de Esri existente con ArcGIS Online o cree una cuenta global de Esri y regístrela desde el mismo lugar. Diríjase a http://www.arcgis.com/home/ y haga clic en Iniciar sesión.

Si ya ha registrado su cuenta global de Esri con ArcGIS Online, no necesita iniciar sesión en este momento. Esto se llevará a cabo más adelante en el flujo de trabajo cuando se publique el servicio.

Cree una conexión de administrador en el servidor de datos espaciales

Publique datos a través de una conexión específica para el servidor de datos espaciales. La conexión de administrador le permite administrar el servidor y publicar los servicios.

Ya que también es posible que desee administrar el servidor de datos espaciales, cree una conexión administrativa con el servidor de datos espaciales de ArcGIS for Desktop.

Pasos:
  1. Inicie ArcMap y abra la ventana Catálogo.
  2. En el árbol de Catálogo, expanda el nodo Servidores SIG.
  3. Haga doble clic en Agregar ArcGIS Server.
  4. Elija Administrar servidor SIG y haga clic en Siguiente.
  5. En el cuadro de texto Dirección URL del servidor, escriba la dirección URL administrativa del servidor de datos espaciales.

    Para este ejemplo, la dirección URL es http://webapps/sdsi2s/admin.

  6. Seleccione Spatial Data Server de la lista desplegable Tipo de servidor.
  7. Si planea utilizar esta conexión para crear y guardar definiciones de servicio, puede elegir en qué parte del disco se organizarán los archivos de definición del servicio. De forma predeterminada, se organizarán en una carpeta de su equipo local.
  8. Haga clic en Finalizar para crear la conexión.

    Su nueva conexión se enumera bajo el nodo Servidores SIG .

Publique los servicios de entidades

Publicará dos servicios: uno que se editará para aceptar las solicitudes, y un servicio solo de lectura que denota su área de servicio. Para compartir sus servicios con otros, conéctese a la base de datos desde ArcMap, cree dos mapas separados en ArcMap, uno para el servicio editable y otro para el servicio solo de lectura y publique cada uno.

Conéctese a la base de datos desde ArcGIS for Desktop

Realiza una conexión a la base de datos para que pueda obtener acceso a los datos en ella. Para realizar una conexión a la base de datos, debe instalar el cliente de la base de datos en el equipo en donde está instalado ArcGIS.

Para este flujo de trabajo, necesita SQL Server Native Client admitido para la publicación de la base de datos de SQL Server que está utilizando. Obtenga este cliente desde Microsoft e instálelo en el equipo cliente.

Una vez que SQL Server Native Client esté instalado, puede realizar una conexión a la base de datos desde ArcMap.

Conéctese a la base de datos desde ArcMap para que pueda agregar la tabla de clientes a su mapa.

Pasos:
  1. En el árbol de catálogo, expanda el nodo Conexión de base de datos .
  2. Haga doble clic en Agregar conexión de base de datos.
  3. Elija SQL Server de la lista desplegable Plataforma de base de datos.
  4. Escriba el nombre de la instancia de SQL Server, abe\sspub, en el cuadro de texto Instancia.
  5. Escriba el nombre de la base de datos, threers, en el cuadro de texto Base de datos.
  6. Elija Autenticación de la base de datos en la lista del menú desplegable Tipo.
  7. Escriba webeditor en el cuadro de texto Nombre de usuario.
  8. Escriba We4Svcs en el cuadro de texto Contraseña.
  9. Deje marcado Guardar nombre de usuario y contraseña y haga clic en Aceptar.

Cree un mapa para el servicio editable

Agregue la tabla de clientes a ArcMap al arrastrarlo desde la conexión de base de datos de la ventana del mapa.

Si ArcMap no puede detectar la referencia espacial o una columna de ObjectID calificativa (una columna de enteros no nulos), se le solicitará que proporcione esa información.

NotaNota:

No puede publicar los datos que no tienen una referencia espacial.

Una vez que la tabla aparece en la tabla de contenido de ArcMap, simbolice las entidades utilizando los símbolos simples que desea que aparezcan en el servicio. Consulte la ayuda de ArcGIS para obtener información sobre cómo cambiar la simbología.

A continuación, realice cualquier cambio de configuración en el documento de mapa necesario para las propiedades que desea mostrar en el servicio. Por ejemplo, es probable que desee establecer qué campos serán visibles en el servicio, establecer los alias de los campos que serán visibles, y posiblemente establecer algunos campos como solo de lectura. Para este ejemplo, también deseará establecer un menú desplegable HTML para que los usuarios proporcionen la información necesaria para procesar su solicitud. Consulte Un recorrido rápido por la creación de servicios de entidades para un servidor de datos espaciales para obtener una lista de las posibles propiedades.

Haga zoom en la extensión inicial que desea que utilice su servicio. Desea estar seguro de que la extensión inicial devolverá no más que la cantidad máxima de entidades que estableció en el momento de la publicación del servicio que se va a devolver. Por defecto, este número es 1000. Guarde el mapa.

Publique un servicio de entidades editable

Ahora que el mapa está listo, comparta los datos como un servicio de entidades al publicarlos.

Pasos:
  1. En su documento ArcMap, elija Archivo > Compartir como > Servicio en el menú principal.
  2. En la ventana Compartir como servicio, hay tres opciones.
    • Para publicar inmediatamente sus datos, seleccione Publicar un servicio y haga clic en Siguiente.
    • Para guardar un archivo de definición de servicio que se va a publicar posteriormente, elija Guardar un archivo de definición de servicio y haga clic en Siguiente.
    • Para reemplazar un servicio existente, elija Sobrescribir un servicio existente y haga clic en Siguiente. Para reemplazar un servicio, el servicio original se debe detener primero.
  3. Elija el servidor de datos espaciales admin desde de la lista desplegable de la conexión.
  4. Escriba three_r_requests en el cuadro de texto Nombre de servicio y, a continuación, haga clic en Continuar.
  5. Haga clic en Acceso a entidades en Editor de servicio.
  6. Desmarque Eliminar y Actualizar ya que los usuarios solo podrá consultar el servicio y agregar las entidades.
  7. Deje establecido la cantidad máxima de entidades devueltas por consulta en 1000.
  8. Haga clic en Compartir.

    Se abre el cuadro de diálogo Inicio de sesión de ArcGIS Online.

  9. Escriba su nombre de usuario de la cuenta global de Esri y la contraseña y haga clic en Aceptar para iniciar sesión y cerrar el cuadro de diálogo de inicio de sesión.
  10. En el panel ArcGIS Online del cuadro de diálogo Editor de servicio, marque el cuadro apropiado del cual desea obtener acceso a su contenido.
    • Si es el único que obtiene acceso al servicio por ahora, marque Mi contenido.
    • Si desea que todos los que tienen acceso a ArcGIS Online vean el servicio, marque Todos (público).
    • Ningún grupo del que es un miembro está enumerado. Si desea otorgar acceso a su servicio a cualquiera de estos grupos, marque Miembros de estos gruposy, a continuación, marque todos los grupos que desea.

    Puede marcar más de una opción. Por ejemplo, es posible que desee que el servicio sea parte de su contenido y otorgue el acceso a grupos de ArcGIS Online específicos.

  11. Haga clic en Analizar para asegurarse de que no hay errores o advertencias para corregir antes de publicar.

    Se deben corregir los errores o publicar las fallas.

  12. Si desea ver cómo se observará la clase de entidad en el servicio, haga clic en Vista previa.
  13. En este punto, puede guardar el archivo de definición de servicio para publicar después. Sin embargo, para este flujo de trabajo, publique el servicio.
  14. Haga clic en Publicar.
  15. Cuando finaliza la publicación, haga clic en Aceptar para cerrar el cuadro de diálogo.

Cree un mapa para el servicio solo de lectura:

Cree un segundo mapa desde el que publicará el servicio solo de lectura.

Pasos:
  1. Abra un nuevo mapa en ArcMap: Archivo > Nuevo.
  2. Elija Nuevos mapas y haga clic en Aceptar.
  3. Arrastre la clase de entidad service_area en el mapa.
  4. Simbolice la capa como desea que aparezca en el servicio.

    Utilice sin relleno para el polígono del área de servicio o establezca el relleno para que sea transparente.

  5. Establezca qué campos serán visibles en el servicio y establezca los alias para esos campos.
  6. Guarde el documento de mapa en un directorio compartido al que el usuario local IIS APPPOOL\DefaultAppPool tenga acceso.

Publique el servicio solo de lectura:

Publique el segundo mapa para que se pueda utilizar como un punto de referencia en su aplicación Web.

Pasos:
  1. En su documento ArcMap, elija Archivo > Compartir como > Servicio en el menú principal.
  2. En la ventana Compartir como servicio, hay tres opciones.
    • Para publicar inmediatamente sus datos, seleccione Publicar un servicio y haga clic en Siguiente.
    • Para guardar un archivo de definición de servicio que se va a publicar posteriormente, elija Guardar un archivo de definición de servicio y haga clic en Siguiente.
    • Para reemplazar un servicio existente, elija Sobrescribir un servicio existente y haga clic en Siguiente. Para reemplazar un servicio, el servicio original se debe detener primero.
  3. Elija el servidor de datos espaciales admin desde de la lista desplegable de la conexión.
  4. Escriba service_area en el cuadro de texto Nombre de servicio y, a continuación, haga clic en Continuar.
  5. Haga clic en Acceso a entidades en Editor de servicio.
  6. Escriba la dirección URL de un servidor público en el cuadro de texto Dirección URL.

    Debe publicar los servicios de entidades editables en un servidor público de ArcGIS Online para poder obtener acceso.

  7. Desmarque Agregar Eliminar y Actualizar ya que los usuarios sólo podrán consultar este servicio.
  8. Haga clic en ArcGIS Online.

    Se abre la firma en ArcGIS Online en el cuadro de diálogo.

  9. Escriba su nombre de usuario de la cuenta global de Esri y la contraseña y haga clic en Aceptar para iniciar sesión y cerrar el cuadro de diálogo de inicio de sesión.
  10. En el panel ArcGIS Online del cuadro de diálogo Editor de servicio, marque el cuadro apropiado del cual desea obtener acceso a su contenido.
    • Si es el único que obtiene acceso al servicio por ahora, marque Mi contenido.
    • Si desea que todos los que tienen acceso a ArcGIS Online vean el servicio, marque Todos (público).
    • Ningún grupo del que es un miembro está enumerado. Si desea otorgar acceso a su servicio a cualquiera de estos grupos, marque Miembros de estos gruposy, a continuación, marque todos los grupos que desea.

    Puede marcar más de una opción. Por ejemplo, es posible que desee que el servicio sea parte de su contenido y otorgue el acceso a grupos de ArcGIS Online específicos.

  11. Haga clic en Analizar para asegurarse de que no hay errores o advertencias para corregir antes de publicar.

    Se deben corregir los errores o publicar las fallas.

  12. Si desea ver cómo se observará la clase de entidad en el servicio, haga clic en Vista previa.
  13. En este punto, puede guardar el archivo de definición de servicio para publicar después. Sin embargo, para este flujo de trabajo, publique el servicio.
  14. Haga clic en Publicar.
  15. Cuando finaliza la publicación, haga clic en Aceptar para cerrar el cuadro de diálogo.

Visualizar los servicios

Puede ver la información sobre el servicio desde el directorio de ArcGIS Spatial Data Services . Ya que publicó el servicio de ArcGIS Online, puede visualizar el servicio en un mapa desde allí.

Obtener acceso al servicio desde el directorio de ArcGIS Spatial Data Services

El directorio de ArcGIS Spatial Data Services enumera todos los servicios publicados en un servidor de datos espaciales específico. Desde aquí, puede exportar la definición de servicio como un archivo JSON, escribir consultas SQL para seleccionar o insertar entidades en la clase de entidad, o abrir su servicio en ArcGIS.com.

La dirección URL para el directorio de ArcGIS Spatial Data Services es http://<server name>/<spatial data server name>/rest/services. Por lo tanto, para este ejemplo, la dirección URL es http://webapps/sdsi2s/rest/services. Observará ambos servicios enumerados.

Utilice ArcGIS Online

Ahora que publicó las clases de entidades en su servidor de datos espaciales, puede verlos desde ArcGIS Online.

Pasos:
  1. Abra un navegador Web y diríjase al sitio Web en ArcGIS Online http://www.arcgis.com/home/index.html.
  2. Haga clic en Iniciar sesión.
  3. Escriba el nombre de usuario y la contraseña de su cuenta global de Esri y haga clic en Iniciar sesión.
  4. Haga clic en Mi contenido.
  5. Agregar el servicio three_r_requests primero.
    1. Haga clic en Agregar elemento.
    2. Elija En la Web en la lista desplegable El elemento es.
    3. Escriba la dirección URL para el servicio.

      Para este ejemplo, la dirección URL es http://webapps/sdsi2s/rest/services/three_r_requests.svc.

    4. Escriba un título para el servicio en el cuadro de texto Título.
    5. Escriba las etiquetas para identificar su servicio en el cuadro de texto Etiquetas.
    6. Haga clic en Agregar elemento.
  6. Siga el mismo procedimiento para agregar el servicio service_area a su contenido.

Crear una aplicación Web

Primero, cree un mapa en ArcGIS.com que contiene sus servicios y un mapa base de calles del área. A continuación, utilice una plantilla de la aplicación de ArcGIS.com para crear una aplicación Web.

Cree un mapa en ArcGIS.com

Agregue sus servicios para un mapa base en ArcGIS.com y guarde el mapa que va a utilizar para su aplicación.

Pasos:
  1. En la sección Mi contenido de ArcGIS.com, haga clic en su servicio solo de lectura.
  2. Haga clic en Abrir para abrir un mapa que muestra los datos en ese servicio.
  3. Haga clic en Agregary, a continuación, seleccione Agregar capa de Web para agregar su segundo servicio.

    Se abre el cuadro de diálogo Agregar capa de Web.

  4. Escriba la dirección URL del servicio editable en el cuadro de texto Dirección URL y haga clic en Agregar capa.
  5. Haga clic en Mapa base y elija una de las capas que muestra los nombres de las calles.
  6. Ajuste la extensión del mapa, si fuera necesario, para cubrir solamente la extensión de ambos servicios.
  7. Haga clic en Guardar para guardar el mapa.
    1. Escriba un título, etiquetas y resumen del mapa.
    2. Elija en qué carpeta guardar el mapa.
    3. Haga clic en Guardar el mapa.
  8. Comparta su mapa públicamente o con grupos específicos.
  9. Observe la ID de su mapa; utilizará esto al crear una aplicación Web.

Utilice una plantilla para crear una aplicación Web

Ya que la aplicación necesita permitir la edición, utilizará la plantilla Editar la aplicación Web.

Pasos:
  1. Descargue la plantilla Editar la aplicación Web.
  2. Coloque el archivo zip descargado en la carpeta inetpub\wwwroot en el servidor IIS.
  3. Extraiga los archivos.
  4. Siga las instrucciones en el archivo readme.html para configurar la aplicación.
9/11/2013