Dienstag, 7. Oktober 2014

Solutions - Seitenfunktionen (Benachrichtigen, Drucken, RSS, Weiterempfehlen, Favorit)

SharePoint ist ein sehr mächtiges System, das einen großen "Baukasten" mit nahezu unendlichen Modulen und Funktionen bereitstellt. Viele dieser Funktionen sind auch sehr sinnvoll, aber leider nicht immer direkt sichtbar und erfordern teils das "Suchen" in der Menüband (Ribbon) genannten Funktionsleiste.

In üblichen Intranet Systemen werden bestimmte Funktionen aber immer wieder von den Nutzern gewünscht, wie z.B. die Möglichkeit sich eine Benachrichtigung (via eMail) zu abonnieren, oder einen Inhalt schnell zu drucken. Für einige dieser Funktionalitäten haben wir auf Basis der langjährigen Erfahrung eine Art "Schnellzugriff" geschaffen. Wir nennen dies "Seitenfunktionen". Diesen Namen haben wir gewählt, weil diese Funktionen üblicherweise in die SharePoint Masterpage eingebunden werden (können) und damit auf allen Seiten eines Intranets oder Extranet (oder auch Internets) zur Verfügung stehen, und zwar immer an derselben Stelle.

Selbstverständlich kann sowohl die Optik der Icons als auch die Auswahl der Funktionen an Ihre Wünsche angepasst bzw. konfiguriert werden. Aktuell stellt die Lösung die folgenden Funktionen als Schnellzugriff zur Verfügung:

- Benachrichtigen (SharePointStandard Funktion um eine neue Benachrichtigung einzurichten)

- Weiterempfehlen (mailto Link mit automatischer dynamischer Definition von Betreff, Absender und Text in einer neuen eMail)

- Favoriten (Setzen eines Browserfavoriten, oder Folgen eines Inhalts in der mySite)

- Drucken (Browser Druck Dialog in optimiertem Print-Layout)

- RSS Feeds (Link auf einen bestimmten RSS Feed oder eine Sammlung von RSS Feeds)

 

 
Die "Seitenfunktionen" werden als installierbare SharePoint Solution bereitgestellt und funktionieren ab der Version SharePoint Foundation 2010.

Sollten Sie Fragen zu dieser Lösung haben stehen Ihnen unsere Berater selbstverständlich jederzeit gerne zur Verfügung.

InfoPath/Formulare - AD User Anlage (inkl. Nintex Workflow)

Neue Mitarbeiter in einem Unternehmen sind nichts Ungewöhnliches. Mit dem Eintritt eines neuen Mitarbeiters werden verschiedene Prozesse angestoßen, z.B. benötigt der Mitarbeiter einen Arbeitsplatz und einen AD Account um sich anzumelden. Dieser Prozess lässt sich mit Hilfe von Microsoft InfoPath und Nintex Workflow sehr gut elektronisch unterstützen und zum Teil automatisieren.

Die benötigten Daten zur Anlage eines AD Accounts für den neuen Mitarbeiter werden mit Hilfe eines InfoPath Formulars erfasst. Der Vorgesetzte legt ein neues Formular an und füllt die Felder bezüglich der Stammdaten entsprechend aus. Das Feld "Vorgesetzter" wird automatisch beim Öffnen des Formulars belegt.


Der IT Abteilung wird letztendlich eine Aufgabe zum Überprüfen der Daten auf Vollständigkeit zugewiesen. Sind die Daten vollständig, soll der AD User angelegt werden. Nintex Workflow stellt in der Enterprise Version eine Aktion zur Verfügung mit der direkt im AD ein User Account angelegt werden kann. Diese Aktion muss entsprechend konfiguriert werden. Im Konfigurationsmenü dieser Aktion lassen sich alle notwendigen Felder mit Informationen aus dem Formular füllen. Nach erfolgreicher Anlage werden alle Beteiligten per E-Mail benachrichtigt.
 

Tools - SharePoint Logfiles analysieren

Jeder SharePoint Administrator steht früher oder später vor dem Problem aufgrund eines Fehlers die SharePoint Logfiles analysieren zu müssen. Glücklicherweise lässt sich in SharePoint in der Zentraladministration sehr genau konfigurieren welche Events / Informationen in den Logfiles protokolliert werden, ebenso wie den Ort der Logfiles und die maximale Größe bzw. Anzahl an aufbewahrten Logfiles.

Durch die Einführung der Correlation ID mit SharPoint 2010 ist es auch erheblich einfacher geworden in den Logfiles Informationen zu einem bestimmten Fehler aufzufinden. Trotzdem beinhaltet ein Standard Logfile sehr viele Informationen die es teilweise recht aufwendig oder schwierig machen die gesuchten und relevanten Informationen für eine Fehleranalyse zu finden.

Um diese Analyse einfacher zu machen gibt es verschiedene Hilfsmittel. Als Standardwerkzeug kommt meistens der normale Editor (Notepad) von Windows zum Einsatz, allerdings auch nur deshalb weil dieser auf jedem Windows Server System bereits installiert ist. Dieser hat allerdings zwei erhebliche Nachteile: Zum einen ist die Übersichtlichkeit für den Einsatzzweck alles andere als optimal, zum anderen hat er mit großen Dateien teils erhebliche Performanceprobleme. Und groß sind die SharePoint Logfiles leider meistens.

