Workflow: Bereitstellen von Datenbankdaten mit ArcGIS Spatial Data Server for IIS

Komplexität: Einsteiger Datenanforderung: Eigene Daten verwenden

Sie können ArcGIS Spatial Data Server for IIS einrichten und Daten aus der vorhandenen Datenbank veröffentlichen, indem Sie das in diesem Thema vorgestellte Beispiel nachvollziehen. Ersetzen Sie dazu einfach die spezifischen Informationen (Name des Spatial Data Server, Datenbankname, Benutzername usw.) durch die entsprechenden Informationen für Ihre Site.

In diesem Beispiel wird eine Anwendung erstellt, mit der Kunden eines Abfalltransportunternehmens die Anlieferung einer neuen Mülltonne anfordern oder die Abholung großer Gegenstände planen können.

Eine Customers-Feature-Class in einer SQL Server-Datenbank wird als editierbarer Feature-Service veröffentlicht, und eine service_area-Feature-Class wird als schreibgeschützter Feature-Service auf dem Spatial Data Server veröffentlicht.

Bereitstellen eines Spatial Data Server

Richten Sie zuerst den Spatial Data Server, den Benutzer und die Datenquelle ein.

Installieren von ArcGIS Spatial Data Server for IIS

Befolgen Sie die Anweisungen im Installationshandbuch im Lieferumfang der Software, um ArcGIS Spatial Data Server for IIS zu installieren. Dieses Handbuch enthält Informationen zu den Systemanforderungen und IIS-Anforderungen sowie zur Autorisierung und Installation der Software.

HinweisHinweis:

Sie müssen ArcGIS Spatial Data Server auf einem öffentlichen Server (außerhalb Ihrer Firewall) installieren, damit die Bearbeitung durch Ihre veröffentlichten Services auf ArcGIS.com möglich ist.

Erteilen von Berechtigungen für den verbindenden Benutzer

In den nächsten Schritten geben Sie einen Benutzer zum Herstellen einer Verbindung mit der Datenquelle ein. Diesem Benutzer müssen Berechtigungen für die Datasets, die Sie auf dem Spatial Data Server veröffentlichen möchten, zugewiesen sein. Sollen Benutzer beispielsweise nur zu Abfragezwecken auf die Daten in Ihrem Feature-Service zugreifen können, benötigt der für die Datenquelle angegebene Benutzer nur SELECT-Berechtigungen für die Datasets im Feature-Set.

In diesem Beispiel für einen Workflow lässt der Feature-Service Abfrage- und Erstellungsberechtigungen zu. Dem Benutzer, der eine Verbindung mit der Datenquelle herstellt, müssen somit SELECT- und INSERT-Berechtigungen für die Customers-Feature-Class erteilt werden.

Wie hier gezeigt, wird die Anmeldung "webeditor" in der SQL Server-Instanz erstellt und der Datenbank, "threers", hinzugefügt. Danach wird ein Schema für den Datenbankbenutzer erstellt, und dem Benutzer werden SELECT- und INSERT-Berechtigungen für die Customers-Feature-Class erteilt:

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;

Erstellen einer Datenquelle

Bei der Erstellung einer Datenquelle teilen Sie dem Spatial Data Server mit, zu welcher Datenquelle und unter welchem Benutzernamen eine Verbindung hergestellt werden soll.

Sie können mehrere Datenquellen erstellen, in diesem Beispiel ist jedoch nur eine erforderlich.

