français

Erreur : La couche ne s’est pas dessinée complètement car il y a trop d’entités à afficher

Message d'erreur

Lorsque vous visualisez un service d’entités hébergé dans ArcGIS Online Map Viewer (Visionneuse de carte), vous risquez de rencontrer l’avertissement suivant « La couche ne s’est pas dessinée complètement car il y a trop d’entités à afficher ». Ce message est censé apparaître lorsque vous tentez d’afficher un nombre élevé d’entités dans la visionneuse de carte. Il s’agit d’un avertissement indiquant que toutes les entités censées s’afficher dans l’étendue de la carte ne peuvent pas se dessiner complètement et que certaines entités risquent de ne pas figurer dans la vue.
 

                                                User-added image
Lorsque les entités d’un service s’affichent dans la visionneuse de carte, des demandes sont envoyées au serveur pour que les entités puissent être renvoyées depuis le service et affichées dans la carte Web. Ces demandes envoyées depuis la visionneuse de carte sont de type requête. Elles incluent des paramètres permettant de déterminer le nombre d’entités pouvant être affichées simultanément.

Cause

Auparavant, le nombre d’entités pouvant se dessiner simultanément à partir d’un service d’entités hébergé était défini par le paramètre précisant le nombre maximum d’enregistrements renvoyés par le serveur, Maximum record count (Nombre maximum d’enregistrements). Le nombre maximum d’enregistrements peut être défini dans la boîte de dialogue Service Editor (Editeur de services) d’ArcMap lors de la publication du service ; il peut aussi être automatiquement affecté, selon le workflow de publication employé. Lorsque vous utilisez une requête standard, le nombre maximum d’enregistrements détermine toujours le nombre d’entités pouvant être renvoyées simultanément par le service. Toutefois, la visionneuse de carte utilise actuellement un autre type de requête.

Dans la visionneuse de carte, le nombre d’entités qui s’affichent simultanément est actuellement déterminé par la propriété tileMaxRecordCount et non par la valeur de MaxRecordCount. Il n’est pas possible de modifier manuellement la valeur de tileMaxRecordCount lors de la publication du service et cette valeur est automatiquement affectée à une définition de service, contrairement à MaxRecordCount.

Lorsqu’elle affiche des entités, la visionneuse de carte utilise la valeur de tileMaxRecordCount du service ainsi que l’étendue actuelle de la carte Web. L’étendue de la carte Web est divisée en sections appelées tuiles, qui ne sont pas visibles sur la carte. Une demande est envoyée au service pour chaque tuile figurant dans l’étendue de la visionneuse de carte. La propriété tileMaxRecordCount du service limite le nombre d’entités affichées dans chaque tuile. Si le nombre d’entités au sein d’une tuile est inférieur à la valeur de tileMaxRecordCount, toutes les entités de cette tuile peuvent être affichées. Si le nombre d’entités au sein d’une tuile est supérieur à la valeur de tileMaxRecordCount, les entités ne peuvent pas toutes être affichées et le message d’avertissement « La couche ne s’est pas dessinée complètement » est renvoyé.

Lorsque vous affichez l’extrémité REST ou l’URL d’un service, la valeur du paramètre tileMaxRecordCount n’apparaît pas de la même manière que le nombre maximum d’enregistrements. Seule la vue Admin de l’extrémité REST du service permet de visualiser la valeur de tileMaxRecordCount. Pour accéder à cette page, ajoutez « /admin » à l’URL du service, entre « /rest » et « /services ». Par exemple :

http://services.myserver.com/ERmEceOGq5cHrItq/ArcGIS/rest/admin/services/USA/FeatureServer
Remarque :
Pour accéder à la vue Admin, vous devez être propriétaire du service. 
Dans la vue Admin de l’extrémité REST , accédez à Update Definition (Mettre à jour la définition) en bas de la page et recherchez la propriété tileMaxRecordCount dans les détails de la définition. Dans l’image ci-après, la valeur de tileMaxRecordCount est définie par défaut sur 4000. Cela signifie que lorsque la visionneuse de carte demande à afficher le service, seules 4 000 entités peuvent s’afficher par tuile. Dans le cas des entités ponctuelles, la valeur de tileMaxRecordCount est définie par défaut sur 8000. Pour les polylignes et les polygones, cette valeur est définie par défaut sur 4000 car ces entités comportent davantage de sommets.
User-added image
Lorsque vous effectuez un zoom avant ou arrière sur la carte Web et que l’étendue change, le nombre de tuiles de cette étendue est susceptible ou non de changer. Le fond de carte que le service affiche au-dessus est divisé en une grille définie de tuiles pour chaque niveau d’échelle. Lorsque vous effectuez un zoom avant, les tuiles se réduisent comparées aux niveaux d’échelle précédents et le nombre d’entités censées se dessiner au sein de chaque tuile est diminué. Le message d’avertissement risque donc moins d’apparaître. A l’inverse, lorsque vous effectuez un zoom arrière, les tuiles s’agrandissent par rapport aux niveaux d’échelle précédents et le nombre d’entités pouvant s’intégrer dans une seule tuile est augmenté. Etant donné que seules 4 000 entités peuvent s’afficher au total dans une tuile, le message d’avertissement risque d’apparaître davantage.

Solution ou procédure de contournement

Il n’existe actuellement aucun moyen de modifier le paramètre tileMaxRecordCount lors de la publication du service ou en mettant à jour la définition du service sur l’extrémité REST. Vous pouvez cependant modifier la valeur de maxRecordCountFactor en mettant à jour la définition de service. Pour mettre à jour la définition de service, accédez à la vue Admin de l’URL du service comme indiqué ci-dessus. Dans la définition de service, recherchez le paramètre maxRecordCountFactor. Par défaut, la valeur de ce paramètre est 1. Si l’objectif est d’augmenter la valeur de tileMaxRecordCount pour afficher davantage d’entités dans chaque tuile, définissez un nombre supérieur à 1 pour cette valeur. Si vous souhaitez réduire le nombre d’entités qui se dessinent dans chaque tuile, indiquez une valeur inférieure à 1.

Remarque : 
Il n’est pas recommandé de modifier la valeur de maxRecordCountFactor, car son augmentation peut affecter les performances du navigateur. 

Informations associées