Affichage des articles dont le libellé est InfoPath. Afficher tous les articles
Affichage des articles dont le libellé est InfoPath. Afficher tous les articles

3 octobre 2015

MICROSOFT : Fin de l'aventure MVP

C'est avec regret que j'ai appris lors de ces derniers jours mon non-renouvellement en tant que MVP (Microsoft Most Valuable Professional). C'est donc la fin d'une belle aventure après 4 ans de bons et loyaux services au sein de ce programme.
 
L'expertise "InfoPath" est supprimée du programme MVP étant donné que le produit est arrivé au terme de son cycle de vie.
Mais pour rappel, InfoPath sera supporté jusqu'en 2023 (10 ans après la dernière sortie du produit) et sera toujours disponible dans SharePoint 2016 via Forms Services.
Je continuerai donc malgré tout à poster des articles autour des technologies SharePoint et InfoPath avec un recentrage vers mon cœur de métier qui reste SharePoint.

11 août 2015

INFOPATH : Vider le cache

Lors de l'utilisation de formulaires InfoPath (en mode client lourd), stockés dans SharePoint, il peut arriver que le formulaire n'ouvre pas la dernière version du modèle de formulaire.
Ce problème provient du fait que le modèle de formulaire est stocké en cache localement sur votre machine.
 
Pour utiliser la dernière version du modèle, il suffit d'utiliser la commande suivante permettant de vider le cache d'InfoPath de votre PC:
  • Lancer une fenêtre "Run" sur votre ordinateur (Windows + R),
  • Taper la commande "Infopath /cache clearall" et appuyer sur "OK",
  • InfoPath s'ouvrira sur votre machine et vous vous apercevrez que l'historique des modèles de formulaire aura disparu.
 
Le tour est joué, vous pourrez à présent utiliser la dernière version du formulaire.

7 octobre 2014

Microsoft MVP - 4ème année

Aux fidèles lecteurs de ce blog, je souhaitais vous faire part de mon renouvellement pour la 4ème année consécutive en tant que Microsoft MVP (Most Valuable Professional).
 
Je profite de ce post pour remercier toutes les personnes ayant contribuées à ce renouvellement. De même je tiens à féliciter tous les MVP récompensés (renouvelés ou fraichement nominés) sur les différentes technologies Microsoft.
 
Il s'agit d'une année transitoire pour moi étant donné qu'InfoPath ne sera plus disponible dans la prochaine version d'Office. Celui-ci étant supporté pendant encore 10 bonnes années, cela n'empêchera pas de traiter les problématiques utilisateurs récurrentes.

Je continuerai donc avec plaisir  à vous faire partager mon expérience autour des technologies SharePoint, InfoPath (ainsi que ses nouveaux substituts : Fosl,...) au travers de ce blog et de la communauté.

5 septembre 2014

InfoPath : Connexion au profil utilisateur en mode claims

Une des nouveautés de SharePoint 2013 a été l'introduction du mode d'authentification claims par défaut. Ce changement d'authentification entraine de nombreux impacts sur les applications et notamment "InfoPath Forms Services" (à noter que par conception, InfoPath en mode client lourd n'est pas concerné).
 
Dans les versions précédentes de SharePoint, de nombreuses sociétés utilisaient les formulaires IPFS en récupérant des informations de l'utilisateur connecté via le service de profil utilisateur (département, adresse mail, téléphone, numéro d'employé,...).

Si vous migrez et travaillez sur une application utilisant le mode claims, vous rencontrerez des erreurs de type "5566" lors de l'utilisation des connexions de données.
 