Schritte:
  1. Öffnen Sie einen Webbrowser, und rufen Sie die REST-API-Adminansicht für Ihren Spatial Data Server auf. Die entsprechende URL weist das folgende Format auf: http://<Servername>/<Name des Spatial Data Server>/admin.

    In diesem Beispiel ist der Spatial Data Server auf Server-Webanwendungen installiert, und der Spatial Data Server ist "sdsi2s". Deshalb lautet die Admin-Endpunkt-URL der REST-API http://webapps/sdsi2s/admin.

  2. Klicken Sie auf den Link datasources und dann auf den Link createDatasource, um die Seite Create Datasource zu öffnen.

    Seite "Create Datasource"

  3. Geben Sie die erforderlichen Informationen an:
    1. Geben Sie einen Namen und eine Beschreibung für die neue Datenquelle ein. In diesem Beispiel lautet der Name der Datenquelle cust_reqs.
    2. Server ist der Name der DBMS-Instanz, in der die Datenbank sich befindet. In diesem Beispiel lautet der Name der SQL Server-Instanz abe\sspub.
    3. Database ist der Name der Datenbank mit den Daten, die Sie veröffentlichen möchten. In diesem Beispiel lautet der Name der Datenbank threers.
    4. Geben Sie die im letzten Abschnitt erstellten Daten zu Benutzername (webeditor) und Kennwort (We4Svcs) ein.
    5. Klicken Sie nach dem Eingeben der richtigen Informationen auf Create Datasource.

Einrichten eines ArcGIS Online-Kontos

In diesem Beispiel wird der Service auf ArcGIS Online veröffentlicht, wo eine Anwendung erstellt wird.

Sie melden sich mit Ihrem Esri Global Account bei ArcGIS Online an. Sie können ein vorhandenes Esri Global Account auf ArcGIS Online registrieren oder ein Esri Global Account erstellen und es danach vom selben Ort aus registrieren. Rufen Sie http://www.arcgis.com/home/ auf, und klicken Sie auf Anmelden.

Wenn Sie Ihr Esri Global Account bereits auf ArcGIS Online registriert haben, müssen Sie sich jetzt nicht anmelden. Dieser Schritt folgt an späterer Stelle im Workflow, wenn der Service veröffentlicht wird.

Erstellen einer Administratorverbindung mit dem Spatial Data Server

Sie können Daten über eine bestimmte Verbindung auf dem Spatial Data Server veröffentlichen. Mit der Administratorverbindung können Sie den Server verwalten und Services veröffentlichen.

Da Sie möglicherweise auch den Spatial Data Server verwalten möchten, erstellen Sie über ArcGIS for Desktop eine Verbindung mit dem Spatial Data Server.

Schritte:
  1. Starten Sie ArcMap, und öffnen Sie das Fenster Katalog.
  2. Erweitern Sie im Kataloginhaltsverzeichnis den Knoten GIS-Server.
  3. Doppelklicken Sie auf ArcGIS-Server hinzufügen.
  4. Wählen Sie GIS-Server verwalten aus, und klicken Sie auf Weiter.
  5. Geben Sie in das Textfeld Server-URL die Verwaltungs-URL des Spatial Data Server ein.

    In diesem Beispiel lautet die URL http://webapps/sdsi2s/admin.

  6. Wählen Sie aus der Dropdown-Liste Servertyp den Eintrag Spatial Data Server aus.
  7. Wenn Sie diese Verbindung verwenden, um Service-Definitionen zu erstellen und zu speichern, können Sie auswählen, wo die Service-Definitionsdateien auf dem Datenträger bereitgestellt werden. Standardmäßig werden sie in einem Ordner auf dem lokalen Computer bereitgestellt.
  8. Klicken Sie auf Fertig stellen, um die Verbindung zu erstellen.

    Die neue Verbindung wird unter dem Knoten GIS-Server aufgeführt.

Veröffentlichen von Feature-Services

Sie veröffentlichen zwei Services: einen Service, der bearbeitet wird, um Anfragen zu akzeptieren, und einen schreibgeschützten Service, der Ihren Service-Bereich darstellt. Um Ihre Services für andere freizugeben, stellen Sie eine Verbindung von ArcMap mit der Datenbank her, erstellen Sie zwei separate Karten in ArcMap (eine für den editierbaren Service und eine für den schreibgeschützten Service), und veröffentlichen Sie beide.

Herstellen einer Verbindung mit der Datenbank von ArcGIS for Desktop

Sie stellen eine Verbindung mit der Datenbank her, damit Sie auf die darin befindlichen Daten zugreifen können. Um eine Verbindung mit einer Datenbank herzustellen, müssen Sie den Datenbank-Client auf dem Computer installieren, auf dem ArcGIS installiert ist.

