ItemStyle.xsl, CommonViewFields und die Lookup Column

October 23rd, 2008

Lektion gelernt! Ich habe bei einem Kunden gestern der “Infrastructure Update” (IU) und die “Cumulative Updates August 2008” (CU) installiert. Auf der Startseite des Unternehmensintranet werden Nachrichten aus allen Bereichen abgebildet. imageZur optischen Auffrischung und zur Kategorisierung wird ein Bild für das zugehörige Unternehmen (Unternehmens- oder Markenlogo) abgebildet. Der verwendete ContentType hat ein Feld “Unternehmen” vom Typ “Lookup”. uIm Content Query WebPart (CQWP) lese ich dann die ID des Lookup aus und nutze diese, um auf ein Bild als Source zu verweisen. Für solche Aktionen muss ja wie bei Heather Solomon beschrieben der WebPart mit den entsprechenden CommonViewFields “bestückt” werde.

Nach der Installation der IU und CU habe ich die Startseite geprüft und festgestellt, das die Bilder nicht mehr funktionieren. Hier mein Eintrag aus dem Webpart:

   1: <property name="CommonViewFields" type="string">Unternehmen,Lookup;</property> 

In der ItemStyle.xsl greife ich dann für die Source über folgenden Variablendefinition zu:

   1: <xsl:variable name="UnternehmenId"> 
   2:   <xsl:value-of select="@Unternehmen" /> 
   3: </xsl:variable> 

Ergebnis vor der Installation war die ID des Lookupvalues. Ich musste etwas googlen und habe dann folgendes Versucht. Ich habe in den CommonViewField einfach den Typ weggelassen:

   1: <property name="CommonViewFields" type="string">Unternehmen;</property>

Als Ergebnis habe ich dann ID und Inhalt des Feldes bekommen (Format bei SharePoint ist: ID;#TITELCOLUMNVALUE). Ich habe mein XSL also umgebaut und siehe da es funktioniert. Hier der Code:

   1: <xsl:variable name="UnternehmenId"> 
   2:   <xsl:value-of select="substring-before(@Unternehmen, ';')" /> 
   3: </xsl:variable>

Wenn man drüber nachdenkt ist das total logisch :-) Mit Typ in den CommonViewFields löst er mir den Inhalt gleich darstellungsfertig auf. Ohne den Typ bekomme ich das was wirklich gespeichert wurde.

Ciao Marco

Categories: SharePoint

Tags: Leave a comment

Comments Feed1 Comment

  1. Tom

    Hallo Marco
    Auf der Suche nach sharepoint-Kopfschmerztabletten  bin ich auf deinen Blog gestossen.
    Sehr guter Inhalt!
    Kleine Frage, hasst du Erfahrung mit Spamschutz für ein Kontaktformular mit SharePoint (aussert recaptcha.com), welches relativ leicht zu integrieren wäre?

Feed

http://marcoscheel.de / ItemStyle.xsl, CommonViewFields und die Lookup Column