SharePoint – Blog https://blog.christianabele.de Christian Abele Fri, 05 Oct 2018 11:13:57 +0000 de-DE hourly 1 https://wordpress.org/?v=5.6 https://blog.christianabele.de/wp-content/uploads/2017/06/cropped-Unbenannt-1-32x32.jpg SharePoint – Blog https://blog.christianabele.de 32 32 In SharePoint Logs nach einer Korrelations-ID suchen https://blog.christianabele.de/2018/10/05/in-sharepoint-logs-nach-einer-korrelations-id-suchen/ https://blog.christianabele.de/2018/10/05/in-sharepoint-logs-nach-einer-korrelations-id-suchen/#comments Fri, 05 Oct 2018 11:10:52 +0000 https://blog.christianabele.de/?p=391 Hier ein Beispiel wie man die SharePoint Log-Dateien anhand einer bestimmten Korrelations-ID filtert und anzeigt. Nachfolgenden Text hierfür in die SharePoint-Verwaltungsshell kopieren und eine Korrelations-ID einsetzen. Das Ergebnis wird in diesem Beispiel in eine Datei „ULSlogs.txt“ geschrieben.

Get-splogevent | ?{$_.Correlation -eq "<Correlation ID>"} | select Area, Category, Level, EventID,Message | Format-List > C:\ULSlogs.txt

 

]]>
https://blog.christianabele.de/2018/10/05/in-sharepoint-logs-nach-einer-korrelations-id-suchen/feed/ 1
SharePoint-Designer findet keine Listen / Es wurde keine Objektbibliothek gefunden https://blog.christianabele.de/2018/04/18/sharepoint-designer-findet-keine-listen-es-wurde-keine-objektbibliothek-gefunden/ https://blog.christianabele.de/2018/04/18/sharepoint-designer-findet-keine-listen-es-wurde-keine-objektbibliothek-gefunden/#respond Wed, 18 Apr 2018 07:08:48 +0000 https://blog.christianabele.de/?p=341 „SharePoint-Designer findet keine Listen / Es wurde keine Objektbibliothek gefunden“ weiterlesen]]> Seit einigen Wochen kann ich mittels SharePoint-Designer nicht mehr auf Listen, Websiteobjekte, Websiteseiten meiner SharePoint-Instanz zugreifen. Auch der Export von Workflows funktioniert nicht mehr, mit der Meldung es gäbe keine Website-Objektliste in der der Export gespeichert werden kann. Das Problem bezog sich nur auf eine einzige Sub-Website. Alle anderen Websites funktionierten weiterhin tadellos. Nun habe ich hierfür eine Lösung gefunden.

In einem Post (mittlerweile offline) habe ich gelesen, dass die Seite /_vti_bin/ListData.svc nicht zugänglich ist, falls eine Liste in der Website Probleme hat. Und tatsächlich konnte ich den Service auf genau dieser einen problembehafteten Site nicht erreichen. Es scheint also eine Liste defekt zu sein.

Ich konnte nicht herausfinden, welche Liste defekt war, also ging ich im SPD zu „Alle Dateien“ – was funktionierte, obwohl viele der anderen Site-Objects in der Navigation nichts anzeigten.

Ich ging jede Liste in „Alle Dateien“ durch und benutzte den Button „Vorschau im Browser“ auf jeder von ihnen. Schlussendlich kam ich auf eine Liste die sich nicht öffnete! Stattdessen hieß es,

Feature d57f48...... für Listenvorlage'100' ist in dieser Farm nicht installiert....

Nachdem ich diese Liste gelöscht hatte funktionierte wieder alles tadellos, der Designer zeigt mir nun wieder alle Objekte an und auch der Workflow-Export funktioniert wieder.

]]>
https://blog.christianabele.de/2018/04/18/sharepoint-designer-findet-keine-listen-es-wurde-keine-objektbibliothek-gefunden/feed/ 0
SharePoint Genehmigungsworkflow startet nicht https://blog.christianabele.de/2018/02/23/sharepoint-genehmigungsworkflow-startet-nicht/ https://blog.christianabele.de/2018/02/23/sharepoint-genehmigungsworkflow-startet-nicht/#respond Fri, 23 Feb 2018 12:13:53 +0000 https://blog.christianabele.de/?p=226 „SharePoint Genehmigungsworkflow startet nicht“ weiterlesen]]> Heute stellt ich fest, dass mein Genehmigungsworkflow, wenn er mit gewissen Parametern geladen wird, nicht anläuft. Im Front-End erschien weder ein Fehler, noch hat sich der Workflow beendet. Es schien fast so, als würde er ab einem gewissen Punkt einfach nicht weiter laufen.

