среда, 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 и видеть сообщение:





понедельник, 9 февраля 2015 г.

Восставший InfoPath 2013


Сегодня стало известно, что InfoPath 2013 будет работать в SharePoint 2016.
Обновления клиента InfoPath не будет, 2013 - последняя версия.
Напомню, Microsoft планировал представить новую технологию для создания форм, это будет не развитие InfoPath, а что-то новое. Но оно, не появится. InfoPath не только восстал из мертвых, но и поквитался со своей заменой - FoSL vNext.

пятница, 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()

SharePoint Ошибка рабочего процесса: An IfElseActivity must have at least...


Сделав совсем маленький рабочий процесс я попытался опубликовать его.
Ферма 2013 версии, а рабочий процесс 2010.
Часть процесса, из-за которой возникла ошибка выглядит так:

Публикация рабочего процесса прошла неудачно:


Текст ошибки:
При компиляции рабочего процесса были обнаружены ошибки. Файлы рабочего процесса сохранены, но не могут быть выполнены.
Дополнительно:
(0,0) Activity 'ID38' validation failed: An ifElseActivity must have at least one child of type ifElseBranchActivity.)

Пытаясь найти решение, я обнаружил невидимый элемент, который все же можно сделать доступным для просмотра, если выполнить клик по нему:

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

Множественные ошибки в SharePoint 2013 и преобразование типа лицензии


Столкнулся с интересным поведением Microsoft SharePoint Server 2013 Enterprise Edition. Ферма устанавливалась полгода назад и использованием ключа, который дает право на 180 тестирования. Сначала начали падать страницы с веб-частью "Веб канал сайта". Потом перестали создаваться новые подключения к Active Directory из приложения-службы профилей с ошибкой "The operation was aborted because the client side timeout limit was exceeded":

Я попробовал увеличить цифры для приложения службы и прокси - не помогло. Пользовался статьей.
Позже перестал работать Access. Потом еще и Visio с ошибкой "Пробный период для данного продукта истек":

Текст ошибки меня несколько озадачил. Проверив дату установки по дате создания папки 15 Hive и сравнив с сегодняшней датой - решил преобразовать тип лицензии SharePoint. Делается так же как в посте про активацию "Активация лицензии SharePoint 2013". После этого ошибки не пропали, я перезагрузил IIS и попробовал снова - все заработало: Access, Visio, Синхронизация профилей и Веб-канал сайта. Удивительно, что я не получал сообщение "Период пробного использования данного продукта истек".

Microsoft Virtual Academy. Первый курс по разработке SharePoint 2013

Есть замечательный ресурс, который позволяет пройти обучение по современным технологиям Microsoft - Microsoft Virtual Academy. Меня очень огорчало полное отсутствие материалов по SharePoint. Сейчас ситуация поменялась и был добавлен первый курс, который состоит из трех обучающих модулей (на самом деле курс был добавлен еще 01 авг 2014 , но я только это заметил). Весь материал взят с конференции DevCon 2014.
Надеюсь в будущем появятся полноценные обучающие материалы.