Показване на съдържание Web част резултатите от заявката в мрежа / Таблица

Преглед и цел

На кутията, МОС’ Заявка за съдържание уеб част (CQWP) показва резултатите от нея в списък формат, подобни на резултатите от търсенето. Също така е възможно да покажете резултатите в мрежа формат (т.е.. HTML таблица формат). Формати на мрежата са по-добре в някои обстоятелства. Ще опиша как да се постигне този ефект в тази статия.

Бизнес сценарий

Работил съм с клиент на предприятие широк Мос внедряването. Ние сме проектирали им класификация, така че проектите са първа класа граждани в йерархията и имат свои собствени връх на ниво сайт. Ръководители на проекти поддържа Сингълтън списък с обобщена информация за проекта, например заглавие, бюджет, Очаквана дата на завършване, оставащият бюджет и други сумарен тип полета. От "Сингълтън" Искам да кажа на потребителски SharePoint списък гарантирано да съдържа само един елемент. Опростенчески, Тя изглежда така:

Изображение

Техническия подход е почти същия, както е описано Тук (http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!447.entry). CQWP използва XSL трансформация, за да излъчват HTML за браузър, за да направи.

Аз винаги си представим резултата преди да се гмурне в XSL защото XSL е кошмар. Ето моите желания резултат:

Изображение

HTML като това генерира този резултат:

<HTML>
 <тяло>
 <център>
 <таблица граница= 1>

<!-- Етикети-->
 <TR BGColor= синьо>
 <TD><шрифт цвят= бяло><б>Име на проекта</б></шрифт></TD>
 <TD Подравняване= надясно><шрифт цвят= бяло><б>Попълнете датата</б></шрифт></TD>
 <TD Подравняване= надясно><шрифт цвят= бяло><б>Бюджет</б></шрифт></TD>
 <TD Подравняване= надясно><шрифт цвят= бяло><б>Действителни разходи</б></шрифт></TD>
 <TD><шрифт цвят= бяло><б>Цялостното състояние</б></шрифт></TD>
 </TR>

<TR>
 <TD>Ре-тел компютърна зала.</TD>
 <TD Подравняване= надясно>02/01/08</TD>
 <TD Подравняване= надясно>22,500.00</TD>
 <TD Подравняване= надясно>19,000.00</TD>
 <TD>В ход</TD>
 </TR>

<TR>
 <TD>Разпоредба сървъри за надграждане на SQL</TD>
 <TD Подравняване= надясно>04/01/08</TD>
 <TD Подравняване= надясно>7,500.00</TD>
 <TD Подравняване= надясно>0.00</TD>
 <TD>Планирани</TD>
 </TR>

</таблица>
 </център>
 </тяло>
</HTML>

Подход

Изпълнете следните стъпки за създаване на мрежа:

  1. Идентифициране на компонентите на мрежата (редове/колони).
  2. Определяне и създаване на необходимите сайт колони.
  3. Създаване на подсайтове за проектите и лъжливо списъци.
  4. Добави CQWP към web страница и да го конфигурирате за търсене за вашите списъци.
  5. Модифициране на CQWP XML, за да събират допълнителни колони.
  6. Промяна на XSL за генериране на таблица.