Für diesen Workflow benötigen Sie SQL Server Native Client in einer Version, die von der verwendeten SQL Server-Datenbank unterstützt wird. Erwerben Sie diesen Client von Microsoft, und installieren Sie ihn auf dem Client-Computer.

Nach der Installation von SQL Server Native Client können Sie eine Verbindung von ArcMap mit der Datenbank herstellen.

Stellen Sie von ArcMap eine Verbindung mit der Datenbank her, damit Sie die Kundentabelle Ihrer Karte hinzufügen können.

Schritte:
  1. Erweitern Sie im Kataloginhaltsverzeichnis den Knoten Datenbankverbindung.
  2. Doppelklicken Sie auf Datenbankverbindung hinzufügen.
  3. Wählen Sie aus der Dropdown-Liste Datenbankplattform den Eintrag SQL Server aus.
  4. Geben Sie im Textfeld Instanz den Namen der SQL Server-Instanz, abe\sspub, ein.
  5. Geben Sie im Textfeld Datenbank den Namen der Datenbank, threers, ein.
  6. Wählen Sie aus der Dropdown-Liste Typ den Eintrag Datenbankauthentifizierung aus.
  7. Geben Sie webeditor in das Textfeld Benutzername ein.
  8. Geben Sie We4Svcs in das Textfeld Kennwort ein.
  9. Lassen Sie die Option Benutzername und Kennwort speichern aktiviert, und klicken Sie auf OK.

Erstellen einer Karte für den editierbaren Service

Fügen Sie ArcMap die Kundentabelle hinzu, indem Sie sie von der Datenbankverbindung in das Kartenfenster ziehen.

Wenn ArcMap keinen Raumbezug oder keine geeignete ObjectID-Spalte (eine Spalte mit ganzer Zahl ungleich NULL) erkennen kann, werden Sie dazu aufgefordert, diese Informationen anzugeben.

HinweisHinweis:

Sie können keine Daten ohne Raumbezug veröffentlichen.

Versehen Sie die Features mit einfachen Symbolen, die im Service angezeigt werden sollen, nachdem die Tabelle im ArcMap-Inhaltsverzeichnis angezeigt wird. Informationen zum Ändern der Symbologie finden Sie in der ArcGIS-Hilfe.

Nehmen Sie danach ggf. erforderliche Konfigurationsänderungen für die Eigenschaften, die Sie im Service bereitstellen möchten, im Kartendokument vor. Beispielsweise möchten Sie wahrscheinlich angeben, welche Felder durch den Service sichtbar gemacht werden sollen, sowie Aliasnamen für die sichtbaren Felder und Schreibschutz für einige Felder festlegen. In diesem Beispiel empfiehlt es sich außerdem, ein HTML-Popup-Menü für die Benutzer einzurichten, damit diese die benötigten Informationen zum Verarbeiten ihrer Anfrage angeben können. Eine Liste der möglichen Eigenschaften finden Sie unter Kurzer Überblick über die Erstellung von Feature-Services für ArcGIS Spatial Data Server.

Zoomen Sie auf die Anfangsausdehnung, mit der der Service geöffnet werden soll. Achten Sie darauf, dass in der Anfangsausdehnung nicht mehr als die bei der Veröffentlichung des Service angegebene, maximale Anzahl von Features zurückgegeben wird. Standardmäßig sind dies 1.000 Features. Speichern Sie die Karte.

Veröffentlichen eines editierbaren Feature-Service

Geben Sie nun, nachdem die Karte fertig ist, die Daten durch Veröffentlichung als Feature-Service frei.

