Показаны сообщения с ярлыком SharePoint 2010. Показать все сообщения
Показаны сообщения с ярлыком SharePoint 2010. Показать все сообщения

понедельник, 30 ноября 2015 г.

SharePoint. Ошибка WebDAV при открытии библиотеки в проводнике. Нет доступа.

На узле имеется библиотека документов с очень большим количеством файлов и папок.
При попытке открыть библиотеку в проводнике - получил ошибку:


Текст ошибки:
Нет доступа к \\server\DavWWWRoot\site\library. Возможно, у вас нет прав на использование этого сетевого ресурса. Обратитесь к администратору этого сервера для получения соответствующих прав доступа.
Присоединенное к системе устройство не работает.


На английском языке:
\\server\DavWWWRoot\site\library is not accessible. You might not have permission to use this network resource. Contact that administrator of this server to find out if you have access permissions.
A device attached to the system is not functioning.

Несмотря на то, что в тексте ошибки речь идёт о правах доступа, к реальности это не имеет никакого отношения. Когда библиотека документов открывается в проводнике windows, то используется протокол WebDAV. Ошибка происходит из-за ограничений на получение количества данных по этому протоколу. Настройки хранятся в реестре Windows. Чтобы исправить описанную выше ошибку, необходимо сделать следующие шаги:

  • Откройте редактор реестра - regedit.
  • Перейдите к ветке реестра: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters\
  • Найдите ключ реестра FileAttributesLimitInBytesfor
  • Если его нет, то создайте ключ FileAttributesLimitInBytesfor с типом DWORD.
  • Дальше необходимо изменить его значение. Для удобства измените систему исчисления. Изначально скорее всего будет отмечена шестнадцатеричная:

    Поменяйте на десятичную и задайте значение 50000000, это максимальное значение:
После этого необходимо перезапустить службу "Веб-клиент":
net stop webclientnet start webclient
После выполнения этих шагов библиотека открылась через проводник.
Проблема в том, что эти настройки делаются на клиенте. Вероятно потребуется их распространить через GPO.

пятница, 30 октября 2015 г.

SharePoint. Группировка по году создания.

У меня возникла необходимость группировать элементы списка именно по году создания. Если выбрать группировку по дате создания, то это не даст нужного результата, к сожалению.
Для достижения цели нам необходимо, для начала, создать вычисляемый столбец:


Назовите его "Год". И задайте значение поля "Формула" вот так: "=ГОД(Дата)" или "=ГОД(Создано)", если вы не создавали отдельного столбца для хранения даты.
Функция "Год()" может быть вам уже знакома из Microsoft Excel.
Важно отметить, что если у вас другой язык в SharePoint, то и формула должна быть написана на соответствующей языке.

После создания столбца "Год" - он будет заполнен значением года. Теперь необходимо создать новое представление и группировать элементы по полю "Год":





Результат должен быть как на картинке:



Так же, если при создании поля вы выбрали тип вычисляемого столбца как "Число", то по этому полю можно будет сортировать.

среда, 25 марта 2015 г.

SharePoint 2013 Workflow error: HTTP 401 & HTTP 423

В моём решение я использовал рабочий процесс. Причем не встроенные 2010 версии, а новые, используя Workflow manager 1.0. После старта рабочего процесса возникала ошибка, в который в самом начале фигурирует:
HTTP 423 или HTTP Unauthorized
Так же может быть:
HTTP 401

Пример:



















Чаще всего встречалась ошибка:
RequestorId: 37edfcab-8717-2a41-0000-000000000000. Details: An unhandled exception occurred during the execution of the workflow instance. Exception details: System.ApplicationException: HTTP 401 {"Transfer-Encoding":["chunked"],"X-SharePointHealthScore":["0"],"SPClientServiceRequestDuration":["98"],"SPRequestGuid":["37edfcab-8717-2a41-9647-2cd739cfd2c0"],"request-id":["37edfcab-8717-2a41-9647-2cd739cfd2c0"],"X-FRAME-OPTIONS":["SAMEORIGIN"],"MicrosoftSharePointTeamServices":["15.0.0.4569"],"X-Content-Type-Options":["nosniff"],"X-MS-InvokeApp":["1; RequireReadOnly"],"Cache-Control":["max-age=0, private"],"Date":["Thu, 26 Feb 2015 08:47:18 GMT"],"Server":["Microsoft-IIS\/8.5"],"WWW-Authenticate":["NTLM"],"X-AspNet-Version":["4.0.30319"],"X-Powered-By":["ASP.NET"]} at Microsoft.Activities.Hosting.Runtime.Subroutine.SubroutineChild.Execute(CodeActivityContext context) at System.Activities.CodeActivity.InternalExecute(ActivityInstance instance, ActivityExecutor executor, BookmarkManager bookmarkManager) at System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor, BookmarkManager bookmarkManager, Location resultLocation)


