Архив за 2012 год
Еще один сценарий применения QASPRibbon - создание многоуровневого меню. В SharePoint меню на рибоне может быть использовано в следующих элементах: FlyoutAnchor, SplitButton, MRUSplitButon, DropDown и ComboBox. Каждое меню состоит из секций (MenuSection), которые могут содержать либо кнопки (
Читать дальшеНебольшой сценарий использования ColorPicker'а, встроенного в рибон, с помощью SharePoint Ribbon API. Я опишу процесс создания веб-части, которая будет регистрировать новую вкладку на рибоне с элементами управления. Сама веб-часть будет содержать два div'а, параметры отображения которых мы и будем
Читать дальшеНа codeplex опубликована бета-версия QASPRibbon - API для SharePoint Ribbon. Есть версии как для SharePoint 2010, так и для SharePoint 2013. К сожалению нет родного API от Microsoft для удобного построения своих элементов на рибоне. Все элементы рибона должны быть описаны в виде XML. Что крайне не
Читать дальшеВыяснил некоторые подробности по поводу перевода Office 365 на платформу SharePoint 2013.
Читать дальшеКак изменялся подход к разработке решений на базе Microsoft SharePoint, начиная с SharePoint 2003, и, оканчивая SharePoint 2013. Изначально я хотел описать, что такое FEATURE в SharePoint разработке, рассказав о разработке под SharePoint 2003, когда этого понятия даже не было.
Читать дальшеНа CodePlex опубликована очередная версия фильтра для списков SharePoint 2010. В новой версии появился новый контрол для фильтрации - слайдер.
Читать дальшеВыход новой версии SharePoint всегда сопровождается значительным расширением функционала связанного с внутрикорпоративным взаимодействием, основанным на личных сайтах пользователей (он же "Личный узел пользователя" и "Мой узел"). Чего нельзя сказать о работе с данными в списках/библиотеках. Я хоте
Читать дальшеЕще один небольшой пост о новых контролах SharePoint 2013. Сегодня три небольших контрола: FoldHyperLink, предназначенный для отображения/сокрытия информация, AuthenticatedUserDiv для управления стилями в зависимости от того, авторизован ли пользователь и WebPartError, который поможет привести к е
Читать дальшеПродолжая тему предыдущего поста о контроле ImageCrop, сегодня о ещё одном новом контроле - ClientPeoplePicker. Предназначен он, как видно из названия, для выбора пользователей. В отличии от классического PeoplePicker'а новый контрол обладает автокомплитом!
Читать дальшеОбзор нового конторла ImageCrop , появившегося в SharePoint 2013.
Читать дальшеВ SharePoint 2013 появился новый тип поля, предназначенный для работы с географическими данными. Называется он Geolocation (Geographic location that represents a point on a map). Также появился новый тип представления, предназначенный для отображения данных списка на карте.
Читать дальшеНебольшая инструкция для включения анонимного доступа на портале под управлением SharePoint 2013.
Читать дальшеНа CodePlex опубликована новая версия фильтра для списков SharePoint. В новой версии появилась возможность выбора разметки для отображения контролов:
Читать дальшеСоздание типа поля, унаследованного от типа Пользователь (User) с реализацией кастомного пикера (EntityPicker).
Читать дальшеBeta-версия Microsoft SharePoint 2013 доступна для скачивания: http://www.microsoft.com/en-us/download/details.aspx?id=30345. Пока только Foundation.
Читать дальшеПри построении отчетов с помощью MS Report Builder'а можно использовать контрол Map для отображения данных с привязкой к географической карте.
Читать дальшеОшибка "This method explicitly uses CAS policy, which has been obsoleted by the .NET Framework" при просмотре отчета в построителе отчетов (Report Builder).
Читать дальшеВышла новая версия фильтра для списков SharePoint. В новой версии стал доступен автокомплит:
Читать дальшеПри создании отчетов с помощью Report Builder'а или BI DevStudio (читай "Visual Studio") в качестве источника данных можно использовать списки и/или библиотеки документов, расположенные на сайте SharePoint. Для извлечения данных в этом случае используются CAML-запросы, что означает отсутствие стан
Читать дальшеВ SharePoint 2010 есть класс SPStatefulLongOperation, который позволяет реализовать выполнение длительных операций с обновляемым статусом.
Читать дальшеВ SharePoint 2010 для работы с большими списками есть класс Microsoft.Office.Server.Utilities.ContentIterator (Microsoft.Office.Server.dll), который позволяет итеративно обрабатывать элементы списка. Сегодня я покажу как можно реализовать аналогичный итератор при использовании Linq to SharePoint.
Читать дальшеМалоизвестная возможность, позволяющая автоматически генерировать и назначать уникальный штрихкодовый идентификатор элементу списка или документу.
Читать дальшеВчера я опубликовал очередную версию SPListViewFilter. Так как предыдущие версии я не описывал, в этом посте я опишу на что способен SPListViewFilter и как он работает.
Читать дальшеПри развертывании решения в SharePoint 2010 иногда возникает ошибка "Unable to locate the xml-definition for FieldName with FieldId 'GUID'"
Читать дальшеСегодня я покажу как выполнять Cross-SiteCollection запросы с использованием Linq to SharePoint.
Читать дальшеВ SharePoint 2010 есть поддержка версионности. Сегодня я покажу как можно использовать эту возможность при реализации доступа к данным списков/библиотек документов посредсвам Linq to SharePoint.
Читать дальшеВышел апрельский накопительный пакет обновлений для SharePoint 2010 SP1. Владельцам SharePoint Server 2010 с Project Server нет необходимости устанавливать отдельно пакет обновлений для SharePoint Server 2010 и SharePoint Foundation, т.к. они в него включены. Аналогично с SharePoint Server 2010
Читать дальшеНебольшой пост о том, как можно получить иконку для файла, который зарегистрирован в SharePoint.
Читать дальшеСегодняшний пост будет посвящен использованию отчетов, созданных с помощью Microsoft SQL Server Reporting Services (MS SSSRS), в портальных решениях под управлением MS SharePoint 2010. Более подробно я расскажу о вариантах работы с отчетами без сервера отчетов.
Читать дальшеПоиск и удаление "битых" решений (solutions) в SharePoint 2010, из-за которых возникают примерно вот такие ошибки: Не удалось найти XML-файл в указанном расположении: "14\Template\Features\FetureFolder\feature.xml"
Читать дальшеПост о том как добавить серверную обработку нажатия на кнопку на рибоне, созданном с помощью SharePoint 2010 Fluent Ribbon API.
Читать дальшеНебольшой пост про ошибки, возникающие в SharePoint 2010 при работе со службой синхронизации профилей пользователей.
Читать дальшеИногда при работе с документами необходимо на некоторое время запретить другим пользователями его изменение. В Microsoft SharePoint 2010 для реализации данного требования есть две возможности: извлечение файла и блокировка файла.
Читать дальшеLinq to SharePoint - это провайдер от Microsoft, который позволяет транслировать LINQ-выражения в CAML-запросы для работы с данными списков и библиотек документов SharePoint. Сегодня я покажу, как можно реализовать паттерн репозитория для работы с данными SharePoint 2010.
Читать дальшеСегодня я покажу как можно построить иерархическую зависимость страниц интернет-сайта, созданного на базе MS SharePoint 2010.
Читать дальшеОдним из недостатков Linq to SharePoint является то, что метаданные списков (поля, типы содержимого и прочее) нельзя получить. При этом сами данные присутствуют, но только как internal. И в случае, когда необходимо проверить какие-нибудь свойства списка, приходится инициализировать объекты SPWeb и
Читать дальшеНебольшой пост-дополнение к брендингу интернет-сайта на SharePoint 2010. Сегодня я расскажу, как задействовать описанный механизм применения динамических master-страниц к вики-страницам сайта.
Читать дальшеСегодня я расскажу про оптимизацию интернет-сайтов на базе MS SharePoint 2010 для достижения максимальной производительности. Этот пост будет продолжением предыдущего, посвященного брендингу SharePoint, т.е. оптимизация по большей части будет касаться интерфейса посетителей, а не редакторов/модера
Читать дальшеЭтим постом я начну описывать процесс создания интернет сайта на основе SharePoint 2010. Первый посты будут посвящены использованию для этого бесплатной версии MS SharePoint Foundation 2010
Читать дальшеВ сегодняшнем посте я продолжу писать о производительности при работе со списками/библиотеками документов в SharePoint. На этот раз массовое создание/изменение/удаление элементов. И все это в трех вариантах: Стандартный функционал SharePoint (SPListItem.Update(), SPListItem.Delete()); М
Читать дальшеСегодня я покажу как можно описать поля списка SharePoint для использования их в запросах. А именно, как добиться построение правильного CAML-запроса и в каких случаях этого сделать нельзя.
Читать дальшеНебольшой пост о том как формировать данные для пакетной обработки данных в SharePoint (использующей метод SPWeb.ProcessBatchData()), используя модель данных Linq to SharePoint.
Читать дальшеСегодня пост об использовании не совсем правильного подхода при решении очень часто встречающейся проблемы при разработке решений на базе SharePoint: получение набора уникальных значений поля списка. Описанный мною метод относится к спискам/библиотекам, содержащим более 5000 элементов.
Читать дальшеПоследний мой пост, посвященный функциональности DeskWork 5. Сегодня я опишу, как и обещал в предыдущем посте рабочие процессы, видеоконференцию и архив. Также вернусь к описанию адресной книги и структуре организации, т.к. эта часть была переписана в версии 5.1.
Читать дальшеЕще один пост, посвященный работе с Linq to SharePoint. На этот раз я решил измерить скорость работы с данными и сравнить производительность Linq to SharePoint и Camlex.NET.
Читать дальшеВелик и могуч Linq to SharePoint. Посему очередной пост будет посвящен работе с ним. На этот раз я покажу как работать с полями типа Choice и MultiChoice.
Читать дальшеНебольшая заметка об интересной возможности SharePoint: сокрытие информации о пользователе создавшем/изменившем элемент списка.
Читать дальшеВ четвертом посте, посвященном работе с Linq to SharePoint я покажу примеры использования динамических запросов и опишу механизм приведения объектов SPListItem к объектам, используемым в Linq to SharePoint.
Читать дальшеСегодня еще один небольшой пост, посвященный работе с Linq To SharePoint. На этот раз я расскажу о том, как использовать Linq to SharePoint в случае анонимного доступа, как получать списки по их URL'у, а не по названию.
Читать дальшеВ SharePoint по умолчанию запрещено использовать блоки кода на страницах сайта (SitePage).
Читать дальшеС этого поста я начну рассказывать о клиентской объектной модели (Client Object Model) SharePoint, о том как она работает и как можно её использовать. Сегодня я покажу как работает клиентская модель в управляемом коде на примере создания веб-части, отображающей последние новости с сайта www.eon-ru
Читать дальшеВ завершении описания HtmlEditor я покажу несколько примеров его использования: как запросить данные у пользователя, вызвав модальное окно с редактором и что делать, если версия интерфейса вдруг окажется равной 3 (такое часто бывает в результате миграции с SharePoint 2007 на SharePoint 2010).
Читать дальшеНа горизонте замаячила новая версия SharePoint! На сайте Microsoft появилась SharePoint 15 Technical Preview Managed Object Model Software Development Kit.
Читать дальшеСегодня я опишу ещё несколько особенностей при работе с LinqToSharePoint (предыдущую статью, посвященную LinqToSharePoint читаем здесь). Расскажу про построение JOIN'ов в списках, ускорении работы с данными и прочее.
Читать дальшеВ этом посте я покажу, что происходит с контролом выбора пользователя (PeopleEditor) в случае работы IE9 в режиме именно Internet Explorer 9. Происходит с PeopleEditor следующая неприятность: ОН НЕ РАБОТАЕТ. Целый день я потратил на поиски решения, т.к. заказчику не верится, что Micros
Читать дальшеВ продолжении серии постов, посвященных HtmlEditor'у, я покажу, как создать свой редактор и зачем это может понадобиться. Описание проекта, созданного мною для демонстрации, можно посмотреть в первом посте о HtmlEditor'е.
Читать дальшеСегодня я расскажу о том, как можно использовать стандартный редактор форматированного текста на своих страницах (контролах, веб-частях). Постов, посвященных HtmlEditor'у, будет несколько. Начну я с простого примера использования HtmlEditor'а на благо проекта.
Читать дальшеВ SharePoint 2010 при просмотре содержимого списка есть одна очень спорная особенность: если на странице расположены более одной веб-части, то контрол этот уходит по-английски. В этом посте я расскажу почему это происходит и как я решаю эту проблему.
Читать дальшеИногда на проектах, создавая различные фичи, включающие в себя списки/библиотеки, требуется наличие в них (этих списках/библиотеках) первоначальных данных. В этом посте я опишу механизм моего решения данной задачи.
Читать дальшеВ сегодняшнем посте я расскажу о контроле выбора пользователя и отключенных учетных записях. Если конкретней, то о том как сделать так, чтобы нельзя было выбирать пользователей, учетные записи которых отключены.
Читать дальшеНебольшой пост о решении проблемы с пропадающими TextBox'ами в отчетах, построенных на Telerik.
Читать дальшеВ предыдущих постах, посвященных SPLongOperation (снаружи и изнутри) я писал о том, что операции исполняются синхронно. Для завершения этого мини цикла статей надо бы указать сценарии применения.
Читать дальшеВ продолжении поста об использовании SPLongOperation сегодня я постараюсь описать его внутреннее устройство:
Читать дальшеВ этом посте я расскажу о выполнении длительных операций на стороне сервера, используя предназначенный для этого механизм самого SharePoint'а - SPLongOperation
Читать дальше