Schritte:
  1. Wählen Sie im ArcMap-Dokument im Hauptmenü Datei > Freigeben als > Service aus.
  2. Im Fenster Als Service freigeben gibt es drei Optionen.
    • Um die Daten sofort zu veröffentlichen, wählen Sie Service veröffentlichen, und klicken Sie auf Weiter.
    • Um eine Service-Definitionsdatei für eine spätere Veröffentlichung zu speichern, wählen Sie Service-Definition speichern, und klicken Sie auf Weiter.
    • Um einen vorhandenen Service zu ersetzen, wählen Sie Vorhandenen Service überschreiben aus, und klicken Sie auf Weiter. Um einen Service zu ersetzen, muss zuerst der ursprüngliche Service beendet werden.
  3. Wählen Sie den Admin-Spatial Data Server aus der Verbindungs-Dropdownliste aus.
  4. Geben Sie three_r_requests in das Textfeld Service-Name ein, und klicken Sie auf Fortfahren.
  5. Klicken Sie im Service-Editor auf Feature-Zugriff.
  6. Deaktivieren Sie Löschen und Aktualisieren, da die Benutzer nur in der Lage sein sollen, Abfragen für den Service auszuführen und Features hinzuzufügen.
  7. Lassen Sie für Die maximale Anzahl an zurückgegebenen Features pro Abfrage die Voreinstellung 1.000 stehen.
  8. Klicken Sie auf Freigabe.

    Das Dialogfeld ArcGIS Online-Anmeldung wird geöffnet.

  9. Geben Sie den Benutzernamen und das Kennwort für das Esri Global Account ein, und klicken Sie auf OK, um sich anzumelden und das Zeichen im Dialogfeld zu schließen.
  10. Aktivieren Sie im Fenster ArcGIS Online des Service-Editor das entsprechende Kästchen für die Benutzer, die auf den Inhalt zugreifen sollen.
    • Wenn nur Sie aktuell auf den Service zugreifen müssen, aktivieren Sie Eigene Inhalte.
    • Wenn Sie möchten, dass alle Benutzer mit Zugriff auf ArcGIS Online den Service anzeigen können, aktivieren Sie das Kontrollkästchen Jeder (öffentlich).
    • Es werden alle Gruppen aufgeführt, denen Sie als Mitglied angehören. Wenn Sie allen diesen Gruppen Zugriff auf den Service erteilen möchten, aktivieren Sie Mitglieder dieser Gruppen und danach alle gewünschten Gruppen.

    Sie können mehr als eine Option aktivieren. Beispielsweise können Sie den Service Ihrem eigenen Inhalt zuordnen und Zugriff für bestimmte ArcGIS Online-Gruppen erteilen.

  11. Klicken Sie auf Analysieren, um sicher zu gehen, dass Sie vor der Veröffentlichung keine Fehler oder Warnungen behandeln müssen.

    Fehler müssen behoben werden, sonst ist keine Veröffentlichung möglich.

  12. Wenn Sie sehen möchten, wie die Feature-Class im Service dargestellt wird, klicken Sie auf Vorschau.
  13. An dieser Stelle können Sie die Service-Definitionsdatei speichern, um später zu veröffentlichen. Bei diesem Workflow veröffentlichen Sie den Service jedoch sofort.
  14. Klicken Sie auf Veröffentlichen.
  15. Klicken Sie nach der Veröffentlichung auf OK, um das Dialogfeld zu schließen.

Erstellen einer Karte für den schreibgeschützten Service

Erstellen Sie eine zweite Karte, über die Sie den schreibgeschützten Service veröffentlichen.

Schritte:
  1. Öffnen Sie eine neue Karte in ArcMap: Datei > Neu.
  2. Wählen Sie Neue Karten aus, und klicken Sie auf OK.
  3. Ziehen Sie die Feature-Class "service_area" auf die Karte.
  4. Versehen Sie den Layer mit den Symbolen, die im Service angezeigt werden sollen.

    Verwenden Sie keine Füllung für das Einzugsgebiet-Polygon, oder legen Sie für die Füllung "Transparent" fest.

  5. Legen Sie fest, welche Felder durch den Service sichtbar gemacht werden, und legen Sie Aliasnamen für diese Felder fest.
  6. Speichern Sie das Kartendokument in einem freigegebenen Verzeichnis, auf das der lokale IIS-Benutzer "APPPOOL\DefaultAppPool" zugreifen kann.

Veröffentlichen des schreibgeschützten Service

Veröffentlichen Sie die zweite Karte, damit sie als Bezugspunkt in der Webanwendung verwendet werden kann.