Il existe malgré tout un moyen de contournement qui consiste à utiliser le "Secure Store Service" de SharePoint:
 
  • Se connecter à l'administration centrale de SharePoint,
  • Créer une clé de type "Ticket du groupe" dans le Secure Store de votre ferme SharePoint :
 
 
  • Configurer le compte Windows à utiliser pour votre connexion à l'UPS :


 
  • Concevoir le formulaire en InfoPath en se connectant au service SOAP "userprofileservice.asmx" et convertir cette connexion en fichier UDCX via l'interface "Convertir" des connexions de données InfoPath :
 
 
 
  • Modifier le fichier déposé dans la bibliothèque de connexion de données comme ci-dessous (il sera nécessaire de l'enregistrer localement et de le redéposer) en précisant la clé renseignée dans le secure store :
 
 
Attention : Ne pas oublier de dé-commenter la ligne "Authentication" et d'approuver le fichier UDCX après l'avoir téléchargé.
 
 
A présent, votre formulaire récupérera correctement les valeurs dans la base de profil SharePoint. Voici l'exemple d'un formulaire de liste SharePoint customisé avec InfoPath:



 

21 juillet 2014

INFOPATH : Formater une date

InfoPath dispose d'un panel de fonctions permettant de réaliser la plupart des besoins dans vos formulaires (math, url, utilisateurs, dates,...).
 
Il est possible d'utiliser ces fonctions fournies par InfoPath mais aussi des fonctions XPath basiques qui ne sont pas visibles depuis l'interface.
Une fonctionnalité puissante (permettant de ne pas utiliser de code managé) est la possibilité de formater l'affichage d'une date dans un autre champ du formulaire.
 
Pour cela, il faudra passer par la fonction XPATH non disponible via l'éditeur de fonction d'InfoPath : "format-date".
Pour réaliser ce besoin, il suffira de suivre les actions suivantes:
  1. Se placer sur le champ texte qui accueillera la date à formater,
  2. Cliquer sur valeur par défaut,
  3. Cliquer sur "Fonction",
  4. Insérer la fonction suivante : msxsl:format-date(DateField; 'MMMM') (en prenant soin de remplacer "DateField" par votre champ date InfoPath),
 
Votre champ affichera à présent le mois sous sa valeur textuelle.
Pour les personnes n'étant pas à l'aise avec les divers formatages de dates, la liste est disponible sur le MSDN de Microsoft: http://msdn.microsoft.com/en-us/library/ms256099(v=vs.110).aspx

 

18 juillet 2014

InfoPath : SharePoint 2010 et IE11

Attention, depuis l'arrivée de IE11 dans les entreprises et chez les particuliers, vous pouvez être amené à rencontrer certains effets sur vos formulaires d'entreprise InfoPath. Forms Services...

Vous pouvez rencontrer l'erreur suivante : "Object doesn't support property or method 'addEventListener'". Cela est le cas notamment sur des formulaire contenant des contrôles de type date.
Cette erreur survient lorsque vous avez positionné votre site SharePoint pour fonctionner en mode de compatibilité IE8 (via la balise X-UA-Compatible). Cette technique est réalisée par de nombreuses entreprises pour corriger de nombreux effets dans SharePoint.
 
Afin de corriger ce problème, le plus simple reste l'une des méthodes suivantes:
  • Rajouter votre site SharePoint dans la zone intranet,
  • Positionner le site dans les sites de compatibilité (il s'exécutera avec le user agent de IE 10 et l'erreur disparaitra).

Malheureusement, ceci est difficile à mettre en place dans le cas d'un extranet puisque par principe vous ne maitrisez pas la configuration des postes clients.

Il existe tout de même méthode qui consiste à modifier la page maitre de votre site. Pour cela il faudra ajouter le code JavaScript suivant dans une balise script juste avant la fermeture du body
:
 
/* IE11 Fix for SP2010 */
if (typeof(UserAgentInfo) != 'undefined' && !window.addEventListener)
{    
      UserAgentInfo.strBrowser=1;
}

26 mars 2014

INFOPATH : This is the End (Part 2)

La SharePoint Conférence 2014 a eu lieu à Las Vegas au début du mois de Mars.
Cette conférence mythique a été l'occasion pour Microsoft d'apporter quelques précisions sur la conception des formulaires dans SharePoint à présent qu'InfoPath a annoncé sa dernière version (voir précédent article : ici.
 
La vidéo suivante détaille la roadmap et quelques informations sur les alternatives qui seront offertes aux entreprises utilisant actuellement InfoPath:
 
Il faudra donc retenir:
  • L'apparition de nouveaux formulaires de listes de type "FoSL" qui seront déployés dans SharePoint Online entre 2014 et 2015 et connaitront une évolution constante. Ils seront de même disponibles dans la prochaine version de SharePoint On-Premise.
  • Aucune solution proposée actuellement n'offre la puissance d'InfoPath (éditeur WYSIWYG permettant de se connecter à diverses sources),
 
D'après cette vidéo, Microsoft semble donc à l'écoute des utilisateurs afin de concevoir un nouvel outil de formulaires adapté au besoin des entreprises. Je vous conseille donc de leur soumettre vos besoins et idées. Pour moi, la liste des courses serait:
  • Possibilité de définir des conditions de formatage (cacher ou masquer des champs en fonction de certaines valeurs),
  • Possibilité de définir des règles d'affectation de champs (concaténation,...),
  • Possibilité de définir des règles de validation (vérifier que la valeur est une date, que le champ est renseigné si un autre champ possède telle valeur,...),
  • Possibilité de se connecter simplement à des sources de données externes (listes SharePoint, SQL server, services web).
  • Possibilité de réaliser le maximum d'opérations sans utiliser de code managé!
 
En gros, tout ce qui faisait le plus d'InfoPath par rapport à tous ces concurrents.
 
So wait and see...

2 février 2014

InfoPath : This is the end!

C'est avec un petit pincement au cœur que je relaie une information publiée par Microsoft ce Vendredi 31/01/2014 : La roadmap de InfoPath est arrivée à son terme!
En clair, InfoPath 2013 et InfoPath Forms services 2013 seront la dernière version et n'existeront plus dans la prochaine version d'Office et Office Server. Ce produit qui avait fait son apparition en 2003 connaitra donc officiellement sa dernière version 10 ans plus tard.

Il faut bien avouer que la fin semblait proche étant donné la rumeur grandissante et le faible nombre de modifications apportées à la mouture 2013. De plus, Microsoft tendant actuellement vers une approche multi-device et sous forme d'Apps, la version actuelle d'InfoPath ne pouvait respecter ces critères par conception.

La décision parait pourtant surprenante étant le grand nombre d'entreprises qui utilisent ces formulaires dans leurs processus métiers! J'irai même plus loin : pourquoi intégrer des formulaires InfoPath permettant d'éditer les formulaires de liste SharePoint 2010 et 2013 si le produit n'avait pas d'avenir?


La question en suspend reste la suivante : Quel outil de développement utiliser à présent pour la création de formulaires d'entreprise maintenant que le produit tire sa révérence ?

La phrase principale de l'article est la suivante : "If you’re an InfoPath customer, we want to reassure you that we’re working on migration guidance in parallel as we’re building our next generation of forms technology. Until we have more detailed technology roadmap and guidance to share with you, we encourage you to continue using InfoPath tools"!

Bien qu'il soit clairement formulé dans cet article l'encouragement à continuer d'utiliser InfoPath, il me parait peu probable que les entreprises investissent sur un produit en fin de vie. Pour la parenthèse, cela me rappelle un peu le dilemme de Silverlight à l'époque. De nombreuses entreprises avaient réalisé des projets sur ce produit prometteur avant de se retrouver le bec dans l'eau.

Par contre cette fois-ci, de mon avis peut-être pas assez neutre, les solutions de substitutions proposées actuellement sont insuffisantes (Apss, Access,...).
Pour avoir étudié Access Services, il est impossible de le placer dans la catégorie des remplaçants potentiels (pas de code managé, pas de workflow, pas de sécurité sur les éléments,...).
Le support de Microsoft sur InfoPath sera tout de même assuré jusqu'à 2023!


Il nous reste donc à attendre le nouvel outil de conception de formulaires qui apparaitra dans les prochaines versions.
Comme le dit l'article, les ingénieurs Microsoft travaillent sur une procédure de migration des formulaires InfoPath vers le futur produit.
En espérant que les bon choix soient réalisés sinon cela risque de gronder dans les entreprises.


N'hésitez pas à laisser vos feedback.

8 décembre 2013

INFOPATH : Numérotation zone extensible

Aujourd'hui, un article traitant d'un besoin récurrent des utilisateurs InfoPath : il s'agit de la numérotation automatique des lignes d'une zone extensible (tableau ou section).
 
Pour cela, il suffit de suivre les étapes suivantes:
  • Se positionner sur un champ de votre zone extensible,
  • Aller dans les propriétés de ce champ puis modifier la valeur par défaut en cliquant sur le bouton "Fx":
  • Sélectionner "Modifier une expression XPath avancée" puis copier la formule suivante : count(../preceding-sibling::*) + 1
 
  • Cliquer sur "OK" puis "OK",
A présent, si vous passez en mode "Preview", vous pourrez voir que le numéro est automatiquement pré-rempli lors de l'ajout d'une nouvelle ligne à votre zone extensible :
 
 
 

10 novembre 2013

INFOPATH : Ligne courante tableau extensible C#

 
Aujourd'hui un rapide post sur une demande récurrente dans les forums.
Il est souvent nécessaire de récupérer les valeurs à l'intérieur d'une section extensible ou d'un tableau extensible.
 
Lors de l'utilisation de l'évènement "Changed" sur un champ compris dans un tableau extensible, il est possible de vouloir récupérer la valeur d'un autre champ situé sur la ligne courante.
 
Par exemple, pour calculer la différence entre 2 dates ou une différence de montant qui ne pourrait pas être réalisée via une règle InfoPath). Pour cela, il faudra utiliser le code suivant dans l'évènement "On changed" de votre champ:
 
 

 

14 octobre 2013

Microsoft MVP InfoPath

Malgré une bonne semaine de retard, je souhaitais vous faire part de mon renouvellement pour la 3ème année consécutive en tant que Microsoft MVP (Most Valuable Professional) sur la technologie InfoPath.
 
Je profite de ce post pour remercier toutes les personnes ayant contribuées à ce renouvellement. De même je tiens à féliciter tous les MVP récompensés (renouvelés ou fraichement nominés) sur les differentes technologies Microsoft.

Je continuerai avec plaisir  à vous faire partager mon expérience autour des technologies InfoPath et SharePoint au travers de ce blog et de la communauté.

15 septembre 2013

INFOPATH : Conversion PDF

Une demande récurrente au niveau des formulaires InfoPath reste la possibilité de convertir simplement les formulaires d'entreprise vers le format PDF.
 
Cette fonctionnalité est incluse nativement dans les formulaires InfoPath client lourd (ouverts via Microsoft Office InfoPath) avec le possibilité de réaliser des exports en XPS ou PDF.
 
Par contre, du côté InfoPath Forms Services (formulaire ouvert depuis une page Web via SharePoint Server), il n'existe pas fonctionnalité offerte par défaut. Mais cela ne veut pas dire pour autant que cela n'est pas possible!
 
