четверг, 8 апреля 2010 г.
Немного про документооборот
среда, 7 апреля 2010 г.
Hyper-V некоторые заметки по использованию
Первое и самое интересное это относиться к ошибке возникающей при присоединении образа диска от Virtual PC or Virtual Server 2005. Может не определиться шина VmBus и как следствие не установиться поддержка сетевых карт. Лечится это следующим образом:
Запускаем программу msconfig и на вкладке “загрузка” нажимаем кнопку “Дополнительные параметры”, в открывшемся окне выбираем галочку “обнаружение HAL” и производим перезагрузку. После этого система обнаружит нужные драйвера и будет работать как положено.
Второе что меня удивило утилиты интеграции не ставятся на Windows 2000 Server, поэтому при попытке управления Hyper-V менеджером, через подключение RDP мышка не работает из за отсутствия режима интеграции.
понедельник, 5 апреля 2010 г.
Создание личного узла в зависимости от роли человека
Задача: обеспечить создание узла для пользователя в зависимости от его роли.
Решение: Прочитать документ “Руководства по установке шаблона личного сайта на основе ролей”. И соответственно следовать инструкциям
пятница, 2 апреля 2010 г.
Ворчалки и наблюдения
Вот что примечательно после некоторого опыта работы с СПО у меня сложилось стойкое мнение что меня пытаются «Наколть» (С), только вот не пойму где. И тут смотря на один из сайтов обращаю внимание на ссылку коммерческая поддержка продукта %productName%. Прикидываю затраты времени, сколько это стоит для конторы, и вырисовывается простая мысль.
Грамотный развод: Дать парням с горящими глазами цель, грамотно расфасовать бунт против общества, и потом продать результаты этого бунта. Что особенно примечательно, флагман индустрии это RHEL, допиленный грамотными специалистами и хомячковый дистр Fedora.
Что кстати примечательно, в мультике про капитана Врунгеля прозвучала фраза: как корабль ты назовешь, так корабль и поплывет. В случае Linux это оправдано на все 100%, система была сделана гиком для своего развлечения. Что то было сделано, на что то банально забили. Что и наблюдается сейчас во множестве продуктов, ЭЙ чувак я сделал крутую фичу!!!! Вау круто!!! А зачем она нужна ? Но это же круто !!!!!
четверг, 18 февраля 2010 г.
Enable Audit in WSS
В некоторых случаях необходимо включить аудит на WSS, в MOSS для этого есть стандартное решение, в WSS нужно установить дополнение.
Подробности вот в этой статье:
http://msdn.microsoft.com/en-us/magazine/cc794261.aspx?pr=blog
Alfresco ECM
Первые впечатления:
По своей работе столкнулся с ECM системой Alfresco, в общем впечатления не радужные.
Что не понравилось, бинарный пакет хоть и есть, но как всегда в мире опенсорсного софта устарел.
Ладно, немного покопались с ним все решили, дальше веселей сборка индексов при первом запуске, после поиска в интернете решение нашлось: Удалить каталог с индексами и удалить базу данных.
После проблема аутентификации в домене, снова феерическое удовольствие от Google – hunting’a.
Пока еще не решена проблема CIFS, убито на это все чудо уже 3 дня, моего личного времени.
И впечатления от продукта сразу скажу никакие, по моим представлениям если есть Step by Step Guide, то после выполнения всех шагов должен быть воспроизводимый результат. В общем меня не порадовало, и представил как феерично это все будет настраиваться на местах, вот реально не коробочный это продукт и рассчитан на привязку под конкретного поставщика решений, в общем денег на нем сделать сложно.
Мораль сей истории: не надо пытаться экономить, считать надо.
P.S. да я люблю продукты Microsoft
среда, 10 февраля 2010 г.
Create MOSS Site Columns Programmatically and adding Field to Content Type Programmatically
Проблема: добавить новую колонку в тип содержимого.
Описание: Прямой вызов Fields.Add(“имя”,SPFieldType.Text,false) на типе содержимого выдает исключение, поэтому мы немного изменим код и таки добьемся своего результата.
Первоначально создадим столбец узла:
Будем использовать метод создания поля из XML определения, что необходимо заметить мы используем предопределенный идентификатор для задания поля. Второй момент, при создании поля в качестве параметра name указывайте InternalName в дальнейшем, DisplayName можно переопределить.
string siteUrl=http://testingportal.com;
string fieldXml = "";
string fieldGuid="{21C910B8-BA41-413a-A87E-D0D05AC4A5A8}";
string fieldInternName="customField";
fieldXml = String.Format("<field id="\" group="\" name="\" format="\" type="\">", fieldGuid, fieldInternalName);
using (SPSite site = new SPSite (siteUrl))
{
using (SPWeb web = site.rootWeb)
{
rootWeb.Fields.AddFieldAsXml(fieldXml);
}
}
Просто создать новый тип содержимого невозможно, поэтому мы выбираем из уже существующих типов содержимого. Для создания типа содержимого воспользуйтесь «Фичей»
SPSite site = new SPSite (_siteUrl)
PublishingSite pubSite = new PublishingSite(site);
SPContentType contentType = pubSite.ContentTypes[contentTypeName];
SPField field = pubSite.RootWeb.Fields[fieldGuid];
SPFieldLink fieldLink = new SPFieldLink(field);
contentType.FieldLinks.Add(fieldLink);
contentType.Update(true);
Позже можно натйти нужное вам поле с помощью следующего кода.
foreach (SPFieldLink fieldRef in contentType.FieldLinks)
{
if (fieldRef.Id == fieldGuid)
return fieldRef;
}
Заключение, вот так иногда не вполне очевидно, но можно сделать практически все.
среда, 3 февраля 2010 г.
SPListItemCollection and Exception from HRESULT: 0x80020009 (DISP_E_EXCEPTION)
В общем некрасивая ошибка и трудно уловимая, а суть в том что при составлении CAML запроса я пропустил аттрибут Type='Text'. Решение как всегда нашлось однако времени было потрачено немало.private String GenerateQuery(String postcode) { StringBuilder sbQuery = new StringBuilder(); sbQuery.Append("<Where>"); sbQuery.Append("<Eq>"); sbQuery.Append("<FieldRef Name='Title' />"); sbQuery.Append("<Value>1234AA</Value>"); sbQuery.Append("</Eq>"); sbQuery.Append("</Where>"); return sbQuery.ToString(); }
private String GenerateQuery(String postcode) { StringBuilder sbQuery = new StringBuilder(); sbQuery.Append("<Where>"); sbQuery.Append("<Eq>"); sbQuery.Append("<FieldRef Name='Title' />"); sbQuery.Append("<Value Type='Text'>1234AA</Value>"); sbQuery.Append("</Eq>"); sbQuery.Append("</Where>"); return sbQuery.ToString(); }
среда, 20 января 2010 г.
BDC 2 way connection
вторник, 12 января 2010 г.
Field and View permission in sharepoint
- Редактирование разрешений на поле при редактировании.
- Редактирование разрешений на поле при просмотре.
- Редактирование разрешений на редактирование представлений.
- list contenttype permission(New Menu of Toolbar).
четверг, 31 декабря 2009 г.
Hide SharePoint UI element’s
При работе довольно часто возникает необходимость скрыть элементы пользовательского интерфейса, например элемент выбора представления у списка. Как всегда конечного результата можно добиться несколькими путями:
- Правкой кода страницы (SharePoint Designer)
- Правкой определения узла и соответственно страниц
- Переопределением css class’a (display: none;)
- Установкой атрибута display с помощью JavaScript
Рассмотрим последние 2 варианта как самые универсальные и не затратные.
Тут все просто на странице переопределяете нужный класс CSS и все работает.
JavaScript позволяет достичь еще более точного применения, например скрыть отдельный элемент.
Как правило этот код можно ввести на страницу с помощью веб части редактор содержимого. Однако в некоторых случаях приходиться использовать SharePoint Designer.