Category: Microsoft

Wiki mit Bildern Update

Falls bei der Benutzung des Webparts ein Fehler wie:

Fehler bei der Anforderung des Berechtigungstyps Microsoft.SharePoint.Security.SharePointPermission, Microsoft.SharePoint.Security, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c.

auftritt, muss der Trustlevel in der web.config auf Full gesetzt werden.

<trust level="Full" originUrl="" />

Zum vollständigen Beitrag: http://www.hezser.de

Update 23. Apr 2008:

Ich habe eine neue Version bereitgestellt.

Sending Email from SharePoint

You can configure a task list, to send an email if you assign a task to somebody. This works fine if this somebody has an internal email address.

If you happen to have an account inside the environment of the SharePoint Server, and configure it to have an external email address, sending an email to this account might fail. In the SharePoint Logs there is an entry:

03/12/2007    14:40:42.29    OWSTIMER.EXE (0x059C)    0x14E8    Windows SharePoint Services    E-Mail    8gsf    High    #160009: Die E-Mail-Adresse ‘somebody@somewhere.tld’ ist unbekannt. (something like: the email address ‘somebody@somewhere.tld’ is unknown)

(if not, adjust your logging for email events)

To be able to send emails to recipients outside your environment, you have to grant your SharePoint Server the right to send emails in the virtual SMTP Server of your Exchange Server.

Remove Server from Farm

After adding a new Server to the SharePoint farm, I removed the old one.

The central administration page was not accessible. It said "error 500" in the browser. By changing the admin port via "stsadm -o setadminport -port 12345" and back to the original port, I was able to regain access to the central administration page.

Testlink to Yvonne for EBE Tracking Test: http://yvonneharryman.wordpress.com/2009/06/28/sharepoint-beacon-is-the-new-home-for-my-blog-regarding-sharepoint/

Remove Server from Farm

After adding a new Server to the SharePoint farm, I removed the old one.

The central administration page was not accessible. It only said "error 500" in the browser. By changing the admin port via "stsadm -o setadminport -port 12345" and back to the original port, I was able to regain access to the central administration page.

Reporting on SharePoint Lists

You can do Reporting on SharePoint Lists with SQL Server Reporting Services 2005 quite easy.

  1. Configure the Datasource with integrated Security
  2. Define a query like

    <Query>
    <SoapAction>http://schemas.microsoft.com/sharepoint/soap/GetListItems</SoapAction>
    <Method Namespace="http://schemas.microsoft.com/sharepoint/soap/" Name="GetListItems">
    <Parameters>
    <Parameter Name="listName">
    <DefaultValue>SharePoint List Name</DefaultValue>
    </Parameter>
    </Parameters>
    </Method>
    <ElementPath IgnoreNamespaces="True">*</ElementPath>
    </Query>

  3. Hit the "Field Refresh" Button to get the Field from your SharePoint List
  4. Drag your Fields in the Report
  5. Use the Code to eliminate "ID;#" and "<div>","</div>" from your Fields

    Use "=Code.CuttOff(Fields!ows_LinkTitle.Value)" in your Report to display your Fields

Webpart, Properties and default value

If you write a Webpart with custom properties, you have to take care of the default value.

[WebBrowsable(true),
DefaultValue("value"),
Personalizable(true),
WebDisplayName("some property"),
WebDescription("Description of the property")]
public
string PropertyName
{
get { return _ PropertyName; }
set { _ PropertyName = value; }
}

Please do not specify a default value, which you might actually use. The default property value will not be saved, if you choose to configure it with the default value!

Wiki mit Bildern

Bei einem Blog Eintrag kann man Bilder mit an den Eintrag anfügen. Dies ist jedoch bei der Wiki Vorlage der Windows SharePoint Services V3 nicht möglich.

Um dieses Manko zu beseitigen, habe ich ein Webpart geschrieben. Dieses wird in die editform.aspx der Wiki List eingebaut. Danach kann man bequem über die Pflegemaske der Wiki Einträge Bilder an einen Wiki Beitrag anfügen. Die Bilder werden automatisch in eine Bildbibliothek hochgeladen.

Installation:

  1. Kopieren der Assembly in das bin Verzeichnis des virtuellen Servers
  2. Registrieren des Webparts in der web.config
    <SafeControl Assembly="WikiWebpart, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b17a955c3eada4c1" Namespace="WikiWebpart" TypeName="*" Safe="True" />
  3. Hinzufügen des Webparts auf der editform.aspx (mit dem SharePoint Designer)
  4. Erstellen einer Bildbibliothek in der Wiki Site
    Wenn Sie mehrere Bildbibliotheken auf der Wiki Site haben, kann in den Webpart Eigenschaften eine Bildbibliothek eingetragen werden.

Hinweis:
Wenn ein Bild angefügt wird, wird der Beitrag nicht gespeichert. Deshalb immer erst ein Bild hochladen, und dann den Beitrag bearbeiten!

Download: WikiWebpart

Update:

Falls bei der Benutzung des Webparts ein Fehler wie:

Fehler bei der Anforderung des Berechtigungstyps Microsoft.SharePoint.Security.SharePointPermission, Microsoft.SharePoint.Security, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c.

auftritt, muss der Trustlevel in der web.config auf Full gesetzt werden.

<trust level="Full" originUrl="" />

Update:
Ich habe eine neue Version des Webparts veröffentlicht. Siehe hier.

Error 6483

Auf einem Server habe im Ereignisprotokoll immer wieder eine Meldung mit der ID 6483 gefunden:

Quelle: Office SharePoint Server Kategorie: Gemeinsamte Dienste Ereigniskennung: 6483

Quelle: Office SharePoint Server
Kategorie: Gemeinsamte Dienste
Ereigniskennung: 6483

Zur Behebung des Problems habe ich versucht eine Reparaturinstallation durchzuführen. Jedoch ist diese mit Fehlermeldungen abgebrochen:

Die Konfiguration von Microsoft Office SharePoint Server 2007 wurde nicht erfolgreich abgeschlossen. Für das Produkt Microsoft SharePoint Services 3.0 1031 Lang Pack wurde kein Installationspaket gefunden.

Also habe ich nacheinander alle Pakete nachinstalliert, die während der Reparatur angemeckert wurden. Im Endeffekt waren dass alle msi Pakete auf der Microsoft Office SharePoint Server 2007 CD, außer den uninstall Paketen.

Im Anschluss konnte ich jedoch die Reparatur erfolgreich durchführen. Nach dem obligatorischen Neustart musst ich nur noch den Konfigurationswizzard durchlaufen, und das System lief wieder wie gewünscht.

Upgrade eines SPS 2003 Portals auf MOSS 2007

In den letzten Tagen habe ich versucht ein SharePoint Portal Server 2003 Portal auf Microsoft Office SharePoint Server 2007 zu aktualisieren. Hierbei bin ich über einige Probleme gestolpert.

Folgende Upgradeversuche habe ich getestet:

  1. Anhängen der Inhaltsdatenbanken an eine neue Microsoft Office SharePoint Server 2007 Webanwendung
  2. Inplace Upgrade des gesamten Servers
  3. Gradual Upgrade

Leider hatte ich bei den ersten 2 Versuchen eine Fehlermeldung erhalten:
[SPManager] [ERROR] [04.02.2007 11:39:28]: ReflexiveUpgrade [SPWebServiceInstance Parent=SPServer Name=SHAREMIG] failed.
[SPManager] [ERROR] [04.02.2007 11:39:28]: Die Eingabezeichenfolge hat das falsche Format.
[SPManager] [ERROR] [04.02.2007 11:39:28]: bei System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)…

Oder:
"Die Eingabezeichenfolge hat das falsche Format" wenn ich die Datenbank mittels stsadm anfügen wollte.

Zu dieser Fehlermeldung habe ich jedoch keine weitere Erklärung finden können.

Jedoch habe ich im Upgrade.log des dritten Versuchs eine aussagekräftigere Fehlermeldung erhalten:

[SiteSequence] [ERROR] [04.02.2007 17:53:13]: Der Gruppenname ist leer, oder Sie verwenden eines oder mehrere der folgenden ungültigen Zeichen: " / \ [ ] : | < > + = ; , ? * ‘ @

[SiteSequence] [ERROR] [04.02.2007 17:53:13]: bei Microsoft.SharePoint.Library.SPRequestInternalClass.AddRoleDef(String bstrUrl, String bstrName, String bstrDescription, Boolean bHidden, Int32 lRoleOrder, UInt64 iPermMask, Byte iType, Int32 lRoleDefID)

bei Microsoft.SharePoint.Library.SPRequest.AddRoleDef(String bstrUrl, String bstrName, String bstrDescription, Boolean bHidden, Int32 lRoleOrder, UInt64 iPermMask, Byte iType, Int32 lRoleDefID)

In einigen Bereichen und Teamsites wurden Gruppen berechtigt, die ein + im Namen haben. Genau wie eine # als ersten Buchstaben eines Serviceaccounts, scheint auch ein + nicht empfehlenswert zu sein…

InfoPath Forms Services – Webpart

Patrick Tisseghem hat in seinem Blog einen interessanten Beitrag zum Thema Office Forms Server gemacht. Zu finden ist der Artikel hier: http://blog.u2u.info/DottextWeb/patrick/archive/2006/11/30/37738.aspx

Hier die Zusammenfassung:

Um ein Formular auf einer SharePoint Webseite anzuzeigen, muss man nicht erst ein Webpart entwickeln. Die Forms Services nutzen ein ASP.Net Webpart, dass durch den Eintrag

<SafeControl Assembly="Microsoft.Office.InfoPath.Server, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.Office.InfoPath.Server.Controls" TypeName="*" Safe="True" />

in der Web.Config Importiert, und genutzt werden kann.

Fehler in der Suche – WSS V3

Im Eventlog finden sich Einträge mit der Ereigniskennung 10039:

Fehler beim erneuten Versuch des Abfragecomputers ‘SERVER’. Fehler: Zugriff verweigert 0x80070005. Der Vorgang wird in 240 Sekunden wiederholt. Komponente: f4156246-fc9c-42ce-8a5f-931f51e04cdf

