Vous trouverez sur ce blog toutes les astuces, liens, solutions et tutoriels qui m'ont aidés à résoudre l'ensemble des problèmes ou demandes rencontrés dans mon travail. Ce blog est donc mon pense-bête ;) Travaillant sous Sharepoint et Asp.Net, beaucoup de posts seront liés aux technos Microsoft.
jeudi 28 août 2008
[Sharepoint] CamlViewer sur Codeplex
Il s'agit du CamlViewer pour SharePoint 2007.
Cet outil permet donc de choisir une liste et d'y récupérer le CAML.
Ce qui peut être très pratique comme base de départ pour créer une Query.
mercredi 27 août 2008
[SharePoint] Créer une Webpart et son EditorPart
Dans notre cas, nous prendrons comme exemple une visionneuse de pages web.
Son fonctionnement est simple, on lui passe une url dans l'Editorpart et la webpart affiche le site.
Etape 1 : Le projet
- Création d'un nouveau projet dans VS 2008. Dans mon cas, j'utilise l'extension VSeWSS 1.2 pour VS2008.
- Choisir le projet Sharepoint Webpart
- Configurer comme vous les souhaitez les fichiers .xml et .webpart.
Etape 2 : La Webpart
Voici le code permettant l'affichage simpliste de notre IFrame qui permettra à notre webpart de visionner les pages.
Par défaut, votre projet aura créé une classe nommée Webpart1, c'est celle que nous utiliserons pour notre webpart.
{
[Browsable(false),
Personalizable(PersonalizationScope.Shared)]
public string PageUrl
{
get {return m_pageUrl;}
set {m_pageUrl = value;}
}
Protected override void RenderContents(HtmlTextWriter writer)
{
EnsureChildControls();
RenderIFrame(writer);
}
///
///
protected void RenderIFrame(HtmlTextWriter writer)
{
writer.AddStyleAttribute("display", "inline");
writer.AddAttribute(HtmlTextWriterAttribute.Id, frame);
writer.AddAttribute(HtmlTextWriterAttribute.Name, frame);
writer.AddStyleAttribute(HtmlTextWriterStyle.Width, "100%");
writer.AddStyleAttribute(HtmlTextWriterStyle.Height, "100%");
writer.AddAttribute("frameBorder", "0");
{
writer.AddAttribute(HtmlTextWriterAttribute.Src, m_pageUrl);
}
writer.RenderBeginTag(HtmlTextWriterTag.Iframe);
writer.RenderEndTag();
}
Etape 3 : L'EditorPart
Nous allons maintenant gérer notre editorpart.
- Votre projet>Ajouter>Classe…
- Le code pour l'editorpart :
{
protected override void CreateChildControls() {
//Affiche la textbox et son label
this.Controls.Add(new
LiteralControl("Url du site :
"));
txtPageUrl = new TextBox();
this.Controls.Add(txtPageUrl);
}
///
///
public override bool ApplyChanges() {
webPart.PageUrl = txtPageUrl.Text;
}
return true;
}
///
public override void SyncChanges() {
EnsureChildControls();
WebPart1 webPart = this.WebPartToEdit as WebPart1;
txtPageUrl.Text = webPart.PageUrl;
}
}
}
Etape 4 : Lier l'EditorPart et la WebPart
Voici ce qu'il faut rajouter à la suite du code dans le fichier Webpart1.cs :
override
EditorPartCollection CreateEditorParts(){
List<EditorPart> editorParts = new List<EditorPart>(1);
EditorPart part = new WebPart1EditorPart();
part.ID = this.ID + "_Webpart1EditorPart";
editorParts.Add(part);EditorPartCollection baseParts = base.CreateEditorParts();
return new EditorPartCollection(baseParts, editorParts);
}
La visionneuse personnalisée de site est terminée ;)
[IIS] - Problème avec le Framework .NET 2.0
Dans ce cas, il nous devient impossible de faire fonctionner des applications nécessitant le framework 2.0, 3.0 ou 3.5.
Et une réinstallation du framework est impossible, l'OS l'en empèche.
Mais la solution est simple, il suffit de réinstaller le framework sur IIS.
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>aspnet_regiis.exe -u C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>aspnet_regiis.exe –i |
[Sharepoint] Portage d’un Workflow SharePoint Designer vers un projet Visual Studio 2008
Le problème est que ces workflows se publient très mal sur d'autres serveurs voir pas du tout.
Je vais donc d'écrire les différentes étapes pour réussir à migrer un workflow SPD vers VS2008.
Pré-requis :
Avoir l'extension VSeWSS 1.2 pour VS2008.
Etape 1: Créer un projet de Wokflow pour Sharepoint dans VS
- Dans VS, Aller sur Fichier > Nouveau
- Sélectionner SharePoint Workflow Project.
Etape 2: Récupérer les fichiers SPD
Une fois ce projet en place, nous allons commencer le portage du xoml vers VS.
- Ouvrir SPD sur le site de teste contenant le Workflow.
- Clic droit sur le workflow à porter
- Choisir les fichiers sélectionnés...
- La boite de dialogue de publication vers in site distant apparaît
- Choisir un emplacement sur le PC
- Cliquer sur OK, cette action créera un dossier appelé Workflows à l'emplacement choisi contenant les fichiers .xoml et .rules
Etape 3: Copier les fichiers SPD dans notre projet VS
- Copier les fichiers .xoml et .rules dans le projet
- Cliquer sur le fichier .xoml dans l'explorateur de solution pour voir le worfklow dans le designer
Attention : les noms des activités ne sont pas du tout explicites, elles sont nommées ID1, ID2, ID3, …
Etape 4: Générer un fichier .cs sous le fichier XOML (optionel)
Pour ajouter du code-behind au workflow, il suffit de générer une méthode sur la première activité dans le designer. La méthode OnWorkflowActivated est donc créé avec le code-behind.
Par défau', le fichier .cs sera créé automatiquement et la classe et le namespace seront initialisés en fonction du fichier xoml correspondant.
Si les noms générés par défaut ne conviennent pas, il faut changer les attributs sur la première ligne du fichier OXML :
<ns0:RootWorkflowActivityWithData x:Class="Namespace.ClassName" ...>
Etape 5: Déployer et débugger le workflow
De la même façon que les autres projets SharePoint :
- Clic droit sur la solution
- Déployer
Et le workflow est maintenant déployé sur le serveur de test
[SQL Server] Aide-mémoire pour la maintenance des bases de données
Voici la liste des tâches quotidiennes, hebdomadaires et mensuelles recommandées :
Quotidiennes
- Surveiller les journaux des applications, des serveurs et des agents.
- Configurer des alertes relatives aux erreurs importantes non paramétrées pour notification d'alerte.
- Vérifier les messages d'alerte d'erreur et de performances
- Surveiller l'état des travaux, en particulier de sauvegarde de bases de données et de réplication.
- Examiner la sortie des travaux dans le fichier de sortie et/ou l'historique des travaux
- Sauvegarder les bases de données et les journaux (si ce ne sont pas des travaux automatiques : plan de maintenance).
Hebdomadaires
- Surveiller l'espace disque disponible sur les lecteurs.
- Surveiller l'état des serveurs liès, distants, principal et cibles.
- Vérifier les rapports des plans de maintenance et l'historique afin de déterminer l'état des opérations de ces plans.
- Générer un enregistrement actualisé des informations de configuration en exécutant sp_configure
Mensuelles
- Surveiller les performances des serveurs, en mettant au point les paramètres de performances afin d'améliorer les temps de réponse.
- Gérer les connexions et les rôles des serveurs.
- Analyser les autorisations des serveurs, des bases de données t des objets afin de vous assurer que seuls les utilisateurs autorisés y ont accès.
- Examiner les configurations des alertes, des travaux et des opérateurs.
Si nécessaire
- Sauvegarder les données du registre de SQL Server.
- Mettre à jour la disquette de réparation d'urgence.
- Vérifier l'intégrité des bases de données et mettre à jour leurs statistiques.
Livre de référence :
Microsoft SQL Server 2005
Guide de l'administrateur
Microsoft Press
[Sharepoint] Extensions STSADM
Sur son blog, Gary Lapointe, recense toutes les extensions de la commande STSADM qu’il a développé.
Toutes ces commandes sont très pratiques pour administrer un serveur SharePoint.
Pour chaque extension, un billet nous donne les informations suivantes :
· Un texte explicatif
· L’explication du code source
· L’aide sur la ligne de commandes
· L’explication de chaque argument
Voici la liste des extensions proposées par celui-ci :
[Sharepoint] Installation de MOSS sur une VPC
http://www.pptspaces.com/sharepointreporterblog/Lists/Posts/AllPosts.aspx
Rien n'y est oublié, de l'installation du serveur (W2K3) à la configuration de SharePoint en passant par IIS, le framework.Net et SQL Server
Vraiment très utile.
Dans le Chapitre 18 de ce tutoriel, vous y trouverez aussi la description d'un outil permettant de précompiler et cacher une web application SharePoint.
Voici le lien vers cet outil : http://www.pptspaces.com/sharepointreporterblog/Shared%20Files/warmup.zip
mardi 26 août 2008
[Sharepoint] Backup – Restore et Disaster recovery
http://blogs.msdn.com/joelo/archive/2007/03/09/sharepoint-backup-restore-high-availability-and-disaster-recovery.aspx