Glücklicherweise gibt es noch etliche Alternativen, von denen wir Ihnen zwei vorstellen möchten, die wir häufig einsetzen.

Notepad++

Ein optimaler und schneller Ersatz für den Standard Editor ist Notepad++. Dieses kleine Tool kennt alle wichtigen Programmiersprachen und deren Syntaxen, ist sehr schnell und sparsam im Ressourcenverbrauch. Durch etliche Plugins kann es auch noch stark erweitert werden. Im Zusammenhang mit SharePoint Logfiles besticht es vor allem durch zwei Dinge: Die Geschwindigkeit mit der große Dateien geöffnet und bearbeitet werden können sowie die umfangreichen Suchfunktionen. Außerdem ist es gleichzeitig eine große Hilfe wenn man andere Dateien auf dem SharePoint Server analysieren muss, wie z.B. XML oder ASPX Dateien. Ein Nachteil sei hier aber auch erwähnt. Aufgrund der mächtigen und umfangreichen Funktionen ist die Menü- und Funktionsstruktur teils sehr unübersichtlich. Notepad++ ist ein OpenSource Tool und somit kostenlos erhältlich. Damit eignet es sich perfekt als Zusatztool auf den SharePoint Servern.

SharePoint Log Viewer

Der SharePoint Log Viewer ist ebenfalls ein OpenSource Projekt, in diesem Fall in der CodePlex Plattform. Es ist im Gegensatz zu Notepad++ ausschließlich für die Analyse von SharePoint Logfiles, genauer gesagt ULS Logfiles geeignet, bietet hier aber dafür umfangreiche und nützliche Filterfunktionen. Er ermöglicht das Analysieren mehrerer Logfiles gleichzeitig, die Suche und Filterung in jeder einzelnen Spalte, Exportfunktionen bis hin zum Live Monitoring inkl. automatischen eMail Benachrichtigungen bei bestimmten Fehlern. Der SharePoint Log Viewer unterstützt alle SharePoint Versionen ab 2007.

Der SharePoint Logviewer steht hier zum Download zur Verfügung:

https://sharepointlogviewer.codeplex.com/

Powershell Scripts - Alternative Sprachen (Sprachpakete) in allen Websites aktivieren

Wer SharePoint mit mehreren Sprachen betreiben möchte, weiß dass es dazu grundsätzlich zwei Möglichkeiten gibt: Die sprachenabhängige Anpassung der Oberfläche über Sprachpakete sowie die Trennung der Inhalte in verschiedene Sprachen (sogenannte Variations). Das letztere ist ein eigenständiges Thema. Wir möchten in diesem Beitrag  kurz auf ein spezielles Thema / Problem beim Einsatz von Sprachpaketen eingehen.

Sobald man zusätzliche Sprachpakete auf dem SharePoint installiert hat (übrigens, hier immer darauf achten dass man unter Umständen auch die Service Packs für die Sprachpakete installieren muss), stehen die zusätzlichen Sprachen grundsätzlich zur Verfügung.

Ein Sprachpaket ermöglicht die Umschaltung auf eine der anderen Sprachen. Dieses Umschalten stellt alle SharePoint Standard Oberflächen Funktionen auf die jeweilige Sprache um, außerdem ist es damit möglich in der jeweils aktiven Sprache die Namen von Listen, Spalten sowie Navigationselementen anzupassen.

Der Nachteil ist allerdings dass die zusätzlichen Sprachen pro Website aktiviert werden müssen, um auch genutzt werden zu können. Da hier keine Vererbung möglich ist, ist der einfachste Weg (vor allem bei bereits bestehenden Websites) die zusätzliche Sprache über ein kleines Powershell Script zu aktivieren.

Ein einfaches Powershell Script dass für alle Websites einer anzugebenden URL einfach alle installieren Sprachpakete aktiviert wäre das folgende:

# Enables SELECTED installed languages for each subsite in a site collection
 $spSite = Get-SPSite -Identity
http://DemoURL
 foreach ($spWeb in $spSite.AllWebs)
 {
   $spWeb.IsMultilingual = $true
   $WebRegionSettings = New-Object Microsoft.SharePoint.SPRegionalSettings($spWeb)
   foreach ($language in $WebRegionSettings.InstalledLanguages)
   {
        write-host -BackgroundColor Green -ForegroundColor Black "Update -" $spWeb "site with LCID:" $language.DisplayName
        $culture = New-Object System.Globalization.CultureInfo($language.LCID)
        $spWeb.AddSupportedUICulture($Culture)
   }
   $spWeb.Update()
 }


 

Dieses Script bzw. die Logik davon kann man natürlich z.B. auch mittels einem Event Receiver und dem sogenannten Feature Stappling als SharePoint Solution bereitstellen, die automatisch bei jeder neu angelegten Website die Sprachen aktiviert.