Schritte:
  1. Wählen Sie im ArcMap-Dokument im Hauptmenü Datei > Freigeben als > Service aus.
  2. Im Fenster Als Service freigeben gibt es drei Optionen.
    • Um die Daten sofort zu veröffentlichen, wählen Sie Service veröffentlichen, und klicken Sie auf Weiter.
    • Um eine Service-Definitionsdatei für eine spätere Veröffentlichung zu speichern, wählen Sie Service-Definition speichern, und klicken Sie auf Weiter.
    • Um einen vorhandenen Service zu ersetzen, wählen Sie Vorhandenen Service überschreiben aus, und klicken Sie auf Weiter. Um einen Service zu ersetzen, muss zuerst der ursprüngliche Service beendet werden.
  3. Wählen Sie den Admin-Spatial Data Server aus der Verbindungs-Dropdownliste aus.
  4. Geben Sie service_area in das Textfeld Service-Name ein, und klicken Sie auf Fortfahren.
  5. Klicken Sie im Service-Editor auf Feature-Zugriff.
  6. Geben Sie die URL eines öffentlichen Servers in das Textfeld URL ein.

    Sie müssen editierbare Feature-Services auf einem öffentlichen Server veröffentlichen, damit ArcGIS Online darauf zugreifen kann.

  7. Deaktivieren Sie Hinzufügen, Löschen und Aktualisieren, da die Benutzer nur in der Lage sein sollen, Abfragen für den Service auszuführen.
  8. Klicken Sie auf ArcGIS Online.

    Das Dialogfeld "ArcGIS Online-Anmeldung" wird geöffnet.

  9. Geben Sie den Benutzernamen und das Kennwort für das Esri Global Account ein, und klicken Sie auf OK, um sich anzumelden und das Zeichen im Dialogfeld zu schließen.
  10. Aktivieren Sie im Fenster ArcGIS Online des Service-Editor das entsprechende Kästchen für die Benutzer, die auf den Inhalt zugreifen sollen.
    • Wenn nur Sie aktuell auf den Service zugreifen müssen, aktivieren Sie Eigene Inhalte.
    • Wenn Sie möchten, dass alle Benutzer mit Zugriff auf ArcGIS Online den Service anzeigen können, aktivieren Sie das Kontrollkästchen Jeder (öffentlich).
    • Es werden alle Gruppen aufgeführt, denen Sie als Mitglied angehören. Wenn Sie allen diesen Gruppen Zugriff auf den Service erteilen möchten, aktivieren Sie Mitglieder dieser Gruppen und danach alle gewünschten Gruppen.

    Sie können mehr als eine Option aktivieren. Beispielsweise können Sie den Service Ihrem eigenen Inhalt zuordnen und Zugriff für bestimmte ArcGIS Online-Gruppen erteilen.

  11. Klicken Sie auf Analysieren, um sicher zu gehen, dass Sie vor der Veröffentlichung keine Fehler oder Warnungen behandeln müssen.

    Fehler müssen behoben werden, sonst ist keine Veröffentlichung möglich.

  12. Wenn Sie sehen möchten, wie die Feature-Class im Service dargestellt wird, klicken Sie auf Vorschau.
  13. An dieser Stelle können Sie die Service-Definitionsdatei speichern, um später zu veröffentlichen. Bei diesem Workflow veröffentlichen Sie den Service jedoch sofort.
  14. Klicken Sie auf Veröffentlichen.
  15. Klicken Sie nach der Veröffentlichung auf OK, um das Dialogfeld zu schließen.

Anzeigen der Services

Sie können Informationen zum Service über das ArcGIS Spatial Data Services-Verzeichnis anzeigen. Da Sie den Service auf ArcGIS Online veröffentlicht haben, können Sie den Service von dort auf einer Karte anzeigen.

Aufrufen des Service über das ArcGIS Spatial Data Services-Verzeichnis

Im ArcGIS Spatial Data Services-Verzeichnis werden alle Services aufgeführt, die auf einem bestimmten Spatial Data Server veröffentlicht wurden. Von hier aus können Sie die Service-Definition als JSON-Datei exportieren, SQL-Abfragen schreiben, um eine Feature-Class auszuwählen oder Features in eine Feature-Class einzufügen, oder den Service in ArcGIS.com öffnen.

