Как передать выходные данные одной XSLT TBB в другую XSLT TBB в SDL Tridion 2011 SP1 - PullRequest
2 голосов
/ 19 марта 2012

Я использую посредник XSLT из SDL Tridion World для создания TBS XSLT.Здесь мое требование таково: я хочу передать вывод одной XSLTTBB в другую XSLT TBB.

Скажем, у меня есть XSLT TBB с именем "1", где в выводе я:

<aaa>
hi 
</aaa>
<bbb>
hello
</bbb>

Iхотите написать еще один XSLT TBB, который берет выходные данные первого TBB и обрабатывает данные в

<ccc>hi hello</ccc>

. Рассмотрим пример как очень общий.Я использую Template Builder для объединения двух TBB.Но я не получаю точный результат.

Нужно ли настраивать посредник XSLT для Template Builder?Если да, покажи мне, как это сделать.

Если есть такой способ, дай мне знать.Заранее спасибо.

Ответы [ 2 ]

5 голосов
/ 19 марта 2012

Это возможно при использовании параметров шаблона следующим образом:

  1. TBB 1 настроен с выводом «Temp» и типом вывода «Xml»
  2. TBB 2 сконфигурирован с входом «Temp» и выходом «Output»
  3. TBB 2 настроен для загрузки элементов пакета в качестве параметров
  4. Добавьте в начало TBB 2 (чтобы вы могли использовать переменную из XSLT, используя что-то вроде)
  5. Вы можете сделать вывод TBB 1 либо String, либо XmlDocumnet. Если вы используете XmlDocument, вы можете выполнять запросы XPath к переменной в TBB 2.

Нет необходимости настраивать что-либо в построителе шаблонов, поскольку посредник размещен на сервере TCM.

1 голос
/ 18 апреля 2012

Я бы посоветовал вам посмотреть, сможете ли вы улучшить свой дизайн, чтобы вам не нужно было это делать. В общем, довольно необычно, когда в конвейере требуется более одного «шаблонного» TBB. В принципе, вы должны сделать достаточно подготовки (в сборочных строительных блоках), прежде чем достигнете шаблонного слоя, и тогда вы сможете сделать все это за один раз.

...