Sharepoint custom field
среда, 4 июня 2008Реально динамически-вычисляемого поля в Sharepoint-е создать нельзя! Ибо можно лишь задать некие условия для вычисления значений, но они вычисляются только раз.
И тому подтверждение множества линков под катом, с вариацией на тему создания custom field.
- Creating Custom Field Types
- v3 Creating Custom Field Types
- create custom field types for SharePoint
- walkthrough: Creating a Custom Field Type
- SharePoint - Destripando el Wiki (4)
- Limitation of a Calculated Column Type - It’s not dynamic but static
P.S. Смотрите комментарии…
Комментарии |
rss |
В данном случае Автор не прав. Можно создать динамически-вычисляемого поле которое вычисляет свое значение (Custom field type) на основе других полей но для этого потребуются дополнительные усилия в виде написания Field Type Definition xml файла где можно реализовать логику по вычислению значения поля (JavaScript). В очень сложных вариантах можно использовать Ajax-технолигию (xmlHttpRequest) по получению значения.
Уважаемый Alex
В данном посте имелось ввиду что нельзя создать поле значение, которого каждый раз вычисляется на стороне сервера, при выдаче так сказать. JavaSript-ом на стороне клиента можно подгрузить вообще всё что угодно, но разве это
правильнокрасиво? :)Ajax-технолигию (xmlHttpRequest) можно использовать для вызова web-service method’а который будет вычислять наше значение.
С уважением,
Alex
C Ajax-м всё понятно, только для каждого поля тянуть данные с сервака…
Хотя можно придумать и некую очередь чтобы делать один запрос по множеству полей…
В общем это вариант создания динамического поля, только он не родной так сказать, а всё как-то больше с боку. А пост был (по крайне мере я его так видел) в контексте Lookup & Calculated fields.
Тем не менее, спасибо за идеи!
Ajax это для “тяжелых” полей, а так Field Type Definition xml файл в самый раз, тем более что для заказчика важен результат, а что за кадром - это проблема того кто разрабатывает :D
P.S.
Приятно узнать что у нас в РБ есть сайт с SharePoint тематикой.
Мне в свою очередь приятно что кто-то (я так понимаю у нас в РБ) также интересуется SharePoint-м.
Однако, при такой реализации динамичного поля, встаёт вопрос — что будет с такими динамичными полями при экспорте листа?…
Да, как я посмотрел, при экспорте листа данные не передаются, но думаю ситуация решаемая. Первый способ которой приходит в голову организация собственного export-workflow.
А насчет РБ - да я нахожусь в Минске.
Сейчас занимаюсь Publishing-ом и SharePoint Designer 2007. Оказалась довольно таки хорошей вещью после более пристального внимания :D
Alex
Вот к сожалению и получается, что решение не нативное и как результат надо будет во многих многих местах перекрывать функционал.
По крайне-мере если это делать для полноценного листа. Зато такой подход можно использовать в каких-либо более иных местах, webpart-х, аль ещё где.
Не согласен. Думаю причина в том что в классе отвечающий за этот мой field не переопределен метод GetValue (в моем случае мне не нужен был export как таковой и GetValue возвращает пустую строку тк класс наследовался от SPTextField). Так что решение все таки native.
Alex
Насколько мне помнится вызов GetValue не будет происходить каждый раз при обращении к данным. Т.е. актуальность данных будет весьма сомнительная.
Надо бы проверить, но под рукой нет ничего такого, я ваять пример сейчас нет желания. Но возможно понедельник расставит всё на свои места.
Удачного выходного!