Visa innehåll Web del frågeresultaten i ett rutnät / Tabell

Översikt och mål

Ur lådan, MOSS’ Webbdelen för innehållsfråga (CQWP) visar resultatet i ett listformat, liknar sökresultat. Det är också möjligt att visa resultaten i ett rutnätsformat (dvs. HTML-tabellformat). Rutnät format är bättre i vissa situationer. Jag beskriva hur man kan uppnå denna effekt i denna artikel.

Affärsscenario

Jag har arbetat med en klient på en företagsomfattande MOSS utbyggnaden. Vi har utformat sina taxonomi så att projekten är första klassens medborgare i hierarkin och har sina egna högsta nivån webbplats. Projektledare upprätthålla en singleton lista över projektsammanfattning, som titel, budget, förväntade slutförandedatum, återstående budget och andra sammanfattningstyp fält. Genom "singleton" Jag menar en anpassad SharePoint-lista garanteras att innehålla endast ett objekt. Något förenklat, Det ser ut så här:

bild

Den tekniska lösningen är ungefär samma som beskrivs Här (http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!447.entry). CQWP använder en XSL-transformeringen att släppa ut HTML-koden för webbläsaren att göra.

Jag alltid föreställa sig resultatet innan dykning i XSL eftersom XSL är en mardröm. Här är min önskat resultat:

bild

HTML som denna genererar resultatet:

<HTML>
 <organ>
 <Center>
 <tabell gränsen= 1>

<!-- Etiketter-->
 <TR bgcolor= blå>
 <TD><teckensnitt färg= vit><b>Projektets namn</b></teckensnitt></TD>
 <TD justera= höger><teckensnitt färg= vit><b>Komplett datum</b></teckensnitt></TD>
 <TD justera= höger><teckensnitt färg= vit><b>Budget</b></teckensnitt></TD>
 <TD justera= höger><teckensnitt färg= vit><b>Faktiska utgifter</b></teckensnitt></TD>
 <TD><teckensnitt färg= vit><b>Övergripande Status</b></teckensnitt></TD>
 </TR>

<TR>
 <TD>Re-tråd datasal.</TD>
 <TD justera= höger>02/01/08</TD>
 <TD justera= höger>22,500.00</TD>
 <TD justera= höger>19,000.00</TD>
 <TD>Pågående</TD>
 </TR>

<TR>
 <TD>Bestämmelse servrar för SQL-uppgradering</TD>
 <TD justera= höger>04/01/08</TD>
 <TD justera= höger>7,500.00</TD>
 <TD justera= höger>0.00</TD>
 <TD>Planerade</TD>
 </TR>

</tabell>
 </Center>
 </organ>
</HTML>

Tillvägagångssätt

Följ dessa steg för att skapa rutnätet:

  1. Identifiera delarna av nätet (rader/kolumner).
  2. Definiera och skapa nödvändiga webbplatskolumner.
  3. Skapa sub-webbplatser för projekt och singleton listor.
  4. Lägga till CQWP till en webbsida och konfigurera den för att söka efter dina listor.
  5. Ändra den CQWP XML att samla upp ytterligare kolumner.
  6. Ändra XSL för att generera en tabell.

