Типизация контента — одно из основных усовершенствований, появившихся в Windows SharePoint Services (WSS) 3.0. В WSS 2.0 каждый список, будь то библиотека документов или же обычный список SharePoint, был связан с единственной схемой, причем схема эта размещалась в данном списке. Теперь, благодаря появлению типа контента, список может содержать множество схем, а одна и та же схема может использоваться во многих списках. Схема типа контента может включать набор метаданных (которые будут отображаться в виде столбцов в списке SharePoint), шаблоны документов, порядок обработки, панель информации о документе и другие пользовательские настройки. Таким образом, можно хранить один и тот же тип контента в разных списках, можно хранить несколько типов контента в одном списке, поэтому ничто не мешает держать разнородную информацию в одной библиотеке. В этой статье рассматривается и процесс настройки типа контента, и его ассоциация с одной библиотекой документов.

Пример библиотеки с разными типами контента

Начнем с библиотеки документов, в которой содержится много типов контента. В этом примере (см. экран 1) группа продаж компании работает с одной библиотекой документов для различных типов документов по товарообороту, включая торговые презентации, финансово-аналитические отчеты и ответы на запросы. Самый наглядный эффект типов контента этой библиотеки заключается в возможности выбора различных шаблонов для разных типов документов. В результате при щелчке стрелки около пункта New появляется список для выбора имеющихся типов документов.

Обратите внимание, различные типы контента в этой библиотеке имеют разные столбцы метаданных. Например, столбец Deal Size содержит только информацию о типе контента Financial Analysis. Стоит отметить, что обо всех типах контента есть информация в столбце Client.

Столбцы шаблонов и метаданных являются двумя главными компонентами схемы для одного типа контента. В прежних версиях SharePoint для задания различных столбцов шаблонов и метаданных понадобилось бы создание нескольких библиотек документов. А теперь рассмотрим процесс создания типов контента.

Создаем новый тип контента

Для формирования нового типа контента сначала надо определиться, где стоит создавать этот тип — на уровне корневого сайта, на уровне дочернего сайта или на уровне списков. Важно иметь в виду следующее: если тип контента создается на одном из уровней сайта, то он будет доступен для всех его дочерних сайтов и списков в этой коллекции сайта; если же тип контента создается на уровне списков, то он будет доступен только для данного списка. Например, библиотека документов на экране 1 размещается по адресу moss.litwareinc.com/SalesNew/SalesDocument; то есть библиотека Sales Document находится в новом сайте по продажам, который является потомком сайта Litwareinc. При создании нового типа контента, которым можно пользоваться в этой библиотеке документов, можно создать новый тип на уровне Litwareinc (корневого сайта), на уровне New Sales (дочернего сайта) или на уровне Sales Documents (списка). В общем случае, на мой взгляд, лучше всего создавать типы контента на максимально высоком уровне, поскольку этот тип будет доступен для максимально возможного количества сайтов. Однако все же есть причины, которые следует учитывать при создании типа контента на отдельном сайте или на уровне списка. Например:

• 
необходимо ограничить применение типа контента одним определенным списком;

• 
требуется тип контента для включения столбцов, созданных на уровне списка;

• 
нет разрешения для создания типа контента на более высоких уровнях;

• 
при создании дочернего типа контента на основе существующего типа контента может возникнуть ситуация, когда нужно иметь родительский элемент на уровне сайта, а дочерний элемент — на уровне списка.

Рассмотрим, как создать тип контента на уровне корневого сайта. Сразу замечу, что последовательность шагов для генерации типов контента на уровне порожденного сайта или уровне списка в основном такая же. Для создания типа контента выберем последовательно Site Actions, Site Settings, Modify All Site Settings. Таким образом, получаем различные настройки, в том числе список галерей, который содержит параметр Site content types (типы контента для сайта), как показано на экране 2. Щелкните Site content types, чтобы увидеть доступные типы контента. Выберите создание нового типа контента — появится форма для создания типа контента (см. экран 3).