Ich habe dann erst einmal das Workflow-Tracing aktiviert. Hierfür werden der folgende Abschnitt in die web.config der SharePoint Instanzt eingefügt:

<system.diagnostics>
   <switches>
      <add name="System.Workflow LogToFile" value="1" />
      <add name="System.Workflow.Runtime" value="All" />
      <add name="System.Workflow.Runtime.Hosting" value="All" />
      <add name="System.Workflow.Runtime.Tracking" value="All" />
      <add name="System.Workflow.Activities" value="All" />
      <add name="System.Workflow.Activities.Rules" value="All" /> 
   </switches>
</system.diagnostics>

Darauf wird im Ordner C:\Windows\System32\inetsrv die Datei workflowtrace.log angelegt. Sollte die Log-Datei nicht automatisch angelegt werden, kann das an den Berechtigungen liegen. In diesem Fall einfach von Hand eine leere Datei mit diesem Namen anlegen.

Nachdem ich den fehlerhaften Workflow erneut gestartet habe, fand ich die beiden folgenden Fehler im Log:

System.Workflow.Runtime Error: 1 : Execute of Activity ID1419 threw System.Reflection.TargetInvocationException: Ein Aufrufziel hat einen Ausnahmefehler verursacht. ---> Microsoft.SharePoint.WorkflowActions.CoercionException: Koersionsfehler: <strong>Die Eingabe darf für diese Koersion nicht null sein..</strong>
   bei Microsoft.SharePoint.WorkflowActions.Helper.SplitMultiAndExtract(WorkflowContext context, Object val, ToExtract toExtract)
   bei Microsoft.SharePoint.WorkflowActions.Helper.SplitMultiUserToObjects(WorkflowContext context, Object val)
   bei Microsoft.SharePoint.WorkflowActions.Helper.MultiDisplayNameSemicolon(WorkflowContext context, Object val)
   --- Ende der internen Ausnahmestapelüberwachung ---
   bei System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   bei System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
   bei System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   bei System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
   bei Microsoft.SharePoint.WorkflowActions.CoerceActivity.Coerce()
   bei Microsoft.SharePoint.WorkflowActions.CoerceActivity.Execute(ActivityExecutionContext provider)
   bei System.Workflow.ComponentModel.ActivityExecutorOperation.Run(IWorkflowCoreRuntime workflowCoreRuntime)

Einige Zeilen später:

System.Workflow.Runtime Error: 0 : Workflow Runtime: WorkflowExecutor: Persist attempt on instance '0e5bbd06-0162-4cd3-b1ba-d3eff2c70e6d' threw an exception 'Der Typ "Microsoft.SharePoint.WorkflowActions.CoercionException" in Assembly "Microsoft.SharePoint.WorkflowActions, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" ist nicht als serialisierbar gekennzeichnet.' at    bei System.Runtime.Serialization.Formatters.Binary.WriteObjectInfo.InitSerialize(Object obj, ISurrogateSelector surrogateSelector, StreamingContext context, SerObjectInfoInit serObjectInfoInit, IFormatterConverter converter, ObjectWriter objectWriter, SerializationBinder binder)
   bei System.Runtime.Serialization.Formatters.Binary.ObjectWriter.Write(WriteObjectInfo objectInfo, NameInfo memberNameInfo, NameInfo typeNameInfo)
   bei System.Runtime.Serialization.Formatters.Binary.ObjectWriter.Serialize(Object graph, Header[] inHeaders, __BinaryWriter serWriter, Boolean fCheck)
   bei System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize(Stream serializationStream, Object graph, Header[] headers, Boolean fCheck)
   bei System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize(Stream serializationStream, Object graph)
   bei System.Workflow.ComponentModel.Activity.Save(Stream stream, IFormatter formatter)
   bei System.Workflow.Runtime.Hosting.WorkflowPersistenceService.GetDefaultSerializedForm(Activity activity)
   bei Microsoft.SharePoint.Workflow.SPWinOePersistenceService.SaveWorkflowInstanceState(Activity instanceState, Boolean unlock)
   bei System.Workflow.Runtime.WorkflowExecutor.Persist(Activity dynamicActivity, Boolean unlock, Boolean needsCompensation)

