RSS Подписка на статьи RSS Подписка на комментарии Панель инструментов

Блог профессионалов стал частью сайта технической поддержки DocsVision http://support.docsvision.com. Новые материалы будут появляться уже на этом сайте.

Поиск

Ярлыки

авто генерация кода (1) Администрирование DocsVision (60) Атрибутивный поиск (3) База данных (24) Базы знаний (1) Безопасность (1) Бизнес-процессы (20) Блог (2) Вы увидите это первыми (1) Групповые политики (1) Диаграммы (2) Задания (2) Интеграция (2) Карточки DocsVision (14) Конструктор Решений (11) Маркетинг и продажи (4) Навигатор (3) Новое (3) Новости (32) Опрос (4) Опросы DocsVision (4) Оптимизация (3) Отчеты (2) Ошибки (1) Поддержка (14) Полезные ссылки (1) Представления (4) Производительность (5) Разбор полетов (18) Разработка для Workflow (7) разработка карточек (2) Разработка на платформе DocsVision (41) Разработка решений (43) Расширение платформы (1) Расширенные отчеты (9) Решения на платформе DocsVision (6) Сервисы DocsVision (3) Сканеры (3) Справочник сотрудников (1) Справочник типов (1) Установка (1) Утилиты (13) Шлюз в SharePoint (8) Штрихкод (2) Cкрипты карточек (7) DocsVision внутри (1) DocsVision Live (1) FileStream (1) FireFox (2) Opera (1) Powershell (5) Safari (1) SharePoint2007 (1) SharePoint2010 (2) Silverlight (1) UltraViews (1) Vista (1)

Получение значения из справочника в XSLT преобразовании

В DocsVision существует возможность создавать XSLT преобразования для создания печатной формы - диалог "Экспорт и печать" карточки. Принцип работы таков. Печатная форма - это HTML документ, который получается следующим образом:
XML карточки + XSLT преобразование = HTML.
При этом нужно отметить, что для формирования печатной формы берется не просто XML карточки, а XML карточки + связанные карточки + связанные строки из справочников.


На рисунке показан пример xml со связанными карточки внутреннего документа. В xml есть данные карточки, данные связанной сильной ссылкой карточки "Список файлов", и данные из справочника сотрудников. Важно отметить, что из справочника сотрудников получена только одна строка, на которую ссылается карточка документа.




Итак:
1. Присоединяются только карточки на которые ссылается поле типа refcardid
 




2. Присоединяются строки из справочников, на которые ссылается поле типа refid



Рассмотрим как получить данные из справочника. Пример, необходимо вывести имя и учетную запись регистратора карточки внутреннего документа. Поскольку строка из справочника сотрудников есть в xml то нужно получить её данные по идентификатору. XPath адрес должед быть таким:


//EmployeesRow[@RowID=//CardOrd[1]/MainInfo/@RegisteredBy]/@AccountName
Т.е. получаем строку из данных справочника, у которой RowID = значению из поля RegisteredBy.

Полный текст шаблона:


<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

 <xsl:template match="/">
  
   
    <link href="%ServerUrl%/StorageServer/Fetch.aspx?BaseName=%BaseName%&amp;TransformID=B5344DA1-D28F-4024-8798-3FC3992C94B7" rel="stylesheet" type="text/css"></link>
    <title>&lt;xsl:value-of select="//CardOrd[1]/MainInfo/@Name"/&gt;</title>
   
   
     <xsl:value-of select="//EmployeesRow[@RowID=//CardOrd[1]/MainInfo/@RegisteredBy]/@AccountName">
     <xsl:value-of select="//EmployeesRow[@RowID=//CardOrd[1]/MainInfo/@RegisteredBy]/@LastName">
 
   
  
 </xsl:value-of>
</xsl:value-of>
</xsl:template></xsl:stylesheet>

Читать дальше

5 коммент.:

Ice комментирует...

Спасибо!

Алексей комментирует...

Всем Добрый день,
Как можно вывести список должностей в карточке задачи при помощи шаблона печати?

Посути код должен быть таким






Этот код выводит должности только в карточках согласования, а в карточках задания ничего не выводит

Михаил Захаров комментирует...

Алексей, В карточках задания есть особенность. При генерации текста задания берется XML карточки + связанные строки. В отличие от шаблона печати, в котором используется XML карточки + связанные карточки. Код в комментариях не отобразился (лучше добавлять пример как ссылку на новый ресурс).

kurtata комментирует...

Как изменить то что отображается в карточки согласования в Содержании?
Например, хотя бы поменять слово “Исполнители”? (вообще надо вывести из лога карточки информацию).

При запуске карточки согласования формируются задания БП на согласование каждому из согласующих.
При открытии карточки задания из своей личной папки сначала видно что открывается карточка Задания БД, а потом вид карточки менятся на другой - в итоге открывается карточка Согласования (в контексте открывающего пользователя).

Пробовал менять шаблоны карточки Задания БП ("Шаблон текста задания по уполчанию" и «Стандартный шаблон печати») и Шаблон карточки Согласования (Стандартный шаблон печати) ничего не меняется в карточке согласования в Содержании.
Техподдержка DV говорит:
>Необходимо заменить стандартный шаблон PerformDefaultRU (dvsys_transforms), он же "Шаблон текста задания по уполчанию".
>После этого надо перезапустить сервисы IIS и Навигатор на клиенте.
>При отображении текста задания в карточке используется "XML со связанными строками" + XSLT, а в диалоге "Экспорт и печать": "XML со связанными карточками" + XSLT
Даже если просто посмотреть эти шаблоны Задания БП ("Шаблон текста задания по уполчанию" и «Стандартный шаблон печати») и Шаблон карточки Согласования (Стандартный шаблон печати) - там даже нет слова ”Исполнители” которое отображается с “Содержании” !?
Не понятно как изменить и где то, что отображается в карточки согласования в Содержании.?
Буду благодарен за любую информацию как формируется Содержание в карточке согласования ….

kurtata комментирует...

Ссылка на открытое задание БП по согласованию
http://savepic.net/1470941.jpg

Отправить комментарий