Я выбрал тип контента для создания писем, который может понадобиться для использования этого типа контента в любой организации, а применение типов контента позволит задействовать шаблон для писем организации во всех ее подразделениях с согласованной шапкой в виде фирменного бланка и правильным оформлением. Выбор параметра Parent Content Type (родительский тип контента) влияет на настройки, которые будут применяться к этому типу контента. Для типа контента «письмо» в этом примере взят один из имеющихся типов контента. Выбор родительского типа контента, Document parent content, даст тип контента в виде пустого документа Microsoft Office Word в качестве шаблона с минимальным числом столбцов для метаданных без возможности дальнейшей настройки. Но можно выбрать и возможность поместить новый тип контента в существующую или пользовательскую группу. Размещение типа контента в группах помогает легко находить необходимый для дальнейшей работы шаблон.

Настройка типа контента

После того как тип контента создан, появляется экран 4. Необходимо тщательно настроить его схему. Это окно также можно получить через галерею типов контента или выбрать тип контента в настройках библиотеки документов Document Library Settings после присоединения типа контента к списку. На данном экране можно выбрать или изменить перечисленные ниже настройки.

• Name, description и group (имя, описание и группа). Эти параметры позволяют менять настройки, которые были выбраны при создании типа контента.

• Advanced settings (дополнительные настройки). Они позволят выбрать шаблон. Можно выбрать в качестве шаблона любой документ, который вы отыскали, независимо от того, где он находится. Кроме того, необязательно выбирать файлы шаблонов (например, файл с расширением.dotx для Word).

• Workflow settings (рабочие настройки, принятые в документообороте). Они позволяют использовать наработанные настройки в документообороте для присоединения к типу контента. Этот параметр предоставляет одну из самых важных возможностей использования типов контента, поскольку позволяет иметь разные рабочие настройки в делопроизводстве для различных типов контента в одной библиотеке документов. Можно с его помощью повторно использовать нужный порядок обработки в дополнительных библиотеках документов без дополнительных затрат на перенастройку. Настройки Workflow settings позволяют выбрать заранее заданный порядок или настраиваемый порядок Visual Studio. В настоящее время нельзя ассоциировать потоки обработки SharePoint Designer с типом контента. Но будем надеяться, что такая функциональность еще появится. Все же после включения типа контента в список можно разрабатывать и вновь включать в этот список поток обработки SharePoint Designer.

• Document information panel settings (настройки информационной панели документов). Они позволят переслать или изменить информационную панель документа, которая была создана с использованием типа контента. Как показано на экране 5, информационная панель документов является формой Office InfoPath, которая служит панелью атрибутов для документов, открытых в SharePoint. Панель связывает столбцы метаданных с документом и позволяет управлять набором правил обработки в документе Word посредством процессора декларирования правил InfoPath, при этом отпадает необходимость в написании какого-то кода. По этой форме можно переслать обычную информационную панель (файл шаблона формы XSN или InfoPath) и выбрать, какую информационную панель всегда открывать по умолчанию.

• Information management policy settings (информационные настройки политики управления) позволяют определять или ассоциировать клиентские настройки политики с типом контента.

• Manage document conversion for this content type settings (управление перекодировкой документа для настроек типа контента). Выбор этого параметра приводит к разрешению перекодировки документа для коллекции сайта. Администратор должен разблокировать перекодировку документа через Central Administration.

Добавление столбцов

Добавление столбцов к типу контента определяет метаданные, которые будут доступны для списков и информационной панели документа SharePoint. Создание столбца аналогично созданию типа контента и может быть реализовано на уровне сайта или списка.

Для выбранного типа контента «письмо» добавим один существующий столбец и создадим несколько новых. Добавим столбец, просто щелкнув Add from existing site columns («добавить из существующих столбцов сайта») на странице Site Content Types («типы контента сайта»). Будет выведен список всех имеющихся столбцов, которые можно добавить к типу контента. Для того чтобы создать новый столбец сайта, надо щелкнуть Add from new site column («добавить из нового столбца сайта»). Появится форма для создания New Site Column (см. экран 6). В этой форме можно ввести имя столбца Column, например дату письма Letter Date и тип информации (например, Date and Time — дата и время). Выбранный тип данных определяет другие параметры, которые будут представлены ниже. После настройки типа контента можно ассоциировать его с библиотекой документа.

