Startseite > Techblog > Microsoft Sharepoint
nächste Seite
lke

Seit dem 23.02.2010 steht das Cumulative Update Februar 2010 für Windows SharePoint Services 3.0 und  Microsoft Office SharePoint Server 2007 zum download bereit. Artikel vollständig lesen »

Kommentar Feed Trackback URL
thu

Wie werden nun diese  Sharepoint Listen gezeichnet? Wie könnte nun der neu zu entwickeltende, spektakuläre Cover Flow für Sharepoint aussehen, den man sich gerade noch im Kopf zurecht gerückt hat? Irgendwie muss dieser im Kopf entwickelte Prototyp nun in das Konzept übertragen werden. Spätestens an diesem Punkt steigen die meisten Consultants oder Artgenossen aus. Einige versuchen sich noch hartnäckig mit ihren Copy & Paste Fähigkeiten (Photoshop und Co.) das gewünschte Bild zusammen zu montieren. Aber sind wir doch mal ehrlich: schön ist das nicht.

Wer öfters mal eine Dokumentation oder aber auch ein Fachkonzept schreibt, wird dieses Szenario wahrscheinlich nur zu gut kennen.

Die kleine italienisch/amerikanische Firma Balsamiq Studios hat sich auf die Flagge geschrieben, uns genau in dieser schweren Zeit der “Ideen-Illustration” zu unterstützen. Gegründet und geleitet wird die kleine Firma von Giacomo ‘Peldi’ Guilizzoni, einem Ex – Adobe Software Lead. Mehr über die Gründungsgeschichte von Balsamiq kann in diesem (empfehlenswerten) Blogpost gefunden werden.

Wie sieht so eine “Skizze”, welche mit Balsamiq entworfen werden kann, denn nun aus?


Mockup


Mockup

Genau so!

Artikel vollständig lesen »

Kommentar Feed Trackback URL
aru

Das Content Query WebPart bietet dem Nutzer die Möglichkeit “mal schnell” Inhalte aus einer bestimmten Site oder Liste auf einer Seite zu publizieren. Dabei besteht die Möglichkeit aus diversen Anzeige-Modi zu wählen. Sollen allerdings Inhalte aus einer Richtext-HTML-Spalte angezeigt werden, beispielsweise die Description einer Posts Liste, wird das HTML nicht aufgelöst.

Artikel vollständig lesen »

Kommentar Feed Trackback URL
dri

Den Auftakt zum letzten Tag auf der Basta! macht für mich Custom Field Types – Entwicklung und Einsatzmöglichkeiten mit Oliver Wirkus. Die Entwicklung eines Custom Field Type für SharePoint ist eher unspektakulär und wer das schon einmal gemacht hat, wird dazu hier nicht viel Neues erfahren. Einen Tipp möchte ich noch weitergeben: Für die Festlegung von Konfigurationseinstellungen bieten sich die Custom Properties in der fldtype_xxx.xml an – allerdings sollte man bedenken, dass diese bei einem Update immer wieder “überbügelt” wird (dennoch sind die Daten dort allemal besser aufgehoben als “hard coded”). Folgende “Unschönheiten” bzgl. Custom Field Types sollte man bei deren Verwendung bedenken: Artikel vollständig lesen »

Kommentar Feed Trackback URL
dri

Auf zum 2. Tag der Basta! Hauptkonferenz – und damit dem ersten der beiden SharePoint Days. Heute gibt es keine morgendliche Keynote, sondern es geht gleich in die Sessions – für mich ist das als erstes Sehenswertes aus SharePoint 2010 mit Tom Wendel. Erstaunlich für mich, dass nur ca. ein Drittel der anwesenden Entwickler Sharepoint 2010 überhaupt schon gesehen hat. Dementsprechend “basic” fällt die Vorstellung der Neuerungen aus – weshalb ich hier auch auf eine detaillierte Auflistung verzichte. Trotzdem ein paar “Bruchstücke”, die mir nennenswert erscheinen: Artikel vollständig lesen »

Kommentar Feed Trackback URL
thu

Dem Einen oder Anderen hat Visual Studio wahrscheinlich schon einmal mit dieser leicht dominierenden Bildschirmausgabe überrascht. Wahrscheinlich aber haben es die Meisten noch nie zu Gesicht bekommen, denn wir sind ja keine Copy & Paste Entwickler. :)

Das ist der besagte Hinweis:

Here you can see the error message thrown by visual studio

RDClip

Randbedingungen:
Ich verwende eine virtuelle Maschine(Windows Server 2003) unter Microsoft Virtual Server 2005 R2.

Das Problem tritt gelegentlich auf, wenn innerhalb der Host Maschine etwas kopiert wird und anschließend versucht wird, das soeben kopierte, in Visual Studio, auf der Entwicklungsmaschine, einzufügen.

Lösung:

Wie kann dieses Problem nun gelöst werden? Anfangs dachte ich, der Übeltäter wäre Visual Studio, und beendete einfach den devenv.exe Prozess. Irgendwann irritierte es mich aber, dass sobald diese Meldung auftauchte überhaupt kein Copy & Paste mehr funktionierte. Zu diesem Zeitpunkt fand ich heraus, dass der eigentliche, anfangs nicht verdächtige, Prozess rdpclip.exe der Schuldige war.

Um also in Visual Studio weiter arbeiten zu können, muss einfach der Prozess rdclip.exe beendet werden. Dies kann leicht über den  Task Manager vollführt werden.

Falls anschließend wieder Copy & Paste verwendet werden soll, nicht vergessen den RdpClip.exe Prozess wieder zu starten. Gefunden werden kann dieser im Verzeichnis C:\Windows\System32

Kommentar Feed Trackback URL
mhy

SharePoint 2010 bietet mit der Assembly Microsoft.SharePoint.Linq.dll (zu finden im Ordner 14\ISAPI) die Möglichkeit, recht einfach Listeninhalte abzufragen. Wenn man sich etwas näher damit beschäftigt, kann man sehr viele Parallelelen zu LINQ to Objects und Linq to SQL entdecken.

Erster Schritt ist, eine Referenz auf die genannte Assembly hinzuzufügen. Ab diesem Zeitpunkt steht der Namespace Microsoft.SharePoint.Linq zur Verfügung. Dieser beinhaltet die Klasse DataContext, über die ähnlich wie bei LINQ to SQL auf die Inhalte zugegriffen werden kann. Die Initialisierung des Kontexts ist recht einfach – hierzu wird einfach im Konstruktor des Objekts die Url der zu verwendenden Site übergeben.

Vor dem Erfolg steht aber ein wenig Arbeit, denn der Zugriff ist typsicher und so müssen für die verwendeten Inhaltstypen Klassen angelegt werden. Auch hier zeigen sich wieder Parallelen zu bereits Bekanntem: Mit Hilfe des Tools SPMetal (zu finden im Ordner 14\BIN) können die Klassen auf Basis einer bestehenden Site automatisch erstellt werden.

Ab diesem Zeitpunkt ist es recht einfach, wie das folgende Beispiel zeigt:

DataContext data = new DataContext("http://mysite/");

EntityList<Page> wikiPages = data.GetList<Page>("Pages");
var filteredPages = from wikiPage in wikiPages
            where wikiPage.Name == "Inline-Process-Editor.aspx"
            select wikiPage;

foreach (var filteredPage in filteredPages)
{
    Console.WriteLine(filteredPage.Path);
}

Kommentar Feed Trackback URL
aru

Die Dokumentenbibliotheken des SharePoint 2010 bieten einige Verbesserungen bzw. Neuerungen.

  • CheckBox
  • Document Sets
  • Rule Based Submission
  • Document ID

Artikel vollständig lesen »

Kommentar Feed Trackback URL
thu

Jetzt ist schon fast ein halbes Jahr vergangen, als ich mich das letzte Mal mit dem Cross Site Scripting Filter (XSS) von Sharepoint 2007 befasst habe. Dieser stellt einen wesentlichen Bestandteil von Sharepoint dar und bereitete mir damals schon sehr viele Kopfschmerzen. Prinzipiell besteht die Aufgabe des XSS Filters darin, schädlichen Code oder Skripte aus dynamisch generierten HTML Seiten zu entfernen. Dass der Filter manchmal etwas willkürlich arbeitete hatte ich damals in meinen Blogbeitrag bereits gezeigt.

Was bisher geschah: Sharepoint und der eigensinnige XSS – Filter (Bericht)

Grund genug, sich einmal die Unterschiede zwischen Sharepoint 2007 und Sharepoint 2010 anzuschauen.

Um die Unterschiede zu verdeutlichen, habe ich ein HTML Quelldokument, jeweils mit einem Sharepoint 2007 und mit einem Sharepoint 2010 Server programmatisch importiert.

Folgender Programmcode kam dabei zum Einsatz.

