SharePoint и SMS. Часть 2. Регистрация OMS-сервиса

В этом посте я расскажу и покажу как настроить SharePoint для отправки СМС-сообщений по средствам OMS-сервиса. Если у вас нет такого сервиса, то прочитать о том, как его создать можно в первой части данной серии постов: Создание OMS веб-сервиса.

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

SharePoint 2013 Ribbon API. Версии 14.3 и 15.4

Очередной релиз QASPRibbon для работы с SharePoint Ribbon. Обновление касается как 14 версии для SharePoint 2010, так и 15 для SharePoint 2013. Также впервые стала доступна урезанная версия для управления лентой в sandbox-решениях, позволяющая использовать QASPRibbon API в решениях для ShareP

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

SharePoint 2010 List View Filter 1.9 и 2.0

Очередное обновление моего фильтра для списков SharePoint 2010/2013. Версия 1.9 - последняя для SharePoint 2010. Начиная с версии 2.0 SPListViewFilter будет совместим только с SharePoint 2013.

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

SharePoint 2010/2013. Локализация данных

В SharePoint существует механизм локализации, позволяющие использовать ресурсы для задания имен сайтов, списков, библиотек, полей и прочего. К тому же, если существует поле, используемое другим списком при подстановке, то и в этом случае локализация работает отлично. Атрибут ShowField также умеет

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

5 особенностей SPSiteDataQuery

В SharePoint есть механизм, позволяющий выбирать данные из нескольких списков одним запросом. Для этого существует класс SPSiteDataQuery. Проблема в том, что он имеет ряд особенностей. О них сегодня и речь.

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

SharePoint 2013. Введение в SharePoint App. Часть 1

