Pavel Novotný

.NET Framework, SharePoint, Dynamics CRM, RC Helicopters, Honda VFR CrossRunner

SharePoint: Výpis všech workflow v chybovém stavu přes celou obsahovou databázi

SELECT         dbo.WorkflowAssociation.Id AS AssociationID, dbo.Workflow.InternalState, dbo.Workflow.Status1, dbo.Workflow.Created AS Started, dbo.Workflow.TemplateId, dbo.Lists.tp_Title AS ListTitle, dbo.AllUserData.nvarchar1 as ItemTitle,
                          dbo.Webs.Title AS WebTitle, dbo.Webs.FullUrl AS WebUrl, dbo.Workflow.SiteId, dbo.Workflow.WebId, dbo.Workflow.ListId, dbo.Workflow.ItemId, 
                         dbo.Workflow.ItemGUID, dbo.AllUserData.tp_GUID
FROM            dbo.AllUserData RIGHT OUTER JOIN
                         dbo.Workflow ON dbo.AllUserData.tp_GUID = dbo.Workflow.ItemGUID LEFT OUTER JOIN
                         dbo.Sites RIGHT OUTER JOIN
                         dbo.WorkflowAssociation ON dbo.Sites.Id = dbo.WorkflowAssociation.SiteId LEFT OUTER JOIN
                         dbo.Webs ON dbo.WorkflowAssociation.WebId = dbo.Webs.Id LEFT OUTER JOIN
                         dbo.Lists ON dbo.WorkflowAssociation.ListId = dbo.Lists.tp_ID ON dbo.Workflow.TemplateId = dbo.WorkflowAssociation.Id
WHERE        (dbo.Workflow.Status1 = 1 OR
                         dbo.Workflow.Status1 = 3 OR
                         dbo.Workflow.Status1 = 6 OR
                         dbo.Workflow.Status1 = 7) AND (dbo.Workflow.ItemId > 0)
ORDER BY Started

SharePoint: Unable to display this Web Part / System.StackOverflowException: Operation caused a stack overflow

Pokud SharePoint na nějakém webu zobrazuje místo obsahu webparty následující hlášku:

Unable to display this Web Part. To troubleshoot the problem, open this Web page in a Microsoft SharePoint Foundation-compatible HTML editor such as Microsoft SharePoint Designer. If the problem persists, contact your Web server administrator

 Více...

SharePoint–řešení problémů s alerty (emailovou notifikací)

SharePoint má standardně zapnutý limit počtu alertů na jednoho uživatele, tedy kolik si jich maximálně může sám aktivovat – defaultně je toto číslo nastaveno na 500. Počet se sice zdá na jednu stranu rozumný a skoro uživatelsky nemožné, aby si někdo tolik upozornění aktivoval, ale v praxi je u některých agend málo. Příkladem mohou být například interní objednávky, kdy každá interní objednávka má definovaného řešitele pomocí kategorie (kategorii “IT” řeší IT oddělení, správu vozů administrativa, opravy strojů oddělení správy majetku, atd.), to ale znamená, že nechceme notifikovat všechny lidi, kteří mohou objednávky spravovat, tedy řešitele, ale jenom ty, kterých se daná kategorie objednávky týká – k tomu svádí vytvořit programově event receivery po vytvoření objednávky a pro dané uživatele vytvářet programově alerty na změnu položky… Ale tedy u je kámen úrazu, kdy i poměrně malá společnost je schopna vygenerovat více než 500 objednávek na jednoho uživatele, nehledě na to, že limit 500 alertů na uživatele je přes celou webovou aplikaci, kde může být více podobných agend. Vytváření alertů na jednotlivé položky tedy není z dlouhodobého pohledu dobrá cesta, ale pokud už takový nástroj/doplněk máte, nejjednodušší cestou je zvýšení limitu.

 Více...

SPFastDeploy–rozšíření do Visual Studia pro vývoj SP Online

Do nadpisu jsem původně chtěl vložit ještě trefný suffix “pro prodloužení psychického zdraví vývojáře”, protože tento doplněk ve spoustě případů skutečně šetří nervy při deploy změn a testování – kdo nikdy nevyvíjel nic pro SharePoint, nemůže pochopit Obličej s očima v sloup Zatím ale nemám pořádně vyzkoušeno, zdá se to ale slibné.

Dostupné přímo z VS:

image

 

Lze aktivovat i mód automatického deploye po uložení:

SNAGHTML15366872

 

VS doplněk je dostupný buď přímo ze správy Extensions  Visual Studia nebo ke stažení zde:

http://visualstudiogallery.msdn.microsoft.com/9e03d0f5-f931-4125-a5d1-7c1529554fbd

Zjištění zapomenutého hesla aplikačního poolu IIS

V SharePointu 2007 byla v objektu SPApplicationPool vlastnost Password, od verze 2010 je však již označená jako deprecated, heslo se však zpětně dá zjistit příkazem z command line:

 

cmd.exe /c $env:windir\system32\inetsrv\appcmd.exe list apppool "apppoolname" /text:ProcessModel.Password

 

Stále tedy platí, nezadávejte nikdy a nikde 2x stejné heslo, nikdy nevíte, kdy a kdo ho je schopen přečíst.

 

Zdroj: http://blah.winsmarts.com/2014-5-Find_an_Application_Pool-and-rsquo;s_password.aspx

SharePoint 2013–nasazení farm solution pro SP2013 v compatibility módu 2010

SharePoint 2013 v kolekcích webů vytvořených nebo migrovaných v compatibility módu 2010, automaticky skrývá všechny features z WSP farm řešení pro verzi 2013. Pokud tedy provádíte upgrade, připojíte starou kolekci webů 2010, nainstalujete nové farm balíčky pro podporu SP2013 a chcete ponechat kolekci ve vzhledu 2010, alespoň do dokončení nutných úprav, feature z nových balíčků neuvidíte. Aby bylo možné aktivovat nové feature na starém UI, je potřeba provést retract balíčku ze všech webových aplikací a znovu provést deploy s atributem CompatibilityLevel:

Více...

SharePoint+SPServices: Jednoduchá kontrola unikátnosti IČ společnosti s možností uložení i v případě duplicity

SharePoint verze 2010 a novější obsahuje v definici sloupce volbu Vynutit jedinečné hodnoty - tato volba zajistí, že pokud máte například seznam dodavatelských společností a chcete vynutit jejich unikátnost pomocí sloupce IČ, můžete jednoduchým zatržením volby funkci aktivovat. Funkce má však několik much a pro tento způsob kontroly se zrovna nehodí, problémy jsou minimálně dva:

  • Co pokud chci jenom kontrolu s možností uložení? Později budu chtít například ukládat i pobočky společností se stejným IČ?
  • Co když uživatel v jednom případě vyplní formát jako 28708636 a druhý jako 287 08 636?

Více...