Skip To Content

Didacticiel : Publication d'un service d'analyse du réseau

Disponible avec une licence Network Analyst.

Dans cette rubrique
Complexité : Débutant Conditions requises pour les données Installé avec le logiciel Chemin d'accès aux données : <répertoire d'installation d'ArcGIS for Server>\help\samples\data\network_analyst\SanFrancisco.gdb Objectif : Publier un service d'analyse du réseau sur ArcGIS Server et l'utiliser dans ArcMap et une application Web.

Il est possible d'effectuer une analyse du réseau sur un réseau de transport sur le Web ou en hébergeant des services d'analyse réseau sur ArcGIS Server. Cela inclut la recherche des ressources les plus proches, du meilleur itinéraire pour un véhicule et des meilleurs itinéraires pour une flotte de véhicules par emplacement-allocation, le calcul d'une matrice de coût OD et la génération de zones de desserte. Ce didacticiel vous guide à travers le processus de création d'une carte pouvant être utilisée pour l'analyse de réseau et vous montre comment la publier comme service d'analyse du réseau. Il vous renvoie ensuite à différentes rubriques d'aide sur l'utilisation du service d'analyse du réseau dans ArcMap et une application Web. Pour en savoir plus sur les différents types d'analyses de réseau et leurs fonctions, reportez-vous à la rubrique Types d'analyses de réseau dans l'aide d'ArcGIS.

Avant de commencer ce didacticiel

Si vous venez d'installer ArcGIS Server, vous devez réaliser certaines étapes préparatoires avant de pouvoir vous connecter au serveur et publier des services.

Données du didacticiel

Les données nécessaires pour suivre ce didacticiel sont installées avec ArcGIS Server et se trouvent à l'emplacement suivant : <répertoire d'installation d'ArcGIS for Server>\help\samples\data\network_analyst.

Vous pouvez également essayer de suivre les étapes en utilisant vos propres données.

Création du document ArcMap

Un service d'analyse du réseau nécessite un service de carte contenant une ou plusieurs couches d'analyse de réseau. En d'autres termes, la carte publiée sur le serveur doit contenir une ou plusieurs couches d'analyse de réseau créées avec les outils de la barre d'outils Network Analyst. Les services d'analyse du réseau prennent en charge la couche d'analyse d'itinéraires, la couche d'analyse des ressources les plus proches et la couche d'analyse de la zone de desserte.

Suivez ces étapes pour créer une carte unique capable d'effectuer ces trois types d'analyse du réseau :

  1. Démarrez ArcMap et ouvrez une nouvelle carte vide.
  2. Cliquez sur Personnaliser > Extensions et cochez la case Network Analyst pour activer l'extension Network Analyst.
  3. Cliquez sur Personnaliser > Barres d'outils > Network Analyst pour afficher la barre d'outils Network Analyst.
  4. Ajoutez un jeu de données réseau, qui doit être présent sur la carte pour créer une couche d'analyse de réseau, en cliquant sur Ajouter des donnéesAjouter des données sur la barre d'outils standard. Accédez au jeu de données réseau Streets_ND figurant dans la base de données SanFrancisco. Lorsque vous êtes invité à ajouter à la carte toutes les classes d'entités qui participent à Streets_ND, cliquez sur Non.
  5. Ajoutez une couches d'analyse d'itinéraire à votre carte en cliquant sur le menu déroulant Network Analyst dans la barre d'outils Network Analyst et en sélectionnant Nouvel itinéraire.

    Barre d'outils Network Analyst

    Lorsqu'une couche d'analyse réseau est créée dans ArcMap, elle est automatiquement liée au jeu de données de réseau actif. Comme le réseau San Francisco était actif lorsque vous avez créé la couche d'analyse d'itinéraire, les deux sont donc liés. Comme la couche d'analyse de réseau référence en outre le jeu de données réseau auquel elle est liée par le chemin de fichier, la couche du jeu de données réseau n'est plus nécessaire dans ArcMap.

  6. Cliquez avec le bouton droit sur Streets_ND ou sur le nom de la couche de jeu de données de réseau, puis cliquez sur Supprimer. Même si la carte est vide, la couche d'analyse du réseau est présente et elle peut être publiée en tant que service. Lorsque vous ajoutez éventuellement le service d'analyse réseau publié à une carte, il n'affiche aucune entité au départ, jusqu'à ce qu'il génère des résultats. Pour fournir davantage de contexte lorsque vous utilisez un service d'analyse du réseau, vous pouvez aussi utiliser un service de carte mis en cache, tel que celui fourni par ArcGIS Online.
  7. Cliquez sur Fichier > Enregistrer sous pour enregistrer la carte.