class Program
    {
        static void Main(string[] args)
        {
            using (SPSite site = new SPSite("http://....."))
            {
                using (SPWeb web = site.OpenWeb())
                {
                    PublishingWeb pubWeb = PublishingWeb.GetPublishingWeb(web);
                    string pageFileName = "Test";

                    PageLayout[] pageLayouts = pubWeb.GetAvailablePageLayouts();
                    PageLayout currPageLayout =  pageLayouts[4];

                    PublishingPageCollection pages = pubWeb.GetPublishingPages();
                    PublishingPage currentPage = pages.Add(string.Concat(pageFileName,".aspx"),currPageLayout);

                    string htmlContent = GetFileContent();

                    currentPage.ListItem[FieldId.PublishingPageContent] = htmlContent;
                    currentPage.ListItem.Update();
                    currentPage.Update();
                    currentPage.CheckIn("Checked in by me");
                }
            }
        }

Die Ergebnisse des Tests zeigt die folgende Tabelle.

Sharepoint 2010 vs. 2007

Sharepoint 2010 vs. 2007

Positiv fällt auf, dass Sharepoint 2010 endlich die Anführungszeichen an Attributen unangetastet lässt. Die 2007 er Version löschte derartige Zeichen kompromisslos weg. Kommentare akzeptiert Sharepoint 2010 immer noch nicht als HTML Elemente – sie werden ebenfalls gelöscht. <li> Elemente dürfen keine Bilder als Listen Icons besitzen. Möchte man sein eigenes Icon zu einer Liste hinzufügen sollte auf eine externe CSS Klasse zurück gegriffen werden (Dies ist in jedem Falle zu empfehlen). Die Eigenschaften “inherit” sowie “none” hingegen werden unterstützt.

Script Tags werden völlig korrekt entfernt. Ebenso Iframe Elemente. Diese sind nicht erwünscht.

Weiterhin positiv aufgefallen ist, dass Elemente des Typs <input/> endlich korrekt geschlossen werden. Das Attribut “Name” wird leider gelöscht. Warum kann ich mir nicht erklären, es scheint aber so, als würden alle Attribute mit der Bezeichnung “name” gelöscht.

Als letzte Besonderheit fällt auf, dass Sharepoint nun konsequent alle absoluten Urls in relative überführt. In Sharepoint 2007 blieben absolute Urls unangetastet. Relative Urls, welche keinen Bezug zu dem aktuellen Sharepoint Server besitzen, wie etwa <a href=”../../beispiel.htm”>, werden weiterhin gelöscht.

Fazit: Es scheint als hätte sich das Sharepoint Entwicklungsteam einige Gedanken über XHTML & Co gemacht. So fallen die geschlossen Tags sowie die Anführungszeichen positiv auf. Einige Baustellen bleiben weiterhin offen.

Kommentar Feed Trackback URL
aru

Auch 2010 fand bereits ein Treffen der SharePoint Usergroup Dresden statt. Gastgeber war diesmal (28.01.) erstmalig die datafino GmbH. Trotz des winterlichen (Chaos-) Wetters hatten es viele Teilnehmer zum Waldschlösschen geschafft.

Nachdem sich alle gestärkt hatten und ein passender Raum gefunden war, eröffnete Martin Hey einen in meinen Augen gelungenen Abend.

Den Anfang machte Ronny Schattauer, der zunächst theoretisch und anschließend noch praktisch darstellte, wie Visio zur Datenmodellierung im SharePoint 2007 genutzt werden kann. Interessant dabei war, dass ein eigens geschriebenes Konvertierungs-Tool verwendet wurde, um aus ER-Modellen, welche im Visio erstellt und anschließend in XML umgewandelt wurden, Template-XML_Dateien für Content-Types und Listen zu erstellen. Das manuelle Erstellen solcher Dateien kann somit vermieden werden, was sich natürlich positiv auf Struktur und Übersichtlichkeit auswirkt.

Nach einer kurzen Pause leitete Dorrit Riemenschneider eine Diskussion zum Thema  „Enterprise 2.0 und SharePoint 2010“ ein. Hier wurden diverse Themen besprochen, allem voran natürlich Neuerungen/Verbesserungen, die SharePoint 2010 auf diesem Gebiet mitbringt. Darüber hinaus wurde aber auch der Umgang mit (noch) nicht Web 2.0 affinen Usern („Web 0.5 Nutzer“) und die Frage, wie man solchen Nutzern den Einstieg erleichtern könnte, diskutiert .

Als krönenden Abschluss gab es noch eine Eintrittskarte zu den SharePoint Days auf der BASTA! 2010 Spring zu gewinnen, über die sich André Röhrich freuen konnte.

Kommentar Feed Trackback URL
nächste Seite

Tag Cloud

Unsere Themen

Kommentare

  • SharePoint_Team: Rückblick zum Treffen der .NET Usergroup Dresden am 24.02.2010: im #Communardo #Techblog...
  • TorstenHu: Rückblick zum Treffen der .NET Usergroup Dresden am 24.02.2010: im #Communardo #Techblog...
  • SharePoint_Team: Neuer Blogpost zur #BastaCon im #Communardo #TechBlog: http://tinyurl.com/yjqyqpb This comment was...
  • SharePoint_Team: Nur noch etwa 1 Stunde, dann beginnt die .NET Usergroup… http://bit.ly/dxDoKg This comment was...
  • SharePoint_Team: RT @TorstenHu: ViS is waiting for an operation oder Warum Copy & Paste schlecht ist: #Communardo...

Twitter