Das Problem lässt sich beheben, indem der Account, unter dem der Application Pool läuft, geändert wird. In diesem Fall war es der Netzwerkdienst.
Den Netzwerkdienst habe ich durch einen Domänen Account ersetzte. Dieser musste u.A. die nötigen Rechte auf die Datenbanken bekommen.

Wo?

Was?

SQL Content DB

Database Owner

SQL Configuration DB

WSS_Content_Application_Pools

SQL Search DB

Database Owner

Gruppen

  • IIS_WPG
  • WSS_WPG

stsadm – import, export

Das Kommandozeilentool stsadm wurde in der Version 3 der Windows SharePoint Services um neue Funktionen erweitert.

In das Thema Importieren/Exportieren von Daten von einem Server zu einem anderen möchte ich ein wenig Licht bringen, und die Funktionen beschreiben.

Im- / Export von SharePoint Sites

Mit Hilfe der Im- / Export Funktion können SharePoint Webs kopiert werden. Hierbei können folgende Inhalte mit kopiert werden:

  • Sicherheitseinstellungen
  • Benutzerrollen
  • Versionsinformationen
  • Workflows

Besonders nützlich ist diese Option z.B. für den Fall, dass eine Webseite an einen anderen Ort in der Sitecollection verschoben werden soll.

Funktion

Parameter

-o export

-url <URL to be exported>
-filename <export file name>
[-overwrite]
[-includeusersecurity]
[-haltonwarning]
[-haltonfatalerror]
[-nologfile]
[-versions <1-4>
1 - Last major version for files and list items (default)
2 - The current version, either the last major or the last minor
3 - Last major and last minor version for files and list items
4 - All versions for files and list items]
[-cabsize <integer from 1-1024 megabytes> (default: 25)]
[-nofilecompression]
[-quiet]

-o import

-o import
-url <URL to import to>
-filename <import file name>
[-includeusersecurity]
[-haltonwarning]
[-haltonfatalerror]
[-nologfile]
[-updateversions <1-3>
1 - Add new versions to the current file (default)
2 - Overwrite the file and all its versions (delete then insert)
3 - Ignore the file if it exists on the destination]
[-nofilecompression]
[-quiet]

 

Schritte, um eine Webseite zu kopieren:

Schritt

Beschreibung

1.

Exportieren der Webseite

 

Eine beliebige Webseite kann mit verschiedenen Optionen Exportiert werden:

 

stsadm -o export -url http://wss3/stsadmtest -filename c:\stsadmtest.cab -includeusersecurity -versions 4

2.

Erstellen einer neuen Webseite

 

Bevor Inhalte wiederhergestellt werden können, muss erst eine Webseite angelegt werden. Dieser Schritt kann auch mit stsadm geschehen:

 

Neue Sitecollection

stsadm.exe -o createsite -url http://wss3/sites/importtest -ownerlogin wss3\administrator
-owneremail administrator@wss3.local -sitetemplate STS

 

Neue Webseite

stsadm.exe -o createweb -url http://wss3/importtest

3.

Importieren der Daten

 

Nachdem eine Webseite (oder Sitecollection) erstellt wurde, 
können die zuvor gesicherten Daten in diese wiederhergestellt werden:

 

stsadm -o import -url http://wss3/importtest
-filename c:\stsadmtest.cab –includeusersecurity

4.

[Optional: Löschen der alten Webseite]

 

VORSICHT: Es kommt keine Rückfrage, ob wirklich gelöscht werden soll!

 

stsadm -o deleteweb -url http://wss3/stsadmtest

Genehmigung ausstehend…

Über ein Portal sind diverse Dokumentenbibliotheken – in den Dokumente auf eine Genehmigung warten – verteilt.

Dieses Szenario wird vielen bekannt vorkommen. Ein Lösung habe ich vor einige Zeit geschrieben. Das Webpart zeigt alle die Dokumente an

  1. die auf eine Genehmigung warten
  2. bei denen der Besucher das Recht hat die Genehmigung durchzuführen

Die Lösung ist nicht die schönste, aber sie hat bei mir funktioniert. Und das übrigens für Windows SharePoint Services V2 und den SharePoint Portal Server.

  • In der Konfiguration des Webparts sollte der Account eingetragen werden, unter dem auch der Application Pool läuft
  • Die Installation des Webparts muss mit der Option "-globalinstall" erfolgen

Zum Download: NetatWork.notApproved.CAB

Site Berechtigungen

Wer verliert nicht den Überblick über die Berechtigungen einer SharePoint Sitecollection?

Um die Berechtigungen einer Sitecollection auszulesen, habe ich ein Tool geschrieben dass die Gruppen und Berechtigungen einer oder aller Sites anzeigt.

In einem späteren Schritt werde ich aus den Komponenten einen Webservice erstellen, um eine Auswertung über SSRS (SQL Server Reporting Services) zu ermöglichen.

Hier ist der Download SharePointUserRights.

Update 16.11.2008:

neue Version mit einigen Änderungen und Bugfixing