• SharePoint Server 2013 - Организуем конкурс детского рисунка на основе Библиотеки рисунков с голосованием и динамическим обновлением Представления.

    imageПоставили задачу оперативно организовать на локальном сайте SharePoint конкурс детских рисунков с голосованием. Чтобы не изобретать велосипед было решено использовать встроенный в SharePoint 2013 функционал “Библиотеки рисунков” с включённым механизмом оценок. Однако первые же тесты показали, что на имеющейся у нас в данный момент версии - SharePoint Server 2013 Standard SP1 (15.0.4571.1502), некорректно работает отображение результатов оценки/голосования при отображении в виде звёзд. В случае, если общая сумма оценок получалась такой, что должно было отображаться половина звезды – все звёзды отображались вообще пустыми. Изучение проблемы привело к выводу, о том, что в коде, хранящемся в БД есть ошибка при использовании неверного знака разделителя дробной и целой части. Эту гипотезу подтверждало также то, что на английской версии шаблона сайта проблема не воспроизводилась. В конечном итоге от проблемы удалось избавиться установив последнее кумулятивное обновление KB2889944 - November 11, 2014 Cumulative Update for SharePoint Server 2013 package.

    Читать далее...

  • SharePoint 2013 - Галерея изображений с хранением контента вне базы данных

    imageПоступил запрос о создании на сайте SharePoint 2013 отдельного хранилища графических изображений (цифровых фотографий). Первое, что пришло в голову - реализовать задачу стандартными средствами SharePoint, создав для этих целей Библиотеку рисунков SharePoint. Однако согласно поставленной задачи таких изображений нужно будет размещать большое количество, да ещё и в большом разрешении (как следствие размер графических файлов будет не скромный). Изучая вопрос о том, как можно вынести данный контент из БД, мы встали перед выбором между двумя возможными на момент постановки задачи вариантами:

    • Использовать технологию Remote BLOB Storage (RBS) обеспечиваемую провайдером FILESTREAM из SQL Server в связке с SharePoint;
    • Использовать сторонние коммерческие решения для расширения SharePoint, позволяющие в числе своих функций выносить контент списков и библиотек SharePoint на внешние накопители, как например Sparqube Picture Column

    После изучения возможных преимуществ и недостатков первого варианта стало очевидно, что без соблюдения Лучших практик использования FILESTREAM, которые мы в нашей ситуации не могли выполнить, в конечном счете мы можем получить ощутимую деградацию производительности семейства сайтов SharePoint и ещё ряд побочных неприятностей.

    Второй вариант, с использованием сторонних коммерческих продуктов рассматривался вообще как крайний вариант, и отпал сам собой, в частности в силу неоправданной дороговизны подобных решений.

    На помощь пришёл наш коллега - специалист по SharePoint Владимир Земляков, написавший Решение (Solution), которое создаёт в семействе сайтов SharePoint новый Тип контента и позволяют работать с ним, оперируя внешними графическими файлами в элементах Списка SharePoint, созданного на основе нового Шаблона списка. Визуализация изображений для конечных пользователей реализована на базе модифицированного Решения Mirata.PictureGallery от Daniel Reed. Далее обзорно рассмотрим установку и использование этих решений.

    Читать далее...