Publication du service d'analyse du réseau

Une fois que votre carte est dotée d'une couche d'analyse de réseau, vous êtes prêt à la publier comme service d'analyse du réseau. Vous allez publier le document ArcMap en tant que service et activer la fonction d'analyse du réseau, ce qui crée un service d'analyse du réseau du même nom.

Pour configurer votre carte et la publier sur ArcGIS Server à l'aide d'ArcMap, procédez comme suit :

  1. Dans ArcMap, sélectionnez Fichier > Partager en tant que > Service dans le menu principal.
  2. Dans la fenêtre Partager en tant que service, sélectionnez Publier un service. Cliquez sur Suivant.
  3. Dans la boîte de dialogue Publier un service, cliquez sur Connecter à ArcGIS ServerAjouter un serveur ArcGIS pour créer une nouvelle connexion au serveur.
  4. Dans la fenêtre Ajouter un serveur ArcGIS, sélectionnez Publier les services SIG. Cliquez sur Suivant.
  5. Pour l'URL du serveur, saisissez l'URL du site ArcGIS Server auquel vous souhaitez vous connecter. Par exemple : http://gisserver.domain.com:6080/arcgis.
  6. Dans la liste déroulante Type de serveur, sélectionnez ArcGIS for Server.
  7. Au cours du processus de publication, un fichier de définition de service est créé et stocké temporairement sur un disque local. A l'issue du processus, la définition de service est chargée sur le serveur et le fichier local est supprimé. Dans le cadre de ce didacticiel, acceptez le dossier par défaut et poursuivez.
  8. Si votre administrateur de serveur a activé la sécurité de votre site, entrez vos Nom d'utilisateur et Mot de passe. Cliquez sur Terminer.
  9. Facultativement, dans la fenêtre Publier un service, entrez un nouveau nom pour le service. Le nom ne doit pas dépasser 120 caractères et ne peut contenir que des caractères alphanumériques et des traits de soulignement. Cliquez sur Suivant.
  10. Par défaut, les services sont publiés sur le dossier racine (racine) d'ArcGIS Server. Les services peuvent être organisés dans des sous-dossiers du dossier racine. Choisissez le dossier où vous souhaitez publier le service ou créez un dossier pour contenir le service. Cliquez sur Continuer.
  11. L'Editeur de services s'affiche. Dans l'Editeur de services, sélectionnez les opérations que les utilisateurs peuvent effectuer avec le service d'analyse du réseau. Vous pouvez contrôler en détail la manière dont le serveur expose votre service. Cliquez sur l'onglet Fonctionnalités.
  12. Par défaut, Cartographie et KML sont activés. Cochez l'option Analyse de réseau.
  13. Dans le volet gauche de l'Editeur de services, cliquez sur l'onglet Analyse de réseau et vérifiez les opérations et les propriétés activées pour votre service d'analyse du réseau. Dans le cadre de ce didacticiel, vous pouvez accepter les valeurs par défaut et poursuivre. Si vous désirez en apprendre davantage cependant, reportez-vous à la rubrique Services d'analyse du réseau. Pour plus d'informations sur la procédure de configuration au mieux du service d'analyse réseau aux fins de déploiement, reportez-vous à la rubrique Optimisation et configuration des services.
  14. Cliquez sur AnalyserAnalyser. Cette fonction examine la carte pour voir si elle peut être publiée sur le serveur.
    Astuce:

    Pour agrandir la zone d'affichage lors de la configuration de votre service d'analyse du réseau, cliquez sur le bouton RéduireRéduire en haut de la fenêtre Editeur de services.

  15. Corrigez les erreursErreur éventuelles dans la fenêtre Préparation avant de pouvoir publier. Vous pouvez éventuellement corriger les avertissements et les messages d'information pour améliorer davantage les performances et l'apparence de votre service d'analyse du réseau. Pour plus d'informations sur la résolution de ces problèmes, reportez-vous à la rubrique Analyse de votre ressource SIG.
    Remarque :

    Vous pouvez enregistrer les dossiers et les géodatabases sur votre site ArcGIS Server et ainsi vous assurer que le serveur puisse reconnaître et utiliser vos données. Si vous effectuez les étapes suivantes, toutes les données référencées par votre carte qui proviennent d'un dossier ou d'une géodatabase non enregistré sont copiées sur le serveur au moment de la publication. Il s'agit d'une mesure de précaution visant à s'assurer que le serveur peut accéder à toutes les données utilisées par le service. Pour obtenir les instructions complètes d'inscription d'un dossier ou d'une géodatabase auprès de votre site ArcGIS Server, reportez-vous à la rubrique Inscription de vos données auprès d'ArcGIS Server à l'aide d'ArcGIS for Desktop.

  16. Une fois que vous avez corrigé les erreurs dans votre document ArcMap, cliquez sur PublierPublier.

