Suite

Remplissage automatique conditionnel des valeurs de champ en fonction d'autres valeurs de colonne ?


Je voudrais savoir s'il existe un moyen de remplir automatiquement la valeur du champ pour une colonne en fonction de l'état d'autres colonnes. Je ne sais pas quelle est la meilleure façon d'expliquer, mais pour donner un exemple ici :

Essentiellement, j'ai une table attributaire avec 5 colonnes. J'ai établi le domaine dans lequel les valeurs ne peuvent être que des nombres (1 ou 2). Idéalement, je voudrais créer une sixième colonne dans laquelle se remplira automatiquement en fonction des valeurs des 5 colonnes précédentes. La condition est la suivante, s'il y a une valeur 2 dans l'une des colonnes, la sixième colonne serait évaluée à 2. Si toutes les colonnes étaient répertoriées à 1, la sixième colonne serait 1.

Je ne souhaite pas générer automatiquement cela manuellement. Je le voudrais de manière à ce que lorsque les 5 premières colonnes sont remplies, la sixième valeur se génère automatiquement.


Vous auriez besoin d'utiliser des déclencheurs de base de données pour cela (qui n'est pris en charge que lors du stockage de données dans un SGBD). Si vous êtes sur une géodatabase fichier/personnelle, vous devrez exécuter un script Python qui calculera les colonnes régulièrement (planifié dans Windows comme une tâche, par exemple).

Il n'y a aucun moyen d'implémenter des déclencheurs de base de données dans une géodatabase fichier ; il n'y a pas de contrôle prêt à l'emploi qui déclencherait le calcul du champ en fonction de la modification des lignes. Toutes les solutions possibles impliqueraient des scripts ArcObjects ou Python avec des formulaires d'édition d'attributs personnalisés.


Vous pouvez écrire une extension de classe et l'enregistrer avec la table. Il recevra alors tous les événements de création, de mise à jour et de suppression de la table. Dans ces gestionnaires d'événements, vous exécuteriez votre logique spécifique pour calculer la valeur de votre 6e colonne.

Voir : http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#//000010002010000000


Cela dépend entièrement du processus de saisie des données, mais si vous pouviez rediriger le flux de travail afin que les utilisateurs utilisent un outil de script personnalisé avec une boîte de dialogue pour créer les fonctionnalités, vous pourriez le configurer de sorte que les valeurs utilisateur soient écrites directement dans la ligne et la cinquième colonne est calculée lorsque les utilisateurs soumettent les modifications. Un complément python peut fonctionner.

Les cas d'utilisation où cela serait pratique sont assez limités, je dirais.


Voir la vidéo: CS75 Summer 2012 Lecture 0 HTTP Harvard Web Development David Malan (Octobre 2021).