Der für mich wichtigste Hinweis war: Die Eingabe darf für diese Koersion nicht null sein.

Nach einer intensiven Prüfung des Workflows stellt ich fest, dass ein LookUp-Feld keinen Datensatz in seiner referenzierten SharePoint-Liste gefunden hatte und deshalb NULL war. Dieser leere Wert konnte dann vom Workflow nicht weiter verarbeitet werden und er stellt seine Arbeit ein. Yeah!

SharePoint-Systemhaus Stuttgart

]]>
https://blog.christianabele.de/2018/02/23/sharepoint-genehmigungsworkflow-startet-nicht/feed/ 0
SharePoint: Einige Felder fehlen in aktueller Aufgabe – Workflow mit Genehmigungsprozess https://blog.christianabele.de/2017/12/05/sharepoint-einige-felder-fehlen-in-aktueller-aufgabe-workflow-mit-genehmigungsprozess/ https://blog.christianabele.de/2017/12/05/sharepoint-einige-felder-fehlen-in-aktueller-aufgabe-workflow-mit-genehmigungsprozess/#respond Tue, 05 Dec 2017 09:40:56 +0000 https://blog.christianabele.de/?p=207 „SharePoint: Einige Felder fehlen in aktueller Aufgabe – Workflow mit Genehmigungsprozess“ weiterlesen]]> Ich verwende die Prozessaktivität „Genehmigungsaufgabe“ im SharePoint-Workflow. Nachdem kopieren des Workflows auf eine andere Farm stellte ich fest, dass einige Felder unter der aktuellen Aufgabe fehlen. So zum Beispiel „zugewiesen an“ und „Ergebnis“.

Im Inhaltstyp der Aufgabe selbst, fehlten alle geerbten Spalten der „Workflowaufgabe“.

Die Lösung: Neuinstallieren der eingebauten Felder/Feldtypen über die Verwaltungsshell

stsadm -o deactivatefeature -name Fields -url http://spsite-force
stsadm -o activatefeature -name Fields -url http://spsite-force

SharePoint-Systemhaus Stuttgart

]]>
https://blog.christianabele.de/2017/12/05/sharepoint-einige-felder-fehlen-in-aktueller-aufgabe-workflow-mit-genehmigungsprozess/feed/ 0
Fehler beim Veröffentlichen eines InfoPath 2010-Formulars in SharePoint: „Die folgende URL ist nicht gültig“ https://blog.christianabele.de/2017/11/27/fehler-beim-veroeffentlichen-eines-infopath-2010-formulars-in-sharepoint-die-folgende-url-ist-nicht-gueltig/ https://blog.christianabele.de/2017/11/27/fehler-beim-veroeffentlichen-eines-infopath-2010-formulars-in-sharepoint-die-folgende-url-ist-nicht-gueltig/#respond Mon, 27 Nov 2017 07:47:03 +0000 https://blog.christianabele.de/?p=203 „Fehler beim Veröffentlichen eines InfoPath 2010-Formulars in SharePoint: „Die folgende URL ist nicht gültig““ weiterlesen]]> Heute habe ich beim Veröffentlichen eines Formulars diesen Fehler erhalten:

Die folgende URL ist nicht gültig http://sp2016

Hinter der URL liegt die root site collection.

Die URL verwendet einen Host-Header-Namen. Die Angabe der zentralen Administrations-URL (unter Verwendung des Rechnernamens) funktionierte.

Die Lösung: Den Netzwerkadapter der virtuellen Maschine aktivieren.

