IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

InfoPath .NET Discussion :

Sharepoint 2007 + InfoPath 2007 Problème update sur un champs [IP-2007]


Sujet :

InfoPath .NET

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 82
    Points : 49
    Points
    49
    Par défaut Sharepoint 2007 + InfoPath 2007 Problème update sur un champs
    Bonjour,

    voilà j'ai un formulaire infopath dans une form library dans Sharepoint, je désire le copier dans une autre form library, jusque là tout va bien j'y arrive.

    Simplement quand je la colle dans l'autre form livrary je voudrais changer la valeur d'un champs comment je peux faire ?

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SPListItem item = file.Item;
    item["MonChamps"] = "Valeur de mon champs";
    Web.AllowUnsafeUpdates = true;
    item.SystemUpdate(false);
    Web.AllowUnsafeUpdates = false;
    Mais cela ne fonctionne pas après l'update il remet la valeur du champs...
    Merci de m'aider

  2. #2
    Membre éprouvé
    Homme Profil pro
    Référent technique
    Inscrit en
    Juillet 2007
    Messages
    834
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Référent technique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 834
    Points : 1 219
    Points
    1 219
    Par défaut
    Bonjour,
    Sur la partie de code spécifiée, je ne vois aucune erreur.
    C'est le principe même de l'update.

    On dirait que tu n'update pas le bon item. Pour cela c'est simple, il faut vérifier que la date de modification de ton item est actualisée dans SharePoint. Si ce n'est pas le cas, tu ne travailles pas sur l'item que tu crois.

    Sinon, voir du côté suivant:
    - tu as pitètre un autre élément (eventhandler, workflow,...) qui le remodifie après que tu l'ai modifié dans ton code. Vérifier qu'il n'y ait pas d'élément parasite sur la bibliothèque.
    - Le champ que tu veux updater est de quel type (est ce un champ texte de base, est ce un champ de type lookup,...)?


    Cordialement.
    Rémi
    Rémi MATAYRON
    N'hésitez pas à visiter mon blog dédié à InfoPath et SharePoint : http://rmatayron.blogspot.com/

    Pour plus de visibilité sur le forum, marquer la question en [Résolu] lorsque la réponse fournie vous convient.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 82
    Points : 49
    Points
    49
    Par défaut
    Merci pour ta réponse.

    En fait, c'est un champs text du formulaire infopath jai regardé sur ma form library il n'y a pas d'event receiver ni de Workflow.

    Le champs prend bien la bonne valeur avant l'update, quand j'update il reprend la valeur d'origine.

    Donc je ne sais pas trop où chercher . . .

  4. #4
    Membre éprouvé
    Homme Profil pro
    Référent technique
    Inscrit en
    Juillet 2007
    Messages
    834
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Référent technique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 834
    Points : 1 219
    Points
    1 219
    Par défaut
    Ok,
    Alors je ne veux pas dire de bétise mais je crois qu'il te manque un détail lors de la publication des métadonnées.

    Ta métadonnée doit être créée au moment de publier ton formulaire (et non pas par Outils/Option du formulaire/Promotion de propriété...).
    Il ne faut pas oublier de cocher la case "Autoriser les utilisateurs à modifier" qui se situe en dessous du nom de la métadonnée.

    Si cette case n'est pas cochée, on se retrouve avec ton problème ou la colonne n'est qu'en lecture mais pas en écriture...

    En espérant avoir pu t'aider.

    Cordialement.
    Rémi
    Rémi MATAYRON
    N'hésitez pas à visiter mon blog dédié à InfoPath et SharePoint : http://rmatayron.blogspot.com/

    Pour plus de visibilité sur le forum, marquer la question en [Résolu] lorsque la réponse fournie vous convient.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 82
    Points : 49
    Points
    49
    Par défaut
    Merci pour ta réponse est ce que tu peux me dire où est cette propriété ? Dans Sharepoint ou dans Infopath ? ??

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 82
    Points : 49
    Points
    49
    Par défaut
    En gros j'ai été dans Sharepoint Manager j'ai mis False pour la propriété ReadOnly. Maintenant je voudrai savoir comment le rendre readyOnly = false lors de la publication du formulaire ?

  7. #7
    Membre éprouvé
    Homme Profil pro
    Référent technique
    Inscrit en
    Juillet 2007
    Messages
    834
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Référent technique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 834
    Points : 1 219
    Points
    1 219
    Par défaut
    Comme je te le disais, il faut aller dans l'interface de publication des formulaires ("Fichier / Publier le formulaire" ou "Tache de création / Publier le formulaire").
    Cliquer suivant jusqu'a arriver sur l'écran de publication des métadonnées.Sur cet écran, faire ajouter une métadonnée et cocher la checkbox en bas de l'écran.

    Cordialement.
    Rémi MATAYRON
    N'hésitez pas à visiter mon blog dédié à InfoPath et SharePoint : http://rmatayron.blogspot.com/

    Pour plus de visibilité sur le forum, marquer la question en [Résolu] lorsque la réponse fournie vous convient.

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 82
    Points : 49
    Points
    49
    Par défaut
    Merci pour ta réponse mais quand je publie le formulaire j'ai aucune option qui me permet de modier ou d'ajouter les champs :/ je suis novice sous infopath désolé d'être inculte...

    Merci de m'aider encore une fois :s

  9. #9
    Membre éprouvé
    Homme Profil pro
    Référent technique
    Inscrit en
    Juillet 2007
    Messages
    834
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Référent technique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 834
    Points : 1 219
    Points
    1 219
    Par défaut
    Je n'ai pas dit ça...

    L'interface pour rajouter les métas lors de la publication est en pièce jointe. Elle se situe 3 ou 4 clics après avoir cliquer sur "Publier le formulaire".

    Si vous ne la voyez toujours pas, décrivez moi les options que vous choisissez lors de la publication de votre formulaire afin que je vérifie.

    Sinon ne perdez pas espoir, il est possible de faire la même chose en allant modifier directement le fichier manifest.xsf compris dans la solution (en fait un formulaire xsn est juste un cab comprenant toutes les informations : xsl, régles, images...).

    Cordialement.
    Images attachées Images attachées  
    Rémi MATAYRON
    N'hésitez pas à visiter mon blog dédié à InfoPath et SharePoint : http://rmatayron.blogspot.com/

    Pour plus de visibilité sur le forum, marquer la question en [Résolu] lorsque la réponse fournie vous convient.

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 82
    Points : 49
    Points
    49
    Par défaut
    J'ai compris pourquoi car vous publier le formulaire "vers un serveur Sharepoint ".

    Alors que moi je dois choisir vers un emplacement réseau étant donné ma configuration actuelle ... Donc je ne peux pas modifier les colonnes et définir le champs.

    Comment puis-je faire ? Dois-je modifier le fichier manifest et où il se trouve?


    Merci encore pour votre aide . . .

  11. #11
    Membre éprouvé
    Homme Profil pro
    Référent technique
    Inscrit en
    Juillet 2007
    Messages
    834
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Référent technique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 834
    Points : 1 219
    Points
    1 219
    Par défaut
    Exact mais je pensais que vous choisissiez "Publier sous SharePoint" vu que vous cherchiez à modifier les métas sharePoint. Donc la on est plus dans un cas super simple...

    La solution nécessitant un peu de doigté:
    • Renommer le fichier ".xsn" en ".cab".
    • Extraire le .cab dans un répertoire (avec winrar par exemple).
    • Ouvrir le fichier manifest.xsf à l'aide d'un éditeur de texte genre notepad.
    • Chercher l'attribut "readWrite" dans la balise "fieldExtension", et le mettre à yes pour la colonne que vous souhaitez avoir en modification. (le column name n'étant pas parlant vu qu'il s'agit d'un GUID, vous pourrez trouver le nom du champ associé à ce column name dans la balise field située plus bas),
    • Enregistrer la modification du manifest.xsf.
    • Double-cliquer sur le manifest.xsf puis enregistrer le modèle de formulaire qui s'ouvre en ".xsn".
    • Publier le fichier ".xsn" que vous avez généré".


    La solution simple:
    • M'envoyer votre formulaire en pièce jointe et me dire quelles colonnes vous souhaitez rendre modifiable.

    Cordialement.
    Rémi MATAYRON
    N'hésitez pas à visiter mon blog dédié à InfoPath et SharePoint : http://rmatayron.blogspot.com/

    Pour plus de visibilité sur le forum, marquer la question en [Résolu] lorsque la réponse fournie vous convient.

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 82
    Points : 49
    Points
    49
    Par défaut
    Merci pour ta réponse c'est super clair et précis j'ai bien suivi ta démarche.

    Une question me taraude, à chaque fois que je fais une modification des champs de mon formulaire je vais devoir publier forcément et donc refaire le process de modification du manifest ?

  13. #13
    Membre éprouvé
    Homme Profil pro
    Référent technique
    Inscrit en
    Juillet 2007
    Messages
    834
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Référent technique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 834
    Points : 1 219
    Points
    1 219
    Par défaut
    Si les champs que vous voulez rajouter doivent être modifiable, je penses que vous n'aurez pas le choix. Le cas échéant, il faudra seulement passer par "Outils / Option du formulaire / Promotion des propriétés".

    L'utilisation normale veut qu'il faille publier vers SharePoint pour pouvoir dire que la métadonnée SharePoint peut être accessible en écriture.

    Une question me chatouilles aussi : Pkoi ne passez vous pas par cette méthode de publication plutot que de publier le formulaire en local? Sachant qu'au final le formulaire se retrouve sur SharePoint...
    Rémi MATAYRON
    N'hésitez pas à visiter mon blog dédié à InfoPath et SharePoint : http://rmatayron.blogspot.com/

    Pour plus de visibilité sur le forum, marquer la question en [Résolu] lorsque la réponse fournie vous convient.

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 82
    Points : 49
    Points
    49
    Par défaut
    Parce que je n'avais pas accès au site, mais maintenant je fais avec sharepoint et cela marche nickel merci encore de votre aide, cela m'a beaucoup aidé . . .

    Bonne journée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème update sur plusieurs tables
    Par Fabdeuche dans le forum SQL
    Réponses: 4
    Dernier message: 22/04/2010, 16h16
  2. problème update sur plusieurs champs
    Par samspitz dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 28/10/2009, 16h39
  3. problème update sur base access
    Par Ludosjob dans le forum ASP
    Réponses: 4
    Dernier message: 01/09/2008, 21h16
  4. [Vb.net 2005][ADO.net]Problème Update sur un champs calculé
    Par nirinasolomalala dans le forum Accès aux données
    Réponses: 2
    Dernier message: 13/03/2007, 09h14
  5. Problème d'UPDATE sur un champ d'une table MyISAM
    Par alouette dans le forum Requêtes
    Réponses: 6
    Dernier message: 13/07/2006, 20h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo