суббота, 3 декабря 2011 г.

Отмена Рабочего процесса SharePoint

 

Тестовый код для отмены РП

//Повысим привелегии

SPSecurity.RunWithElevatedPrivileges(() =>
  {
     using (SPSite siteColl = new SPSite(@"http://labtax23.inb2b.net/cs"))
     {
                    using (SPWeb site = siteColl.OpenWeb(@"/cs"))
                    {
                        try
                        {
                            Label1.Text = site.Name + "  ";
                             SPListItem item = site.Lists["test"].GetItemById(1);

                            Label1.Text += item.Name;

                            //Получаем экземпляр РП
                            SPWorkflow wf = item.Workflows[item.Workflows[0].InstanceId];
                            //Завершаем РП при этом отменяются все задачи связанные с РП
                            SPWorkflowManager.CancelWorkflow(wf);
                        }
                        catch (Exception ex)
                        {
                            Label1.Text += ex;
                        }

                    }
                }
            });
        }

суббота, 19 ноября 2011 г.

Ошибка при обновлении Oracle_VM_VirtualBox_Extension_Pack-4.1.6-74713


Если при обновлении VirtualBox 4.1.6 ExtensionPack происходит такая ошибка.
clip_image001
То нужно удалить содержимое каталога:
C:\Program Files\Oracle\VirtualBox\ExtensionPacks
После этого обновление проходит нормальною



четверг, 10 ноября 2011 г.

Скрипты для работы с доверенными поставщиками входа (вход SAML) для SharePoint 2010 Claims-Based Authentication

Скрипты  для работы с доверенными поставщиками входа (вход SAML) для SharePoint 2010
Claims-Based Authentication 

Для удобной работы со скриптами powershell я рекомендую использовать PowerGUI.

Скрипт для добавления доверенного поставщика входа (вход SAML) для SharePoint 2010
Такого как описан тут http://msdn.microsoft.com/ru-ru/library/ff955607.aspx

Add-PSSnapin -Name Microsoft.SharePoint.PowerShell

#Служба входа предоставляет утверждения которые будут регистрироватся
$claim = New-SPClaimTypeMapping -IncomingClaimType "http://schemas.mysite.ru/sharepoint/2011/03/claims/name" -IncomingClaimTypeDisplayName "Name" -SameAsIncoming
$claim2 = New-SPClaimTypeMapping -IncomingClaimType "http://schemas.microsoft.com/ws/2008/06/identity/claims/role" -IncomingClaimTypeDisplayName "Role" -SameAsIncoming

#Для claim2 определим значения
$claim2.AddKnownClaimValue("value1")
$claim2.AddKnownClaimValue("value2")
$claim2.AddKnownClaimValue("value3")
$claim2.AcceptOnlyKnownClaimValues=$true

#Сертификат службы
$certPath="C:\Users\user\Documents\STSTestCertPub.cer"

#Название службы
$pname="samename"
$pdescription="samedescription"

#Адрес сайта для которого регистрируем

#Адрес службы входа
$signinurl = "https://stssite.net"

$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($certPath)

$ap = New-SPTrustedIdentityTokenIssuer -Name $pname -Description $pdescription -Realm $realm -ImportTrustCertificate $cert -ClaimsMappings $claim,$claim2 -SignInUrl $signinurl -IdentifierClaim $claim.InputClaimType -UseWReply 

 $ap.Update()


Регистрация поставщика входа для дополнительного веб приложения (Добавление Realm)

Add-PSSnapin -Name Microsoft.SharePoint.PowerShell
$ap=Get-SPTrustedIdentityTokenIssuer

$uri = new-object System.Uri("http://www.site2.ru")
$ap.ProviderRealms.Add($uri, "http://www.site2.ru/_trust")
$ap.Update()


Удаление Realm

Add-PSSnapin -Name Microsoft.SharePoint.PowerShell
$ap=Get-SPTrustedIdentityTokenIssuer

$ap.ProviderRealms.Remove("http://www.site2.ru")
$ap.Update()


Удаление доверенного поставщика входа

Add-PSSnapin -Name Microsoft.SharePoint.PowerShell
$ap=Get-SPTrustedIdentityTokenIssuer
$ap.Delete()

$ap.Update()



Msdn
http://msdn.microsoft.com/ru-ru/library/ff953202.aspx
В частности описан способ миграции веб-приложения из классического режима Windows в режим входа на основе утверждений Windows в SharePoint 2010





понедельник, 7 ноября 2011 г.

Кусочек кода

GridView добавление контролов в строку.
........................................


protected void Page_Load(object sender, EventArgs e)
{


CSDataClassesDataContext dataContext = new CSDataClassesDataContext(Utils.GetConnectionString());         

 if (!IsPostBack) 
{  
 .....................  
 PriceGridView.DataSource = _price.PriceItems;
 PriceGridView.RowDataBound += new GridViewRowEventHandler(PriceGridView_RowDataBound);

 } 
}
........



void PriceGridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
           
Label SumLabel = (Label)e.Row.Cells[2].FindControl("SumLabel");
TextBox NTextBox = (TextBox)e.Row.Cells[2].FindControl("NTextBox");
.....      
 } }

воскресенье, 19 июня 2011 г.

Заполнение People Picker с помощью JavaScript и jQuery


Контрол выбора пользователей не имеет значений по умолчанию. Что бы исправить это неудобство, можно использовать JavaScript на форме создания элемента.

Также, для удобства используем :
·         jquery-1.5.2.min.js
·         SPServices

<%--Автозаполнение полей формы --%><script type="text/javascript" language="javascript" src="http://server/Sys/jquery-1.5.2.min.js"></script><script type="text/javascript" language="javascript" src="http:// server /Sys/jquery.SPServices -0.6.1.min.js"></script><script type="text/javascript">
            $(document).ready(function () {
                var login=$().SPServices.SPGetCurrentUser({fieldName: "Name", debug: false});
               
                var pp=$("div[title='Выбор людей']");
               
                pp[0].innerHTML=login;
                pp[1].innerHTML="UserName";
             
            });
     
 </script><%--Автозаполнение полей формы из профиля пользователя--%>

Получим текущего пользователя
var login=$().SPServices.SPGetCurrentUser({fieldName: "Name", debug: false});

Заполним первый People Picker текущим пользователем, второй  значением "UserName"

Код нужно вставит на страницу  после тега
<asp:Content ContentPlaceHolderId="PlaceHolderMain" runat="server"> 

пятница, 11 марта 2011 г.

Исключение из HRESULT: 0x80131904

Если SharePoint  отказывается создавать элементы списков и вообще создавать хоть что то , и выдает сообщение Исключение из HRESULT: 0x80131904, то не пугайтесь возможно просто кончилось место под БД.