Die Deaktivierung des „System Event Notification Service“ (net stop sens auf der Kommandozeile) löste das Problem. Aber dieser Dienst sollte so schnell wie möglich wieder gestartet werden!

SharePoint-Systemhaus Stuttgart

]]>
https://blog.christianabele.de/2017/11/27/fehler-beim-veroeffentlichen-eines-infopath-2010-formulars-in-sharepoint-die-folgende-url-ist-nicht-gueltig/feed/ 0
SharePoint: Erstellen einer WorkFlow-Vorlage mit Visual Studio https://blog.christianabele.de/2017/11/09/sharepoint-erstellen-einer-workflow-vorlage-mit-visual-studio/ https://blog.christianabele.de/2017/11/09/sharepoint-erstellen-einer-workflow-vorlage-mit-visual-studio/#respond Thu, 09 Nov 2017 13:47:45 +0000 https://blog.christianabele.de/?p=178 „SharePoint: Erstellen einer WorkFlow-Vorlage mit Visual Studio“ weiterlesen]]> Seit einigen Tagen versuche ich mittels Visual Studio eine SharePoint-Vorlage zu erstellen welche ich in beliebigen Listen/Bibliotheken wiederverwenden kann. Hierfür habe ich jedoch in den entsprechenden Workflow-Wizards in Visual Studio keine Option gefunden. Meine Workflows waren stets an eine definierte Liste gebunden und waren dann auch nur bei eben dieser Verfügbar.

Laut der SharePoint-Dokumentation sollte das jedoch möglich sein:

A workflow can be written as a template so that after it is deployed, it can be reused and associated with any list or library.

Nun habe ich jedoch eine vermeintliche Lösung gefunden. Wenn während der Erstellung eines neuen Listen-Workflows keine Bezugsliste angegeben wird, die Eigenschaft also leer gelassen wird, steht dieser Workflow in SharePoint als Vorlage zur Verfügung und kann an eine beliebige Liste  gebunden werden. Über den Menüpunkt „Workflow hinzufügen“ in einer SharePoint-Liste kann dann auch eine entsprechende Aufgabenliste und Verlaufsliste zur Laufzeit gebunden werden.

SharePoint-Systemhaus Stuttgart

]]>
https://blog.christianabele.de/2017/11/09/sharepoint-erstellen-einer-workflow-vorlage-mit-visual-studio/feed/ 0
SharePoint: WorkFlow bricht ab (System.ArgumentException: ContentTypeId) https://blog.christianabele.de/2017/11/08/sharepoint-workflow-bricht-ab-system-argumentexception-contenttypeid/ https://blog.christianabele.de/2017/11/08/sharepoint-workflow-bricht-ab-system-argumentexception-contenttypeid/#respond Wed, 08 Nov 2017 13:13:53 +0000 https://blog.christianabele.de/?p=174 „SharePoint: WorkFlow bricht ab (System.ArgumentException: ContentTypeId)“ weiterlesen]]> Nach dem Kopieren und Aktualisieren eines WorkFlows verweigerte SharePoint die Ausführung mit der folgenden Meldung:

RequestorId: 1a9862c8-3314-4e2a-a3e8-85d79f2cd7c9. Details: System.ArgumentException: ContentTypeId 
at Microsoft.Activities.Hosting.Runtime.Subroutine.SubroutineChild.Execute(CodeActivityContext context) 
at System.Activities.CodeActivity.InternalExecute(ActivityInstance instance, ActivityExecutor executor, BookmarkManager bookmarkManager) 
at System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor, BookmarkManager bookmarkManager, Location resultLocation)

Das Wort ContentTypeId hat mir geholfen, die Ursache des Problems zu identifizieren. In meinem neuen Workflow-Task wurde die alte Workflow-TaskList verschoben. Somit war mein Custom-ContentType in der TaskList nicht mehr vorhanden.

Es gilt also zu prüfen ob die TaskList den eigenen ContentType enthält. Falls ja, prüfen ob der WorkFlow auch die korrekte TaskList nutzt.

Weiterführende Hilfe

