maandelikse Argiewe: Februarie 2011

Verandering kolom Site groepe in SharePoint Designer 2010

Ek het 'n keur van die werf kolomme met behulp van SharePoint Designer 2010 hierdie oggend en besef dat ek aan hulle gegee het om al die verkeerde groep.  Dit was verpletterend moeilik om uit te vind.  Ek het nie geweet waar om te kliek ...

image

Ek het wat tot dubbel die ry self te kliek of klik op die knoppie kolom instellings in die lint.

Soos dit blyk uit, die korrekte antwoord (of ten minste een korrekte antwoord) is om enkele klik op die groep self.  Wag 'n oomblik en dan sal dit jou toelaat om 'n waarde in, soos aangedui:

image

Redelik maklik as jy weet wat om te doen, maar dit ontwyk my vir 'n bietjie.

</einde>

Skryf in op my blog.

Volg my op Twitter http://www.twitter.com/pagalvin

Hand te wysig SPD XOML File om skoon te maak veranderlikes

In hierdie post hier ("Om antwoorde Terug van die begin goedkeuring-proses aktiwiteit"), Ek het genoem dat jy per ongeluk kan voeg 'n hele rits van workflow veranderlikes aan jou SharePoint Designer workflow.  Dinge kan vinnig deurmekaar en moeilik om te lees.  Spesifiek, As jy die "Start goedkeuring-proses aktiwiteit" aksie om jou workflow, verwyder dit, en dit weer, jy eindig met al twee keer van daardie aktiwiteit se workflow veranderlikes. 

Dit is 'n ware pyn om deur te gaan en verwyder al daardie hand, sodat ek al het ek sou probeer om hulle direk te verwyder van die XOML lêer.  Dit was maklik genoeg wees om te doen. 

Eerste, jy moet die werklike XOML lêer op te spoor.  Ek het geskryf oor die onderwerp hier: http://www.mstechblogs.com/paul/how-to-find-and-edit-spd-2010-workflow-xoml-files.  Sodra gevind, oop van die XOML lêer en soek 'n veranderlike wat jy wil verwyder.  In hierdie geval, Ek het ook die "Start goedkeuring-proses" aktiwiteit twee keer aan my werkstroom.  Ek wil 'n workflow veranderlike genaamd "isItemApproved" aangesien dit nie meer gebruik nie en daar is 'n dubbele veranderlike genaamd "isItemApproved1", te verwyder. 

Eenvoudig 'n teks-soektog vir die veranderlike.  My skerm lyk:

image 

As jy soek om in die XOML lêer, jy sal sien dat "IsItemApproved1" word in baie verskillende plekke, terwyl die oorspronklike "IsItemApproved" is eenvoudig gedefinieer een keer en nooit gebruik.

Dit verwyder en dan stoor die lêer.

Die enigste moeilike gedeelte is wat ek gehad het om werklik te sluit SPD geheel en al en weer oop te maak voor die SPD het erken dat die veld verwyder.

Natuurlik, verwyder velde is nie die enigste ding wat jy kan doen met die XOML en ek kan blog oor ander onderwerpe soos hierdie in die toekoms.

Jy wil baie versigtig wees oor wat jy hier doen, en rugsteun van jou werk.  Jy kan 'n oënskynlik geringe / subtiele verandering wat trashes die workflow so ver as SPD betrokke is en wat jy kan verloor ure van inspanning terwyl jy dit herbou.

</einde>

Skryf in op my blog.

Volg my op Twitter http://www.twitter.com/pagalvin

Hoe om te vind en verander van SPD 2010 Die workflow XOML-lêers

Ek was 'n maklike manier om 'n klomp van workflow veranderlikes te verwyder sonder om my middag deur te bring in 'n volle geblaas SPD kliek martel sessie ondersoek.  My gedagte was die XOML direk te wysig, wat is die XML lêer wat onderliggend aan die SPD se verklarende werkstromen.  Dit is hoe ek dit gevind het.

Eerste, gaan na die Alle lêers opsie onder die site voorwerpe in Navigation.  Jy moet 'n toepaslike toestemming om hierdie te sien, so as dit nie vir jou, 'n beroep op die reg admin persoon te verleen om die priv.  Dit is hoe dit lyk:

image

 

Alle lêers toon 'n lys van al die lêers:

image

Kies die Werkstromen gids en jy sien 'n lys van gidse vir elke workflow:

image

Kliek in die korrekte gids en  sien jy 'n lys van al die interessante goodies wat 'n SPD verklarende workflow.  Regskliek op die xoml lêer en kies "Open met '.> SharePoint Designer (Open as XML)"Die XOML direk te wysig:

image

Jy kan 'n handleiding Friends wil te doen voordat jy peuter dinge.  'N gereelde kopie / plak van die lêer direk in SPD is waarskynlik goed genoeg, of jy kan kopieer die hele XML teks plak en stoor dit op jou lessenaar of wat ook al, is dat jy sal nie in hierdie gevalle.

</einde>

Skryf in op my blog.

Volg my op Twitter http://www.twitter.com/pagalvin

Aan die antwoorde Terug van die Begin goedkeuring-proses Aktiwiteit

Ek is rond speel met SharePoint Designer-workflow se fancy nuwe "Start goedkeuring-proses" aktiwiteit en is vinnig stymied nie omdat ek kon nie dadelik die vraag beantwoord, "Was dit goedgekeur is of nie?". 

Die kort antwoord is dat dit baie maklik is om die antwoord te kry.  Wanneer jy hierdie aktiwiteit aan jou hoof workflow, SPD voeg 'n bazillion veranderlikes aan die Workflow veranderlikes en parameters databron, as jy hier kan sien:

SNAGHTML2350fe72

Jy sal ook daarop let dat indien u meer as een van hierdie, SPD voeg daar 'n "1" en dies meer aan al die veranderlikes. 

Ek het gevind dat toe ek die eerste "Start goedkeuring-proses" aktiwiteit geskrap, die eerste stel van verwante workflow veranderlikes gebly (ongelukkig).  So, wees versigtig hoe jy dit gebruik, want anders, jy eindig met  'n baie deurmekaar lys van workflow veranderlikes.

Ek gee die Microsoft krediet vir die volgende van die "is" naamkonvensie vir 'n Boolese veranderlike.  Die konvensie maak dit redelik duidelik watter soort data is veronderstel om daar te wees.

In die ondersoek, Ek het gevind dat hierdie nuttige artikel: http://office.microsoft.com/en-us/sharepoint-designer-help/workflow-actions-in-sharepoint-designer-2010-a-quick-reference-guide-HA010376961.aspx.  Dit maak nie regtig hierdie spesifieke kwessie, maar het 'n paar goeie inligting oor die onderwerp so ek wil daar gaan as jy meer wil leer oor hierdie spesifieke aktiwiteit en sy broers en susters.

</einde>

Skryf in op my blog.

Volg my op Twitter http://www.twitter.com/pagalvin

SharePoint Designer 2010 MOD funksie

Ek werk 'n paar log waar mense kan vra vakansie, siek tyd, ens.. Een validation rule vereis dat jy altyd moet vra tyd af in 4 uur-intervalle.  Dit is maklik genoeg om te doen - 'n modulo funksie gebruik.  Modulo funksie vertel jy die res in die afdeling.  As daar is geen res, module is nul, anders, dit is alles wat oorgebly het.  Byvoorbeeld, 8 teen 4 = 0 (8 / 4 = 2 met geen breuk).  Aan die ander kant, 8 teen 5 is 3.

Ek nodig het om dit te doen een keer met SPD 2007 eens op 'n tyd en ek eintlik beland met 'n Path vorm op te los, sodat dit hanteer op die voorkant van die tyd.  In die huidige geval, daar kan 'n Path vorm in die prentjie wees., maar dit is nog nie duidelik nie.  So, Ek is 'n tegniek om te verseker dat die tyd versoeke altyd in 4 uur inkremente.  Ek gaan om die wiskunde te doen, stoor dit in 'n tou en dan doen 'n paar substring dinge. 

