17 octobre 2010

Infopath 2010 : Solution Visual Studio

Aujourd'hui, nouvelle surprise en essayant de créer une solution Visual Studio 2010 pour InfoPath 2010. Le module VSTO (Tools for Office) pour InfoPath destiné à réaliser des formulaires intelligents (avec du code) n'existe plus!!!
Il faut à présent utiliser VSTA (Tools for Applications) afin d'utiliser du code personnalisé.
En clair, il est impossible de créer une solution Visual Studio pour InfoPath comme cela était le cas dans Visual Studio 2003, 2005 et 2008.

Cela signifie que le seul moyen d'aller modifier le xsl ou le fichier manifest sera de décompresser le fichier xsn (ce qui n'est pas le moyen le plus rapide et intuitif...).
Et cela signifie par la même occasion que le contrôle de code source sur un formulaire n'existera plus sachant qu'il n'y aura plus de solutions. Ceci est encore un gros point noir...

Cela risque de représenter un gros problème pour les sociétés développant des formulaires intelligents. Et pourtant, InfoPath reste tout de même un bon point d'entrée pour la modification et la customisation dans SharePoint 2010. Devant une demande grandissante, le choix est d'enlever des fonctionnalités aux développeurs!

En clair, le choix de microsoft de supprimer le modèle Visual Studio pour InfoPath est selon moi incompréhensible! Si quelqu'un à un début explication concernant ce changement soudain et brutal de politique, je suis preneur...

11 octobre 2010

SHAREPOINT : BD SUSPECT

Aujourd'hui une explication suite à un problème survenu lors du crash en plein vol d'une Virtual Machine...
La base SQL SERVER 2005 reliée à SharePoint est tout à coup passée en mode "SUSPECT".
Le problème étant que lorsque la base passe dans cet état, le site SharePoint ne fonctionne plus.

Si un problème tel que celui-ci se produit, il faut éxecuter les commandes suivantes dans SQL SERVER Managment Studio (en changeant NomDB par le nom de la base de données incriminée):

EXEC sp_resetstatus 'NomDB'

ALTER DATABASE NomDB SET EMERGENCY

DBCC checkdb('NomDB')

ALTER DATABASE NomDB SET SINGLE_USER WITH ROLLBACK IMMEDIATE

DBCC CheckDB ('NomDB', REPAIR_ALLOW_DATA_LOSS)

ALTER DATABASE NomDB SET MULTI_USER

16 septembre 2010

SHAREPOINT : Export WebPart

Aujourd'hui petite astuce pour l'exportation d'une webpart SharePoint de liste d'un environnement à une autre (validation à production par exemple) sans passer par l'utilisation de SharePoint Designer.

Pour exporter la webpart, il suffit de cliquer dans le menu contextuel de la webpart sur le menu Exporter.
Il suffit de préciser le nom du fichier avec l'extension ".webpart".

Techniquement ce fichier ".webpart" n'est rien d'autre que du XML et peut être modifié avec un éditeur de texte. Pour que la webpart fonctionne sur le nouvel environnement, il faut modifier le GUID de la liste pour le remplacer par celui de la liste dans le nouvel environnement.

Une fois le fichier modifié, il faut à présent importer la webpart dans le nouvel environnement.
Pour cela suivre les étapes suivantes:
  • Insérer une nouvelle webpart dans la page du nouvel environnement,
  • Cliquer sur le lien "Galerie de webpart avancée" dans la liste des webpart disponible,
  • Remplacer "Parcourir" par "Importer dans le menu disponible en haut,
  • Télécharger le fichier "*.webpart" modifié précédemment,
  • Sélectionner une position dans la page et cliquer sur "Importer".
La webpart fonctionne à présent sur le nouvel environnement sans avoir à utiliser SharePoint designer pour réaliser des modifications.

31 août 2010

INFOPATH : Deploiement formulaire InfoPath Form Services

Voici un petit post qui permet de gagner du temps dans le déploiement de formulaire InfoPath form Services.

Ces actions souvent fastidieuses peuvent être regroupées dans un même fichier bat.
Les principales commandes à connaitre pour déployer un formulaire InfoPath Form Services sont les suivantes:

// Déplacement dans le répertoire BIN de SharePoint pour utiliser l'outil STSADM
c:\Program Files\common files\microsoft shared\web server extensions\12\bin

// Verification de la validité du formulaire pour le déployer sur l'administration centrale (phase non obligatoire):
stsadm.exe -o VerifyFormTemplate -filename "c:/Partage/FormulaireInfoPathFormServices.xsn"

// Téléchargement du formulaire dans l'administration centrale de SharePoint:
stsadm.exe -o UploadFormTemplate -filename "c:/Partage/FormulaireInfoPathFormServices.xsn"

// Activation du formulaire sur la collection de site souhaitée:
stsadm.exe -o ActivateFormTemplate -url "http://MaWebAppSharePoint/MaCollectionDeSite" -filename "c:/Partage/FormulaireInfoPathFormServices.xsn"

// Désactivation du formulaire d'une collection de site souhaitée:
stsadm.exe -o DeactivateFormTemplate -url "http://MaWebAppSharePoint/MaCollectionDeSite" -filename "c:/Partage/FormulaireInfoPathFormServices.xsn"

// Suppression d'un formulaire InfoPath de l'administration centrale:
stsadm.exe -o RemoveFormTemplate -filename "c:/Partage/FormulaireInfoPathFormServices.xsn"

Remarques importantes :
  • Il est possible d'activer un même formulaire sur plusieurs collections de sites en lançant X fois la ligne de commande de l'activation,
  • La publication du formulaire InfoPath form services nécessite que le service SharePoint Timer soit démarré.Le cas échéant, il est possible d'utiliser la commande suivante qui force le passage du timer: "stsadm.exe -o execadmsvcjobs"Cette opération doit être effectuée sur tous les serveurs de la ferme SharePoint.Le cas échéant, le formulaire restera en état "Installation" ("Installing") ou "Mise à jour" ("Upgrading").Un formulaire n'est disponible que lorsqu'il est dans l'état "Prêt" ("Ready"),
  • En phase de développement, lorsque le déploiement du formulaire commence à prendre plus de 5 minutes, il faut se déplacer dans le répertoire local "Features" de la machine SharePoint et supprimer les anciens dossiers de solutions qui restent dans le feature et ralentissent le déploiement.

SHAREPOINT : Hide column Title

Un nouveau petit post SharePoint gentillet pour le retour de vacances.
Ce post consiste en une astuce afin de cacher le noms des colonnes SharePoint dans une liste ou une webpart. En effet, lorsque le style d'affichage est modifié (par exemple avec le style "Encadré"), il n'est pas nécessaire d'avoir l'information du nom des colonnes de la liste (qui de plus fait scroller l'affichage si il y a beaucoup de colonnes dans la liste).

L'astuce pour cacher cette barre des colonnes est d'utiliser ce que l'on appelle la webpart Editeur de contenu dite CEWP (Content Editor Web Part).
Il faut ajouter cette webpart juste après l'endroit ou il faut supprimer la barre des colonnes.
Ensuite passer en mode édition de la webpart, cliquer sur "Editeur de code source" puis insérer le texte suivant: ".ms-viewheadertr { display: none;}" dans une balise "STYLE".

Ainsi vous ne verrez plus la barre des colonnes apparaitre dans la page.