понедельник, 30 ноября 2009 г.

SharepointImport tool

 

Описание

Данная программа предназначена для переноса данных из файлов XML, которые попадают в папку в файловой системе, в список SharePoint. Обеспечивается наблюдение за появлением файлов в указанной папке и перенос данных в 2 режимах:

  • Добавление нового элемента
  • Обновление существующего элемента

Домашняя страница

http://sharepointimport.codeplex.com/

Состав пакета

  • app.config – исходный файл конфигурации приложения
  • bin – папка с исполнимыми файлами
  • ClassDiagram.cd – диаграмма классов решения
  • example.stp – шаблон списка SharePoint
  • example.xml – Пример файла с данными для импорта
  • MoveData.cs - исходный файл с основным кодом приложения
  • MoveToSPList.csproj – проект приложения MSVC 2008
  • Program.cs - исходный файл
  • Properties – служебная папка проекта
  • Руководство пользователя.docx – этот файл

Системные требования

.NET Framework 3

WSS 3.0 или MOSS 2007

Установка

Просто запустите приложение, находящееся в папке bin\Debug, предварительно вам необходимо настроить файл MoveToSPList.exe.config в соответствии с рекомендациями в секции настройка.

Внимание запуск утилиты должен производиться на машине на которой установлен сервер SharePoint.

Настройка

Настройка приложения производиться с помощью файла конфигурации приложения MoveToSPList.exe.config.

Ниже будет приведен полный текст этого файла, в нем так же присутствуют комментарии описывающие каждый настраиваемый параметр.

Внимание при указании полей списка SharePoint, указывайте внутреннее имя поля (InternalName), на снимке экрана ниже показано как его узнать.

clip_image002

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

<configSections>

<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >

<section name="MoveToSPList.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />

</sectionGroup>

</configSections>

<applicationSettings>

<MoveToSPList.Properties.Settings>

<!-- Папка за которой следим -->

<setting name="WatchedFolder" serializeAs="String">

<value>c:\temp</value>

</setting>

<!--Сопоставления полей, сначала идет внутреннее имя Sharepoint, после идет название поля в XML файле -->

<setting name="MappingDictionary" serializeAs="Xml">

<value>

<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:xsd="http://www.w3.org/2001/XMLSchema">

<string>Title=Name</string>

<string>ID0=ID</string>

</ArrayOfString>

</value>

</setting>

<!-- Адрес узла на котором расположен список -->

<setting name="SharepointUrl" serializeAs="String">

<value>http://localhost</value>

</setting>

<!-- Имя списка в который вставляются данные -->

<setting name="SharepointListName" serializeAs="String">

<value>Example</value>

</setting>

<!-- Ключевое поле в списке шарепоинт, используется внутреннее имя -->

<setting name="SharepointKeyField" serializeAs="String">

<value>ID0</value>

</setting>

<!-- Имя ключевого аттрибута в импортируемом файле -->

<setting name="XmlKeyField" serializeAs="String">

<value>ID</value>

</setting>

</MoveToSPList.Properties.Settings>

</applicationSettings>

</configuration>

Fast clean SPItems

Задача: быстро очистить список от большого количества элементов.

Решение: Будем использовать пакетное удаление элементов из списка.

private static void ClearList(SPList list)

{

string xmlCaml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><Batch>";

string itemNode = @"<Method><SetList Scope=""Request"">" + list.ID +

"</SetList><SetVar Name=\"ID\">{0}</SetVar><SetVar Name=\"Cmd\">Delete</SetVar></Method>";

foreach (SPListItem item in list.Items)

xmlCaml +=

string.Format(itemNode, item.ID.ToString());

xmlCaml +=

"</Batch>";

list.ParentWeb.ProcessBatchData(xmlCaml);

}

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

суббота, 10 октября 2009 г.

Application Templates for Windows SharePoint Services 3.0 and language mistake

Для шарепоинта существуют целые наборы типовых решений предоставляемых самой компанией Microsoft

http://technet.microsoft.com/ru-ru/windowsserver/sharepoint/bb407286.aspx

Только нужно обратить особенное внимание на язык решения :)

Очень уважаемый мною человек бился в течении 2 дней над этой проблемой, просто скачал не то.

Так вот обращайте внимание на детали. Первая ссылка на этой странице указывает на 40 шаблонов на АНГЛИЙСКОМ языке.

А вот ссылка на 20 шаблонов содержит именно локализованные версии.

