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

GEODATA DAYS 2024

#1 Wed 26 November 2008 15:06

remy.scotto
Participant occasionnel
Lieu: Lyon
Date d'inscription: 26 Nov 2008
Messages: 22
Site web

Ecriture dans un calque importé

Bonjour,

Je travaille actuellement avec une version de mapGuide 1.2 et 2.0, dans les 2 cas, j'ai importé des données cartographique au format SHP pour créer ma carte. J'exploite cette carte avec un site web en ASP VB.NET.

J'arrive à lire mes données dans tous mes calques (Ex : liste de matériel avec identifiant, nom, état de fonctionnement et géolocalisation) mais lorsque je tente de modifier un état de focntionnement, le code se déroule sans erreur mais il n'y a aucune modification dans les données du calque.

voici un bout de code :

Public Sub SetEtatEquipement(ByVal IdEquipement As String, ByVal EtatEquipement As Integer)
  Try
    InitialiserSession()

    Dim SiteConnexion As New MgSiteConnection
    SiteConnexion.Open(InfoUtilisateur)

    Dim featureService As MgFeatureService = SiteConnexion.CreateServiceMgServiceType.FeatureService)
    Dim resId As New MgResourceIdentifier("Library://Carte/1_Donnees/equipement.FeatureSource")

    Dim myPropertyCollection As New MgPropertyCollection()
    Dim myProperty As New MgStringProperty("Etat", EtatEquipement.ToString())
    myPropertyCollection.Add(myProperty)
    Dim myFilter As String = "ID = '" + IdEquipement + "'"
    Dim myUpdateCommande As New MgUpdateFeatures("Equipement", myPropertyCollection, myFilter)
    Dim FeatureCommandCollection As New MgFeatureCommandCollection()
    FeatureCommandCollection.Add(myUpdateCommande)
    featureService.UpdateFeatures(resId, FeatureCommandCollection, False)

  Catch mge As MgException
    Tracer(mge)
  Catch ex As Exception
    Tracer(ex)
  End Try
End Sub

Si je passe le useTransaction à True dans featureService.UpdateFeatures(resId, FeatureCommandCollection, True), j'ai le message suivant :
"An exception occurred in FDO component. Le fournisseur SDF ne prend pas en charge les transactions."

Auriez-vous une solutions à mon problème ??

Par avance merci

Hors ligne

 

#2 Fri 28 November 2008 09:22

remy.scotto
Participant occasionnel
Lieu: Lyon
Date d'inscription: 26 Nov 2008
Messages: 22
Site web

Re: Ecriture dans un calque importé

Bonjour,

Je reviens vers mon problème au vue des visites sans réponses....

Pour notre développement, c'est un réel problème de ne pas pouvoir écrire dans un calque importé.

Auriez-vous une piste pour ce sujet ??

Par avance merci

Cordialement,

Hors ligne

 

#3 Mon 01 December 2008 09:33

Gwenael Bachelot
Participant assidu
Lieu: Bureau Autodesk : Paris 12ème
Date d'inscription: 5 Sep 2005
Messages: 608
Site web

Re: Ecriture dans un calque importé

Bonjour,
Je crois que ce thème est couvert par le "MapGuide Developers Guide", disponible à l'URL suivante : http://mapguide.osgeo.org/2.0/documentation.html (voir page 81).

Mais je pense que vous l'avez déjà lu...

Est-ce que vous avez bien accès à ces données en écriture ?
Si c'est un fichier, est ce que la date de modification change après passage dans votre code ?

Cordialement,
Gwenael Bachelot
Autodesk

Hors ligne

 

#4 Mon 01 December 2008 14:24

remy.scotto
Participant occasionnel
Lieu: Lyon
Date d'inscription: 26 Nov 2008
Messages: 22
Site web

Re: Ecriture dans un calque importé

Bonjour Gwenael,

J'ai fait le test et rien n'est sauvegardé, pas de changemenet de taille ou de date de modification du fichier.

Je vous décris la procédure d'import peut-être est-elle mauvaise ??

Tout d'abord je reçois mes calques au format SHP. Je fait une procédure de chargement, je vais chercher mes SHP et je garde les paramètres par défaut (avec l'option "convertir en source d'objets SDF").
Une fois le chargement effectué, j'exploite ma source de données au travers de l'API .NET de mapguide comme décrit dans un post précédent.

Je ne sais pas si j'ai les droits en écriture, je garde le plus souvent les paramètres standards pour éviter tout bloquage.

Dans les propriétés de mon calque, le propriétaire est l'utilisateur "Administrator" et côté autorisations, "Hériter des autorisations du parent" est coché et le groupe ou utilisateur est "Everyone".

Où me suis-je trompé ??

Hors ligne

 

#5 Fri 05 December 2008 23:09

Gwenael Bachelot
Participant assidu
Lieu: Bureau Autodesk : Paris 12ème
Date d'inscription: 5 Sep 2005
Messages: 608
Site web

Re: Ecriture dans un calque importé

Bonjour,

Désolé, je ne vois pas.

Au choix :
- si vous êtes ADN (Autodesk Developer Network), il faut poser la question au support développeurs
- sinon, il faut essayer sur la liste MapGuide_users

En tout cas, je suis certain que cela peut fonctionner.

Désolé,
Gwenael

Hors ligne

 

#6 Tue 16 December 2008 11:26

remy.scotto
Participant occasionnel
Lieu: Lyon
Date d'inscription: 26 Nov 2008
Messages: 22
Site web

Re: Ecriture dans un calque importé

Bonjour,

J'ai trouvé une solution.

Effectivement, les calques étaient en lecture seule. MapGuide Studio 2008 ne me permet pas de lever cette lecture seule et surtout, c'est lui qui m'activait la propriété ReadOnly à true.

La solution me fut d'utiliser Maestro, le petit remplaçant de Studio en version Open Source.
Que vous pouvez trouver là : http://trac.osgeo.org/mapguide/wiki/maestro

Je le trouve complet et surprenant, il permet de faire plus de choses que Studio...

Je ne comprends pas pourquoi MapGuide Studio bloque l'accès à ce genre de propriété.

Je trouve vraiment dommage que pour un logiciel professionnel et payant, on est ce genre de problème.

Coridalement

A plus tard sur le forum

Hors ligne

 

Pied de page des forums

Powered by FluxBB