banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Mon 07 October 2013 14:01

Hydrolithe
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Apr 2010
Messages: 223

Assistant d'attributs - erreur intersecting_feature

Bonjour,

J'utilise l'Assistant d'attributs pour renseigner automatiquement des champs dans mes couches du modèle réseaux humides ArcOpole. J'ai notamment paramétré les fonctions "autonumber", "from_edge_field", "nearest feature"... sans problèmes.

Je teste actuellement la fonction « intersecting _feature » (http://resources.arcgis.com/en/help/loc … 09r000000/) mais je rencontre un problème : lorsque je lance la règle de modification en mode manuel (récupérer la valeur d'un champ polygone dans une couche ponctuelle), j'obtiens le message d'erreur :

Erreur dans Global Functions - Env2Polygon. L'opération Add accepte uniquement un index "before" ou un index "after"


J'ai essayé de supprimer l'index spatial et de le recréer mais cela ne change rien. Le champ se remplit bien mais toujours avec la même valeur qui ne correspond pas à la valeur d'intersection (ex : les points sont dans les communes X et Y et la fonction « intersecting_feature » met à jour ma couche avec la valeur W). J’ai par ailleurs essayé avec la couche polygone dans la géodatabase et en dehors et cela ne change rien.

J'ai l'impression que la fonction marche dans la mesure où elle remplit bien les champs mais que c'est l'intersection que ne se fait pas.

Est-ce que vous avez déjà rencontré le même problème ?
Si oui, comment pourrais-je le résoudre ?

Hors ligne

 

#2 Wed 09 October 2013 16:04

Franck B
Membre
Lieu: PACA
Date d'inscription: 6 Sep 2005
Messages: 1382
Site web

Re: Assistant d'attributs - erreur intersecting_feature

Bonjour,

Avez-vous activer l'option "Debug" ( <add key="AttributeAssistant_Debug" value="false" /> )de l'assistant d'attributs ?

Peut-être quand lisant le fichier de debug, on pourrait comprendre où est le problème.

A+

Franck

Hors ligne

 

#3 Thu 10 October 2013 09:25

Hydrolithe
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Apr 2010
Messages: 223

Re: Assistant d'attributs - erreur intersecting_feature

Bonjour,

J'ai effectivement activé l'option "debug" au démarrage d'Esri. J'obtiens pour chaque objet :

Code:

REQUETE_1 - ON_MANUAL
***********************************************************
############ 09/10/2013 17:14:03 ################

  Setting sort order: Field - RUNORDER
  Querying table for Last Value for layer: REQUETE_1
  Query Used: (TABLENAME = '*' OR TABLENAME = 'TABLE_1' OR TABLENAME like 'TABLE_1|*' OR TABLENAME like 'TABLE_1|%') AND VALUEMETHOD = 'Last_Value'
  Number of results: 0
  Querying table for rules for layer: REQUETE_1
  Query Used: (TABLENAME = '*' OR TABLENAME = 'TABLE_1' OR TABLENAME like 'TABLE_1|*' OR TABLENAME like 'TABLE_1|%') AND ON_MANUAL = 1
  Number of results: 1
  Looping through the rows
    ------------------------------------------------
      Row Info
        Row Number 1
        TableName: TABLE_1
        FieldName: COMMUNE_1
        ValueInfo: Commune|ID|F
        ValueMethod: INTERSECTING_FEATURE
        On Create: 0
        On Change: 0

      Checking for Subtype Restriction
      Field Name: COMMUNE_1 was found at index: 68
                  Trying: INTERSECTING_FEATURE
                  Starting to process rule
                  Value Info is: Commune|ID|F
                  Layer Found: Commune
                  ID: at 2
                  Searching on Layer
                  No Selected Features
                  Cursor created
                  Starring Loop of found features
                  Checking Class
                  Different FCs
                  Setting Value: 382
                  Value Set
                  Finished: INTERSECTING_FEATURE
    ------------------------------------------------
DONE
---------------------------------------
#######################################################
#######################################################
REQUETE_1 - ON_CHANGE
***********************************************************
############ 09/10/2013 17:14:03 ################

  Setting sort order: Field - RUNORDER
  Querying table for Last Value for layer: REQUETE_1
  Query Used: (TABLENAME = '*' OR TABLENAME = 'TABLE_1' OR TABLENAME like 'TABLE_1|*' OR TABLENAME like 'TABLE_1|%') AND VALUEMETHOD = 'Last_Value'
  Number of results: 0
  Querying table for rules for layer: REQUETE_1
  Query Used: (TABLENAME = '*' OR TABLENAME = 'TABLE_1' OR TABLENAME like 'TABLE_1|*' OR TABLENAME like 'TABLE_1|%') AND ON_CHANGE = 1
  Number of results: 0
DONE

Je ne sais pas si ça vous en dit plus ?

Je précise que la "TABLE_1" est une couche de ponctuels et que "Commune" est une couche de polygones. Les deux se superposent bien à l'affichage dans Arcmap.

Hors ligne

 

#4 Thu 10 October 2013 14:35

Franck B
Membre
Lieu: PACA
Date d'inscription: 6 Sep 2005
Messages: 1382
Site web

Re: Assistant d'attributs - erreur intersecting_feature

Bonjour,

Est-ce que la valeur 382 est la valeur qui est toujours affectée le champ ?

Avez-vous déactiver l'option "Lastvalue" ( <add key="AttributeAssistant_ClearLastValue" value="False" /> )de l'assistant d'attributs ?

J'arrive à faire ce genre de traitement mais en choisissant l'option C = centroïde et non F = first... dans le cas d'intersection de point avec un polygone, si les polygones ne sont pas superposés, les deux options devraient permettre d'obtenir le même résultat.

A+

Franck

Hors ligne

 

#5 Mon 14 October 2013 12:14

Hydrolithe
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Apr 2010
Messages: 223

Re: Assistant d'attributs - erreur intersecting_feature

La valeur 382 est effectivement toujours celle qui est affectée à tous mes objets.

J'ai changé la valeur de  <add key="AttributeAssistant_ClearLastValue" value="True" /> qui était paramétrée à False mais même résultat.
En ce qui concerne les méthodes d'intersection, j'ai essayé les deux (C et F) mais cela ne change rien.

Merci en tout cas de votre aide.

Hors ligne

 

#6 Wed 16 October 2013 11:52

Franck B
Membre
Lieu: PACA
Date d'inscription: 6 Sep 2005
Messages: 1382
Site web

Re: Assistant d'attributs - erreur intersecting_feature

Bonjour,

J'essaye encore une fois wink : pourriez-vous nous montrer un log de l'assistant qui montre l'exécution sur plusieurs objets pour que l'on puisse voir (dans le log) pour quelle raison, l'outil renvoie toujours la valeur 382 ?

Une question bête, dans votre couche commune, il n'y a pas de polygones qui se superpose ? Le polygone 382 n'est pas un polygone particulier (par exemple un polygone avec plusieurs parties) ?

A+

Franck

Hors ligne

 

#7 Thu 17 October 2013 09:55

Hydrolithe
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Apr 2010
Messages: 223

Re: Assistant d'attributs - erreur intersecting_feature

Voici le log sur quelques objets :

Code:

Edit Log Started at: 17/10/2013 09:16:29
-----------------------------------------
#######################################################
REQUETE_1 - ON_MANUAL
***********************************************************
############ 17/10/2013 09:21:12 ################

  Setting sort order: Field - RUNORDER
  Querying table for Last Value for layer: REQUETE_1
  Query Used: (TABLENAME = '*' OR TABLENAME = 'TABLE_1' OR TABLENAME like 'TABLE_1|*' OR TABLENAME like 'TABLE_1|%') AND VALUEMETHOD = 'Last_Value'
  Number of results: 0
  Querying table for rules for layer: REQUETE_1
  Query Used: (TABLENAME = '*' OR TABLENAME = 'TABLE_1' OR TABLENAME like 'TABLE_1|*' OR TABLENAME like 'TABLE_1|%') AND ON_MANUAL = 1
  Number of results: 1
  Looping through the rows
    ------------------------------------------------
      Row Info
        Row Number 1
        TableName: TABLE_1
        FieldName: COMMUNE_1
        ValueInfo: Commune|ID|C
        ValueMethod: INTERSECTING_FEATURE
        On Create: 0
        On Change: 0

      Checking for Subtype Restriction
      Field Name: COMMUNE_1 was found at index: 70
                  Trying: INTERSECTING_FEATURE
                  Starting to process rule
                  Value Info is: Commune|ID|C
                  Layer Found: Commune
                  ID: at 2
                  Searching on Layer
                  No Selected Features
                  Cursor created
                  Starring Loop of found features
                  Checking Class
                  Different FCs
                  Setting Value: 382
                  Value Set
                  Finished: INTERSECTING_FEATURE
    ------------------------------------------------
DONE
---------------------------------------
#######################################################
#######################################################
REQUETE_1 - ON_MANUAL
***********************************************************
############ 17/10/2013 09:21:15 ################

  Setting sort order: Field - RUNORDER
  Querying table for Last Value for layer: REQUETE_1
  Query Used: (TABLENAME = '*' OR TABLENAME = 'TABLE_1' OR TABLENAME like 'TABLE_1|*' OR TABLENAME like 'TABLE_1|%') AND VALUEMETHOD = 'Last_Value'
  Number of results: 0
  Querying table for rules for layer: REQUETE_1
  Query Used: (TABLENAME = '*' OR TABLENAME = 'TABLE_1' OR TABLENAME like 'TABLE_1|*' OR TABLENAME like 'TABLE_1|%') AND ON_MANUAL = 1
  Number of results: 1
  Looping through the rows
    ------------------------------------------------
      Row Info
        Row Number 1
        TableName: TABLE_1
        FieldName: COMMUNE_1
        ValueInfo: Commune|ID|C
        ValueMethod: INTERSECTING_FEATURE
        On Create: 0
        On Change: 0

      Checking for Subtype Restriction
      Field Name: COMMUNE_1 was found at index: 70
                  Trying: INTERSECTING_FEATURE
                  Starting to process rule
                  Value Info is: Commune|ID|C
                  Layer Found: Commune
                  ID: at 2
                  Searching on Layer
                  No Selected Features
                  Cursor created
                  Starring Loop of found features
                  Checking Class
                  Different FCs
                  Setting Value: 382
                  Value Set
                  Finished: INTERSECTING_FEATURE
    ------------------------------------------------
DONE
---------------------------------------
#######################################################
#######################################################
REQUETE_1 - ON_MANUAL
***********************************************************
############ 17/10/2013 09:21:16 ################

  Setting sort order: Field - RUNORDER
  Querying table for Last Value for layer: REQUETE_1
  Query Used: (TABLENAME = '*' OR TABLENAME = 'TABLE_1' OR TABLENAME like 'TABLE_1|*' OR TABLENAME like 'TABLE_1|%') AND VALUEMETHOD = 'Last_Value'
  Number of results: 0
  Querying table for rules for layer: REQUETE_1
  Query Used: (TABLENAME = '*' OR TABLENAME = 'TABLE_1' OR TABLENAME like 'TABLE_1|*' OR TABLENAME like 'TABLE_1|%') AND ON_MANUAL = 1
  Number of results: 1
  Looping through the rows
    ------------------------------------------------
      Row Info
        Row Number 1
        TableName: TABLE_1
        FieldName: COMMUNE_1
        ValueInfo: Commune|ID|C
        ValueMethod: INTERSECTING_FEATURE
        On Create: 0
        On Change: 0

      Checking for Subtype Restriction
      Field Name: COMMUNE_1 was found at index: 70
                  Trying: INTERSECTING_FEATURE
                  Starting to process rule
                  Value Info is: Commune|ID|C
                  Layer Found: Commune
                  ID: at 2
                  Searching on Layer
                  No Selected Features
                  Cursor created
                  Starring Loop of found features
                  Checking Class
                  Different FCs
                  Setting Value: 382
                  Value Set
                  Finished: INTERSECTING_FEATURE
    ------------------------------------------------
DONE
---------------------------------------
#######################################################
#######################################################
REQUETE_1 - ON_MANUAL
***********************************************************
############ 17/10/2013 09:21:16 ################

  Setting sort order: Field - RUNORDER
  Querying table for Last Value for layer: REQUETE_1
  Query Used: (TABLENAME = '*' OR TABLENAME = 'TABLE_1' OR TABLENAME like 'TABLE_1|*' OR TABLENAME like 'TABLE_1|%') AND VALUEMETHOD = 'Last_Value'
  Number of results: 0
  Querying table for rules for layer: REQUETE_1
  Query Used: (TABLENAME = '*' OR TABLENAME = 'TABLE_1' OR TABLENAME like 'TABLE_1|*' OR TABLENAME like 'TABLE_1|%') AND ON_MANUAL = 1
  Number of results: 1
  Looping through the rows
    ------------------------------------------------
      Row Info
        Row Number 1
        TableName: TABLE_1
        FieldName: COMMUNE_1
        ValueInfo: Commune|ID|C
        ValueMethod: INTERSECTING_FEATURE
        On Create: 0
        On Change: 0

      Checking for Subtype Restriction
      Field Name: COMMUNE_1 was found at index: 70
                  Trying: INTERSECTING_FEATURE
                  Starting to process rule
                  Value Info is: Commune|ID|C
                  Layer Found: Commune
                  ID: at 2
                  Searching on Layer
                  No Selected Features
                  Cursor created
                  Starring Loop of found features
                  Checking Class
                  Different FCs
                  Setting Value: 382
                  Value Set
                  Finished: INTERSECTING_FEATURE
    ------------------------------------------------
DONE
---------------------------------------
#######################################################
#######################################################

Pour info, je sélectionne bien tous mes objets de la TABLE_1 avant de lancer INTERSECTING_FEATURE. J'ai même essayé de sélectionner aussi toutes mes communes avant de lancer INTERSECTING_FEATURE, mais même résultat.
J'ai effectué une topologie sur ma couche de polygones et il n'y a pas d'erreurs de superposition, de chevauchement ou de discontinuité. Le polygone 382 n'a rien de particulier, il n'est pas multi-parties.

Hors ligne

 

#8 Thu 31 October 2013 13:22

Hydrolithe
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Apr 2010
Messages: 223

Re: Assistant d'attributs - erreur intersecting_feature

Pour assurer le suivi du problème, il semble que l'erreur provienne (dans mon cas, en tout cas) de l'Add-In Assistant d'attributs d'ArcOpole (bug ?)  car j'ai installé celui fourni par Esri US dans le Water Utility et lui fonctionne bien sur les mêmes données qui posaient problème.

Merci Franck B de ton aide.

Hors ligne

 

Pied de page des forums

Powered by FluxBB