С выходом SharePoint 2013 стал доступна новая модель решения для SharePoint - SharePoint App. Т.е. к уже имеющемуся и привычному Solution Development добавили Application Development. В этом посте я хотел бы рассказать о том, что такое SharePoint App и зачем вообще их придумали (и без того в Share

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

SharePoint Ribbon API. Версия 14.1

На codeplex опубликована новая версия SharePoint Ribbon API для SharePoint 2010. Нововведения следующие: Локализация. Теперь реализована поддержка локализации аналогично стандартному функционалу SharePoint; Quick Access Toolbar (QAT). Теперь можно добавлять свои кнопки в QAT-панель; Исправл

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

SharePoint Ribbon. Создание многоуровневого меню

Еще один сценарий применения QASPRibbon - создание многоуровневого меню. В SharePoint меню на рибоне может быть использовано в следующих элементах: FlyoutAnchor, SplitButton, MRUSplitButon, DropDown и ComboBox. Каждое меню состоит из секций (MenuSection), которые могут содержать либо кнопки (

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

SharePoint Ribbon. Использование ColorPicker'а

Небольшой сценарий использования ColorPicker'а, встроенного в рибон, с помощью SharePoint Ribbon API. Я опишу процесс создания веб-части, которая будет регистрировать новую вкладку на рибоне с элементами управления. Сама веб-часть будет содержать два div'а, параметры отображения которых мы и будем

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

SharePoint 2010/2013 Ribbon API

На codeplex опубликована бета-версия QASPRibbon - API для SharePoint Ribbon. Есть версии как для SharePoint 2010, так и для SharePoint 2013. К сожалению нет родного API от Microsoft для удобного построения своих элементов на рибоне. Все элементы рибона должны быть описаны в виде XML. Что крайне не

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

Разработка для SharePoint. Как это было и как это будет

Как изменялся подход к разработке решений на базе Microsoft SharePoint, начиная с SharePoint 2003, и, оканчивая SharePoint 2013. Изначально я хотел описать, что такое FEATURE в SharePoint разработке, рассказав о разработке под SharePoint 2003, когда этого понятия даже не было.

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

SharePoint. История социализма за 10 лет

Выход новой версии SharePoint всегда сопровождается значительным расширением функционала связанного с внутрикорпоративным взаимодействием, основанным на личных сайтах пользователей (он же "Личный узел пользователя" и "Мой узел"). Чего нельзя сказать о работе с данными в списках/библиотеках. Я хоте

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

SharePoint 2013. Тип поля Geolocation

В SharePoint 2013 появился новый тип поля, предназначенный для работы с географическими данными. Называется он Geolocation (Geographic location that represents a point on a map). Также появился новый тип представления, предназначенный для отображения данных списка на карте.

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

SSRS. Уникальные значения из списка SharePoint

При создании отчетов с помощью Report Builder'а или BI DevStudio (читай "Visual Studio") в качестве источника данных можно использовать списки и/или библиотеки документов, расположенные на сайте SharePoint. Для извлечения данных в этом случае используются CAML-запросы, что означает отсутствие стан

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

Linq to SharePoint. Создаем ContentIterator

В SharePoint 2010 для работы с большими списками есть класс Microsoft.Office.Server.Utilities.ContentIterator (Microsoft.Office.Server.dll), который позволяет итеративно обрабатывать элементы списка. Сегодня я покажу как можно реализовать аналогичный итератор при использовании Linq to SharePoint.

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

Опубликован SPListViewFilter 1.2

Вчера я опубликовал очередную версию SPListViewFilter. Так как предыдущие версии я не описывал, в этом посте я опишу на что способен SPListViewFilter и как он работает.

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

Linq to SharePoint. Версионность

В SharePoint 2010 есть поддержка версионности. Сегодня я покажу как можно использовать эту возможность при реализации доступа к данным списков/библиотек документов посредсвам Linq to SharePoint.

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

SharePoint 2010. Апрельский накопительный пакет обновлений

Вышел апрельский накопительный пакет обновлений для SharePoint 2010 SP1. Владельцам SharePoint Server 2010 с Project Server нет необходимости устанавливать отдельно пакет обновлений для SharePoint Server 2010 и SharePoint Foundation, т.к. они в него включены. Аналогично с SharePoint Server 2010

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

SharePoint 2010. Отчеты MS SSRS без сервера отчетов

Сегодняшний пост будет посвящен использованию отчетов, созданных с помощью Microsoft SQL Server Reporting Services (MS SSSRS), в портальных решениях под управлением MS SharePoint 2010. Более подробно я расскажу о вариантах работы с отчетами без сервера отчетов.

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

Linq to SharePoint. Блокировка документов

Иногда при работе с документами необходимо на некоторое время запретить другим пользователями его изменение. В Microsoft SharePoint 2010 для реализации данного требования есть две возможности: извлечение файла и блокировка файла.

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

Linq to SharePoint. Паттерн Repository

Linq to SharePoint - это провайдер от Microsoft, который позволяет транслировать LINQ-выражения в CAML-запросы для работы с данными списков и библиотек документов SharePoint. Сегодня я покажу, как можно реализовать паттерн репозитория для работы с данными SharePoint 2010.

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

Linq to SharePoint. Получение мета-данных списка

Одним из недостатков Linq to SharePoint является то, что метаданные списков (поля, типы содержимого и прочее) нельзя получить. При этом сами данные присутствуют, но только как internal. И в случае, когда необходимо проверить какие-нибудь свойства списка, приходится инициализировать объекты SPWeb и

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

Делаем сайт на SharePoint 2010. Оптимизация

Сегодня я расскажу про оптимизацию интернет-сайтов на базе MS SharePoint 2010 для достижения максимальной производительности. Этот пост будет продолжением предыдущего, посвященного брендингу SharePoint, т.е. оптимизация по большей части будет касаться интерфейса посетителей, а не редакторов/модера

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

Делаем сайт на SharePoint 2010. Брендинг

Этим постом я начну описывать процесс создания интернет сайта на основе SharePoint 2010. Первый посты будут посвящены использованию для этого бесплатной версии MS SharePoint Foundation 2010

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

Обработка большого количества элементов в SharePoint

В сегодняшнем посте я продолжу писать о производительности при работе со списками/библиотеками документов в SharePoint. На этот раз массовое создание/изменение/удаление элементов. И все это в трех вариантах: Стандартный функционал SharePoint (SPListItem.Update(), SPListItem.Delete()); М

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

Получение уникальных значений поля списка

Сегодня пост об использовании не совсем правильного подхода при решении очень часто встречающейся проблемы при разработке решений на базе SharePoint: получение набора уникальных значений поля списка. Описанный мною метод относится к спискам/библиотекам, содержащим более 5000 элементов.

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

DeskWork 5. Функциональность (продолжение)

Последний мой пост, посвященный функциональности DeskWork 5. Сегодня я опишу, как и обещал в предыдущем посте рабочие процессы, видеоконференцию и архив. Также вернусь к описанию адресной книги и структуре организации, т.к. эта часть была переписана в версии 5.1.

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

Linq to SharePoint. Часть 4. Dynamic LINQ

В четвертом посте, посвященном работе с Linq to SharePoint я покажу примеры использования динамических запросов и опишу механизм приведения объектов SPListItem к объектам, используемым в Linq to SharePoint.

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

Linq to SharePoint. Особенности. Часть 3

Сегодня еще один небольшой пост, посвященный работе с Linq To SharePoint. На этот раз я расскажу о том, как использовать Linq to SharePoint в случае анонимного доступа, как получать списки по их URL'у, а не по названию.

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

SharePoint Client Object Model. Управляемый код

С этого поста я начну рассказывать о клиентской объектной модели (Client Object Model) SharePoint, о том как она работает и как можно её использовать. Сегодня я покажу как работает клиентская модель в управляемом коде на примере создания веб-части, отображающей последние новости с сайта www.eon-ru

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

Использование контрола HtmlEditor. Часть 3

В завершении описания HtmlEditor я покажу несколько примеров его использования: как запросить данные у пользователя, вызвав модальное окно с редактором и что делать, если версия интерфейса вдруг окажется равной 3 (такое часто бывает в результате миграции с SharePoint 2007 на SharePoint 2010).

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

Linq to SharePoint. Особенности. Часть 2

Сегодня я опишу ещё несколько особенностей при работе с LinqToSharePoint (предыдущую статью, посвященную LinqToSharePoint читаем здесь). Расскажу про построение JOIN'ов в списках, ускорении работы с данными и прочее.

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

PeopleEditor и Internet Explorer 9

В этом посте я покажу, что происходит с контролом выбора пользователя (PeopleEditor) в случае работы IE9 в режиме именно Internet Explorer 9. Происходит с PeopleEditor следующая неприятность: ОН НЕ РАБОТАЕТ. Целый день я потратил на поиски решения, т.к. заказчику не верится, что Micros

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

Использование контрола HtmlEditor. Часть 2

В продолжении серии постов, посвященных HtmlEditor'у, я покажу, как создать свой редактор и зачем это может понадобиться. Описание проекта, созданного мною для демонстрации, можно посмотреть в первом посте о HtmlEditor'е.

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

Использование контрола HtmlEditor. Часть 1

Сегодня я расскажу о том, как можно использовать стандартный редактор форматированного текста на своих страницах (контролах, веб-частях). Постов, посвященных HtmlEditor'у, будет несколько. Начну я с простого примера использования HtmlEditor'а на благо проекта.

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

Пропадающий контрол выбора представления списка

В SharePoint 2010 при просмотре содержимого списка есть одна очень спорная особенность: если на странице расположены более одной веб-части, то контрол этот уходит по-английски. В этом посте я расскажу почему это происходит и как я решаю эту проблему.

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

Развертывание библиотеки документов с файлами

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

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

Отключенные учетные записи и PeoplePicker

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

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

Длительные операции в SharePoint. Request timed out

В предыдущих постах, посвященных SPLongOperation (снаружи и изнутри) я писал о том, что операции исполняются синхронно. Для завершения этого мини цикла статей надо бы указать сценарии применения.

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

DeskWork. Версия 5.1

22 ноября 2011 года вышла новая версия DeskWork под номером 5.1. Вот я и решил рассмотреть нововведения. Их 9 штук. Забегая вперед, скажу, что в дальнейшем буду рассматривать эту версию, а к пересмотру уже написанного вернусь позже.

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

DeskWork 5. Часть 2. Функциональность

В предыдущем посте я писал про установку DeskWork. Сегодня я подробнее рассмотрю функциональность системы и постараюсь сделать вывод о целесообразности приобритения решения от компании СофтЛайн.

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

SharePoint 2010. Random ListItem

Что делаем Получаем произвольный элемент из списка/библиотеки. Здесь варианта два. Первый - получить коллекцию ID'шников элементов и выбрать из них произвольно. Второй поинтересней и основан на том, что элементы из списка можно получать не только по ID, но и

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

SharePoint 2010 UpdatePanel. Request Notification

Что делаем Уведомляем пользователя о том, что UpdatePanel обновляется. Для вывода сообщений используем SP.UI.Notify. Задача следующая: при отправке запроса на сервер выводим стикер "Загрузка данных", а после окончания запроса стикер убираем.

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

Linq to Sharepoint. Особенности

В SharePoint 2010 появилась замечательная вещь под названием Linq-to-SharePoint. Не без особенностей конечно. Вот некоторые из тех, что я "нашел".

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

SharePoint 2010. Локализация SiteDefinition

Решение проблемы, связанной с локализацией SiteDefinition в Visual Studio 2010. При развертывании решения на сервер SiteDefinition оказывается "привязан" не к тому языку, что ожидалось.

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