Il est possible d'utiliser bien-sûr des composants tiers (notamment Muhimbi) qui réalisent très bien ce genre d'action.
 
Nous allons plutôt nous intéresser à un service souvent méconnu qui est inclus dans SharePoint Server : "Word Automation Service".
Dixit la page MSDN : "Word Automation Services assure la conversion sans assistance du côté serveur de documents dans des formats pris en charge par l’application cliente Microsoft Word.
En d’autres termes, Word Automation Services réplique pour le serveur la fonctionnalité « Enregistrer sous » de l’application cliente Word."
 
Concrètement il permet de convertir des les formats d'entrée suivants:
  • Documents au format de fichier Open XML (.docx, .docm, .dotx, .dotm)
  • Documents Word 97-2003 (.doc, .dot)
  • Fichiers RTF (.rtf).
  • Page Web à fichier unique (.mht, .mhtml).
  • Documents Word 2003 XML (.xml)
  • Document XML Word (.xml)
Les formats de sortie pourront être XPS ou PDF.
 
Il existe notamment une limitation dans SharePoint 2010. Ce service ne peut fonctionner que sur des fichiers qui sont physiquement stockés (pas de pris en compte des flux).
 
Voici un très bon tutorial permettant de convertir un formulaire InfoPath en PDF via le passage par un document Word : http://www.bizsupportonline.net/infopath2010/videos/convert-infopath-word-pdf-sharepoint-2010.htm
 
 
Remarque importante : SharePoint 2013 inclut de nouvelles fonctionnalités intéressantes au niveau de ce service :
  • Fonctionnalité de conversion à la demande ajoutée en supplément de la conversion via le travail du minuteur,
  • Possibilité de convertir des flux (uniquement dans le cas de la conversion à la demande évidemment).
Ainsi, il est à présent possible de convertir directement le formulaire InfoPath sans passer par son équivalent en modèle Word. Il sera possible de passer le flux HTML du formulaire (via la transformation du XSL et du XML) au service afin de générer la conversion en mode PDF!
 
Bonnes conversion!

30 juillet 2013

INFOPATH : Message d'erreur à la validation

