вторник, 23 декабря 2014 г.

Дни рождения пользователей - SharePoint 2013 (Part 1)

Ранее я писал, как можно с помощью веб части поиска вывести дни рождения пользователей. Прошлое решение было для SharePoint 2010 и требовало создавать в VS проект и в итоге деплоить WSP пакет. Когда я приступил к работе с SharePoint 2013 я решил прибегнуть к аналогичному пути, но в этот раз решение не требовало написания кода.
В итоге получилось следующее:


Я решил разбить весь материал на блоки и в этой статье я расскажу:
1.  Как создавать управляемое свойство (Managed Properties )
2. Как вывести дни рождения 

вторник, 16 декабря 2014 г.

Экспорт дня рождения из BDC в User Profile с помощью PowerShell

Некоторое время назад встала задача экспортировать дни рождения сотрудников из внешней базы в SharePoint. есть некоторые нюансы, связать между собой базу и пользователя можно только по E-mail.
Решил попробовать стандартным способом через ЦА, но ничего не вышло.
Тогда я решил менять настройки с помощью miisclient.exe, но результата не дало. Ошибок как таковых не возникало, но и данные не затягивались.

мне надоело плясать с бубном и я решил прибегнуть к знакомому PowerShell

понедельник, 17 ноября 2014 г.

Веб части фильтров SharePoint 2013

Сегодня расскажу о использовании веб-частей фильтрации списков
Фильтр текстов
Возьмем страницу и разместим на ней веб-часть списка и еще две веб части, это "Фильтр текстов" и "Кнопка применения фильтров"


получилось так

пятница, 31 октября 2014 г.

Представление списка, форматирование, статистика в названии веб части.(jQuery + SharePoint 2013 Fields Part 2)

Сегодня, в продолжении темы jQuery + SharePoint 2013 Part 1, я поделюсь своими наработками в применении javascript в представлениях списка.
задачи:
Первая задача – выделение жирным одно поле.
Задача два – форматирование в зависимости от значения поля.
Задача три – выделить цветом просроченные.
Задача четыре – статистика по выполнению.

вот полученный результат

четверг, 30 октября 2014 г.

Свойство полей readonly и disabled в формах NewForm и EditForm (jQuery + SharePoint 2013 Fields Part 1)

Думаю многие хотели изменить свойства полей с помощью javascript, это не сложно делается, и в интернете много разных решений. Но вот я так и не нашел способа которым можно запретить редактирование поля Многострочный текст (multiline text field)

В начале я попробовал использовать код

$("input[title='Отображаемое имя']").attr("disabled", "disabled");

Но это не работало, и я решил посмотреть, как устроено поле

вторник, 14 октября 2014 г.

Веб-чать аналогичная "Приступая к работе с сайтом", со своими ссылками и иконками.(SharePoint2013)

Сегодня я покажу как можно сделать веб-часть аналогичную "Приступая к работе с сайтом", со своими ссылками и иконками.

Думаю, каждый кто работал с SharePoint 2013 видел на стартовой странице такую веб-часть.

среда, 10 сентября 2014 г.

EventID 8306 и EventID 6398, The HTTP service located at http://localhost:32843/SecurityTokenServiceApplication/securitytoken.svc/actas is unavailable.

В прошлое воскресение столкнулись с проблемой, посреди дня SharePoint просто перестал работать. В IIS пулы на которых были сайты просто остановились, т.е. это пул центр администрирования, пул портала и SecurityTokenServiceApplicationPool
При запуске руками пул стартовал, но при обращении с сайту пул останавливался.
Ошибки были такие:
EventID 8306

The HTTP service located at
http://localhost:32843/SecurityTokenServiceApplication/securitytoken.svc is unavailable. This could be because the service is too busy or because no endpoint was found listening at the specified address. Please ensure that the address is correct and try accessing the service again later.

EventID 6398

Microsoft.SharePoint.Publishing.Internal.PersistedNavigationTermSetSyncJobDefinition
  186014bf-1f6f-464c-badb-b1a345826474
The HTTP service located at
http://localhost:32843/SecurityTokenServiceApplication/securitytoken.svc/actas is unavailable. This could be because the service is too busy or because no endpoint was found listening at the specified address. Please ensure that the address is correct and try accessing the service again later.

В начале были предположения. Что ошибка была вызвана в результате настроек на сервере. Но когда были подняты бекапы базы SQL и полностью поднята машина SharePoint на середину недели, что подразумевало 100% работу системы. Но были удивлены, ошибки остались.
Поздно ночью нашли причину ошибки, это были ошибочные правила групповой политики.
Очень помогла эта статья, если бы не она у нас ушло еще много времени на локализацию проблемы. Спасибо ее авторам.


понедельник, 7 июля 2014 г.

Открытие видео в диалоговом окне (Новости на портале SharePoint часть III)

Тема с открытием страниц в диалоговом окне далеко не нова, и я не буду рассказывать, как можно реализовать(можно посмотреть тут ). Сегодня я расскажу, как я решал задачу открытия видео в диалоговом окне из элемента списка «Извещения». Статья является продолжением Новости на портале SharePoint

Проблемы при реализации:
С первой проблемой с которой я столкнулся, это добавление кнопки открытия страницы в элементе списка.
Вторая проблема – это открытие wiki страницы в диалоговом окне.
Третья - как сделать решение универсальным, ведь ссылки на видео могут быть в во многих элементах, и для каждого видео писать отдельный скрипт с адресом страницы  конкретного видео как-то не логично.

