Par défaut, lorsque vous publiez une enquête dans Survey123, une couche d’entités est créée avec la structure de l’enquête. Vous pouvez également décider d’associer l’enquête à une couche d’entités existante.
Préparer une couche d’entités
Pour pouvoir utiliser une couche d’entités existante avec Survey123, cette couche doit remplir les conditions requises suivantes :
- La couche d’entités doit être un élément de ArcGIS Enterprise ou ArcGIS Online. Cela concerne les couches d’entités hébergées et les couches d’entités publiées sur des serveurs fédérés et non fédérés.
Remarque :
Pour utiliser des services d’entités non fédérés, une configuration supplémentaire est requise. Vous devrez créer manuellement un élément de couche d’entités dans l’organisation ArcGIS représentant le service. Pour plus d’informations, consultez cet article de la base de connaissances sur la façon de se connecter à des services ArcGIS Server non fédérés.
- Le propriétaire et les utilisateurs de l’enquête doivent avoir accès à la couche d’entités.
- La couche d’entités doit être modifiable.
- Les propriétés supplémentaires suivantes doivent être définies sur true (vrai) :
- supportsApplyEditsWithGlobalIds : la couche d’entités doit permettre l’application de mises à jour avec des ID globaux. Cela permet à l’application de créer et de gérer les ID globaux dans les entités créées (le serveur ne crée pas un nouvel ID global pour les entités créées).
- supportsAttachmentsByUploadId : cette propriété est automatiquement activée lors de l’activation des pièces jointes sur la couche d’entités. Cela permet à l’application de charger toutes les pièces jointes associées à une enquête avant d’envoyer l’enquête. En cas d’échec de chargement d’une pièce jointe, l’envoi de l’enquête est annulé, empêchant ainsi la perte de données.
Selon la conception de l’enquête et la manière dont cette dernière doit être utilisée, tenez compte des conditions requises supplémentaires suivantes :
- Pour que les utilisateurs puissent collecter de nouvelles enquêtes afin d’ajouter des enregistrements, la fonctionnalité Create est requise.
- Pour que les utilisateurs puissent mettre à jour des enregistrements d’enquête existants :
- La fonctionnalité Update est requise sur la couche.
- Assurez-vous que la couche d’entités autorise les valeurs nulles ou que l’enquête utilise des champs obligatoires. Survey123 utilise des valeurs nulles lors de la mise à jour lorsqu’une réponse est supprimée et n’est pas remplacée. Par conséquent, Survey123 n’envoie pas d’enquête depuis une couche d’entités qui n’autorise pas les valeurs nulles.
- Pour que les utilisateurs puissent soumettre des images, des fichiers audio ou d’autres fichiers, les pièces jointes doivent être activées (définissez hasAttachments sur true).
- Les répétitions dans une enquête ne peuvent pas référencer des couches ou des tables associées, sauf si la couche ou la table enfant utilise un champ GUID pour la relation. Le nom de la répétition est défini par le nom de table de la couche ou table associée et ne peut pas être modifié.
Remarque :
Survey123 prend uniquement en charge les relations GUID un vers plusieurs lors de l’utilisation de couches d’entités et tables associées existantes. Les relations un à un ne sont pas prises en charge.
Application de mises à jour avec des ID globaux
Pour qu’une couche d’entités prenne en charge l’application de mises à jour avec les identifiants globaux, les exigences suivantes doivent être respectées :
- Les couches dans la couche d’entités doivent avoir une colonne GlobalId avec un indice unique. Pour ce faire, la méthode la plus simple consiste à activer la synchronisation lors de la publication de la couche d’entités.
- Si vous utilisez une géodatabase multi-utilisateurs, les couches peuvent utiliser le versionnement de branche ou le versionnement traditionnel. Survey123 cible la version par défaut lors de l’utilisation d’une géodatabase de branche versionnée. Pour plus d’informations, consultez la rubrique Types de versionnement.
- Si la couche d’entités contient des couches prenant en charge les valeurs m, la mise à jour sans valeur m doit être activée.
- Une couche d’entités ou une table doit contenir des ID globaux, avant l’activation de pièces jointes dans l’une ou l’autre.
Pour en savoir plus sur la prise en charge de la mise à jour dans une couche d’entités, consultez supportsApplyEditsWithGlobalIds dans la rubrique Couche (service d’entités) de la documentation de ArcGIS REST API.
Activation des pièces jointes
Lors de l’activation des pièces jointes sur une couche d’entités, les colonnes KEYWORD et EXIFINFO ne sont pas ajoutées à la structure par défaut. Cette colonne est requise pour pouvoir associer les pièces jointes à l’enregistrement approprié. Une fois que vous avez activé les pièces jointes, exécutez l’outil de géotraitement Upgrade Attachments (Mettre à niveau les pièces jointes) pour activer les mots-clés.
Remarque :
Il est recommandé d’ajouter les colonnes KEYWORD et EXIFINFO avant de collecter les enregistrements avec Survey123 afin que les pièces jointes soumises contiennent des mots-clés. Si les colonnes KEYWORD et EXIFINFO n’existent pas avant la soumission des pièces jointes, lenotebook Python Update Attachment Keywords (Mettre à jour les mots-clés des pièces jointes) peut être utilisé pour mettre à jour les pièces jointes.
Modifier la structure
Lorsqu’une enquête a été créée à partir d’une couche d’entités existante, de nouvelles questions et valeurs de liste de choix ne peuvent y être ajoutées qu’une fois que le champ ou le domaine correspondant a été ajouté à la couche d’entités. Lorsqu’une enquête est créée à partir d’une vue de couche d’entités, de nouvelles questions et valeurs de liste de choix ne peuvent y être ajoutées qu’une fois le champ ou le domaine correspondant ajouté à la couche d’entités sous-jacente et propagé vers la vue de la couche d’entités.
Vous avez un commentaire à formuler concernant cette rubrique ?