SharePoint-Systemhaus Stuttgart

]]>
https://blog.christianabele.de/2017/11/08/sharepoint-workflow-bricht-ab-system-argumentexception-contenttypeid/feed/ 0
SharePoint Lookup-Spalte deklarativ über CAML XML hinzufügen https://blog.christianabele.de/2017/11/08/sharepoint-lookup-spalte-deklarativ-ueber-caml-xml-hinzufuegen/ https://blog.christianabele.de/2017/11/08/sharepoint-lookup-spalte-deklarativ-ueber-caml-xml-hinzufuegen/#respond Wed, 08 Nov 2017 06:48:34 +0000 https://blog.christianabele.de/?p=172 „SharePoint Lookup-Spalte deklarativ über CAML XML hinzufügen“ weiterlesen]]> <Field ID="{72a29af6-e5d0-4daa-9ee4-19b27397f7bf}" Name="MyCustomLookupColumn" DisplayName="My Custom Lookup Column" Type="Lookup" Required="FALSE" Group="Custom Site Columns" List="Lists\LookUpSourceList" ShowField="Title" PrependId="True"> </Field>

Es gibt hier drei Eigenschaften, die nicht in der Standardseitenspaltendefinition enthalten sind. Der erste ist „Liste“, wie vielleicht zu vermuten, zeigt es auf die URL der Liste in der Website. In diesem Beispiel weiß ich, dass ich die Titelspalte in einer Liste unter Lists\LookUpSourceList suche. Die nächste Eigenschaft ist „ShowField“. Richtig, das ist das Feld, das in der Lookup-Spalte angezeigt werden soll. Über die letzte Eigenschaft „PrependId“ wird definiert ob die Nachschlagspalte die ID vor dem Wert zurück geben soll.

SharePoint-Systemhaus Stuttgart

]]>
https://blog.christianabele.de/2017/11/08/sharepoint-lookup-spalte-deklarativ-ueber-caml-xml-hinzufuegen/feed/ 0
SharePoint: Activity could not be loaded because of errors in the XAML. https://blog.christianabele.de/2017/11/07/sharepoint-activity-could-not-be-loaded-because-of-errors-in-the-xaml/ https://blog.christianabele.de/2017/11/07/sharepoint-activity-could-not-be-loaded-because-of-errors-in-the-xaml/#respond Tue, 07 Nov 2017 09:57:22 +0000 https://blog.christianabele.de/?p=159 „SharePoint: Activity could not be loaded because of errors in the XAML.“ weiterlesen]]> Oder: Die Aktivität konnte aufgrund von Fehlern in der XAML nicht geladen werden.

Während der Entwicklung eines SharePoint-AddIns in Visual Studio habe ich einen Workflow zum Projekt hinzugefügt. Darauf überraschte mich die folgende Ansicht im Workflow-Designer.

In der Fehlerliste ist als Grund unter Anderem der folgende Fehler aufgeführt:

Typ "Microsoft.SharePoint.DesignTime.Activities.Design.ViewStateNameValue" wurde in Assembly "Microsoft.SharePoint.DesignTime.Activities.16.0.Design" nicht gefunden.

Ein Blick in die Referenzen zeigte in meinem Fall, dass die Bibliothek Microsoft.SharePoint.DesignTime.Activities.16.0.Design.dll überhaupt nicht referenziert wurde. Lediglich eine Datei namens Microsoft.SharePoint.DesignTime.Activities.16.0.dll.

Nachdem die fehlende Referenz zum Projekt hinzugefügt wurde, verschwand die Fehlermeldung und das Projekt ließ sich bauen.

SharePoint-Systemhaus Stuttgart

]]>
https://blog.christianabele.de/2017/11/07/sharepoint-activity-could-not-be-loaded-because-of-errors-in-the-xaml/feed/ 0
Fehler, die bei der Installation von SharePoint 2016 auftreten können https://blog.christianabele.de/2017/10/10/fehler-die-bei-der-installation-von-sharepoint-2016-auftreten-koennen/ https://blog.christianabele.de/2017/10/10/fehler-die-bei-der-installation-von-sharepoint-2016-auftreten-koennen/#respond Tue, 10 Oct 2017 09:17:42 +0000 https://blog.christianabele.de/?p=127 „Fehler, die bei der Installation von SharePoint 2016 auftreten können“ weiterlesen]]> Um SharePoint 2016 zu installieren gibt es zahlreiche Blogs und Hilfeseiten. Dennoch bin ich bei der Installation und Bereitstellung von SharePoint 2016 immer noch auf einige Probleme gestoßen.