Die URL für das ArcGIS Spatial Data Services-Verzeichnis lautet http://<Servername>/<Name des Spatial Data Server>/rest/services. In diesem Beispiel lautet die URL somit http://webapps/sdsi2s/rest/services. Beide Services werden aufgeführt.

Verwenden von ArcGIS Online

Nachdem Sie nun die Feature-Classes auf dem Spatial Data Server veröffentlicht haben, können Sie sie über ArcGIS Online anzeigen.

Schritte:
  1. Öffnen Sie einen Webbrowser, und rufen Sie die ArcGIS Online-Website unter http://www.arcgis.com/home/index.html auf.
  2. Klicken Sie auf Anmelden.
  3. Geben Sie den Benutzernamen und das Kennwort für das Esri Global Account ein, und klicken Sie auf Anmelden.
  4. Klicken Sie auf Eigene Inhalte.
  5. Fügen Sie den Service "three_r_requests" zuerst hinzu.
    1. Klicken Sie auf Element hinzufügen.
    2. Wählen Sie in der Dropdown-Liste Das Element ist den Eintrag Im Web aus.
    3. Geben Sie die URL zum Service ein.

      In diesem Beispiel lautet die URL http://webapps/sdsi2s/rest/services/three_r_requests.svc.

    4. Geben Sie im Textfeld Titel einen Titel für den Service ein.
    5. Geben Sie im Textfeld Tags Tags zum Identifizieren des Service ein.
    6. Klicken Sie auf Element hinzufügen.
  6. Führen Sie diese Schritte erneut aus, um den Service "service_area" Ihrem Inhalt hinzuzufügen.

Webanwendung erstellen

Erstellen Sie zuerst eine Karte mit den Services und einer Grundkarte der Straßen für den Bereich auf ArcGIS.com. Erstellen Sie dann mit einer Anwendungsvorlage von ArcGIS.com eine Webanwendung.

Erstellen einer Karte auf ArcGIS.com

Fügen Sie beide Services einer Grundkarte auf ArcGIS.com hinzu, und speichern Sie die Karte zur Verwendung in Ihrer Anwendung.

Schritte:
  1. Klicken Sie im Abschnitt Eigene Inhalte von ArcGIS.com auf den schreibgeschützten Service.
  2. Klicken Sie auf Öffnen, um eine Karte zu öffnen, in der die Daten im Service angezeigt werden.
  3. Klicken Sie auf Hinzufügen, und wählen Sie dann Layer aus Web hinzufügen aus, um den zweiten Service hinzuzufügen.

    Das Dialogfeld Layer aus Web hinzufügen wird geöffnet.

  4. Geben Sie die URL des editierbaren Service in das Textfeld URL ein, und klicken Sie auf Layer hinzufügen.
  5. Klicken Sie auf Grundkarte, und wählen Sie einen der Layer aus, in dem Straßennamen angezeigt werden.
  6. Passen Sie die Ausdehnung der Karte ggf. an, sodass gerade die Ausdehnung beider Services abgedeckt ist.
  7. Klicken Sie auf Speichern, um die Karte zu speichern.
    1. Geben Sie einen Titel, Tags und eine Zusammenfassung für die Karte ein.
    2. Wählen Sie den Ordner aus, in dem die Karte gespeichert werden soll.
    3. Klicken Sie auf Karte speichern.
  8. Geben Sie die Karte entweder öffentlich oder für bestimmte Gruppen frei.
  9. Notieren Sie sich die ID der Karte. Sie benötigen sie bei der Erstellung einer Webanwendung.

Erstellen einer Webanwendung aus einer Vorlage

Da in der Anwendung die Bearbeitung zulässig sein muss, verwenden Sie die Vorlage zur Bearbeitung einer Webanwendung.

Schritte:
  1. Laden Sie die Vorlage zur Bearbeitung einer Webanwendung herunter.
  2. Speichern Sie die heruntergeladene ZIP-Datei im Ordner inetpub\wwwroot auf dem IIS-Server.
  3. Extrahieren Sie die Dateien.
  4. Befolgen Sie die Anweisungen in der Datei "readme.html", um die Anwendung einzurichten.
9/12/2013