пятница, 20 июня 2014 г.

Отображаем свойства пользователей на странице. (примитивный справочник)

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

Минусы такого способа:
1 сможем отобразить только пользователей, добавленных в группы и/или тех, кто уже сам заходил на сайт.
2 Если пользователей много, то будет сложно найти нужного.

вторник, 10 июня 2014 г.

Копирование пользователей из одной группы в другую средствами PowerShell

Сегодня у меня появилась задача создать группу пользователей SP аналогичную существующей за исключением 10 пользователей. В существующей группе порядка 500 пользователей и сами понимаете переносить руками достаточно трудоемкая работа, при этом нужно быть внимательным, не добавить лишних.
Решил прибегнуть к старому доброму PowerShell и скопировать пользователей

четверг, 22 мая 2014 г.

переносим элементы в другой список с помощью PowerShell (архивирование элементов)

Добрый день, сегодня я напишу, как можно переносить элементы с одного списка в другой. Мой способ заключается в копировании элементов, а не перемещении. К сожалению я не нашел лучшего способа, ведь .MoveTo элемента списка не поддерживает. В данном способе есть недочет, перенесенные элементы теряют информацию о том кто и когда их создал в начальном списке.
Что делает скрипт:
  • Получает все элементы, которые отвечает фильтру CAML
  • Копирует полученные элементы в другой список
  • Можно удалить исходные элементы (в случае если проводим архивирование и нужно очистить список) 

понедельник, 19 мая 2014 г.

Добавление кастомной кнопки на риббон

Сегодня я поделюсь своим опытом по добавлению кнопки в кастомный список, который был создан в VS и при этом создан был список не мной.
Я не буду рассказывать, как создавать саму кнопку, уже есть много хороших статей по этому вопросу.
К примеру:
Я лучше расскажу о том, как ее привязать к списку. Добавления кнопки к стандартным спискам не вызывает особой сложности. SharePoint 2010 Base Types, List Template and Definition IDs, and Content Types IDs Но у меня был кастомный список с кастомным риббоном, и кнопку все не получалось добавить.

среда, 30 апреля 2014 г.

Изменение привязки локап поля к другому списку

для изменения привязки поля к другому списку нам понадобится SharePoint Manager 2010
открываем интересующее поле (в зависимости, где оно было создано, или на уровне списка или в столбцах сайта)
я покажу на примере поля, которое было создано в списке.



вторник, 29 апреля 2014 г.

Поиск всех локап полей семейства ссылающихся на список (PowerShell)

Вчера встала задача найти все поля, ссылающиеся на нужный список, так как поля были созданы не мной и не понятно как (или через столбцы сайтов или непосредственно добавляли в списках), то проверять руками все семейство, в котором несколько под сайтов мне было лень. Решил прибегнуть к PowerShell.
На написание скрипта ушло от 5 до 10 минут, руками искать ушло бы в разы больше…

пятница, 18 апреля 2014 г.

Скрываем/отображаем часть текста в CEWP с помощью jQuery

Сегодня я расскажу, как я решал задачу по скрытию/отображению части текста в веб-части «Редактор контента». В общем, на страницу, которая состоит из веб-частей нужно было разместить объявление, позже объявление для пользователей увеличилось в объеме (стало много текста) и я решил скрыть часть текста с помощью кнопки «Скрыть /показать весь текст»

пятница, 21 марта 2014 г.

Импорт и создание элементов списка SP с проверкой при помощью PowerShell


Как я рассказывал  ранее, у меня есть список, в котором находятся перечень сотрудников компании. Мне надоело создавать новые элементы руками самостоятельно, и решил прибегнуть к PowerShell.
Т.к. в моей компании первично заводят данные в учетную систему, далее создается пользователь в AD, то я попросил коллег, что бы мне выгружали всех новых сотрудников в файл. Полученный файл я импортировал в PowerShell, и уже работал с массивом из пользователей.

четверг, 16 января 2014 г.

Заставляем в XsltListViewWebPart открывать элементы в диалоговм окне.


Было замечено, что иногда веб часть, при клике на названии, не отображает элемент в диалогом окне. Это может быть вызвано если в списке отключена такая возможность или на изначально такая возможность была отключена, добавил веб часть на страницу, а потом включили в списке  открытие в диалоговом окне, а в веб части все равно открывается новой странице.

понедельник, 13 января 2014 г.

Редактирование текстового фала с помощью PowerShell или как я делал обновляемый телефонный справочник в формате HTML на портале

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

Проблема


Для удобство пользователей решили разместить телефонный справочник в виде Excel таблицы.  Данные из учетной системы выгружаются в файл и этот файл необходимо визуализировать.
 В начале, т.к. данные выгружались в файл Excel, я решил использовать веб чать отображения Excel. Но веб часть не масштабировалась под размер таблицы, нужно было руками указывать высоту или была прокрутка в веб части (что не совсем удобно). Посмотрев учетную систему, увидели что можно выгружать данные в html. Кажется, что может быть легче, положил на страницу веб часть «Редактор контента» или «Просмотр HTML» и все, но оказалось немного сложнее. В файле HTML находился блок со стилем, который не только делал таблицу телефонного справочника приятной к просмотру, но и ломал разметку страницы SharePoint (логотип скрывался, окно для поиска становилось маленьким, на рибоне все становилось жирным шрифтом и т.д.)