Разобрались с этим только после всего цикла троблешутинга, были перевернуты и логи системы и шарепоинта и разные версии WSS. Веселья было много. В конце концов я просто посмотрел солюшены и НЕ обнаружил там ветки 1049, которая собственно и указывает на наличие русского языка.

Так что внимательно читайте странички.

пятница, 25 сентября 2009 г.

Stsadm backup with current date

Основной синтаксис команды такой

stsadm -o backup

   -url <URL name>

   -filename <file name>

Нам нужно добиться создания архивных копий с датой в  названии файла.

stsadm –o backup –url http://localhost –filename stbackup_%DATE%.bak

получиться имя файла stbackup_25.09.2009.bak.

Кроме этого можно использовать переменную %TIME% содержащую текущее время

суббота, 5 сентября 2009 г.

Windows 7 & Vista prolongation key period

Microsoft встроила в Windows Vista (также и в Win 7 ) функцию, которая позволяет пользователю продлевать срок начального льготного доактивационного периода не три раза, а намного больше. Та же самая команда, которая продлевает срок активации Vista до 120 дней может быть использована неограниченное количество раз после замены ключа реестра.Эта процедура не хакерская уловка и не требует никаких инструментов или утилит вообще и, более того, документирована Microsoft, на ее сайте Technet.МетодикаШаг 1. В запущенной Windows Vista, которая не была еще активирована, щелкните кнопку Start, напечатайте regedit в строке Поиска, затем нажмите ENTER, чтобы запустить Редактор реестра.Шаг 2. Перейдите к ключу реестра:HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ SLШаг 3. Шелкните правой кнопкой мыши на SkipRearm и выберите Edit. Установленное значение по умолчанию - Dword с значением 00000000. Измените это значение на любое положительное целое число, например, 00000001, сохраните и закройте редактор реестра.Шаг 4. Запустите командную строку с правами администратора.Шаг 5. Напечатайте одну из следующих двух команд и нажмите ENTER:slmgr -rearmилиrundll32 slc.dll,SLReArmWindowsЭти команды используют встроенный в Windows Vista Менеджер лицензий (SLMGR), который по умолчанию дает 30 дней доактивационного периода. Изменение ключа SkipRearm с 0 на 1 (с 00000000 на 00000001) позволяет менеджеру лицензий SLMGR проделывать процедуру сброса счетчика неограниченное количество раз! Изменение значения ключа SkipRearm с 1 на 0 возвращает SLMGR к исходному состоянию.Шаг 6. Перезагрузите компьютер, чтобы изменения вступили в силу.Всё это применимо и в Windows 7.В Win 7 этот ключ находится здесь: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \SoftwareProtectionPlatform

пятница, 14 августа 2009 г.

Deploying Reports in Integrated Mode

Задача: опубликовать отчет созданный Reporting Server в Sharepoint document library Решение: Использовать FeatureReciver и в момент активации изменить файлы Исходник тут http://blogs.devhorizon.com/reza/?p=745

пятница, 7 августа 2009 г.

Open edit link in new window

Задача: Обеспечить открытие ссылки редактирования /просмотра элемента в новом окне

Решение: с помошью SharepointDesigner добавить следующий код в страницу представления списка.

<script type="text/javascript">
        var hrefs = document.body.getElementsByTagName("A");

        for (bb = 0; bb < hrefs.length; bb++) {
            if (hrefs[bb].href.indexOf("ItemsInOrder") != -1) {
                hrefs[bb].onclick = "";
                hrefs[bb].onblur = "";
                var str = hrefs[bb].href;
                hrefs[bb].href = "javascript:open('" + str + "'); void(0);";
                hrefs[bb].target = "";
            }
        }
    </script>

Open edit link in new window

Задача: Обеспечить открытие ссылки редактирования /просмотра элемента в новом окне Решение: с помошью SharepointDesigner добавить следующий код в страницу представления списка.

<script type="text/javascript"> var hrefs = document.body.getElementsByTagName("A");

for (bb = 0; bb < hrefs.length; bb++) { if (hrefs[bb].href.indexOf("ItemsInOrder") != -1) { hrefs[bb].onclick = ""; hrefs[bb].onblur = ""; var str = hrefs[bb].href; hrefs[bb].href = "javascript:open('" + str + "'); void(0);"; hrefs[bb].target = ""; } } </script>

четверг, 23 июля 2009 г.

SharePoint 2007 Custom Fields and “Edit property on server”

Возникла проблема: при добавлении  Custom Field в библиотеку документов появилось предупреждение:

В большинстве клиентских программ данный тип поля не допускает изменения и может препятствовать сохранению документов в этой библиотеке.

Поиск по русскому интернету ничего не дал, тогда пришлось найти откуда WSS берет это значение, оказалось из файла

12\Config\Resources\wss.ru-ru.resx

и ключа fldedit_FieldTypeWarningForDocLibSupport

соответственно предупреждение на английском выглядит так

This field type cannot be edited from most client programs and might block the programs from saving documents to this library.

И решение сразу нашлось вот здесь

http://nickgrattan.wordpress.com/2008/01/06/sharepoint-2007-custom-fields-and-edit-property-on-server/

Expression Blend 3 released!

Домашняя страница этого продукта и описание возможностей можно прочесть на странице продукта http://www.microsoft.com/expression/products/Blend_Features.aspx

среда, 22 июля 2009 г.

WSS Accounting

На данный момент разрабатывается система бухгалтерского учета. Это обзор предстоящих возможностей. Кратко возможности:

  1. Экспорт данных из внешних программ (ADO, Excel, ODBC, XML)
  2. Удобная работа с заказами в привычном интерфейсе WSS
  3. Малые затраты на внедрение решения
  4. Возможности составления отчетов и отправки их по электронной почте.
  5. Локализация решения (В данный момент 3 языка)
  6. Работа с заказами в представлении таблицы.

В общем лучше один раз увидеть.

http://yappi.biz/capture-1.avi

Сейчас продукт находиться в состоянии внутренней разработки (PRE Beta), поэтому ваше мнение будет очень важно.

Если вы заинтересовались этим решением свяжитесь со мной.

ICQ: 77391439

SKYPE: fire-dragon77 

E-mail: koroten@ya.ru

Ниже приведено руководство пользователя, с описанием текущих возможностей.

Оглавление

Введение. 1

Использование. 1

Списки на сайте. 2

Списки. 2

Словари для подстановки. 2

Страницы на сайте. 2

Руководство по типичным операциям.. 3

Как просмотреть созданный заказ. 3

Как создать заказ. 3

Как добавить нового пользователя. 3

Как добавить нового пользователя при создании заказа. 4

Введение

Система «WSS Бухгалтерский учет» предназначена для составления коммерческих предложений и отправки их заказчикам. В основе этой системы лежит платформа Microsoft Windows SharePoint Services или Microsoft SharePoint Office Server. Для пользователя системы есть следующие возможности:

· Создание заказа

· Добавления товаров в карточку заказа

· Поиск по словарю импортированных товаров (с выбором поля поиска)

· Копирование существующего заказа

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

· Возможность просмотра группы заказа в общем представлении

· Разграничение доступа к карточкам заказа на уровне групп на сайте

· Табличное представление для быстрого редактирования элементов заказа

· Предварительный просмотр составленного заказа в виде отчета

· Отправка коммерческого предложения по почте

Все это позволяет оптимизировать временные издержки на составление коммерческого предложения для пользователя. Учитывая гибкую инфраструктуру импорта данных из внешних программ, возможно, интегрировать эту систему с большим количеством информационных систем существующих на данный момент.

Использование

Для начала работы вы должны зайти на основную страницу системы «WSS Бухгалтерский учет», если вы не знаете адреса, где установлена система, уточните этот адрес у вашего системного администратора. В дальнейшем в этом руководстве будет приводиться адрес http://wss:90/buh как адрес системы. При открытии этой страницы вы увидите приветственное окно системы.

clip_image002

На этом снимке экрана отмечены следующие ключевые элементы:

1. Адрес сайта системы

2. Имя пользователя системы

3. Выпадающее меню для создания нового заказа

4. Краткая справка пользователю

Списки на сайте

Списки

· Contacts - адресная книга

· Links - ссылки на сайте

· Orders - список заказов

· ItemsInOrder - список товаров в заказах

Словари для подстановки

· ItemsCategory - категории товаров

· Items – товары импортированные из внешней системы

Страницы на сайте

Руководство по типичным операциям

Как просмотреть созданный заказ

На главной странице вы сайта щелкните по нужному элементу в списке, после этого на карточке заказа, перейдите по ссылке “Show Report”

clip_image004

Как создать заказ

На главной странице щелкните по ссылке «Создать элемент»clip_image006

Как добавить нового пользователя

Перейдите по ссылке Contacts, на главной странице системы.

clip_image008

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

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

clip_image010