Fehler im Ablauf der Installationsvoraussetzungen.

Wenn ich die Installationsvoraussetzung ausführe, erscheint der Fehler „Es gab einen Fehler während der Installation. Das Programm war nicht in der Lage XXX zu installieren“.

Manchmal kommt es vor das, dass die ein oder andere Abhängigkeit nicht korrekt installiert wird. Hierfür habe ich das entsprechende Programm dann manuell nachinstalliert. Die folgenden Installer sind SharePoint Voraussetzungen:

  • Microsoft SQL Server 2012 Native Client (SQLnCli.msi)
  • Microsoft ODBC Driver 11 for SQL Server (msodbcsql.msi)
  • Microsoft Sync Framework Runtime v1.0 SP1 (SyncSetup_en.x64.zip)
  • Windows Server AppFabric (WindowsServerAppFabricSetup_x64.exe)
  • Microsoft Identity Extensions (MicrosoftIdentityExtensions-64.msi)
  • Microsoft Information Protection and Control Client 2.1 (setup_msipc_x64.exe)
  • Microsoft WCF Data Services 5.6 (WcfDataServices.exe)
  • Microsoft .NET Framework 4.5.2 (NDP452-KB2901907-x86-x64-AllOS-ENU.exe)
  • Microsoft .NET Framework 4.6 (NDP461-KB3102436-x86-x64-AllOS-ENU.exe)
  • Cumulative Update Package 7 for Microsoft AppFabric 1.1 for Windows Server (KB3092423) (AppFabric1.1-RTM-KB2671763-x64-ENU.exe)
  • Visual C++ Redistributable Package for Visual Studio (vc_redist.x64.exe)

Nach der manuellen Installation der fehlerhaften Installer, lief der Prerequisite-Installer erfolgreich durch.

Fehler: „Dieses Programm kann nicht gestartet werden, weil die api-ms-win-crt-heap-l1-1-1-0. dll auf Ihrem Computer fehlt“

Dieser Fehler tritt auf, während der Konfigurationsassistent für SharePoint-Produkte läuft und wird durch fehlende Update-Patches (Windows 10 Universal Runtime Update) für Windows Server 2012 R2 verursacht. Downloade und installiere Windows Server 2012 R2 Patch KB299926, um dieses Problem zu beheben.

Leider erscheint ein weiteres Problem:“Das Update ist auf Ihrem Computer nicht anwendbar“. OK, Windows 10 Universal C Runtime KB2999226, ist abhängig von einem Windows Server 2012 R2 Update Paket in KB2919355. Also, prüfe auf Windows Updates, wähle den Patch KB2919355 und installieren ihn. Dann sollte dieses Problem behoben sein. Installiere anschließend die Windows 10 Universal C Runtime.

Fehler: „Konfigurationsdatenbank konnte nicht erstellt werden. Eine Ausnahme vom Typ Microsoft. SharePoint. Upgrade. SPUpgradeException wurde ausgelöst“

Das liegt meißt daran, dass die WCF Data Services manuell installiert wurden und nicht über den Prerequisite-Installer.

Lösung: Deinstalliere WcfDataServices und installiere die WcfDataServices mit der Prerequisite-Installer neu. Die ist auch über die Befehlszeile möglich:

prerequisiteinstaller.exe /wcfdataservices56: {Pfad zur WcfDataServices.exe}

Danach lösche die zwei Datenbanken im SQL-Server, die während der vorherige Konfiguration erstellt wurden, dann führe den Konfigurations-Wizard erneut aus. Nun sollte er erfolgreich durchlaufen.

SharePoint-Systemhaus Stuttgart

]]>
https://blog.christianabele.de/2017/10/10/fehler-die-bei-der-installation-von-sharepoint-2016-auftreten-koennen/feed/ 0