Lors de l'utilisation de formulaires InfoPath, il est courant d'utiliser du code managé pour réaliser des actions supplémentaires lors de la validation d'un formulaire (envoi de mails avec pièce jointe, mise à jour de bases métiers, appels de web service).
 
Dans la plupart des cas, lors de la validation, un bouton de type "Envoyer" (Submit) vérifie que tous les champs du formulaire sont correctement renseignés.
 
Malheureusement, dans le cas d'un formulaire de type InfoPath Forms Services utilisant du code managé, cette vérification n'est pas réalisée sur les champs situés à l'intérieur d'une section masquée.
 
Pour s'affranchir de ce problème contraignant, il est possible d'utiliser le code suivant:
 
 
Ainsi, si le clic sur le bouton génère l'entrée dans le code managé, ce bout de code permettra de vérifier que le formulaire ne contient aucune erreur de validation (réalisée par le test this.Errors.Count == 0).
Le message suivant sera affiché :
 
 

 
 
En regardant de plus prêt le code, vous pourrez constater que ces libellés ne sont pas codés en dur mais récupérés directement depuis les fichiers de ressources de SharePoint utilisés par InfoPath.

20 juin 2013

SHAREPOINT 2013 : InfoPath connexion de données

Aujourd'hui, une petite remontée de bug SharePoint 2013 lors de l'utilisation d'InfoPath.
Il s'avère que lorsque vous disposez d'un formulaire InfoPath 2010 utilisant une connexion de données vers un site SharePoint 2010, vous pourrez rencontrer des soucis lors du passage en SharePoint 2013.
 
Ce problème est référencé sur le site des correctifs de Microsoft :
 
Cette KB est elle même intégrée dans le Cumulative Update (CU) d'avril 2013 de SharePoint 2013.Notez que pour installer cette CU, vous devrez au préalable installer le Primary Update (PU) de Mars 2013 qui fait office de mini service pack.
 
A noter aussi que certains utilisateurs ont constaté un ralentissement de l'ouverture des formulaires InfoPath suite à l'installation de cette CU.
Si l'intervention peut attendre, il sera donc privilégié d'attendre la prochaine CU. Celle de Juin ayant été repoussée : http://blogs.technet.com/b/stefan_gossner/archive/2013/06/12/june-2013-cu-for-sharepoint-2013-is-delayed.aspx
Si cela est urgent, il faudra qualifier l'installation de la CU d'Avril sur un environnement de validation afin de vérifier qu'elle n'entraine pas de régression plus profondes dans d'autres briques de SharePoint.
 
Important : Les CU ne sont à installer que dans le cas de bug avérés. A contrario le passage de la PU est grandement préconisée lors de l'installation d'une ferme.

10 février 2013

INFOPATH : Rediriger un formulaire

Aujourd'hui un post rapide concernant la redirection de formulaire InfoPath.
Ce problème est souvent abordé sur les forums car les utilisateurs souhaitent que le formulaire vers une certaines page de leur site SharePoint à la fermeture.

Pour se faire, vous avez 2 options disponibles à utiliser en fonction de vos besoins de redirection :
 
  • La version simple : Elle consiste à modifier le paramètre "Source" dans l'url à l'ouverture du formulaire. En effet, le paramètre "Source" permet de préciser l'emplacement vers lequel l'utilisateur sera redirigé à la fermeture du formulaire (après exécution de la connexion de données). Cette méthode conviendra parfaitement si l'adresse de redirection est connue avant l'ouverture du formulaire.
 
  • La version complexe : Elle consiste a rediriger en code managé ".Net" celui-ci vers n'importe quel emplacement spécifique  pouvant être calculé dans le formulaire (par exemple url dynamique en fonction de la valeur d'un champ du formulaire, ...):
    HttpContext.Current.Response.Clear();
    HttpContext.Current.Response.Flush();
    HttpContext.Current.Response.Buffer = false;
    HttpContext.Current.Response.Write("Positionner ici le javascript pour la redirection");
    HttpContext.Current.Response.End();

31 janvier 2013

INFOPATH : Impossible de publier le formulaire

Aujourd'hui un petit post sur InfoPath.
Parfois, lorsque vous publiez un formulaire InfoPath sous SharePoint, vous pouvez obtenir ce genre d'erreur sympathique : "InfoPath cannot find or cannot access the following web server"