Ассоциация типа контента с библиотекой SharePoint

Поскольку тип контента был создан на уровне сайта, его надо включить в список. Вспомним о библиотеке документов по продажам Sales Document Library, на которую мы уже ссылались. Группа продаж приняла решение хранить рекламные письма рассылок в одной библиотеке. В этом случае члены группы могут легко сортировать письма по группам и контрактным данным, не создавая множества папок.

Перейдем к настройкам библиотеки документов исходя из того, что доступ к типам контента для библиотеки документов уже есть (о разблокировке типов контента для библиотеки документов рассказано ниже). Откроем раздел Content Types, где даны типы контента, имеющиеся в данный момент в библиотеке документов, а также имеется ссылка для добавления нового типа контента. При выборе нового типа контента появляется форма для выбора имеющихся типов контента, как показано на экране 7. Выберем нужный тип контента (например, Letter) и щелкнем Add. Теперь новый тип контента появится, и его можно выбрать в библиотеке документов.

В дальнейшем при открытии нового документа на основе типа контента документ будет открываться с указанным шаблоном и информационной панелью, как показано на экране 8. Обратите внимание, что документ содержит шапку фирменного бланка и оформлен в формате компании с управляющими элементами контента, например Client content control (см. экран 8). Эти управляющие элементы контента имеют ссылки на информационную панель документа. Поэтому при добавлении имени клиента в документ оно будет обновлено в его информационной панели. При изменении даты в информационной панели дата появляется в документе. Кроме того, она появится и в списке SharePoint.

Как показано на экране 9, при повторном сохранении документа в библиотеке документов появляются столбцы клиентских метаданных для этого типа контента. Я должен был настроить этот вид по умолчанию, чтобы столбцы отобразились на экране. Столбцы появляются в библиотеке документов сразу при добавлении типа контента, но для того, чтобы они были видны, сначала их надо было выделить на странице настроек. Заметим, что в нашем примере был выбран тип контента Letter на уровне сайта прямо в списке. Можно было бы создать тип контента на уровне потомка на основе типа контента Letter, что было бы полезно для использования одного и того же шаблона в организации с различными рабочими настройками делопроизводства в разных подразделениях.

Повторное использование типа контента

Повторное использование типа контента представляет собой просто его ассоциацию с другой библиотекой документа. Например, можно создать новый сайт для отдела кадров с новой библиотекой документов под именем HR Documents. Поскольку это новая библиотека, надо сначала разрешить для нее доступ к типам контента. Для этого следует открыть Document Library Advanced Settings и выбрать параметр Allow management of content types («разрешить управление типами контента»; см. экран 10).

После разблокировки доступа к типам контента можно добавить тип контента Letter по процедуре, описанной выше. Например, можно создать дочерний тип контента HR Letter на уровне списка. Преимущество использования дочерних типов контента заключается в том, что при обновлении родительского контента все дочерние контенты также обновляются. Например, если HR Letter и Sales Letter являются дочерними по отношению к Letter, то в случае изменения шапки фирменного бланка для писем надо будет обновить только шаблон для типа контента Letter; тогда шаблоны для HR Letter и Sales Letter унаследуют изменения от родительского типа контента.

Заключение

Типы контента определяют схему для объектов, которые хранятся в WSS 3.0. Это позволяет, с одной стороны, хранить один и тот же тип контента во многих списках, а с другой стороны, хранить разные типы контента в одном и том же списке. Применение типов контента позволяет хранить данные в одном и том же месте, в этом случае не надо создавать много библиотек документов. В SharePoint можно легко сортировать информацию, которая находится в одной библиотеке, наполненной разными типами контента. Лучше иметь одну библиотеку, а не искать нужную информацию в разных. К тому же типы контента избавят вас от многократной работы с разными настройками в том случае, если используется один и тот же тип документа в разных местах.

Дуглас Райен Ванбенфьюсен (doug@wordswordswords.us) — специалист по решениям в технологической компании, специализирующейся на решениях Microsoft