La publication de votre carte sur ArcGIS Server a pour effet de créer un service de carte et un service d'analyse du réseau associé du même nom.

Utilisation du service d'analyse du réseau

Les clients d'ArcGIS Server, par exemple, ArcGIS for Desktop et les navigateurs Web, peuvent utiliser les services d'analyse du réseau. Dans ArcMap, le bouton Rechercher un itinéraireRechercher un itinéraire vous procure une fonctionnalité prête à l'emploi pour tirer parti des fonctionnalités de calcul d'itinéraire fournies par votre service d'analyse du réseau. Dans les navigateurs Web, les services d'analyse du réseau sont utilisés par programmation via des applications Web conçue avec ArcGIS.com, Portal for ArcGIS et ArcGIS API for JavaScript. Pour en savoir plus sur ces clients, reportez-vous à la rubrique Services d'analyse du réseau.

Pour savoir comment utiliser votre service d'analyse du réseau dans ArcGIS for Desktop ou dans une application Web de base créée à l'aide d'ArcGIS API for JavaScript, reportez-vous aux sections suivantes :

Utilisation d'un service de calcul d'itinéraire dans ArcMap

  1. Démarrez ArcMap et ouvrez une nouvelle carte ArcMap vide.
  2. Vous devez pouvoir vous connecter à ArcGIS Server en tant qu'éditeur, mais vous devez bénéficier d'une connexion utilisateur pour utiliser ce service dans ArcMap. Dans la fenêtre Catalogue, développez le nœud Serveurs SIG et double-cliquez sur Ajouter un serveur ArcGIS pour établir une connexion utilisateur. Pour obtenir des instructions détaillées sur la procédure de configuration de la connexion, reportez-vous à la rubrique Etablissement d'une connexion utilisateur à ArcGIS Server dans ArcGIS for Desktop.
  3. Dans la fenêtre Catalogue, développez le nœud Serveurs SIG et double-cliquez sur votre nouvelle connexion à ArcGIS Server qui se termine par "(user)".
  4. Dans votre connexion au serveur, repérez le service de carte qui contient votre service d'analyse réseau et faites-le glisser dans la table des matières.
  5. Bien que la couche soit présente dans la table des matières, la carte est toujours vide. Pour donner un contexte à la carte, ajoutez une couche de fond de carte à partir d'ArcGIS Online.
    1. Cliquez sur la flèche déroulante en regard du bouton Ajouter des donnéesAjouter des données sur la barre d'outils Standard et choisissez Ajouter un fond de carte.
    2. Double-cliquez sur un fond de carte, tel que Topographie.
  6. Effectuez un zoom avant sur la péninsule de San Francisco, qui se trouve du côté sud de la carte, car les arrêts que vous ajouterez doivent être à l'intérieur des limites du jeu de données réseau San Francisco que vous avez utilisé pour créer la couche d'analyse réseau. Si vous n'utilisez pas la base de données SanFrancisco fournie, vous pouvez ignorer cette étape.
  7. Dans la barre d'outils Outils, cliquez sur Rechercher un itinéraireRechercher un itinéraire.
  8. Dans la boîte de dialogue Rechercher un itinéraire, cliquez sur l'onglet Options.
  9. Cliquez dans la liste déroulante Service de calcul d'itinéraire et sélectionnez Route <Layers\[nom de votre service de calcul d'itinéraire]>.
  10. Cliquez sur l'onglet Arrêts. Utilisez les contrôles et paramètres sous l'onglet Arrêts pour renseigner l'analyse de réseau.
  11. Lorsque vous êtes prêt à résoudre l'itinéraire, cliquez sur Rechercher un itinéraire.

Utilisation d'un service de calcul d'itinéraire dans une application Web de base

  1. Pour utiliser un service d'analyse réseau dans une application Web, vous devez en connaître l'URL. Dans un navigateur Web, accédez au Répertoire des services ArcGIS Server, par exemple http://gisserver.domain.com:6080/arcgis/rest/services.
  2. Dans la liste des services, cliquez sur votre service d'analyse réseau. Tous les services d'analyse de réseau sont suivis de (NAServer). Si votre service réside dans un dossier, accédez à ce dossier et sélectionnez le service.
  3. Une page contenant le nom et la description du service ainsi que la liste des couches disponibles s'affiche. Cliquez sur Itinéraire.
  4. Une page affiche les propriétés de la couche d'itinéraire. Dans la barre d'adresse du navigateur, copiez l'URL de cette page et collez-la dans un éditeur de texte. Il s'agit de l'URL REST de la tâche d'itinéraire de votre service d'analyse réseau. L'URL utilise le format http://gisserver.domain.com:6080/arcgis/rest/services/folder/service/NAServer/Route.
  5. Copiez et collez l'exemple de code ci-dessous dans un éditeur de texte, tel que le Bloc-notes.

    <!DOCTYPE html>
    <html>
      <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=7, IE=9, IE=10">
        <!--The viewport meta tag is used to improve the presentation and behavior of the samples 
          on iOS devices-->
        <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no">
        <title>Simple Routing</title>
    
        <link rel="stylesheet" href="http://js.arcgis.com/3.6/js/dojo/dijit/themes/claro/claro.css">
        <link rel="stylesheet" href="http://js.arcgis.com/3.6/js/esri/css/esri.css">
        
        <script src="http://js.arcgis.com/3.6/"></script>
        <script>
          dojo.require("esri.map");
          dojo.require("esri.tasks.route");
    
          var map, routeTask, routeParams;
          var stopSymbol, routeSymbol, lastStop;
    
          function init() {
            map = new esri.Map("map", {
              basemap: "streets",
              center: [-122.44, 37.78],
              zoom: 12
            });
    
            dojo.connect(map, "onClick", addStop);
    
            routeTask = new esri.tasks.RouteTask("http://tasks.arcgisonline.com/ArcGIS/rest/services/NetworkAnalysis/ESRI_Route_NA/NAServer/Route");
            
            //set up the route parameters
            routeParams = new esri.tasks.RouteParameters();
            routeParams.stops = new esri.tasks.FeatureSet();
            routeParams.outSpatialReference = {"wkid":102100};
            
            dojo.connect(routeTask, "onSolveComplete", showRoute);
            dojo.connect(routeTask, "onError", errorHandler);
    
            //define the symbology used to display the route
            stopSymbol = new esri.symbol.SimpleMarkerSymbol().setStyle(esri.symbol.SimpleMarkerSymbol.STYLE_CROSS).setSize(15);
            stopSymbol.outline.setWidth(4);
            routeSymbol = new esri.symbol.SimpleLineSymbol().setColor(new dojo.Color([0,0,255,0.5])).setWidth(5);
          }
    
          //Adds a graphic when the user clicks the map. If 2 or more points exist, route is solved.
          function addStop(evt) {
            var stop = map.graphics.add(new esri.Graphic(evt.mapPoint, stopSymbol));
            routeParams.stops.features.push(stop);
    
            if (routeParams.stops.features.length >= 2) {
              routeTask.solve(routeParams);
              lastStop = routeParams.stops.features.splice(0, 1)[0];
            }
          }
    
          //Adds the solved route to the map as a graphic
          function showRoute(solveResult) {
            map.graphics.add(solveResult.routeResults[0].route.setSymbol(routeSymbol));
          }
    
          //Displays any error returned by the Route Task
          function errorHandler(err) {
            alert("An error occurred\n" + err.message + "\n" + err.details.join("\n"));
    
            routeParams.stops.features.splice(0, 0, lastStop);
            map.graphics.remove(routeParams.stops.features.splice(1, 1)[0]);
          }
          dojo.ready(init);
        </script>
    
      </head>
      <body class="claro">
        <div id="map" style="width:600px; height:400px; border:1px solid #000;"></div>
         <p>Click on the map to add stops to the route. The route from the last stop to the newly added stop is calculated. If a stop is not reachable, it is removed and the last valid point is set as the starting point.</p>
      </body>
    </html>

  6. Repérez le paramètre routeTask = new esri.tasks.RouteTask et remplacez l'URL entre parenthèses par l'URL REST de votre tâche itinéraire de l'analyse du réseau.
  7. Enregistrez et fermez le document texte.
  8. Remplacez l'extension de fichier native du document par .html. Par exemple, changez Route.txt en Route.html.
  9. Ouvrez le document HTML dans un navigateur Web. Suivez les instructions dans l'application Web pour utiliser votre service d'analyse réseau.