Используйте Web Money - это очень удобно

четверг, 28 февраля 2008 г.

SPQuery DateTime правильный синтаксис.

Вот так ма получаем переменную:
SPUtility.CreateISO8601DateTimeFromSystemDateTime(DateTime.UtcNow)

Кастомизация поиска.

Мой источник для начала.
Все оказалось довольно просто.
1. Создаем столбец в списке по которому назначаем индексирование.
после индексирования в настройках поиска в общих службах
Создаем свойство обхода содержимого на основании этого столбца.(Обязательно из группы sharepoint)
Еще раз индексируем.
Создаем страницу поиска и страницу результатов на которых размещаем соответсвующие вебчасти. Веб части: AdvancedSearch и основные результаты поиска+ по желанию обрамление.
Далее модифицируем схему вебчастей поиска изменяем Свойства (схема дополнительных параметров) и указываем свою страницу результатов.
Получается

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

В результате имеем произвольно настраиваемую параметризированную форму поиска.
И также произвольно настраиваемую страницу результатов.

четверг, 14 февраля 2008 г.

Меняю дизайн :)

Пока криво не могу понять как перенести подложку для меню.

вторник, 12 февраля 2008 г.

Custom field - отрисовка HTML

Думаю многим приходилось создавать свои поля, особый интерес представляет в этом процессе формирование HTML отрисовки значения поля в xml схеме его определения.
используя тег CDATA мы можем нарисовать любое окружение вокруг информации в нашем поле.
Например можно создать поле из нескольких колонок.
Используя различную HTML разметку и информацию из колонок можно создать интересный пользовательский интерфейс: свои меню, кнопки, радио, чекбоксы, подсказки и т.п.
Как результат можно обогатить интерфейс пользователя при работе со списками и отображении информации - подсветку строк, ячеек, и т.п.
Совместив этот механизм с веб частями и скриптами на мастер странице можно преобразить интерфейс пользователя до неузнаваемости очень скромным объемом кода.

Изменение перечня столбцов в ListViewWebPart "на лету".

Доброго времени суток!
Итак передо мно возникла проблема: отображать различную информацию на одной странице веб частей в зависимости от пользователя, параметра или состояния процесса(проекта) информация о котором отображается.
Задача возникла из необходимости придерживаться одного интерфейса для редактирования и просмотра элементов списка (редактирование косвенное через мой интерфейс). Причем со всеми возможностями Sharepoint.
Итак имеем: список, набор полей которые отображаются всегда, + поле редактирование(мое кастомизированное поле) + набор столбцов - соответствующих пользователям.
Каждый пользователь должен видеть либо мой столбец, либо свой результат.
Или при передаче параметра результат другого человека.
Решение:
Создаем свою веб часть. В ней обращаемся к SPWebPartManager.
SPWebPartManager spwp = (SPWebPartManager)this.WebPartManager;
Ищем необходимую веб часть и меняем у нее listViewWebPart.ListViewXml через XmlDocument xmlDoc = new XmlDocument();
xmlDoc.InnerXml = listViewWebPart.ListViewXml
node = xmlDoc.DocumentElement;
Меняем схему - она довольно сложна поэтому я просто создал веб часть с необходимым мне представлением (со столбцом результата вместо моего кастомного поля) скопировал эту схему вместо текущей схемы.
Заменил в ней параметры:
node.Attributes[0].Value = viewName;//View Name веб части
и название поля на мое - обязательно внутренне(internalName)( для примера Название-Title)
Присвоил listViewWebPart.ListViewXml = xmlDoc.InnerXml;
Все.
Кроме того что я указал также можно написать веб часть поиска, т.к. в схеме указывается CAML запрос. Т.е. можно изменить не только перечень столбцов но и перечень элементов, группировку и т.п. смотрите xml схему.

пятница, 1 февраля 2008 г.

Создание своей веб части представления списка. Проблемы дизайна.

У меня возникла необходимость создать свое представление списка - веб часть с расширенной функциональностью.
Главная задача - правильное отображение - дизайн(причем при смене темы должна измениться и моя вебчасть).
1. Приходится использовать таблицу т.к. заголовки при отображении это тоже таблицы
2. Приходится переопределять стили названия шрифтов - самое тонкое место пока просто поставил такие же как и в стандартной вебчасти.
Проблема в том, что для моя кастомная вебчасть
обрамляется div с указанием класса - ms-WPBody - который и меняет шрифты (для стандартной вебчасти этот div пустой).

Желательно конечно получать перечень шрифтов динамически, что бы они правильно изменялись.