Freitag, 6. Mai 2016

Powershell Scripts - Content Types zu Listen hinzufügen



In manchen Szenarien kann es hilfreich sein, automatisiert zu bestehenden Listen / Bibliotheken Inhaltstypen hinzuzufügen. Für solche und viele andere Anwendungsfälle eignet sich wie so oft ein Powershell Skript. 

Ein Beispiel eines solchen Skripts finden Sie nachfolgend. Das Skript durchläuft alle Websites in der angegebenen SiteCollection und fügt die zwei angegebenen Inhaltstypen allen Dokumentenbibliotheken hinzu.

Das Skript funktioniert mit SharePoint 2013 (Foundation + Server)

  

#--------------------------- Add Content Type ------------------------#
#Get site object and
#specify name of the content type to look for in each library

$site = Get-SPSite http://URL/
$newtype1 = "NAME CONTENT TYPE 1"
$oldtype1 = "Dokument"

#Walk through each site in the site collection
$site | Get-SPWeb -Limit all | ForEach-Object {

write-host "Checking site:"$_.Title
                               $_.ContentTypesEnabled = $true
#Go through each document library in the site
$_.Lists | where { $_.BaseTemplate -eq "DocumentLibrary" } | ForEach-Object {
$doclibs = $_.Lists | where { $_.BaseTemplate -eq "DocumentLibrary" }
for ($i = 0; $i -lt $doclibs.Count; $i++) {
$item = $doclibs[$i]
write-host "Checking list:"$item.Title


#Add site content types to the list
if (($item.ContentTypes | where { $_.Name -eq $newtype1}) -eq $null)
{
$ctToAdd = $site.RootWeb.ContentTypes[$newtype1]
$ct = $item.ContentTypes.Add($ctToAdd)
write-host "Content type" $newtype1 "added to list" $item.Title
}
else
{
write-host "Content type" $newtype1 "already exists in" $item.Title
}

$folder = $item.RootFolder
$ctypes=New-Object System.CollectionsGeneric.List[Microsoft.SharePoint.SPContentType]
foreach ($ct in $item.ContentTypes)
{
if ($ct.Name.Contains($newtype1))
{
$ctypes.Add($ct)
}
}
#$ctypes.Add($site.RootWeb.ContentTypes[$newtype1])
$folder.UniqueContentTypeOrder = $ctypes
$folder.Update();

$item.ContentTypesEnabled = $True;
$item.Update()
}
}
}
#Dispose of the site object
$site.Dispose()
 

  
Als erfahrener SharePoint Dienstleister haben wir viel Erfahrung im Einsatz von Powershell Skripten. Andere Funktionen aus unserem Fundus sind beispielsweise Skripte zum Exportieren von Inhaltstypen in XML, zum Erweitern der Navigation, Personal mySites Anlage oder alternative Sprachpakete aktivieren.

Sollten Sie Fragen dazu haben oder einen konkreten Bedarf, wenden Sie sich gerne an unsere Berater.

Lead Management Lösung & Beratung


Sie möchten Ihre Leads und Marketingkampagnen jederzeit im Blick behalten? Wir unterstützen Sie gerne dabei.

Zu unseren Dienstleistungen im Bereich Lead-Prozessmanagement zählt die Entwicklung, Bereitstellung und der Betrieb von Lösungen zur Unterstützung von CRM-Prozessen. Ihre bestehenden Leads und Kontaktadressen aus unterschiedlichen Online-Kanälen oder Aktivitäten lassen sich problemlos übernehmen. 

Unsere Lösung kann dabei zur Steuerung von Anfragen in einer Vertriebsorganisation eingesetzt werden. Sowohl mit eigenen Vertriebsstellen als auch mit eigenständigen Partnern. 

Je nach Anfrage und Tiefe des Prozesses wird dabei z.B. nach Kontaktstrecken zu Informationsmaterial, Beratung (z.B. Probefahrt) oder Angebotsanfrage differenziert. 

Darüber hinaus führen wir Ihre Daten zusammen und bereiten diese auf, so dass die Qualifizierung Ihrer Adressen, Geocodierung, die Weiterleitung zu Fullfillment-Partnern – beispielsweise zu Ihrem Logistik-Anbieter - oder die Weiterverfolgung von Leads und Aktivitäten möglich sind.

Unsere Lösung basiert auf einer Kombination von Standardlösungen auf Microsoft Dynamics CRM und Microsoft SharePoint als Frontend Portal.

Mehr Informationen finden Sie auf unserer Homepage:​
http://s-pi.de/de/automotive/leadmanagement/Pages/default.aspx

Kostenfreies Webinar - Dokumente in SharePoint automatisieren - flexibel, mächtig und intuitiv mit dox42



Die Automatisierung von Dokumenten spielt in vielen Szenarien eine wichtige Rolle. In vielen Fällen ist im Unternehmen bereits ein SharePoint Server, z.B. im Bereich Intranet, im Einsatz. Da in diesen häufig auch Geschäftsprozesse abgebildet werden, bietet sich die Lösung dox42 an um schnell, einfach und flexibel auch große Mengen an Dokumenten (z.B. Angebote, Verträge, Berichte, Briefe etc.) automatisch bzw. auf Knopfdruck zu erzeugen.

dox42 beherrscht dabei verschiedenste Datenquellen und Ausgabeformate und ist sehr gut in die Microsoft Produkte wie SharePoint sowie die Dynamics Linie integriert, kann aber ebenso auch mit einem SAP System arbeiten.

Außerdem bietet die Kombination mit Microsoft SharePoint eine ideale Integration in vorhandene Portal Strukturen wie z.B. ein Intranet. Mit Hilfe von Workflow Lösungen, wie beispielsweise Nintex Workflow, kann die Erstellung von Dokumenten nicht nur vollständig automatisiert, sondern auch noch mit bekannten Standard Funktionen unterstützt und in bestehende Prozesse eingebunden werden. Die bekannten SharePoint Funktionalitäten wie Versionierung, Check-In/Check-Out, Policies und vieles mehr runden das Ganze zu einem stimmigen Gesamtpaket ab.

Thomas Walz (S-PI) und Johannes Linder (dox42) zeigen Ihnen in diesem Webinar live, wie Sie mit dox42 Dokumente aus verschiedensten Datenquellen generieren und automatisiert in einem SharePoint System ablegen.