Дело в том, что если Вы используете Workflow manager 1.0, то для работы со списком списком истории рабочего процесса будут использоваться права инициатора рабочего процесса. И у инициатора может быть недостаточно прав для работы с этим списком. Имейте это в виду.
Для решение проблемы необходимо повысить права пользователя на список истории рабочего процесса до уровня разрешений  "Совместная работа", сам список скрытый. Можно использовать SharePoint manager 2013, с его помощью поменять свойство списка "hidden" на false. Список появится в веб-интерфейсе и с ним можно будет работать как с обычным списком:



Теперь можно назначить необходимые права для пользователя.
Но есть способ несколько проще. Для этого достаточно использовать Microsoft SharePoint Designer. Откройте Ваш сайт, слева выберите пункт "Все файлы", если подвиснет на этапе "Создание отчёта" - обновите контент. Это баг с 2010 версии еще остался.

В основном окне выберите папку "Lists", потом "Workflow History", правый клик и выбрать свойства:
Потом на ленте выбрать "Веб-страница администрирования":

После этого Вы увидите привычную страницу настройки списка. Добавьте необходимые права и проблема исчезнет. Рабочий процесс запускать снова необязательно. Достаточно на странице процесса в разделе попапе информации кликнуть на "Возобновить рабочий процесс".

среда, 18 февраля 2015 г.

SharePoint. Сменить URL библиотеки или списка

Если появилась необходимость поменять url адрес списка или библиотеки, то сделать это через веб-интерфейс не получиться. Можно изначально назвать латиницей библиотеку или список, а потом переименовать. Тогда название будет отличаться от url.
Если же надо именно у уже созданной библиотеке или списка сменить url, то есть 2 способа.
1. Использовать SharePoint Designer
2. Использовать проводник Windows
Давайте начнем с SharePoint Designer и случаем, когда необходимо переименовать библиотеку. Откройте SPD и выполните действия как на картинке:


Второй способ, это переименовать библиотеку или список, но не используя SharePoint Designer. Для этого, используя Internet Explorer, откройте библиотеку. Потом выберите на ленте инструментов "Библиотека->Открыть в проводнике":

Если все хорошо, то Windows Explorer (Проводник Windows) подключится к библиотеке, используя протокол WebDav:

Перейдите на уровень выше и среди папок увидите свою библиотеку. Ищите папку не отображаемым именем, а с тем, которое видите в адресной строке браузера. Потом переименуйте.
Последним способом можно переименовать и список, но для этого надо открыть через WebDav в проводнике любую другую библиотеку, потом перейти на уровень выше и в папку "Lists". Там найдите необходимый список.
После смены url любым из указанных способов, необходимо самостоятельно поменять ссылку на библиотеку или список. Если этого не сделал, то пользователи будут попадать на старый Url и видеть сообщение:





пятница, 30 января 2015 г.

Sharepoint designer. Рабочий процесс не обновляется после публикации

Создавая рабочий процесс для SharePoint 2010 и используя SharePoint Designer 2010 я столкнулся с проблемой, новый процесс не начинал работать с новой логикой. Причем ошибка появилась после решения такой ошибки.
SharePoint "видел", что процесс именно новый, т.к. к отработанным в прошлом добавлялось время публикации, в скобках. Но работать продолжал по старой логике.
Как выяснилось, причина на стороне клиента, а именно в SharePoint Designer. Причем ошибка появилась в 2010 и 2013 версиях.
Что бы побороть проблему надо почистить кэш, для этого необходимо удалить все данные по следующим путям:

%USERPROFILE%\AppData\Local\Microsoft\WebsiteCache
%APPDATA%\Microsoft\Web Server Extensions\Cache

Для SharePoint Designer 2010 еще надо сделать несколько движений:
Файл->Параметры->Общие->Кэшировать данные сайта во время сеансов в SharePoint Designer(Снять галочку)

Это решило проблему.

SharePoint 2010 Ошибка при публикации рабочего процесса


При попытке публикации очень большого рабочего процесса, я получил ошибку на этапе валидации (Validating the workflow):
Errors were found when compiling the workflow. The workflow files were saved but cannot be run:

В подробностях написано:
Unexpected error on server associating the workflow

В общем не особо говорящая ошибка, но все же ясно что проблема на сервере.
Я пробовал обновить сервер, но это так же не помогло.

Решением стало выполнение этого PowerShell скрипта:

$application = get-spwebapplication http://portal
$application .UserDefinedWorkflowMaximumComplexity = 10000
$application .Update()

воскресенье, 16 ноября 2014 г.

SharePoint. Как поменять favicon.

Порой необходимо заменить favicon в SharePoint, делается это одинаково для 2010 и 2013 версии, думаю так же будет для следующих.

К примеру мы хотим что-то вроде такого:

Можно подменить файл в папке по адресу C:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\TEMPLATE\IMAGES, с виду вариант не очень хорош, но при нем картинка избранного поменяется везде. Второй вариант позволит поменять картинку только на отредактированной Вами мастер-странице. Для этого откройте мастер-страницу через SharePoint Designer и отредактируйте тэг:
<SharePoint:SPShortcutIcon runat="server" IconUrl="/_layouts/15/images/favicon.ico?rev=23" />Поменяйте "IconUrl" на адрес с Вашей картинкой, только положите ее рядом со старой. После этого необходимо выполнить перезагрузку веб-сервера IIS и почистить кэш браузера.