#1 Fri 12 July 2013 17:03
- ajanvre
- Participant occasionnel
- Lieu: Bayonne
- Date d'inscription: 19 Jan 2007
- Messages: 11
[ArcGIS Server 10.x] Annotations et jointure
Bonjour à tous,
Le manuel ESRI indique ceci (ici http://resources.arcgis.com/fr/help/...0000001r000000) :
Remarque :
Pour conserver l'intégrité des données, vous ne pouvez pas convertir des étiquettes basées sur un champ joint en annotations liées aux entités. Convertissez les étiquettes en annotations standard ou modifiez les données de sorte que le champ d'étiquette existe dans la table de base et supprimez la jointure.
Oui sauf que cela ne m'arrange pas : je souhaite afficher des étiquettes (dynamiques) d’entités étant amenées à "évoluer" (table attributaire) à travers une jointure. C'est dense, je n'arrive donc pas à placer automatiquement et correctement mes étiquettes => j'ai converti celles-ci en annotations... et du coup il râle il ne veut pas les lier ! J'ai tout replacé à la main, c'est propre, mais long : quand je vais faire évoluer la donnée... c'est reparti pour un tour.
Quelqu'un aurait-il une bonne astuce ? Même une solution "bourrin" peut m'intéresser.
Exemple de solution bourrin à laquelle j'ai pensé : je fais une classe d'annotation liée à un champ... que je copie/recalcule dans le champ attaqué par l'annotation pour faire du "semi-dynamique". Bien sûr une solution plus sexy à utiliser m'intéresse grandement )
Thread initial sur ForumSIG : http://www.forumsig.org/showthread.php/ … t-jointure
Merci !
P.S : ArcGIS 10.1 (j'utilise Maplex et malgré cet agréable outil... le placement reste compliqué) sur windows 7 (64 phallus)
Hors ligne
#2 Fri 12 July 2013 17:09
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: [ArcGIS Server 10.x] Annotations et jointure
Salut et bienvenue,
Une solution possible est de dupliquer ton champ étiquette et c'est celui-ci que tu transformes en annotation.
A+
Joël
Hors ligne
#3 Fri 12 July 2013 17:15
- ajanvre
- Participant occasionnel
- Lieu: Bayonne
- Date d'inscription: 19 Jan 2007
- Messages: 11
Re: [ArcGIS Server 10.x] Annotations et jointure
Merci de la proposition, mais j'avoue ne pas comprendre ?
Hors ligne
#4 Mon 15 July 2013 07:39
- Meums
- Participant actif
- Lieu: Bordeaux
- Date d'inscription: 26 Mar 2009
- Messages: 98
Re: [ArcGIS Server 10.x] Annotations et jointure
Bonjour,
1 - Vous pouvez créer vos annots à partir de l'étiquette de vos identifiants (cela doit être du Txt 255). A supposer que vous ayez des identifiants uniques, appelons le champ IDOBJET. Créez vos étiquettes à partir de ce champ...
2 - créez votre classe d'annot.
3 - dans votre classe d'Annot, créez un autre champ (IDOBJ par exemple), reportez-y vos données identifiants à partir du champ qui "supporte" les annotations TextString et qui contiendra vos IDOBJET (calculette).
4 - faites une jointure avec vos entités (celles qui seront à mettre à jour régulièrement) sur ce nouveau champ IDOBJ/IDOBJET. Vous devriez alors pouvoir mettre à jour le champ TextString en y reportant les données du champ "dynamique".
5 - il vous suffira alors de refaire une jointure à chaque MAJ et de repérer les objets qui disparaissent (suppression de données...)
J'espère avoir bien compris et que c'est une solution...
Et ça fonctionne, je viens d'essayer (mais je suis sous 9.3). Même si ce n'est pas très sexy, pour cela il faut voir du coté des programmeurs, il le sont surement :-)
Emeric
Hors ligne
#5 Mon 15 July 2013 10:54
- ajanvre
- Participant occasionnel
- Lieu: Bayonne
- Date d'inscription: 19 Jan 2007
- Messages: 11
Re: [ArcGIS Server 10.x] Annotations et jointure
Bonjour,
Merci de l'idée pour la solution.
J'ai un petit souci de mon côté : je n'arrive pas à lui faire prendre en compte les modifications du champ TextString.
Toutefois je pense avoir compris l'idée. Cela me semble plus rapide de faire une annotation liée sur un champ "tampon" de la couche à étiqueter (fonctionnel sur ma 10.1).
J'aurais dû préciser les étapes de ma première idée : 1- je crée des étiquettes sur ma couche A (champ d’étiquetage "tampon"), 2-je fais une classe d'annotation liée aux entités (toujours aucune jointure donc ça fonctionne), 3- je peux maintenant faire mes jointures (sur les tables contenant des infos dynamiques), 4-quand je fais un export d'une carte je recalcule le champ "étiquetage" de la couche A via la calculette (ex: [table1].[champX]&" "&[table2].[champY])
C'est cette dernière étape qui me gêne pas mal, ce serait cool un affichage dynamique sans intervention... ne serait ce que pour parcourir la carte sur ArcMAP avec des données réactualisées automatiquement et correctement affichées/placées.
Encore merci de la proposition !
Hors ligne