Ek trek SPD 2010 en tot my verbasing (en 'n bietjie verleentheid) daar is 'n modulo funksie reeds:

image

Ek is weereens aangenaam verras dat iets wat ek nodig het al is daar uit die boks.  Dit lyk soos 'n vreemde funksie vir Microsoft in die mengsel in te sluit.  Dit het 'n soort van "dit is maklik, so laat ons gooi dit in "voel.  Ek simpatiseer met, as ek doen dit self al die tyd.  Hierdie CodePlex projek het 'n klomp van die min funksies dat die gevolg van die ItsEasy beginsel.  Op dieselfde tyd, Microsoft steeds bewyse om die "95% van die pad"-effek met die produk te ondersteun.  Hulle voer die Mod funksie, maar nie die round funksie, byvoorbeeld.

</einde>

Skryf in op my blog.

Volg my op Twitter http://www.twitter.com/pagalvin

CodePlex Project – SP2010 Explorer

As deel van 'n deurlopende poging om die tegniese lae vlak besonderhede van die SharePoint te leer 2010, Ek het 'n "SharePoint Explorer"Aard van die instrument.  Die idee is nie nuut nie.  Ek het hierdie projek gebruik om meer as een keer: http://sharepointexplorer.codeplex.com/.  My idee is om 'n SharePoint weergawe wat gebruik verbind web dele al die lae-vlak van detail dat die voorwerp model kan verskaf om te wys te skep. 

Hierdie blog boodskap dien as beide 'n aankondiging van die projek sowel as 'n oproep vir vrywilligers.  As jy belangstel in die werk aan hierdie projek, laat weet my via e-pos (galvin.paul @ gmail.com) en ons sal dit uit te werk.

Hier is die projek: http://sp2010explorer.codeplex.com/

</einde>

Skryf in op my blog.

Volg my op Twitter http://www.twitter.com/pagalvin

SharePoint Designer 2007 Die workflow Uitbreidings CodePlex Project

Ek sit my tweede CodePlex projek saam (besonderhede op Woensdag aangekondig hierdie week, plus of minus) en ek het 'n blik op my eerste projek, “SharePoint Designer Workflow Extensions”. Ek was geskok en skaam om te sien dat dit afgelaai oor 4,800 keer:

image

Ek het basies vergeet oor hierdie projek in die laaste 12 maande. I’m embarrassed because I have essentially abandoned it.

I’m going to have another look and remind myself of what it’s all about.

As iemand belangstel in die werk op hierdie, let me know and we’ll see about collaborating on it. 4,800 downloads is nie 'n reuse bedrag, maar dit is meer as wat ek ooit besef en dit is waarskynlik die moeite werd inspanning pluk dit en dra dit vorentoe.

</einde>

Skryf in op my blog.

Volg my op Twitter http://www.twitter.com/pagalvin

Uitvoer-SPWeb vertel my "InvalidData” Maar die data is geldig

Ek is in die proses van 'n artikel te skryf vir die goeie mense op www.sharepointbriefing.com en dit behels die implementering van 'n lys van 'n ontwikkeling plaas om 'n produksie plaas.  Ek is nog gewoond aan die gebruik van stsadm en moet daardie gewoonte te breek, so ek afgedank die SharePoint 2010 Shell en gespeel rondom die gebruik van uitvoer-SPWeb my lys te rugsteun.  Wat 'n vreemde moeilike ding wat blyk te wees!

Ek het om hierdie fout:

image

Hierdie fout, "InvalidData: (Microsoft.Share ... CmdletExportweb "") is my dood.  Ek is skaam oor hoe lank ek gesukkel met hierdie.

Ek het voorheen loop in 'n muur met PowerShell en gebruik stsadm om dit te kry.  Ek het probeer om dit weer hierdie keer, en ek het goeie resultate.

Ek het 'n baie tyd nutteloos om met die identiteit opsie en dan uiteindelik met ItemURL.  Dit blyk dat die ItemURL opsie vereis 'n volle pad van die lys / biblioteek jy  wil uit te voer sonder die http://bediener bietjie.  So, ten spyte van die feit dat die identiteit argument is verwys na n subsite, die ItemURL is nie met betrekking tot die identiteit nie, maar in verhouding tot die werf versameling.

Dit sou lekker gewees het vir die cmdlet my te vertel wat minimaal geldig was (Die identiteit in hierdie geval) en wat is, is ongeldig (ItemUrl).  Hierdie klein raak mense help om die produk omhels.  Nie 'n groot ding teen SharePoint, but a little one at least 🙂

Hopelik sal hierdie pos 'n bietjie hartseer in die toekoms sal red iemand.

</einde>

Skryf in op my blog.

Volg my op Twitter http://www.twitter.com/pagalvin

Werk met TreeNodeBinding in die ASP.NET boomaansig Control

Ek werk op wat ek hoop sal binnekort vrygestel word CodePlex projek wat 'n mooi geïntegreerde bietjie web dele met mekaar te praat via die verskaffer / verbruiker verbindings vir die doel van die ondersoek van 'n SharePoint plek onder die komberse.  (Dit het beslis voorheen gedoen, maar dit is 'n leer-projek soveel as enigiets anders).  Dit is bedoel om 'n plaasvervanger vir die Windows Explorer siening van SharePoint 2010 dokument biblioteke.

Die kode het die gewone rekursiewe oproep af die SPWeb-'s en SPLists van 'n beginpunt.  Die voorwerp wat nie alles wat polygonisatie bou voort op 'n XML-string wat lyk iets soos hierdie:

<sitecollection url =’http://demo2010a:9090′>
 
<web
     title = "Hello World Sandbox ' 
     Sjabloon = "'n plek vir spanne om vinnig te organiseer, skrywer, en deel van inligting, Blah blah blah>

     <lys
        title = "BCC_Health_Services_FAQs’
        Sjabloon = "CustomList’
       
listid =’http://demo2010a:9090/helloworldsandbox[Ek deel]1e02b001-3cb2-4f17-b63d-7809e86b4174′>
    
</lys>

     <lys
        title = "BCC_Notifications" 
        Sjabloon = "CustomList 
        listid =’
http://demo2010a:9090/helloworldsandbox[Ek deel]5a5a13d1-877c-41c0-9063-b9612be80d5e’>
     </lys>

  </web>

</sitecollection>

Ek verwag om skoon te maak dat die XML voor al gesê en gedoen word.

Ek wil om uiteindelik daardie inligting kry en in 'n boom beheer.  Nie presies die aarde verbryseling dinge.

Die uitdaging wat ek hier het, was die verkenner te koppel aan 'n XML-data Bron beheer in plaas van die hand opbou my treenodes as ek deurkruis die boom.  Ek het dit deels omdat ek doelbewus dinge maak harder op myself (hierdie is 'n projek na alle) en deels omdat ek hierdie vae idee dat die opbou van boom nodes as ek deurkruis die boom nie 'n goeie idee vir die lang termyn.

Die probleem met hierdie benadering is dat die boomaansig beheer nie weet nie oor die goeie eienskappe op die interessante nodusse soos "lys" of "web" nie so dit wys hierdie produksie by verstek:

 

image

Dit is nie nuttig nie.  Dit is waar die TreeNodeBinding klas help.  Ek kan gebruik om die boomaansig beheer te vertel hoe dit die XML moet interpreteer.  Hier is 'n voorbeeld:

TNB = nuwe TreeNodeBinding();
tnb.DataMember = "Lys"; // Dit is die etiket in die XML vir 'n webwerf.
tnb.TargetField = "listid";
tnb.ValueField = "title";
tnb.ToolTipField = "Sjabloon";

Hierdie binding vertel die boomaansig dat wanneer dit vind 'n <lys> node in die XML, die toepassing van die bindings vir TargetField, ValueField en ToolTipField.  In Mei inligting, hierdie kaart soos volg::

  • TargetField: Wanneer iemand druk op 'n node waarde, dit is wat jy kry vir SelectedNode.Value.  Dit is nie verwar word met ...
  • ValueField: Dit is wat jy wil hê die boomaansig te vertoon aan die gebruiker.
  • ToolTipField: Die waarde van die XML wat jy wil as 'n Tooltip.

Byvoeg dat TreeNodebinding aan die verkenner se DataBindings nie en jy kry die uitvoer soos hierdie:

 

image

Ek sal meer op al hierdie dinge as ek bly op die projek en uiteindelik sit dit op Codeplex.

</einde>

Skryf in op my blog.

Volg my op Twitter http://www.twitter.com/pagalvin