Après avoir réalisé les vérifications d'usage suivante:
  • Tester l'url précisée pour la publication,
  • Tester avec une autre bibliothèque,
  • Tester avec un autre formulaire,
  • Tester depuis un autre poste client,
  • Vérifier la connexion au domaine,...
il s'avère qu'aucun formulaire ne veut se publier sur cette fameuse collection de sites.

Pas de panique, il s'agit tout simplement d'un problème de paramètrage sur le type de contenu "Formulaire" de votre collection de sites. Pour corriger cela, vous devez vous connecter à la racine de votre collection de sites SharePoint puis suivre les actions suivantes:
  • Aller dans "Actions du site",
  • Cliquer sur "Paramètre du site",
  • Cliquer sur "Type de contenu",
  • Cliquer sur "Formulaire",
  • Aller dans les paramètres avancés de ce type de contenu formulaire,
  • Supprimer la valeur renseignée dans la première zone de texte correspondant à l'url d'un document existant,
  • Cliquer sur OK
A présent, si vous retentez de republier le formulaire, celui-ci sera déployé sans problème.
Simple, mais encore faut-il connaitre l'astuce...

25 novembre 2012

INFOPATH : Supprimer lignes extensibles

Aujourd'hui un petit article relatif à une question récurrente sur les éléments extensibles d'InfoPath. Bien souvent, les utilisateurs ont besoin de supprimer toutes les lignes d'un tableau ou d'une section extensible.
Il n'existe aucun moyen simple de réaliser ceci en travaillant par l'interface. Par contre cela se fait assez facilement en utilisant du code managé.
 
Pour se faire, il est possible d'utiliser la procédure C# ci-dessous.
Comme son nom l'indique, cette procédure permet de supprimer tous les nœuds enfants d'un nœud spécifié en paramètre :
 
        private void RemoveAllChildren(string strNode, XPathNavigator formNavigator)
        {

            try
            {
                XPathNavigator rowsNav = formNavigator.SelectSingleNode(strNode, NamespaceManager);
                XPathNavigator lastChild = rowsNav.SelectSingleNode("child::*[position() = last()]", NamespaceManager);
                XPathNavigator firstChild = rowsNav.SelectSingleNode("child::*[position() =1]", NamespaceManager);

                if ((firstChild != null) && (lastChild != null))
                {
                    firstChild.DeleteRange(lastChild);
                }
            }
            catch (Exception ex)
            {
                throw new Exception("Une erreur est survenue lors de la fonction 'RemoveAllChildren' appliquée sur le noeud '" + strNode + "'.", ex);
            }
        }
 
 
Pour appeler cette procédure, il suffit d'utiliser le code de la manière suivante:
      RemoveAllChildren("//my:NomParentExtensible", this.Maindatesource.CreateNavigator());

23 juillet 2012

INFOPATH : Relier les formulaires

Aujourd'hui un dernier post dans la lignée des problématiques de migration.

Lors de la migration vers une version supérieure de SharePoint ou lors d'un changement d'alias DNS, il est primordial de relier les instances XML des formulaires existants sur SharePoint.
En effet, les instances pointent toujours sur l'ancienne version de SharePoint et une authentification vous sera alors demandée. Ainsi les éléments compris dans la bibliothèque ne seront plus utilisables...D'où le besoin de ne pas oublier ce point très important lors d'une migration!

Heureusement, il existe une vue dans chaque bibliothèque de formulaires InfoPath permettant de réaliser de nouveau le lien avec les formulaires : cette vue native dans ce type de bibliothèques se nomme "Recréer un lien avec le formulaire".
Le bandeau de SharePoint 2010 comprend 2 boutons "Relier" et "Relier tout" permettant de réaliser ce genre de besoin.

Cette solution manuelle peut-être améliorée en utilisant une solution automatique. Nous pouvons par exemple imaginer une solution en mode bas à sable qui irait relier toutes les bibliothèques de formulaires d'une collection de sites lors de son activation.

En attendant, il existe un outil sur CodePlex permettant de relier automatiquement ces formulaires à la bibliothèque : SPRelinkDocuments CodePlex

15 juillet 2012

INFOPATH : Migration SharePoint 2010