Аз отивам да се концентрира върху номер шест. Числата едно чрез четири са прав-напред и нещо, което вече е направено от всеки потребител, CQWP. Номер пет е била добре документирани от други включително този изчерпателен екрана изстрел натоварено статия от MSDN Тук (http://msdn2.microsoft.com/en-us/library/bb897399.aspx) и блога на Хедър Соломон Тук (http://www.heathersolomon.com/blog/articles/CustomItemStyle.aspx).

Гайки и болтове

Започват и изпълнение на стъпките от едно до пет според документацията на MSDN и Хедър Соломон статия.

В този момент, Вие сте добавили вашия CQWP на страницата и имате си <CommonViewFields> конфигуриран при необходимост.

След обичайните стъпки, Получавам тези междинни резултати:

1. Създаване на тип съдържание, шаблонирана потребителски списък за този тип съдържание и два сайтове. Тук е типа на съдържанието:

Изображение

Ето структурата на сайта:

Изображение

2. Добавете CQWP след създаването си проект подсайтове и лъжливо проект обобщени списъци:

Изображение

3. Добавяне на цялата допълнителна информация, искам чрез <CommonViewFields>:

        <имоти Име="CommonViewFields" тип="низ">Project_x0020_Name;Project_x0020_Expenses;Project_x0020_Status;Project_x0020_Start_x0020_Date;Project_x0020_End_x0020_Date;Project_x0020_Budget</имоти>

Имайте предвид, че трябва да запазите всички полета за свойства на един ред, или няма да работи (CQWP ще ми каже, че заявката не върна елементи).

4. В този момент, Ние сме готови да преминете отвъд статията на MSDN and флип на Хедър Соломон статия. Следвайте си стъпки, започва близо до стъпка #5 за да създадете персонализиран / unghosted версия на ItemStyle.xsl. Аз следват Хедър съвети, нагоре през стъпка 11 и да получите тези междинни резултати:

4.1: Името ми XSL шаблон както следва:

<XSL:име на шаблон = "мрежа" съвпадение = "ред[@Style = "Мрежа"]" режим = "itemstyle">

Аз също така леко я предложи промяна <XSL:за всеки …> чрез добавяне на <BR /> етикет да предостави чист списък:

    <XSL:за всеки Изберете="@*">
      P:<XSL:стойността на Изберете="Име()" /><br/>
    </XSL:за всеки>

4.2: Модифициране на уеб част, отидете на външния вид и изберете моя "мрежа" стил:

Изображение

Прилагане на промените и тук е резултат:

Изображение

Можем да видим от по-горе, че полетата искаме (Име на проекта, разходи, статус, н) са достъпни за нас да използва, когато ние излъчваме HTML. Не само, че, но ние виждаме имената, с които ние трябва да препращат тези колони в XSL. За пример, Ние позоваване статус на проекта като "Project_x005F_x0020_Name".

В този момент, тръгва се от блога на Хедър и от раменете на тези гиганти, Аз добавя моя собствена малко.

ContentQueryMain.xsl

ЗАБЕЛЕЖКА: Когато правите промени в ContentQueryMain.xsl, както и ItemStyle.xsl, Вие трябва да проверите тези файлове обратно в преди да видите ефекта от промените.

За целите на правене на мрежа, Мос използва две различни XSL файлове, за да доведе до резултати, виждаме от CQWP. За генериране на предишния малко на продукцията, Ние промяна ItemStyle.xsl. Мос действително използва друг XSL файл, ContentQueryMain.xsl да във връзка с ItemStyle.xsl да генерирате си HTML. Както предполага неговото име, ContentQueryMain.xsl е главният"" XSL, който контролира общия поток на превод. Тя повтаря през всички елементи, намерени и ги преминава един по един да шаблони в ItemStyle.xsl. Ние ще променят ItemStyle.xsl за генериране на открито <таблица> етикет преди излъчване на първия ред от данни и затваряне <таблица> етикет след излъчване на последния ред. За да постигнем това, ContentQueryMain.xsl е променен, за да премине два параметъра на нашата "мрежа" шаблон в ItemStyle.xsl, "последния ред" и "текущ ред". ItemStyle.xsl използва тези условно излъчват необходимите Тагове.

С помощта на Хедър Соломон техника, Ние поставяме ContentQueryMain.xsl. Той се намира на същото място като ItemStyle.xsl. Този екран изстрел трябва да помогне:

Изображение

Ние трябва да направите следните промени:

  • Модифициране на шаблон на xsl, "CallItemTemplate" Това всъщност се позовава ни мрежа шаблон в ItemStyle.xsl. Ние ще преминават два параметъра на шаблона на мрежата, така че той ще има данни, необходими за условно генериране на отваряне и затваряне <таблица> Тагове.
  • Промените още малко на ContentQueryMain.xsl, която призовава "CallItemTemplate" да го предаде "LastRow" параметър, така че LastRow може да бъдат прехвърлени към нашите мрежата шаблон.

Намерете шаблона на име "OuterTemplate.CallItemTemplate" идентифицирани от низ:

  <XSL:шаблон Име="OuterTemplate.CallItemTemplate">

Замени целия шаблон както следва:

  <XSL:шаблон Име="OuterTemplate.CallItemTemplate">
    <XSL:param Име="CurPosition" />

    <!--
      Добави "LastRow" параметър.
      Ние само го използвам, когато елемент стил проход в е "Мрежа".
    -->
    <XSL:param Име="LastRow" />

    <XSL:Изберете>
      <XSL:Когато тест="@Style = "NewsRollUpItem"">
        <XSL:приложи-шаблони Изберете="." режим="itemstyle">
          <XSL:с Албена Име="EditMode" Изберете="$cbq_iseditmode" />
        </XSL:приложи-шаблони>
      </XSL:Когато>
      <XSL:Когато тест="@Style = "NewsBigItem"">
        <XSL:приложи-шаблони Изберете="." режим="itemstyle">
          <XSL:с Албена Име="CurPos" Изберете="$CurPosition" />
        </XSL:приложи-шаблони>
      </XSL:Когато>
      <XSL:Когато тест="@Style = "NewsCategoryItem"">
        <XSL:приложи-шаблони Изберете="." режим="itemstyle">
          <XSL:с Албена Име="CurPos" Изберете="$CurPosition" />
        </XSL:приложи-шаблони>
      </XSL:Когато>

      <!--
              Проход текущата позиция и lastrow в мрежата itemstyle.xsl шаблон.
              ItemStyle.xsl ще я използва, да излъчват отваряне и затваряне <таблица> Тагове.
      -->
      <XSL:Когато тест="@Style = "Мрежа"">
        <XSL:приложи-шаблони Изберете="." режим="itemstyle">
          <XSL:с Албена Име="CurPos" Изберете="$CurPosition" />
          <XSL:с Албена Име="Последно" Изберете="$LastRow" />
        </XSL:приложи-шаблони>
      </XSL:Когато>

      <XSL:в противен случай>
        <XSL:приложи-шаблони Изберете="." режим="itemstyle">
        </XSL:приложи-шаблони>
      </XSL:в противен случай>
    </XSL:Изберете>
  </XSL:шаблон>

Коментарите описват целта на промените.

Разбира се, "OuterTemplate.CallItemTemplate" е самата нарича от друг шаблон. Намерете този шаблон чрез търсене на този текстов низ:

<XSL:шаблон Име="OuterTemplate.Body">

Превъртете през инструкциите в OuterTemplate.Body и вмъкнете параметъра LastRow както следва (показани като коментар в курсив):

<XSL:повикване-шаблон Име="OuterTemplate.CallItemTemplate">
  <XSL:с Албена Име="CurPosition" Изберете="$CurPosition" />
  <!-- Вмъкнете параметъра LastRow. -->
  <XSL:с Албена Име="LastRow" Изберете="$LastRow"/>
</XSL:повикване-шаблон>

След всичко това, най-накрая имаме неща настроен правилно, така че да могат да излъчват нашите ItemStyle.xsl <таблица> Етикети на точното място.

ItemStyle.Xsl

ЗАБЕЛЕЖКА: Отново, Проверете в ItemStyle.xsl след като всички промени, така че да виждате ефекта от тези промени.

Тук имаме две задачи:

  • Замени цялата мрежа шаблон. Можете да копирате/паста от долу.
  • Добави някои mumbo джъмбо извън дефиницията на шаблон, който позволява "formatcurrency" шаблон за работа. (Можете да кажете, че имам слаба дръжка на XSL).

Първо, близо до горната част на ItemStyle.xsl, Добави този ред:

  <!-- Някои mumbo джъмбо, който ни позволява да покажете САЩ. валута. -->
  <XSL:десетичен формат Име="персонал" цифра="D" />

  <XSL:шаблон Име="По подразбиране" мач="*" режим="itemstyle">

Имайте предвид, че аз го добавя непосредствено преди <XSL:име на шаблон = "по подразбиране" …> дефиниция.

Следващ, върнете се към нашия мрежа шаблон. Замените шаблона на цялата мрежа с кода по-долу. Тя е добре коментира, но не се колебайте да пишете ми или оставите коментар в моя блог, ако имате въпроси.

  <XSL:шаблон Име="Мрежа" мач="Ред[@Style = "Мрежа"]" режим="itemstyle">

    <!--
      ContentMain.xsl минава CurPos и последно.
      Използваме условно излъчват отваряне и затваряне <таблица> Тагове.
    -->
    <XSL:param Име="CurPos" />
    <XSL:param Име="Последно" />

    <!-- Следващите променливи са непроменени от стандартните ItemStyle.xsl -->
    <XSL:променлива Име="SafeImageUrl">
      <XSL:повикване-шаблон Име="OuterTemplate.GetSafeStaticUrl">
        <XSL:с Албена Име="UrlColumnName" Изберете=""ImageUrl""/>
      </XSL:повикване-шаблон>
    </XSL:променлива>
    <XSL:променлива Име="SafeLinkUrl">
      <XSL:повикване-шаблон Име="OuterTemplate.GetSafeLink">
        <XSL:с Албена Име="UrlColumnName" Изберете=""LinkUrl""/>
      </XSL:повикване-шаблон>
    </XSL:променлива>
    <XSL:променлива Име="DisplayTitle">
      <XSL:повикване-шаблон Име="OuterTemplate.GetTitle">
        <XSL:с Албена Име="Заглавие" Изберете="@Title"/>
        <XSL:с Албена Име="UrlColumnName" Изберете=""LinkUrl""/>
      </XSL:повикване-шаблон>
    </XSL:променлива>
    <XSL:променлива Име="LinkTarget">
      <XSL:Ако тест="@OpenInNewWindow = "True"" >_blank</XSL:Ако>
    </XSL:променлива>

    <!--
      Тук ние определяме променлива, "tableStart".  Това съдържа HTML, които използваме за определяне на откриването на таблицата, както и етикетите на колоните.  Обърнете внимание, че ако CurPos = 1, Тя включва HTML в CDATA етикет.
      В противен случай, Той ще бъде празен.

      Стойността на tableStart е отделяния, всеки път, когато ItemStyle се нарича чрез ContentQueryMain.xsl.
    -->
    <XSL:променлива Име="tableStart">
      <XSL:Ако тест="$CurPos = 1">
        <![НЕЗАТВОРЕН[
        <граница на таблица = 1>
          <TR bgcolor = "синя">
            <TD><цвят на шрифта = "бяло"><б>Име на проекта</б></шрифт></TD>
            <Подравняване на TD = "право"><цвят на шрифта = "бяло"><б>Попълнете датата</б></шрифт></TD>
            <Подравняване на TD = "право"><цвят на шрифта = "бяло"><б>Бюджет</б></шрифт></TD>
            <Подравняване на TD = "право"><цвят на шрифта = "бяло"><б>Действителни разходи</б></шрифт></TD>
            <TD><цвят на шрифта = "бяло"><б>Цялостното състояние</б></шрифт></TD>
          </TR>
        ]]>
      </XSL:Ако>
    </XSL:променлива>

    <!--
      Друга променлива, tableEnd просто определя крайната маса етикет.

      Както и при tableStart, Тя винаги е отделяния.  Ето защо неговата стойност се присвоява условно въз основа на това дали сме били преминали последния ред от ContentQueryMain.xsl.
    -->
    <XSL:променлива Име="tableEnd">
      <XSL:Ако тест="$CurPos = $Last">
        <![НЕЗАТВОРЕН[ </таблица> ]]>
      </XSL:Ако>
    </XSL:променлива>

    <!--
      Винаги излъчват съдържанието на tableStart.  Ако това не е първия ред премина към нас от ContentQueryMain.xsl, след това ние знаем стойността му ще бъде празна.

      Забраняване на изход да избяга, защото когато tableStart тя не празно, Тя включва действителните HTML, които искаме да бъдат предоставени от браузъра.  Ако ние не казвайте на XSL анализатора да забраните продукция бягство, Той ще генерира неща като"&lt;таблица&gt;" Вместо това на"<таблица>".
    -->
    <XSL:стойността на Изберете="$tableStart" забрани продукция бягство="Да"/>


    <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:стойността на Изберете="@Project_x005F_x0020_Name"/>
      </TD>

      <TD Подравняване="десен">
        <XSL:стойността на Изберете="@Project_x005F_x0020_End_x005F_x0020_Date"/>
      </TD>

      <TD Подравняване="десен">
        <XSL:повикване-шаблон Име="FormatCurrency">
          <XSL:с Албена Име="стойност" 
Изберете="@Project_x005F_x0020_Budget"></XSL:с Албена> </XSL:повикване-шаблон> </TD> <TD Подравняване="десен"> <XSL:повикване-шаблон Име="FormatCurrency"> <XSL:с Албена Име="стойност" Изберете="@Project_x005F_x0020_Expenses">
</XSL:с Албена> </XSL:повикване-шаблон> </TD> <TD> <XSL:стойността на Изберете="@Project_x005F_x0020_Status"/> </TD> <!-- Всички от следните е коментира да изясни нещата. Въпреки това, носят го обратно и вещество то в <TD> за да видите нейния ефект. --> <!-- <DIV id = "linkitem" клас = "позиции"> <XSL:Ако тест = "-дължина на низа($SafeImageUrl) != 0"> <DIV клас = "изображение-зона-ляво"> <a href = "{$SafeLinkUrl}" TARGET = "{$LinkTarget}"> <IMG клас = "изображение-фиксирана ширина" SRC = "{$SafeImageUrl}"
ALT = "{@ImageUrlAltText}"/> </а> </DIV> </XSL:Ако> <DIV клас = "връзката-елемент"> <XSL:повикване-шаблон
name="OuterTemplate.CallPresenceStatusIconTemplate"/> <a href = "{$SafeLinkUrl}"
TARGET = "{$LinkTarget}" заглавие = "{@LinkToolTip}"> <XSL:стойността на изберете = "$DisplayTitle" /> </а> <DIV клас = "Описание"> <XSL:стойност на select="@Description" /> </DIV> </DIV> </DIV>
--> </TR> <!-- Излъчват затваряне маса етикет. Ако не сме на последния ред, Това ще бъде празно. --> <XSL:стойността на Изберете="$tableEnd" забрани продукция бягство="Да"/> </XSL:шаблон> <XSL:шаблон Име="FormatCurrency"> <XSL:param Име="стойност" Изберете="0" /> <XSL:стойността на Изберете='Форматиране на число($стойност, "$DDD,DDD,DDD. DD", "персонал")' /> </XSL:шаблон>

22 мисли за "Показване на съдържание Web част резултатите от заявката в мрежа / Таблица

  1. Андреас

    ААА… Това е защото аз наречен моя списък стил по различен начин и не осъзнават, че в ContentQueryMain.xsl го проверява за "стил":

    <XSL:Когато test="@Style='NameOfMyStyle" ">

    С това се преименува тя работи. 🙂

  2. Андреас

    Тя почти работи за мен: Успявам да извежда </таблица> край маркер правилно, но липсва началната таг. Изглежда, че теста = "$CurPos = 1" не връща true. Но защо?

  3. Ананд Сингх Рават

    Велик пост. Павел, съм направил по-горе всичко. Имам въпрос, Как може да се постигне сумата от "общите ДЕЙСТВИТЕЛНИ разходи" или сумата на стойността на две колони.

  4. Лиза

    Били ли сте свършили никаква работа със създаването на потребителски xsl файлове на ContentQueryMain и ItemStyle? Причината да питам е, че аз не искам да се притеснявате за потребителски стилове са заместени с лепенки или ъпгрейди. Имате ли примери? Опитах вземане на идентично копие на ContentQueryMain.xsl и качване на този нов потребителски копие на библиотеката със стилове. Когато препратка към този xsl файл в .webpart MainXslLink собственост, Получавам 401 не са разрешени. Потребителски xsl файлът е публикувана версия и всеки има достъп за четене до него.

  5. Намигва лястовици

    фантастично пост благодаря! Се бори с това сега за последните няколко дни.

  6. Грег Шеридан

    Здравей, Това е наистина полезно осчетоводяване. Имам го всички работни, и също така приложените Майк Браун промяна така групира
    резултатите в таблица от каквото и да избера като група от параметър в свойствата на CQWB.
    Направих заглавието линк също, така той работи добре. Аз все още имам един проблем, Въпреки че. Аз съм групиране на резултатите по име на сайт. В таблицата, Той ги групира добре, и тя изглежда страхотно, но тя все още е печат на група
    имена(в моя случай имената на сайта) над таблицата. Знае ли някой как да се отървем от тях?
    Благодаря,
    Грег

  7. Без име

    Хубава статия. Аз успях да дам моята таблица на външния вид на по подразбиране Sharepoint списъци чрез анализиране на изходния код на списъка. Тук са основните HTML елементи, необходими да се побере в ItemStyle:

    <Ширина = "100 %" клас = "ms-listviewtable" границата = 0 cellspacing = 0 cellpadding = 1 dir = "Няма">

    <!–ГОРЕН–>
    <TR клас = "ms-viewheadertr" VALIGN = ГОРЕ>
    <ТА без прехвърляне обхват = "col" клас = "ms-vh2"><DIV стил = "ширина:100%;позиция:относителна;ляв:0;Топ:0;">
    <Стил на таблица = "ширина:100%;" CtxNum = "1" височина = "100 %" CellSpacing = 1 cellpadding = 0 клас = "ms-unselectedtitle">
    <TR>
    <TD ширина = "100 %" Клас = "ms-vb" без прехвърляне>
    Texte du титър ИИС

    </TD>
    <TD стил = "позиция:абсолютна;">
    </TD>
    </TR>
    </ТАБЛИЦА></DIV>
    </TH>

    <!–Повторете за всички клетките за заглавки–>
    </TR>

    <!– Таблични данни –>
    <TR клас = "">
    <!–Колона с данни, Използвайте Полс код за първия с хипервръзката –>
    <TD клас = "ms-vb2">Данни тук</TD>

    <!–Празна колона–>
    <TD клас = "ms-vb2">
    <обхващат dir = нито></еталониране><
    /TD>

    <!–Колоната дата–>
    <TD клас = "ms-vb2">
    <NOBR>11/12/2008</NOBR>
    </TD>
    </TR>

    <!–***Заместник ред – Използвайте нова XSL променлива, която ще въведе алтернативен клас на базата на текущия ред модул 2–>
    <TR клас = "ms-редуващи се">

    </TR>
    </ТАБЛИЦА>

  8. Майк Браун
    Золтан,
    Аз работех по същия проблем като вас. Исках всички ми елементи, показани в групирани начин, а не просто делукс. Ето как съм го постигнал.
    ContentQueryMain.xsl
    <XSL:Когато test="@Style='Grid" ">
    <XSL:прилагат шаблони изберете = "." режим = "itemstyle">
    <XSL:с Парам име = "CurPos" изберете = "$CurPosition" />
    <XSL:с Парам име = "последно" изберете = "$LastRow" />
    <!–Добави този нов раздел, за да премине в параметър показва нова група е започнало–>
    <XSL:с Парам име = "StartNewGroup" Select="@__begingroup" />
    </XSL:приложи-шаблони>
    </XSL:Когато>
    ItemStyle.xsl
    Добавете вашия параметър
    <XSL:param име = "StartNewGroup" />
    Добавете този текст като първия ред от данни
    <XSL:Изберете>
    <XSL:Когато тест = "$StartNewGroup = 'True'">
    <TR>
    <TD >
    <XSL:повикване-шаблон name="OuterTemplate.GetGroupName">
    <XSL:с Парам име = "GroupName" Select="@*[Име()= $Group]"/>
    <XSL:с Парам име = "GroupType" изберете = "$GroupType" />
    </XSL:повикване-шаблон>
    </TD>
    </TR>
    </XSL:Когато>
    <XSL:в противен случай>
    </XSL:в противен случай>
    </XSL:Изберете>
    Това трябва да се грижи за вашия групиране проблем във вашата мрежа. Всяка група ще започне с нов ред показва името на групата. В моето решение всъщност се добавя празен <TD /> в данни за отстъп както и така обединението се открояваше много по-добре.
    Site1
    datacolumn1 datacolumn2 datacolumn3 и т.н.

    datacolumn1 datacolumn2 datacolumn3 и т.н.
    Site2
    datacolumn1 datacolumn2 datacolumn3 и т.н.
    Site3

    datacolumn1 datacolumn2 datacolumn3 и т.н.

    datacolumn1 datacolumn2 datacolumn3 и т.н.
    н.
  9. Золтан
    Здравейте Павел,
    Благодаря за осчетоводяване, Аз успях да организират моите резултатите от заявката в мрежа, което е много полезно. Въпреки това, Аз трябва да отиде по-далеч и група моите резултати, въз основа на сайтове. В момента, имената на сайт са изброени първи, и тогава там е само една голяма мрежа, събиране на всички редове от различни сайтове. Нещо като това:
    Site1 име
    Site2 име
    Данни в мрежата за всички сайтове
    Всякакви идеи за това какво трябва да променя за да получите данните си по следния начин:
    Site1 име
    Данни в мрежата за Site1
    Site2 име
    Данни в мрежата за Site2
    Благодаря предварително,
    Золтан
  10. Пиер Жубер
    Фантастично пост, решен проблема ми бях.
    Единствената ми въпрос е показване на полето на AssignedTo, Аз го конфигурирате с потребител"" тип на поле и внесените уеб частта след това показва следната грешка:
    "Възникна грешка при извличане на данни да се показват в тази уеб част."
    Аз се опитах използване на всички възможни полета от тип, с всичко друго този "потребител" Тя не показва грешка, но той не показва нищо в полето. Така че аз съм се предположи поле тип на потребителя е правилно, така че трябва да бъде липсва настройка някъде.
    Всякакви идеи за това?
    Поздрави
    Пиер
  11. Charftong
    Велик пост!!! Много много полезен.
    Бърз въпрос, Били ли сте го направили никаква работа за показване полетата AssignedTo или ModifiedBy с присъствие? По някаква причина, Когато се опитам да член dipslay полето присвоен към в CQWP, Тя винаги се показва с като пример "203;#Charf Тонг". Не може да намери начин около това.
  12. Дженифър Дейвис
    Пол
    Велика статия, Благодаря. Аз правя нещо подобно, но искате да показва връзка към сайта на проекта, а не елемент от списъка. За пример, Имаме 25 сайтове, топ ниво проект и всяка от тях съдържа списък с типове съдържание. Това са име на проект, Дивизия, Описание. Искам да използвате уеб компонента на заявка за съдържание, за да дръпнете тези данни и са успели с тази разлика, че по подразбиране URL ме отвежда към записа в списъка и аз наистина трябва да ме отведе до сайта на проекта. може ли да ми даде някакви съвети?
    Благодаря
    Джен
  13. Пол Galvin
    Kieren,
    Аз винаги използвам visual studio да редактирате XSL. Тя осигурява цветово кодиране и той също има някои добри intellisense подкрепа.
    –Пол
  14. Kieran написа:

    Здравей Пол,

    При работа с уеб компонента на заявка за xml/xsl и съдържание, Намерихте ли някакви добри начини да форматирате вашия xslt? Се опитват да правят промени и проверка на проектирането се оказва точно болка в ** само с помощта на текстов редактор…

    Всичко най-хубаво

  15. Майкъл Dipay
    По отношение на въпрос аз бях като последния път, когато той не показва изображения от изглед мрежата но вместо това показва текста (https://myweb.com/Marketing/images/icn-order.gif,). Аз успях да го разреши с помощта на SharePoint Designer чрез създаване на изглед по избор и изберете колони по избор, които искам да покажете. Аз разбрах, че типа изображения колона са показани като URL адрес(запетая) (e.g. https://myweb.com/Marketing/images/icn-order.gif,). Текущия формат е текст, така че аз трябва да го смените с картина от общата xsl:стойността на задачи-> Формат като картина. Това промяна на показването на персонализирани изображения, които исках да покажа. Аз копирали кода да покажат на изображението ( <IMG границата ="0" SRC = "{подниз-преди(@IcnOrder, ‘, ‘)}" /> ) И в ItemStyle.xsl файл трябва да се промени-@PICTURECOLUMNNAME код <IMG границата ="0" SRC = "{подниз-преди(@IcnOrder, ‘, ‘)}" /> . След това го запишете. Сега моята таблица мрежа резултатите да показват текст, както и по избор изображение тип колони.
  16. Хелън
    Здравей Пол,
    Благодаря за чудесната статия!
    Споменахте, че условно форматиране – "Можете да сложите в условно форматиране, например показване на проекти, които са надвишили техните бюджет в червено." Да ти се случи да има един код за пример за това?
    Благодаря отново!
    Хелън
  17. Майкъл Dipay
    Здравей Пол,
    Това е голяма статия и е в състояние да генерира същите резултати, както се очаква. Имам изискване да покаже изображение в мрежата като един от нейните колони. Тя не се показва изображението на мрежата, но вместо това показва URL адреса на изображение с (,) запетайката в края.
    (e.g. https://myweb.com/Marketing/images/icn-order.gif, )
    Трябва да използвам изображение или картина в CommonViewFields тип? (e.g. InternalColumnName, Изображение)
    Благодаря,
    Майк
  18. Антон Ijiyemi

    Вашият пост е точно това, което е търсил. Въпреки това, Аз не мога да го да работи.

    Имам документи, които се съхраняват в различни doc. библиотеки но класифицирана с помощта на потребителски клас колона (избор: 1 или 2. Искам да използвам CQWP да покаже тези документи, въз основа на техния клас.
    Аз бях в състояние да добавите CQWP, да го експортирате SPD, Конфигуриране на itemStyle.xls да се покаже персонализирани полета в изгледа на списък. Въпреки това, Не успешно да реализират това, което описват тук.

    Това са колоните, искам да се показват в моя CQWP:

    Тип файл (да се покаже икона)
    Заглавие на файл
    Дата на последна промяна
    Модифициран от които
    Извлечени до
    Проверих в коментарите

    Аз в момента имам резултат във формат на списък. Как да го променя в talble формат.

    Благодаря.

    Антон

Оставете отговор Майкъл Dipay Отказване на отговора

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани *