Рубрика:
Администрирование /
Информационный портал
|
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|
СЕРГЕЙ БОЛДИН, системный администратор в энергетической компании, bsergey2@gmail.com
Работа с MS SharePoint 2016 Часть 3. Поиск файлов
Система поиска играет немаловажную роль при работе с документами. Удобство заключается в сокращении времени по сравнению с обычным просмотром файлов. Рассмотрим, какие возможности имеет данная функция и как ее настроить
В прошлых статьях [1, 2] мы смогли добавить библиотеки документов, поместить в них файлы и отобразить на веб-странице, осуществить одновременное редактирование некоторых файлов (Word, PowerPoint, Visio). Также разобрались, как предоставлять определенный уровень доступа сотрудникам компании. Уже сейчас пользователи очень довольны новым разделом в корпоративном портале для хранения и общего использования офисных документов. На данный момент у нас не так уж их и много, но планируется увеличить в разы. Следовательно, очень полезно будет иметь поиск по документам, поэтому настало время настроить эту функцию.
Весь поисковый функционал включает в себя целый ряд возможностей, которые мы пока использовать не будем и полностью раскрыть в одной статье не получится, но о некоторых все же упомянем:
- помимо поиска файлов, можно настроить и поиск контактов. В этом случае пользователи могут находить других людей в организации по категориям: по имени, проектам, отделу, должности, расположению, компетенции. Для настройки данного типа поиска сначала нужно будет выполнить некоторые действия по настройке сервера SharePoint на основании требований [3];
- поисковая система SharePoint может выполнять обход контента и в других репозиториях, таких как общие папки ОС Windows, общие папки MS Exchange и IBM Lotus Notes, сторонние веб-сайты, внешние бизнес-приложения, базы данных;
- в состав SharePoint входит множество веб-частей (см. рис. 1), с помощью которых можно создать собственную страницу поиска с нужными компонентами и в соответствии с дизайном.
Рисунок 1. Веб-части для поиска
Работа с файлом стилей
Чтобы включить функцию поиска, добавим ссылку для перехода на страницу поиска. Есть несколько вариантов размещения ссылки или кнопки: можно создать всплывающее окно по центру, выпадающую панель сверху или просто добавить раздел в меню. Мы добавим на главную страницу выезжающую слева панель [4] при наведении на нее мышью.
Сначала создаем текстовый файл, добавляем код (где описываем размеры и цвет кнопки и панели, принцип открытия, затемнения и другие эффекты), сохраняем и переименовываем. Получился файл panel.css, который помещаем в Библиотеку стилей.
Далее этот css-файл нам нужно подключить. Для этого заходим в Параметры сайта, в разделе Внешний вид и функции нажимаем на ссылку Главная страница. Здесь нас интересует одно лишь поле URL-адрес альтернативной таблицы CSS, в котором указываем путь к файлу panel.css (см. рис. 2). Теперь сервер SharePoint знает о новом файле стилей, но на главной странице ничего еще не появится.
Рисунок 2. Подключение css-файла
Чтобы отобразилась панель на главной странице, нужно главную страницу открыть в режиме редактирования, войти во вкладку Формат текста, нажать кнопку Изменить источник и написать html-код размещения кнопки. В моем случае он выглядит так:
<div class="panel">
<span>П</span><span>О</span><span>И</span><span>С</span><span>К</span>
<div class="hidden_panel">
<div style="text-align: center;">Поиск документов</div>
<div style="text-align: center;">и</div>
<div style="text-align: center;">медиа файлов</div>
<div style="text-align: center; margin-top: 30px;">
<a href="/sites/search_docs" target="_blank" style="text-align: center;">Перейти</a></div>
</div>
</div>
Результат можно увидеть на рис. 3.
Рисунок 3. Выезжающая панель
Работа службы поиска
Главной особенностью быстрой работы поисковой операции является использование проиндексированных данных. Опишем, как этот процесс происходит.
Сначала программа-обходчик подключается к указанным источникам контента и просматривает их в соответствии с заданными правилами обхода. Например, подключение к общим папкам происходит по протоколу FILE://, подключение к веб-сайтам – по протоколам HTTP:// и HTTPS://, а для чтения данных из файлов загружаются соответствующие фильтры IFilter.
Администрируем систему SharePoint, набросаем готовые компоненты на веб-страницу |
После этого программа-обходчик передает данные модулю индексации, который определяет, как их сохранить в физическом файловом индексе. Он выполняет действия по оптимизации объема занимаемого дискового пространства, учитывая уже проиндексированные слова, управлению разбиением текста на слова, выделению корней слов, удалению пропускаемых слов, определению способа сохранения данных в конкретных разделах индекса. Затем данные сохраняются в один или несколько файлов индекса.
Настройка функции поиска
Наличие поисковика позволит сотрудникам быстрее находить нужный файл среди большого их количества, а значит, сэкономит драгоценное время.
Чтобы функция поиска заработала, нужно сначала создать службу поиска [5]. Для этого заходим в Центр администрирования → Управление приложениями-службами, нажимаем меню Создать и выбираем пункт Приложение службы поиска. В появившемся окне нужно заполнить несколько полей: имя, учетная запись, пул.
Далее жмем по ссылке с именем появившегося приложения-службы поиска и попадаем в его параметры. Основное действие, которое нужно произвести, – запустить обход контента. Для этого заходим в пункт Источники контента. Здесь можно запустить уже имеющийся по умолчанию источник (Локальные сайты SharePoint) (см. рис. 4) или создать свой. Также тут можно увидеть состояние обхода контента, длительность текущего и время следующего.
При создании нового источника контента или изменения существующего указываются Начальные адреса (URL-адрес сайта или расшаренной папки), Параметры обхода контента, Расписания обхода контента, Приоритет источника контента.
После того как пройдет обход, можно посмотреть отчеты о работоспособности самого обходчика. Такая информация находится (см. рис. 4) в пунктах Журнал обхода контента, Отчеты о работоспособности программы-обходчика, Отчет о работоспособности запроса, Отчеты об использовании.
Рисунок 4. Параметры приложения-службы поиска
Теперь необходимо создать новый сайт (это будет всего лишь отдельная страница), в который добавить уже готовый шаблон с полем для поиска. Для этого заходим в Центр администрирования → Управление приложениями → Создание семейств веб-сайтов, вписываем имя, выбираем URL-адрес (sites/search_docs, которое ранее указывали в html-редакторе) пользователя и шаблон Корпоративный центр поиска.
Поиск на данный момент доступен только указанному пользователю. В нашем случае поиском будут пользоваться все сотрудники, а значит, дадим им соответствующий доступ. Для этого переходим на страницу поиска, заходим в Параметры сайта, там находим ссылку Разрешения для сайта и даем группе Все права на чтение.
Для проверки работы функции поиска переходим на страницу поиска и в поле вводим часть имени файла или искомого текста. Результат можно увидеть на рис. 5.
Рисунок 5. Результат работы функции поиска
Расширенный поиск
Если же по введенному стандартному запросу выдалось слишком много информации, то можно воспользоваться расширенным поиском, чтобы сократить результаты работы поисковика.
Нажав на ссылку Расширенный поиск, можно будет заполнить дополнительные поля (Все эти слова, Фраза целиком, Любое из этих слов, Ни одно из этих слов), выбрать тип результата (Все результаты, Документы, Документы Word, Документы Excel, Документы PowerPoint), язык, добавить свойства (Автор, Описание, Имя, Размер, Дата изменения, URL-адрес, Кем создано, Кем изменено) и искать уже относительно этих критериев.
В поисковом запросе можно использовать «*» в качестве подстановочного знака. Например, «комп*» отобразит документы, содержащие слово «компьютер», «компот», «компания» и другие. В расширенном поиске можно использовать и логические операторы AND (И), OR (ИЛИ), NOT (НЕ). Например, можно указать следующий критерий поиска: («Договор» OR «Документ») AND (title: «Заказы» OR title: «Предложения»).
Отключение лишнего
Работая со стандартным шаблоном, имеем немалое количество лишних панелей, кнопок, названий и других компонентов. Часть из них мы уже отключали [1, 2] с помощью CSS-кода, а кое-что предстоит еще отключить.
Отключаем стандартную навигацию:
#sideNavBox
{display: none;}
Отключаем первую верхнюю панель:
#suiteBarTop
{display: none !important;}
Теперь осталось вверху две панели. Для администратора они несут важную функцию – доступ к меню администрирования, которое для пользователя недоступно. Следовательно, можно для пользователя их и не отображать. Но стандартных средств скрытия панелей suiteBarDelta и s4-ribbonrow нет, и с помощью нескольких строк CSS-кода убрать их не получится. Придется использовать скрипт для проверки пользователя, является ли он администратором системы SharePoint. Часть скрипта была взята с сайта [6], а затем доработана до нужного состояния (см. листинг 1).
Листинг 1. Скрытие панели для пользователей
<script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<script>
//Определение текущего пользователя
function getCurrentUser() {
var dfd = jQuery.Deferred();
var currentUser;
if (SP.ClientContext != null) {
SP.SOD.executeOrDelayUntilScriptLoaded(getUser, 'sp.js');
}
else {
SP.SOD.executeFunc('sp.js', null, getUser);
}
function getUser() {
var context = new SP.ClientContext.get_current();
var web = context.get_web();
currentUser = web.get_currentUser();
context.load(currentUser);
context.executeQueryAsync(onSuccessMethod, onRequestFail);
}
function onSuccessMethod(sender, args) {
//currUser = currentUser;
dfd.resolve(currentUser);
}
function onRequestFail(sender, args) {
console.log('ошибка получения пользователя' + args.get_message() + '\n' + args.get_stackTrace());
dfd.reject(args);
}
return dfd.promise();
};
//Проверка ID пользователя, является ли он админом
var currUser = getCurrentUser();
currUser.done(function (res) {
console.log("ID текущего пользователя - ", res.get_id() )
if(res.get_id() == 107)
{
console.log("отображаем панели")
jQuery('#suiteBarDelta').show();
jQuery('#s4-ribbonrow').show();
}
else
{
console.log("не отображаем панели")
jQuery('#suiteBarDelta').hide();
jQuery('#s4-ribbonrow').hide();
}});
</script>
После этих действий весь контент поднимется вверх на несколько сантиметров.
Что еще можно было изменить
Изначально рассматривалось несколько вариантов оформления. Более сложный отложили на потом.
Вариант 1. В более короткий промежуток времени переделать стандартный шаблон и создать новый раздел для размещения документов. Здесь мы отключаем лишние компоненты и вставляем свои.
Вариант 2. Можно оставлять некоторые стандартные компоненты, но переделывать их под свой дизайн и запросы. Например, можно было оставить стандартную навигацию слева – переход по страницам с библиотеками документов. В верхних панелях убрать логотип SharePoint и название, а применить свою цветовую гамму, установить свой заголовок и т.д. использовать поле для поиска на главной странице.
Вариант 3. Создать с нуля свою мастер-страницу [7], подключить свои css-файлы и использовать свой дизайн. Здесь лучше всего работать с SharePoint Designer [8], так как можно использовать максимум гибкости и сразу реализовывать свои дизайнерские идеи.
Troubleshooting
Как в любом крупном программном обеспечении, разбираться с ошибками помогают log-файлы.
Логирование по умолчанию не настроено. Сделаем это [9]. Заходим в Центр администрирования< → Отслеживание → Настройка средств сбора данных диагностики, активируем галочки над нужным функционалом (см. рис. 6), нажав на “+”, можно сделать менее подробное логирование. Далее в двух выпадающих списках выбираем уровень важности для журнала событий (Application Event) и для журнала отслеживания (ULS).
Рисунок 6. Настройка логирования
В SharePoint 2016 log-файлы по умолчанию располагаются в C:\Program Files\Common Files\microsoft shared\Web Server Extensions\16\LOGS. Информация в них записывается в специальном формате Unified Logging System (ULS) [10]. Открывать и анализировать такие log-файлы наиболее удобно утилитой ULS Viewer [11].
За состоянием самого сервера и его служб можно наблюдать в Центре администрирования в разделе Отслеживание. Здесь можно будет увидеть различные ошибки и предупреждения, проверить состояние заданий, открыть отчеты.
Достоинства: функция поиска ускоряет процесс поиска файлов при большом их количестве.
Недостатки: наличие хотя бы минимальных знаний CSS-верстки.
Очень полезной функцией является поиск по документам при большом их количестве в одной или нескольких библиотеках, так как помогает сэкономить время в сравнении с обычным просматриванием папок.
Для начала мы выбрали более простой и быстрый вариант (вариант 1) создания раздела в корпоративном портале для работы с документами. Это решение помогло нам понять принцип работы, скорость, нагрузку, возможности, гибкость системы SharePoint, а также оценить сложность работы и количество потраченного времени ИТ-специалиста. Несмотря на простоту, дизайн оказался строгим, но в то же время удобным для руководства и пользователей.
Разобраться в администрировании системы SharePoint, набросать готовые компоненты на веб-страницу, предоставить в короткие сроки результат не составит большого труда опытному системному администратору. Однако если планируется разработать целый портал, доступ к которому будут иметь как внутри компании, так и снаружи, то даже опытному системному администратору данная задача будет в тягость.
- Болдин С. Работа с MS SharePoint. Часть 1. Знакомство со стандартной конфигурацией. // «Системный администратор», № 9, 2017 г. – С. 20-25. URL: http://samag.ru/archive/article/3494.
- Болдин С. Работа с MS SharePoint. Часть 2. Совместное редактирование документов. // «Системный администратор», № 10, 2017 г. – С. 28-33. URL: http://samag.ru/archive/article/3517.
- Настройка поиска людей – https://technet.microsoft.com/ru-ru/library/hh582311.aspx?f=255&MSPPError=-2147217396.
- Пример выдвигающейся боковой панели на CSS – http://dbmast.ru/vydvigayushheesya-bokovoe-menyu-na-chistom-css, http://tradebenefit.ru/vidvizhnoi-blok-panel-na-css.
- Настройка поиска документов – http://kagarlickij.com/sharepoint-search, https://technet.microsoft.com/ru-ru/library/gg502597.aspx?f=255&MSPPError=-2147217396.
- Часть скрипта – https://kaplin-vladimir.blogspot.com/2017/01/peoplepicker.html.
- Описание мастер-страниц – http://itband.ru/2012/02/brand.
- Описание SharePoint Designer – http://www.intranetno.ru/tags/SHAREPOINT_DESIGNER, https://support.office.com/ru-ru/article/Вводные-сведения-о-SharePoint-Designer-2010-66bf58fe-daeb-4fa6-ae84-fd600e0005c1.
- Настройка логирования – https://blogs.technet.microsoft.com/project_ru/2013/11/14/uls-project-server-2013.
- Описание логирования – http://blog.gandjustas.ru/2012/08/22/5-sharepoint.
- Утилита для ULS лог-файлов – https://www.microsoft.com/en-us/download/details.aspx?id=4616.
Ключевые слова: css-файлы, log-файлы, панель, поиск, документы, источники контента, обходчик, индексирование, логирование, ULS.
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|