Метка: sharepoint
[SharPoint2013] Ошибка ID 6398–Operation is not valid due to the current state of the object
Перестала работать синхронизация профилей пользователей SharePoint 2013 с Active Directory. Журнал Windows был полностью усеян ошибками Event ID 6398 – Operation is not valid due to the current state of the object.
Служба синхронизации профилей пользователей была остановлена и не хотела запускаться.
В интернете много инстуркций, как починить эту ошибку. Я сделал восполльзовался несколькими советами в результате чего у меня все заработало. Что конкретно помомгло не знаю. Вот что сделал:
1. Перезагрузил сервер SharePoint.
2. Дал права Read & execute учетной записи NETWORK SERVICE на каталог C:\Program Files\Microsoft Office Servers\15.0.
3. Отключил задание User Profile Service Application — Задание повторного заполнения кэша веб-каналов в Центр администрирования –> Отслеживание –> Просмотр определений заданий –> Состояние задания таймера.
4. Перезапустил службу SharePoint Timer Service.
Снова попробовал запустить Службу синхронизации профилей пользователей, теперь служба запустилась без проблем.
Как уменьшить размер лог файла базы данных SharePoint 2013
Все началось с того, что перестал работать backup фермы SharePoint 2013. На этом моменте я завис на какое-то время, не мог понять в чем же причина. Скрипты в планировщике не менялись, задания планировщика запускаются, но резервное копирование не выполняется. В логах была ошибка, что на диске не хватает свободного места. Места на дисках было достаточно, поэтому я списал на привередливость SharePoint, которому нужно всегда свободного места с запасом.
Причина стала явной только после ручного запуска резервного копирования фермы SharePoint 2013. Где в сообщении был указан примерный размер резервной копии – 103 гигабайта! Хотя, все предыдущие бэкапы занимали не более 30 гигов.
Первая мысль была, что злы пользователи залили на портал 70 гигов данных, которые придется как-то выявлять и удалять. Пошел на SQL сервер смотреть размер баз данных.
Отправка почты SharePoint 2013 с авторизацей на SMTP-сервере
Все было хорошо, пока корпоративный почтовый сервер Exchange поддерживал аннономную отправку сообщений. Недавно меры безопасности усилили, SMTP-сервер перестал принимать анномимные сообщения электронной почты. Соответственно, вся расылка писем портала на SharePoint 2013 перестала работать. Вроде бы ничего сложного в решении проблемы нет, надо просто ввести учетные данные для отправки писем и SMTP-сервер снова будет их отправлять. Но в настройках SharePoint 2013 нет возможности указать учетные данные.
Сихронизация email’ов пользователей SharePoint 2013 с несколькими доменами
Столкнулся с проблемой отправки почтовых сообщений с портала на SharePoint 2013. На портал ходят пользователи с трех разных доменов, между которыми настроены доверительные отношения. Проблема заключалась в том, что не до всех доходили уведомления с портала. Письма получали только пользователи одного домена из трех.
Первая мысль была про проблемы с настройками Exchange сервера. Могли быть установлены какие-нибудь ограничение для учетной записи, через которую SharePoint обращается к SMTP-серверу. Но несколько проверок показали, что почтовый сервер ни при чем. Остался сам SharePoint.
Как использовать jQuery селектор ID с точками
Столкнулся с задачей, где пришлось даже гуглить, что бы решить. В SharePoint 2013 часто используются id’шники у тегов с точками, пример - id="Ribbon.Table.Design.Style.TableStyles-Large". И тут возникает вопрос – как выбрать этот элемент в коде jQuery? Вариант — $(«a#Ribbon.Table.Design.Style.TableStyles-Large») не подойдет, т.к. id будет считаться только Ribbon, все остальное будет селектором классов.
Решение:
Обратимся к документации jQuery:
To use any of the meta-characters ( such as ! «#$%&'()*+,./:;<=>?@[\]^`{|}~ ) as a literal part of a name, it must be escaped with with two backslashes: \\. For example, an element with id=»foo.bar", can use the selector $(«#foo\\.bar»).
Из документации следует, что надо экранировать точки в ID двойным обратным слешем \\, т.е. получится так:
$("a#Ribbon\\.Table\\.Design\\.Style\\.TableStyles-Large")
Еще один вариант:
$("a[id=’Ribbon.Table.Design.Style.TableStyles-Large’]")
Как отключить контекстное меню на видео и картинках в SharePoint
Возникла задача ограничить от скачивания видеофайл, который размещен через веб-часть Мультимедия на портале SharePoint 2013. Хочу сразу уточнить, что необходимо ограничить только от рядовых пользователей, т.к. есть кеш браузера, откуда продвинутый юзер сможет файл достать.
В самой веб-части Мультимедия нет кнопки Скачать, а вот в контекстном меню браузера Google Chrome есть замечательный пункт Сохранить видео как… Тут даже домохозяйка сможет файл скачать себе на компьютер. Так что надо убрать этот пункт из контекстного меню, либо его отключить. Но отключить только на видеофайле, а не на всем портале полностью.
Отключить контекстное меню в браузере на видеофайле можно с помощью jQuery, как подключить библиотеку jQuery к SharePoint 2013 я уже рассказывал.
На странице, где уже вставлена веб-часть Мультимедиа, вставляем веб-часть Среда и контент –> Редактор сценариев и копируем следующий код:
<script> $(function() { /* запрет контекстного меню на всех элементах img на странице $('img').bind('contextmenu', function(e) { return false; });*/ $('video').bind('contextmenu', function(e) { return false; }); }); </script>
Сохраняем страницу и проверяем результат. Контекстное меню на видео больше не работает.
Если необходимо отключить контекстное меню и на картинках на странице, то в коде надо расскомментировать часть:
$('img').bind('contextmenu', function(e) { return false; });
Outlook 2007 обрезает гиперссылки на SharePoint 2013
Один из пользователей пожаловался, что у него не работают гиперссылки на портал SharePoint 2013 отправленные по электронной почте коллегам. При детальном изучении проблемы выяснилось, что ссылки ведут на вложенные на несколько уровней в глубь библиотеки документов каталоги. Из-за чего ссылка получается очень длинная, пример:
Длинна ссылки составляет – 331 символов. Если вставить ее в письмо в Outlook 2007, то ссылка обрежется и останется только 256 символов. Такой проблемы нет в Outlook 2010 и 2013, поэтому пользователю было рекомендовано обновить офисный пакет до более свежей версии.
Как переименовать кнопку Создать элемент в списке SharePoint 2013
Стандартная кнопка добавления элемента в список SharePoint 2013 называется – Создайте элемент, что в некоторых ситуациях совсем не подходит.
Влезать глубоко в код SharePoint, чтобы изменить название кнопки для всех списков тоже не пойдет, т.к. название кнопки может отличаться у разных списоков. Поэтому стоит задача переименовать кнопку только у конкретного списка, либо у группы списков. Итак, приступим…
Открывать все файлы SharePoint 2013 в клиентских приложениях
После отключения OWA от фермы SharePoint 2013 столкнулся со следующей проблемой – вордовские файлы (docx) скачиваются, а экселевские файлы (xlsx) открываются в OWA. Но т.к. OWA отключен, то появляется ошибка.
По умолчанию в настройках всех библиотек документов стоит параметр – Открыть в браузере. А если есть следы OWA, то идет попытка открыть в OWA, из-за этого ошибка.
Менять этот параметр вручную у всех библиотек документов нереально. Но его можно изменить в настройках семейства сайтов.
Заходим на корневой сайт под учетной записью администратора семейства веб-сайтов, далее идем в Параметры –> Параметры сайта –> Администрирование семейства сайтов, активируем функцию Открывать документы в клиентских приложениях по умолчанию.
После активации по умолчанию у всех библиотек будет выставлен параметр Открыть в клиентском приложении.
Если у библиотек уже был выбран другой параметр (не по умолчанию с сервера), то он так и останется.
P.S. Активировать функцию можно и через PowerShell — Настройка способа открытия по умолчанию для семейств сайтов с помощью Windows PowerShell.
Как отключить Office Web Apps в SharePoint 2013
В ферме SharePoint 2013 был настроен Office Web Apps (OWA), все офисные документы открывались в OWA. К сожалению, из-за сетевой инфраструктуры предприятия на данный момент нельзя обеспечить доступ к серверу OWA со всех рабочих компьютеров. Поэтому принято решение временно отключить сервер OWA от фермы SharePoint 2013, но с возможностью последующего его ввода в строй.
Как отключить OWA:
— На сервере SharePoint запускаем Командную консоль SharePoint 2013;
— Вводим команду:
Remove-SPWOPIBinding -All:$true
и подтверждаем – Y.