Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
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é ?

#1 Thu 21 June 2007 11:52

scoutoto
Participant occasionnel
Date d'inscription: 5 Jun 2007
Messages: 32

MapX - Problème avec "UpdateFeature"

Bonjour,

J'utilise l'activeX MapX.

Mon problème est le suivant. J'ai un layer avec pas loin de 2000 features.
Il faut je mette à jour deux colonnes de données pour ce layer.
J'utilise la fonction updatefeature. Je boucle sur ces 2000 features et au bout d'un moment j'ai le message d'erreur suivant :

<<
En tentant d'invoquer la méthode <UpdateFeature>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
'Erreur 00000000 : Error updating feature object.'
En tentant de lire la propriété <UpdateFeature>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
'Erreur 8002000E, Nombre de paramètres incorrect'
En tentant d'écrire la propriété <UpdateFeature>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
'Erreur 80020005, Type incorrect pour le paramètre -1232201'
>>


Est ce que certaines personnes ont déjà rencontré ce problème ?

Merci de votre aide.

Hors ligne

 

#2 Wed 27 June 2007 10:21

scoutoto
Participant occasionnel
Date d'inscription: 5 Jun 2007
Messages: 32

Re: MapX - Problème avec "UpdateFeature"

Bonjour,

Personne n'a donc rencontré ce problème ?

Petite précision, je me suis aperçu que le message d'erreur apparaît plus souvent lorsque le fichier sur lequel je travaille est important (avec bcp de features)

Toutes propositions pour contourner ce problème m'aideraient énormément.

Merci de votre aide.

Hors ligne

 

#3 Wed 27 June 2007 20:56

Damien BEAUSEIGNEUR
Participant assidu
Lieu: meyzieu
Date d'inscription: 5 Sep 2005
Messages: 425

Re: MapX - Problème avec "UpdateFeature"

Bonjour,

Essaye dans un premier temps d'enlever les index sur le layer. Cela simplifiera le travail de Mapx, qui est loin d'être aussi performant que Mapinfo sur la gestion des index.

Si celà ne marche pas vérifie que cet objet est lisible par Mapinfo.

cordialement

Hors ligne

 

#4 Wed 27 June 2007 21:56

Sébastien VERNIER
Juste Inscrit !
Date d'inscription: 7 Sep 2005
Messages: 8

Re: MapX - Problème avec "UpdateFeature"

Bonjour,

Je n'ai pas rencontré ce problème exactement, mais dans une situation similaire.

En effet, je rencontre des erreurs au bout d'un nombre conséquent d'opérations (notamment à l'intérieur d'une boucle).

Malheureusement, je n'ai pas encore trouvé la solution à ce problème. Vu qu'il arrive très peu fréquemment et dans certains cas particuliers (notamment gros volumes à traiter), ce n'est pas encore trop gênant.

Je ne pense pas que le problème vienne du code en soit mais de la façon dont les opérations s'enchaînent entre elles et dont la plage mémoire ainsi que son adresse sont mises à disposition. Pour cela je force dans mon code à n'avoir plus de référence à la variable dès que je n'en ai plus besoin.

Si ça peut vous aider.

Sébastien

PS : Pour infos, j'utilise Mapx5 avec Delphi6.

Hors ligne

 

#5 Tue 03 July 2007 18:41

scoutoto
Participant occasionnel
Date d'inscription: 5 Jun 2007
Messages: 32

Re: MapX - Problème avec "UpdateFeature"

Bonjour,

Merci beaucoup de vos réponses, elles m'ont été d'une grande aide.
En effet, ce sont les index du layer qui posaient problème !
J'ai fait le test avec un fichier de plus de 13000 features (en enlevant les index) et cela passe. Donc merci une nouvelle fois.

Mais j'ai encore quelques soucis.
En fait, par la suite j'ai besoin des index pour créer le dataset correspondant au layer.
Si je n'ai pas précisé d'index . . .  un magnifique message d'erreur m'avertit comme quoi mon layer specified is not matchable.
('Erreur 00000000 : Layer specified is not matchable.')

Sous MapX, la propriété "Indexed" renvoie seulement une valeur (vrai ou faux), il n'est pas possible de "forcer" un field en index. (ou dit autrement : avoir un accès en écriture de la propriété indexed).

Avez-vous déjà rencontré ce problème là et si oui comment l'avez-vous résolu ?

Merci une nouvelle fois de votre aide

Hors ligne

 

#6 Mon 09 July 2007 22:02

Damien BEAUSEIGNEUR
Participant assidu
Lieu: meyzieu
Date d'inscription: 5 Sep 2005
Messages: 425

Re: MapX - Problème avec "UpdateFeature"

Note pour éviter les problème d'index pendant la mise à jour. J'ai enlever les informations du fichier .tab (le mots index derrière le nom du champ), et une fois la mise à jour, il ne reste plus qu'à rétablir l'information dans le fichier .tab  .

Il est plus sur dans ce genre de méthode après modification de fermer la table. Et de l'ouvrir avec le .tab ayant les informations d'index. Un seul défaut si les données modifiés ont été modifiées sur la colonne des index alors... l'index ne devrait pas être à jour.

Hors ligne

 

Pied de page des forums

Powered by FluxBB