Pour faire écho au post précédent qui traite de la migration de formulaires InfoPath vers SharePoint 2007 (correction des urls de connexions de données), voici à présent un article qui détaille la procédure à suivre pour réaliser ceci sur SharePoint 2010.

Il existe à présent dans SharePoint 2010 des commandes Powershell qui permettent de modifier les URL stockées en dur dans les modèles de formulaire InfoPath ( essentiellement au niveau des connexions de données), les fichiers UDC et les types de contenus afin de garantir que les modèles de formulaire continuent à fonctionner correctement. Ces commandes peuvent être exécutées dans les cas suivants:
  • Migration de SharePoint 2007 à SharePoint 2010,
  • Changement d'alias de votre ferme SharePoint 2010 ou migration de la collection de sites sur une web application différente.


Il est donc possible de corriger les dysfonctionnements causés par ce genre de modifications en utilisant les commandes suivantes grâce à l'éditeur PowerShell pour SharePoint 2010 :

Get-SPWebApplication http://alias2010 | Update-SPInfoPathUserFileUrl –find http://alias2007 –replace http://alias2010


La commande ci-dessus est lancée sur une application web. Il est possible à l'aide de cette commande de préciser de même une base de contenu ou une collection de sites.
Voici le lien vers la description du technet : http://technet.microsoft.com/en-us/library/ff607651
Vous y trouverez les arguments supplémentaires à cette commande pouvant être utilisés : dont notamment "Confirm" permettant de valider le choix ou "Scan" permettant de réaliser un tour à blanc sur les formulaires à modifier.

4 juillet 2012

INFOPATH : Migration SharePoint 2007

Les formulaires InfoPath intégrés à SharePoint constituent un outil fort puissant.
Ces formulaires permettent d'intégrer des connexions de données vers des bibliothèques ou listes SharePoint. Un des best practices est d'externaliser ces sources de données vers des bibliothèques SharePoint de type "Connexion de données.

Lors de la migration de SharePoint 2003 à SharePoint 2007 ou lors d'un déplacement d'une collection de sites dans SharePoint 2007, vous pouvez rencontrer un problème avec ces connexions de données.
En effet, celles-ci ne sont pas mises à jour et pointent toujours vers leur ancien emplacement.

Pour se débarrasser de ce problème, Microsoft fourni un outil à déposer sur un serveur SharePoint 2007 64 bits:

Dixit cet article: L'outil de migration et de mise à niveau du serveur permet à un administrateur de batterie de serveurs Microsoft SharePoint 64 bits de modifier les URL codées en dur dans les modèles de formulaire InfoPath, les fichiers UDC et les types de contenus pour garantir que les modèles de formulaire continuent à fonctionner correctement dans les circonstances suivantes :
  • lors de l'exécution d'une mise à niveau progressive de Microsoft Windows SharePoint Services 2.0 x64 vers Microsoft Windows SharePoint Services 3.0 x64 ou de Microsoft Office SharePoint Portal Server x64 vers Microsoft Office SharePoint Server 2007 x64 ;
  • lors de la migration de formulaires et de modèles de formulaire InfoPath à partir de Windows SharePoint Services 3.0 x64, de SharePoint Server 2007 x64 ou d'une collection de sites Web vers une autre.

Techniquement, il suffit d'installer le package sur un de vos serveurs SharePoint 2007.
Celui-ci ajoutera un nouvel exécutable dans le répertoire "bin" du dossier "12" de SharePoint nommé "IPWSSUPG" (au même niveau que le fameux STSADM.exe).

Pour utiliser celui-ci, il suffit de se placer dans le répertoire "bin" puis de lancer la commande suivante pour scanner la liste des formulaires:

IpWssUpg.exe /f http://oldalias /r http://newalias /p http://newalias /l application /m scan

Cette action de scan ne réalise aucune modification sur les formulaires mais permet de consulter les modifications qui seront réalisées dans les formulaires. Pour lancer la correction des url des connexions de données, il faut utiliser l'argument "fix" comme ci-dessous:

IpWssUpg.exe /f http://oldalias /r http://newalias /p http://newalias /l application /m fix


Pour utiliser celui-ci, il suffit de se placer dans le répertoire "bin" puis de lancer la commande suivante pour scanner la liste des formulaires:
Ainsi vous pourrez aisément modifier en une seule commande toutes vos connexions de données internes aux formulaires ou fichiers UDCX sur votre application web.