vendredi 18 décembre 2009

WSPBuilder 2010 Beta

Carsten Keutmann vient d’annoncer une version de WSPBuilder 2010 Beta, a destination de Visual Studio 2010 Beta, donc.

Cette nouvelle release prend en charge le support de SharePoint 2007 et 2010.

Plus de détail ici

Et le téléchargement.

mercredi 16 décembre 2009

Application Console pour SharePoint 2010

Attention, étant donné que SharePoint 2010 ne tourne que sous des processeurs 64bits, il y a quelques impératifs afin de faire fonctionner une application console SharePoint dans Visual Studio 2010.

La plateforme ciblée doit être définie comme x64 pour ce Project dans le gestionnaire de configuration .

Le Framework ciblé doit être .NET 3.5

Si vous ne suivez pas ces recommandations, vous obtiendrez une erreur vous indiquant que l’application Web sur l’url n’existe pas…

Source:
http://www.sharepointdevwiki.com/display/sp2010/Building+SharePoint+2010+Console+Applications

Kit de formation SharePoint 2010 pour developpeur [BETA]

Microsoft met à disposition gratuitement le “SharePoint 2010 beta developer Training Kit” sur son site, ce kit contient tout ce qu’il faut pour se former au dev sous la nouvelle version 2010 de Sharepoint:

  • Présentation Powerpoint
  • Labs
  • Code
  • Videos

Ce kit est à télécharger sur le site de Microsoft.

vendredi 23 octobre 2009

Comment redémarrer le service WebDAV (WebClient)

Sur Windows XP:

net stop webclient

net start webclient

Sur Windows 2003:

net stop mrxdav

net start webclient

mardi 20 octobre 2009

Utilitaire de recyclage des application pools pour les développeurs SharePoint

image

Cet utilitaire gratuit est un programme résidant dans la tray icon, qui fournit un accès rapides à des commandes IIS courantes, tel que le recyclage d’application pool, IISReset ou le redemarrage des services SharePoint (sptimerv3/owstimer ou spadmin).

C’est donc un outil très pratique dans le cadre de développement SharePoint.

Attention, un bug que j’ai remarqué, une fois l’outil démarré il bloque le shutdown ou le logoff de windows ! Il faut penser à l’arreter avant sous peine de s’arracher les cheveux quelques minutes…

télécharger ici

Page d’acceuil du produit

mardi 13 octobre 2009

Comment écrire (simplement) dans les logs SharePoint WSS 3

Pour écrire dans les fichiers de log SharePoint, vous trouverez sur le web principalement deux façon de faire :

La classe PortalLog

Tout d’abord le plus simple, on peut utiliser la méthode 

PortalLog.LogString(string message, params object[] args);

Cette méthode permet d’écrire facilement une ligne de texte dans les logs, mais malheureusement elle n’est disponible que pour MOSS 2007 et pas sur WSS 3.0. Pour l’utiliser il faut référencer l’assembly: Microsoft.Office.Server.dll

TraceProvider

Soit via un TraceProvider dont Microsoft a donnée un exemple d’implémentation sur le site MSDN: http://msdn.microsoft.com/hi-in/library/aa979522(en-us).aspx

Ce qui permet de disposer d’une méthode:

WriteTrace(uint tag, TraceSeverity level, Guid correlationGuid, string exeName, string productName, string categoryName, string message)

Cela semble prometteur mais personnellement je n’ai pas réussi à le faire fonctionner, et par ailleurs certains champs (notament “categoryName”) ne sont pas libre.


Reflection


La dernière alternative que je vous propose est d’utiliser de la reflection afin d’accéder aux méthodes de la classe Microsoft.SharePoint.Diagnostrics qui se trouve dans l’assembly Microsoft.SharePoint.dll et donc disponible dans WSS 3.


Voici le code:


static void WSSLog(string message)
        {
            try
            {               
                Type ULSType = Type.GetType("Microsoft.SharePoint.Diagnostics.ULS, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c");
                MethodInfo logMethod = ULSType.GetMethods(BindingFlags.Static | BindingFlags.Public)[19];

                logMethod.Invoke(null, new object[] { (uint)0x38317674, (uint)0x5ec, 20, "%s", new object[] { message } });
            }
            catch
            {
                // Logger should not throw exception
            }
        }

vendredi 2 octobre 2009

Envoyer un email depuis SharePoint WSS 3.0 ou MOSS 2007

Voici un petit bout de code permettant d’envoyer un email depuis SharePoint en utilisant la configuration SharePoint des emails sortants. Attention, il faut exécuter ce code avec des privilèges suffisant:

 

Microsoft.SharePoint.Utilities.SPUtility.SendEmail(SPContext.Current.Web, false, false,
"destinataire@mail.com", "Titre",
"body");

lundi 28 septembre 2009

Les secrets de SharePoint 2010 – Partie 1

Hello!

Je vais inauguré ce blog avec quelques infos sur SharePoint 2010 tiré du site http://www.sharepoint2010beta.com.

La première partie de cette suite de post est consacré au améliorations apportées à l’interface utilisateur.

Amélioration de l’interface utilisateur

  • Introduction du ruban office avec possibilité de le customiser par programmation.
  • Amélioration de la saisie “inline”, par exemple on pourra éditer directement les items d’une liste depuis la vue par défaut ce cette liste, sur les colonnes affichées. Cette fonctionnalité utiliserait Ajax afin d’en fluidifier le fonctionnement.
  • Support natif de Silverlight
  • L’interface fera un usage important d’Ajax
  • Compatibilité des navigateurs FireFox et Safari, par contre plus de support pour IE 6!

mardi 22 septembre 2009

Enregistrer un SPListItem : Update, SystemUpdate ou UpdateOverwriteVersion ?

Lors de développement sous Windows SharePoint Services 3.0 via le modèle objet, notamment sur les implémentations d’event handler, on a régulièrement besoin d’enregistrer un SPListItem sans pour autant modifier les informations d’audit (date de dernière modification, etc.) ni incrémenter le numéro de version.

Pour cela nous disposons de plusieurs méthode sur la classe Microsoft.SharePoint.SPListItem: Update(), SystemUpdate(bool) et UpdateUverWriteVersion(). Voici le détail de ce que fait exactement chaque méthode.

Update()
  • Créer une nouvelle version de l’Item
  • Met à jour la date et l’auteur de la modification
  • Si l’item est publié, il redevient en attente
UpdateOverwriteVersion()
  • Ne créer pas de nouvelle version de l’item, met à jour la version actuelle
  • Met à jour la date et l’auteur de la modification
SystemUpdate()
  • Seul les champs modifiés sont changés, rien d’autre n’est altéré
  • Ne créer pas de nouvelle version (sinon il faut passer false a la méthode pour générer une nouvelle version)
  • Les événements sont lancés et les modifications logées, mais aucune alerte n’est envoyée.

 

Conclusion

On voit bien que SytemUpdate() est très intéressant car il permet d’effectuer des modifications transparentes, sans altérer les informations d’audit ni la publication.

 

Réferences

http://msdn.microsoft.com/en-us/library/dd587321(office.11).aspx
http://omourad.blogspot.com/2009/04/moss-splistitemupdate-vs.html