Jag kommer att koncentrera sig på nummer sex. Nummer ett genom fyra är rättfram och något som alla CQWP användare har redan gjort. Nummer fem har varit väl dokumenterade av andra inklusive denna uttömmande skärm-shot lastade artikel från MSDN Här (http://msdn2.microsoft.com/en-us/library/bb897399.aspx) och Heather Solomons blogg Här (http://www.heathersolomon.com/blog/articles/CustomItemStyle.aspx).

Och muttrar

Påbörja och genomföra steg ett till fem per i MSDN-dokumentationen och Heather Solomons artikel.

Vid denna punkt, du har lagt till din CQWP till sidan och du har din <CommonViewFields> konfigurerad som krävs.

Efter de vanliga stegen, Jag får dessa mellanliggande resultat:

1. Skapa en innehållstyp, en mallbaserad anpassad lista för innehållstypen och två platser. Här är innehållstypen:

bild

Här är webbplatsstrukturen:

bild

2. Lägg till CQWP efter att skapa mitt projekt underwebbplatser och singleton projektet Sammanfattning listor:

bild

3. Lägg till alla de kompletteringar som jag vill via den <CommonViewFields>:

        <Egenskapen Namn="CommonViewFields" typ="sträng">Project_x0020_Name;Project_x0020_Expenses;Project_x0020_Status;Project_x0020_Start_x0020_Date;Project_x0020_End_x0020_Date;Project_x0020_Budget</Egenskapen>

Observera att jag var tvungen att hålla alla egenskapsfält på en linje eller det skulle inte fungera (CQWP skulle berätta för mig att frågan returnerade inga träffar).

4. Vid denna punkt, Vi är redo att gå bortom MSDN-artikeln och flip Heather Solomons artikel. Följ hennes steg börjar nära steg #5 skapa en anpassad / unghosted version av ItemStyle.xsl. Jag följa Heathers råd, upp genom steg 11 och få dessa mellanliggande resultat:

4.1: Namnge min XSL-mall som följer:

<XSL:mallens namn = "Grid" matcha = "rad[@Style = "Rutnät"]" läge = "itemstyle">

Jag ändra också något henne föreslog <XSL:för varje …> genom att lägga till en <br /> tag till ger en renare lista:

    <XSL:för varje Välj="@*">
      P:<XSL:värdet av Välj="Namn()" /><br/>
    </XSL:för varje>

4.2: Jag ändra webbdelen, gå till utseende och välja min "Grid" stil:

bild

Applicera ändringen och här är resultatet:

bild

Vi kan se av ovanstående att områdena som vi vill (Projektets namn, bekostnad, status, m.m.) finns tillgängliga för oss att använda när vi släpper ut HTML. Inte bara det, men vi ser namnen som vi måste referera till kolumner i XSL. Till exempel, Vi referera till projektets Status som "Project_x005F_x0020_Name".

Vid denna punkt, Vi avgår från Heathers blogg och dessa jättar axlar, Jag lägger min egen lite.

ContentQueryMain.xsl

ANMÄRKNING: När du gör ändringar i såväl ContentQueryMain.xsl som ItemStyle.xsl, du behöver kontrollera filerna igen innan du ser effekten av dina ändringar.

För grid-making, MOSS använder två olika XSL-filer för att producera resultat vi ser från en CQWP. Att generera den föregående stycke av produktionen, vi ändrade ItemStyle.xsl. MOSS faktiskt använder en annan XSL-fil, ContentQueryMain.xsl att i samband med ItemStyle.xsl att generera de HTML-. Som namnet antyder, ContentQueryMain.xsl är den "viktigaste" XSL som styr det totala flödet av översättning. Det gà ¥ r igenom alla Funna objekt och skickar dem en i taget till mallar i ItemStyle.xsl. Vi ska ändra ItemStyle.xsl för att generera öppen <tabell> tag innan du släpper ut den första raden med data och stängning <tabell> tag efter avger den sista raden. Åstadkomma detta, ContentQueryMain.xsl är modifierad för att skicka två parametrar till våra "grid" mallen i ItemStyle.xsl, "sista raden" och "aktuella raden". ItemStyle.xsl använder dessa villkorligt avge de nödvändiga taggarna.

Med Heather Solomons teknik, Vi hittar ContentQueryMain.xsl. Det är beläget på samma plats som ItemStyle.xsl. Denna skärmdump bör hjälpa:

bild

Vi måste göra följande ändringar:

  • Ändra en xsl-mall, "CallItemTemplate" som åberopar faktiskt vår rutnät mall i ItemStyle.xsl. Vi kommer att skicka två parametrar till mallen rutnät så att det får de uppgifter som den behöver för att generera villkorligt öppning och stängning <tabell> Märken.
  • Ändra en annan bit av ContentQueryMain.xsl som kallar den "CallItemTemplate" att passera en "LastRow" parametern så att LastRow kan överföras till vår rutnät mall.

Leta upp mallen heter "OuterTemplate.CallItemTemplate" identifieras av strängen:

  <XSL:mall Namn="OuterTemplate.CallItemTemplate">

Ersätta hela mallen som följer:

  <XSL:mall Namn="OuterTemplate.CallItemTemplate">
    <XSL:param Namn="CurPosition" />

    <!--
      Lägg till "-LastRow" parametern.
      Vi använder det bara när objekt stil passet i är "Rutnät".
    -->
    <XSL:param Namn="LastRow" />

    <XSL:Välj>
      <XSL:När Testa="@Style = "NewsRollUpItem"">
        <XSL:tillämpa-mallar Välj="." läge="itemstyle">
          <XSL:med-param Namn="EditMode" Välj="$cbq_iseditmode" />
        </XSL:tillämpa-mallar>
      </XSL:När>
      <XSL:När Testa="@Style = "NewsBigItem"">
        <XSL:tillämpa-mallar Välj="." läge="itemstyle">
          <XSL:med-param Namn="CurPos" Välj="$CurPosition" />
        </XSL:tillämpa-mallar>
      </XSL:När>
      <XSL:När Testa="@Style = "NewsCategoryItem"">
        <XSL:tillämpa-mallar Välj="." läge="itemstyle">
          <XSL:med-param Namn="CurPos" Välj="$CurPosition" />
        </XSL:tillämpa-mallar>
      </XSL:När>

      <!--
              Passera nuvarande position och lastrow till Grid itemstyle.xsl mallen.
              ItemStyle.xsl kommer att använda som att släppa ut öppen och stänga <tabell> Märken.
      -->
      <XSL:När Testa="@Style = "Rutnät"">
        <XSL:tillämpa-mallar Välj="." läge="itemstyle">
          <XSL:med-param Namn="CurPos" Välj="$CurPosition" />
          <XSL:med-param Namn="Senaste" Välj="$LastRow" />
        </XSL:tillämpa-mallar>
      </XSL:När>

      <XSL:Annars>
        <XSL:tillämpa-mallar Välj="." läge="itemstyle">
        </XSL:tillämpa-mallar>
      </XSL:Annars>
    </XSL:Välj>
  </XSL:mall>

Kommentarerna beskriva syftet med ändringarna.

Självklart, "OuterTemplate.CallItemTemplate" kallas sig från en annan mall. Leta upp mallen genom att söka efter denna textsträng:

<XSL:mall Namn="OuterTemplate.Body">

Bläddra igenom instruktionerna i OuterTemplate.Body och infoga parametern LastRow som följer (visas som en kommentar i kursiv stil):

<XSL:call-template Namn="OuterTemplate.CallItemTemplate">
  <XSL:med-param Namn="CurPosition" Välj="$CurPosition" />
  <!-- Infoga parametern LastRow. -->
  <XSL:med-param Namn="LastRow" Välj="$LastRow"/>
</XSL:call-template>

Efter allt detta, Vi har äntligen saker korrekt inställt så att våra ItemStyle.xsl kan avge <tabell> Taggar på rätt plats.

ItemStyle.Xsl

ANMÄRKNING: Igen, checka in ItemStyle.xsl efter att göra några ändringar så att du ser effekten av dessa förändringar.

Vi har två uppgifter här:

  • Ersätta hela rutnät mallen. Du kan klistra in underifrån.
  • Lägg till några rappakalja utanför mallens definition som gör "formatcurrency" mall att arbeta. (Du kan berätta att jag har ett svagt handtag på XSL).

Första, nära toppen av ItemStyle.xsl, Lägg till följande rad:

  <!-- Vissa rappakalja som gör det möjligt för oss att visa USA. valuta. -->
  <XSL:decimal-format Namn="personal" siffran="D" />

  <XSL:mall Namn="Standard" match="*" läge="itemstyle">

Obs att jag lagt det direkt innan de <XSL:mallens namn = "förvald" …> definition.

Nästa, gå tillbaka till vår rutnät mall. Ersätta hela rutnät mallen med koden nedan. Det är grundligt kommenterade, men tveka inte att maila mig eller lämna kommentarer på min blogg om du har frågor.

  <XSL:mall Namn="Rutnät" match="Rad[@Style = "Rutnät"]" läge="itemstyle">

    <!--
      ContentMain.xsl passerar CurPos och sista.
      Vi använder dessa villkorligt avge öppen och stänga <tabell> Märken.
    -->
    <XSL:param Namn="CurPos" />
    <XSL:param Namn="Senaste" />

    <!-- Följande variabler är oförändrad från den standard ItemStyle.xsl -->
    <XSL:variabel Namn="SafeImageUrl">
      <XSL:call-template Namn="OuterTemplate.GetSafeStaticUrl">
        <XSL:med-param Namn="UrlColumnName" Välj=""ImageUrl""/>
      </XSL:call-template>
    </XSL:variabel>
    <XSL:variabel Namn="SafeLinkUrl">
      <XSL:call-template Namn="OuterTemplate.GetSafeLink">
        <XSL:med-param Namn="UrlColumnName" Välj=""LinkUrl""/>
      </XSL:call-template>
    </XSL:variabel>
    <XSL:variabel Namn="DisplayTitle">
      <XSL:call-template Namn="OuterTemplate.GetTitle">
        <XSL:med-param Namn="Avdelning" Välj="@Title"/>
        <XSL:med-param Namn="UrlColumnName" Välj=""LinkUrl""/>
      </XSL:call-template>
    </XSL:variabel>
    <XSL:variabel Namn="LinkTarget">
      <XSL:om Testa="@OpenInNewWindow = "True"" >_blank</XSL:om>
    </XSL:variabel>

    <!--
      Här definierar vi en variabel, "tableStart".  Detta innehåller den HTML som vi använder för att definiera öppnandet av tabellen som kolumnetiketterna.  Observera att om CurPos = 1, den innehåller HTML i en CDATA-tagg.
      Annars, Det är tomt.

      Värdet på tableStart är emited varje gång ItemStyle kallas via ContentQueryMain.xsl.
    -->
    <XSL:variabel Namn="tableStart">
      <XSL:om Testa="$CurPos = 1">
        <![CDATA[
        <tabellkantlinjen = 1>
          <TR bgcolor = "blå">
            <TD><font color = "vit"><b>Projektets namn</b></teckensnitt></TD>
            <TD align = "rätt"><font color = "vit"><b>Komplett datum</b></teckensnitt></TD>
            <TD align = "rätt"><font color = "vit"><b>Budget</b></teckensnitt></TD>
            <TD align = "rätt"><font color = "vit"><b>Faktiska utgifter</b></teckensnitt></TD>
            <TD><font color = "vit"><b>Övergripande Status</b></teckensnitt></TD>
          </TR>
        ]]>
      </XSL:om>
    </XSL:variabel>

    <!--
      En annan variabel, tableEnd helt enkelt definierar avslutandet tabell tag.

      Som med tableStart, Det är alltid emited.  Detta är anledningen till dess vไrde tilldelas villkorligt baserat på huruvida vi har antagits den sista raden av ContentQueryMain.xsl.
    -->
    <XSL:variabel Namn="tableEnd">
      <XSL:om Testa="$CurPos = $Last">
        <![CDATA[ </tabell> ]]>
      </XSL:om>
    </XSL:variabel>

    <!--
      Släpper alltid ut innehållet i tableStart.  Om detta inte är den första raden som skickas till oss av ContentQueryMain.xsl, då vi vet sitt värde att vara tom.

      Avaktivera utgång fly eftersom när tableStart det inte tomma, den innehåller faktiska HTML som vi vill ska återges i webbläsaren.  Om vi inte berättar utgång XSL-tolken att avaktivera fly, Det kommer att generera sånt"&LT;tabell&gt;" i stället för"<tabell>".
    -->
    <XSL:värdet av Välj="$tableStart" Inaktivera-utdata-fly="Ja"/>


    <TR>
      <!--
      P:Project_x005F_x0020_Name P:Project_x005F_x0020_End_x005F_x0020_Date P:Project_x005F_x0020_Budget P:Project_x005F_x0020_Expenses P:Project_x005F_x0020_Status
      -->
      <TD>
        <XSL:värdet av Välj="@Project_x005F_x0020_Name"/>
      </TD>

      <TD justera="rätt">
        <XSL:värdet av Välj="@Project_x005F_x0020_End_x005F_x0020_Date"/>
      </TD>

      <TD justera="rätt">
        <XSL:call-template Namn="FormatCurrency">
          <XSL:med-param Namn="värde" 
Välj="@Project_x005F_x0020_Budget"></XSL:med-param> </XSL:call-template> </TD> <TD justera="rätt"> <XSL:call-template Namn="FormatCurrency"> <XSL:med-param Namn="värde" Välj="@Project_x005F_x0020_Expenses">
</XSL:med-param> </XSL:call-template> </TD> <TD> <XSL:värdet av Välj="@Project_x005F_x0020_Status"/> </TD> <!-- Följande är bortkommenterad förklara saker. Men, föra den tillbaka och sånt det in i en <TD> att se dess effekt. --> <!-- <DIV id = "linkitem" Class = "element"> <XSL:om testa = "stränglängd($SafeImageUrl) != 0"> <div class = "image-området-left"> <ett href = "{$SafeLinkUrl}" Target = "{$LinkTarget}"> <IMG class = "image-fast bredd" src = "{$SafeImageUrl}"
Alt = "{@ImageUrlAltText}"/> </en> </div> </XSL:om> <div class = "länk-objekt"> <XSL:call-template
Name="OuterTemplate.CallPresenceStatusIconTemplate"/> <ett href = "{$SafeLinkUrl}"
Target = "{$LinkTarget}" title = "{@LinkToolTip}"> <XSL:värde-välja = "$DisXSLyTitle" /> </en> <div class = "Beskrivning"> <XSL:värdet av select="@Description" /> </div> </div> </div>
--> </TR> <!-- Avger avslutandet tabell tag. Om vi inte på den sista raden, Detta kommer att vara tom. --> <XSL:värdet av Välj="$tableEnd" Inaktivera-utdata-fly="Ja"/> </XSL:mall> <XSL:mall Namn="FormatCurrency"> <XSL:param Namn="värde" Välj="0" /> <XSL:värdet av Välj='format-nummer($värde, "$DDD,DDD,DDD.DD", "personal")' /> </XSL:mall>

22 tankar på "Visa innehåll Web del frågeresultaten i ett rutnät / Tabell

  1. Andreas

    Aah… Det var eftersom jag heter min lista stil annorlunda och inte inser att i ContentQueryMain.xsl söker efter "style":

    <XSL:När test="@Style='NameOfMyStyle" ">

    Med bytt namn på arbetat den. 🙂

    Svar
  2. Andreas

    Det fungerade nästan för mig: Jag lyckas utgång den </tabell> avsluta taggen korrekt, Men start taggen saknas. Det verkar testet = "$CurPos = 1" inte returnerar sant. Men varför?

    Svar
  3. Anand singh Rawat

    Stor Post. Paul har jag gjort ovan allt. Jag har en fråga, Hur kan jag uppnå summan av "totala faktiska kostnader" eller summan av värdet av två kolumner.

    Svar
  4. Lisa

    Har du gjort något arbete med att skapa anpassade ContentQueryMain och ItemStyle XSL-filer? Anledningen till att jag frågar är att jag inte vill oroa min egna formatmallar skrivs över med fläckar eller uppgraderingar. Har du exempel? Jag har försökt att göra en identisk kopia av ContentQueryMain.xsl och lägga upp nya anpassade kopian på formatbiblioteket. När sätta en hänvisning till denna XSL-fil i den WebPart MainXslLink egendom, Jag får 401 inte auktoriserad. Anpassade xsl-filen är en utgiven version och alla har läsåtkomst till den.

    Svar
  5. Greg Sheridan

    Hej, Detta var ett riktigt bra inlägg. Jag har det alla arbetar, och även genomfört Mike Browns förändring så grupperas
    resultaten i tabellen av vad jag väljer som den grupp av parametern i den CQWB egenskaper.
    Jag gjorde titeln en länk också, så det fungerar fint. Jag har fortfarande ett problem, men. Jag gruppera resultaten av webbplatsens namn. Inuti tabellen, det grupperar dem fint, och det verkar bra, men det är fortfarande utskrift ut alla i gruppen
    Namn(i mitt fall platsnamn) ovanför tabellen. Någon som vet hur man bli av med dessa?
    Tack,
    Greg

    Svar
  6. Inget namn

    Trevlig artikel. Jag lyckades ge mitt bord utseendet av standard Sharepoint-listor genom att analysera källkoden för listan. Här är de huvudsakliga HTML-block som behövs för att passa i ItemStyle:

    <TABELLENS bredd = 100%" Class = "ms-listviewtable" border = 0 cellspacing = 0 cellpadding = 1 dir = "Ingen">

    <!–SIDHUVUD–>
    <TR klass = "ms-viewheadertr" NEDERKANT = TOPP>
    <TH nowrap räckvidd = "col" Class = "ms-vh2"><div style = "width:100%;position:relativa;vänster:0;Top:0;">
    <TABELL style = "width:100%;" CtxNum = "1" höjd = 100%" CellSpacing = 1 cellpadding = 0 klass = "ms-unselectedtitle">
    <TR>
    <TD bredd = 100%" Class = "ms-vb" nowrap>
    TEXTE du titer ici

    </TD>
    <TD stil = "position:absolut;">
    </TD>
    </TR>
    </TABELL></div>
    </TH>

    <!–Upprepa för alla celler–>
    </TR>

    <!– Tabelldata –>
    <TR klass = "">
    <!–Datakolumn, använda Pauls kod för det första en med hyperlänken –>
    <TD klass = "ms-vb2">Data här</TD>

    <!–Tom kolumn–>
    <TD klass = "ms-vb2">
    <span dir = ingen></Spänn><
    /TD>

    <!–Kolumnen–>
    <TD klass = "ms-vb2">
    <NOBR>11/12/2008</NOBR>
    </TD>
    </TR>

    <!–***Alternativa rad – Använda en ny XSL-variabel som infogar klassen alternativ baserat på den aktuella raden modulo 2–>
    <TR klass = "ms-växla">

    </TR>
    </TABELL>

    Svar
  7. Mike Brown
    Zoltan,
    Jag arbetade på samma fråga som du. Jag ville ha alla mina objekt visas i en grupperad sätt snarare än bara en lits. Här är hur jag uppnått det.
    ContentQueryMain.xsl
    <XSL:När test="@Style='Grid" ">
    <XSL:tillämpa-mallar välj = "." läge = "itemstyle">
    <XSL:med-param namn = "CurPos" Välj = "$CurPosition" />
    <XSL:med-param namn = "senaste" Välj = "$LastRow" />
    <!–Lägg till detta nya avsnitt att passera i parametern som indikerar en ny grupp har börjat–>
    <XSL:med-param namn = "StartNewGroup" Select="@__begingroup" />
    </XSL:tillämpa-mallar>
    </XSL:När>
    ItemStyle.xsl
    Lägg till parametern
    <XSL:param namn = "StartNewGroup" />
    Lägg till denna text som den första raden med data
    <XSL:Välj>
    <XSL:När testa = "$StartNewGroup ="True"">
    <TR>
    <TD >
    <XSL:call-template name="OuterTemplate.GetGroupName">
    <XSL:med-param namn = "gruppnamn" Select="@*[Namn()= $Group]"/>
    <XSL:med-param namn = "GroupType" Välj = "$GroupType" />
    </XSL:call-template>
    </TD>
    </TR>
    </XSL:När>
    <XSL:Annars>
    </XSL:Annars>
    </XSL:Välj>
    Detta bör ta hand om din gruppering fråga i din rutnät. Varje grupp nu börjar med en ny rad som anger namnet på. I min lösning lagt jag faktiskt en tom <TD /> i data indrag det också så stod grupperingen ut mycket bättre.
    Plats1
    datacolumn1 datacolumn2 datacolumn3 etc

    datacolumn1 datacolumn2 datacolumn3 etc
    Plats2
    datacolumn1 datacolumn2 datacolumn3 etc
    Webbplats3

    datacolumn1 datacolumn2 datacolumn3 etc

    datacolumn1 datacolumn2 datacolumn3 etc
    m.m..
    Svar
  8. Zoltan
    Hej Paul,
    Tack för inlägget, Jag lyckades organisera min frågeresultaten i ett rutnät, som är till stor hjälp. Men, Jag ska gå längre och min Gruppresultat baserat på webbplatser. Just nu, platsnamn som listas först, och sedan det är bara ett stort rutnät samla alla rader från olika platser. Ungefär så här:
    Plats1 namn
    Plats2 namn
    Data i rutnätet för alla platser
    Några idéer om vad jag ska ändra för att få mina uppgifter som följer:
    Plats1 namn
    Data i rutnätet för Plats1
    Plats2 namn
    Data i rutnätet för Plats2
    Tack på förhand,
    Zoltan
    Svar
  9. Pierre Joubert
    Fantastiskt inlägg, löste mitt problem som jag hade.
    Min enda fråga visar fältet tilldelat, Jag konfigurera den med "användare" fälttyp och importerade webbdelen visar sedan följande fel:
    "Det var ett fel vid hämtning av data som ska visas i webbdelen."
    Jag har försökt med alla möjliga fälttyper, med något annat som "-användaren" Det visar inte felet, men det visar inte något i fältet. Så jag antar är fältet Användartyp korrekt, så jag måste saknas en inställning någonstans.
    Några idéer om detta?
    Hälsningar
    Pierre
    Svar
  10. Charftong
    Stor Post!!! Mycket hjälpsam.
    Snabb fråga, har du gjort något arbete på visar fälten tilldelat eller ModifiedBy med närvaro? Av någon anledning, När jag försöker doppa fältet tilldelad i CQWP, det visas alltid med som ett exempel "203;#Charf Tong". Jag kan inte hitta en väg runt detta.
    Svar
  11. Jennifer Davis
    Paul
    Bra artikel, Tack. Jag gör något liknande men vill visa en länk till projektwebbplatsen i stället för objektet i listan. Till exempel, Vi har 25 översta nivå project-webbplatser och var och en innehåller en lista med innehållstyper. Detta är projektets namn, Division, Beskrivning. Jag vill använda webbdelen Innehållsfråga att dra denna data och har lyckats förutom att som standard URL tar mig till artikeltransaktionen i listan och jag verkligen behov den att ta mig till projektets webbplats. Du kan ge mig några råd?
    Tack
    Jen
    Svar
  12. Paul Galvin
    Kieren,
    Jag använda alltid visual studio för att redigera XSL. Det ger färgkodning och den har också några bra intellisense stöd.
    –Paul
    Svar
  13. Kieran skrev:

    Hej Paul,

    När du arbetar med webbdelen XML-/ xsl och innehåll fråga, har du hittat något bra sätt att formatera din xslt? Försöker göra ändringar och testa designen visar sig vara en rätt smärta i den en ** bara med hjälp av en textredigerare…

    Ha det så bra

    Svar
  14. Michael Dipay
    När det gäller frågan hade jag förra gången där det visas inte bilder från diagramvyn men istället visar texten (https://myweb.com/Marketing/images/icn-order.gif,). Jag lyckades lösa det med hjälp av SharePoint Designer genom att skapa anpassade vyn och välja de anpassade kolumner som jag vill visa. Jag fick reda på att kolumntyp bilder visas som URL(kommatecken) (t.ex. https://myweb.com/Marketing/images/icn-order.gif,). Det aktuella formatet är Text, så jag måste ändra det till bild från gemensamma xsl:värde-av uppgifter-> Format som bild. Detta Ändra displayen till de egna bilder som jag ville Visa. Jag kopierade koden för att visa bilden ( <IMG gränsen ="0" src = "{delsträng-innan(@IcnOrder, ‘, ‘)}" /> ) Och jag måste ändra den är @PICTURECOLUMNNAME till koden i filen ItemStyle.xsl <IMG gränsen ="0" src = "{delsträng-innan(@IcnOrder, ‘, ‘)}" /> . Spara den. Nu skriver min tabell rutnät resultat att visa texten som den anpassade avbildningen kolumner.
    Svar
  15. Helen
    Hej Paul,
    Tack för bra artikel!
    Du nämnde villkorsstyrd formatering – "Du kan också sätta i villkorsstyrd formatering, till exempel Visa projekt som har överskridit sin budget i rött." Du vill råkar ha ett kodexempel för det?
    Tack igen!
    Helen
    Svar
  16. Michael Dipay
    Hej Paul,
    Det var en bra artikel och var kunna generera samma resultat som förväntat. Jag har ett krav på att visa en bild i rutnätet som en av sina spalter. Det är inte att visa bilden på nätet men istället visar URL: en till bilden med en (,) semikolon i slutet.
    (t.ex. https://myweb.com/Marketing/images/icn-order.gif, )
    Bör jag använda bild i CommonViewFields fälttyp? (t.ex. InternalColumnName, Bild)
    Tack,
    Mike
    Svar
  17. Olle Ijiyemi

    Ditt inlägg är precis vad jag letade. Men, Jag kan inte få det att fungera.

    Jag har dokument som lagras i olika doc. bibliotek men klassificeras med hjälp av en anpassad klass kolumn (Val: 1 eller 2. Jag vill använda CQWP för att visa dessa dokument som baseras på deras klass.
    Jag kunde lägga till CQWP, exportera den till SPD, Konfigurera itemStyle.xls för att visa anpassade fält i en lista. men, Jag kunde inte framgångsrikt genomföra det du beskriver här.

    Dessa är de kolumner som jag vill visa med min CQWP:

    Filtyp (Visa ikonen)
    Filnamn
    Senaste ändringsdatumet
    Ändrat av som
    Utcheckad till
    Kollade i kommentarer

    Jag har för närvarande resultatet i ett listformat. Hur ändrar jag det till ett talble format.

    Tack.

    Saji

    Svar

Lämna svar

Din e-postadress kommer inte att publiceras. behövliga fält är markerade *