Arkivat e Kategorisë: SharePoint Workflow

Emailing lajmërimeve Përditshëm Task // Looping në SharePoint Designer Workflow

I wrote up a detailed article a few weeks ago describing how to create a SharePoint Designer workflow that sends a task reminder email on a daily basis. It’s been botuar at e re SharePoint Magazine faqe. More generally, Artikulli tregon se si për të krijuar një strukturë looping në SPD.

Revista ka një shumëllojshmëri të gjerë të artikujve, duke përfshirë, ndër të tjera, gjëra shumë teknike, interviews and industry news. I recommend you add it to your RSS feed.

Nëse ju keni një produkt apo shërbim të shitur, I’d also consider advertising on the site. It’s off to a strong start with several thousand pairs of eyes looking at it already. That’s sure to grow.

Së fundi, në qoftë se ju keni qenë kruhet për të shkruar diçka dhe të merrni atë në frontin e një audience të madhe, this is a great time and place to scratch it.

</fund>

Abonohen në blogun tim.

Technorati Tags:

Im i fundit “Në mbrojtje të SharePoint Designer” Neni është në dispozicion

Mark Miller gjatë në End User SharePoint has posted my latest article about using SharePoint Designer to create great workflow solutions up on his site. Check it out.

Në këtë artikull, Unë flas për procesin e projektimit dhe, në hollësi, si për të ngritur një proces të besueshëm dhe repeatable provë duke përdorur tiparet e SharePoint (Listat me porosi, templates site për). The article targets End Users, por qasja është e mirë për zhvilluesit shumë.

</fund>

Abonohen në blogun tim.

Aktiviteti Logging SharePoint Designer Workflow në

Javën e kaluar, Unë kam qenë duke punuar jashtë si për të loop dhe të zbatojë një makinë shtetërore duke përdorur SharePoint Designer dhe përmendi, Si një mënjanë, që unë ndoshta do të shkruaj një blog post në lidhje me prerjet workflow më të mirë.

Mirë, Sanjeev Rajput beat me to it. Have a look.

Ruajtja e të dhënave të hyni në një listë me porosi duket superior për të përdorur historinë e rregullt workflow:

  • Kjo është vetëm një listë me porosi, kështu që ju mund të eksportojë atë në excel shumë lehtë.
  • Ju mund të krijoni shikime, dinamike të filtruar të dhënat, etj.
  • Kjo nuk është subjekt i auto spastrimi-ju merrni me historinë workflow rregullt.

Ka disa rreziqe / Dobësi:

  • Workflows Shumë drejtimin me një shumë të prerjeve mund të shkaktojë të dhënave shumë të jetë e shkruar në listën.
  • Maybe you *do* want automatic purging. You don’t get that feature with this approach (pa kodim).
  • Security is tricky. In order to write to the list, the user must have permission to do so. That means that it’s probably not suitable for any kind of "official" audit since the user could discover the list and edit it. This could be overcome with some custom programming.

</fund>

Technorati Tags:

Abonohen në blogun tim.

Trouble Me Tribbles … gaboj .. KPIs

This past week I finished off a proof of concept project for a client in Manhattan. While implementing the solution, Unë u zhvillua në një tjetër e metë e MOSS IKP (shoh këtu për një çështje të mëparshëm KPI dhe workaround tim).

Sfond: We used SharePoint Designer workflow to model a fairly complex multi-month long business process. As it chugged along, it would update some state information in a list. KPIs use this data to do their mojo.

We decided to create a new site each time a new one of these business processes kicks off. Aside from the workflow itself, këto të presë faqet e disa bibliotekave dokument, use audience targeting and so forth. Just a bunch of stuff to help with collaboration among the internal employees, udhëtojnë punonjësit dhe partnerët pjesëmarrëse e klientit të biznesit.

Ne gjithashtu donte të tregojë disa KPIs që të monitoruar shëndetin e përgjithshëm të atij procesi të veçantë të biznesit siç promovohet nga të dhënat shtetërore dhe workflow shikuarat përdorur KPIs.

Më në fund, kemi përdorur listën artikuj IPK-ja që të bëjë një akuzë në një pikëpamje mbi një listë në faqen (në krahasim me duke tërhequr nga një burim tjetër të të dhënave, si Excel ose SQL).

Problem: Siç mund ta imagjinoni, duke supozuar që ne ishim të mbajnë idenë themelore përpara në një botë të prodhimit, we would want a site template. Provision a new site based off a "business process" shabllon.

The problem is that you can’t seem to get a functioning KPI that way. When I create a new site based on a template with a KPI List and KPI web part, the new site’s KPI data are broken. The new site’s KPI list points at whatever source you defined when you first saved it as a template.

Nga rruga e shembull:

  • Create a new site and build it to perfection. This site includes the KPI data.
  • Ruaje atë si një template.
  • Krijo një faqe të re dhe bazë në qoftë se jashtë template.
  • Artikuj IPK Kjo faqe e re e listës’ Burimet theksojnë template faqen, Nuk faqe tanishme.

Procesi instantiation nuk korrigjon URL.

I tried to solve this by specifying a relative URL when defining the KPI list item. Megjithatë, Unë nuk mund të merrni ndonjë variacion se për të punuar.

I always want to pair up these "problem" blog posts me një lloj të zgjidhjes, but in this case I don’t have a good one. The best I can figure is that you need to go in to the newly provisioned site and fix everything manually. The UI makes this even harder because changing the URL of the source list causes a refresh, kështu që ju me të vërtetë keni për të ripërcaktuar të gjithë gjë nga zeroja.

Nëse dikush e di një mënyrë më të mirë për të trajtuar këtë, ju lutem postoni një koment.

</fund>

Technorati Tags:

Mea culpa — SharePoint Designer * MUND * Krijo menu makinës shtetërore

I’ve recently learned that it’s possible and even fairly easy to create a state machine workflow using SharePoint Designer. Necessity is the mother of invention and all that good stuff and I had a need this week that looked for an invention. Coincidentally, I erdhi nëpër ky post forum MSDN po ashtu. My personal experience this week and that "independent confirmation" lends strength to my conviction. I plan to write about this at greater length with a full blown example, por këtu është esencë e ajo:

  • Qasja thekson faktin se një workflow mund të ndryshojë një zëri të listës, thereby triggering a new workflow. I’ve normally considered this to be a nuisance and even blogged në lidhje me përdorimin semaforët për të trajtuar atë.
  • SharePoint lejon menu të shumta të pavarur që të jetë aktiv kundër një artikull listë të veçantë.

Për të konfiguroni atë:

  • Projektimin e makinës tuaj shtetëror (dmth, shtetet dhe si shtetet në tranzicion nga një të ardhshëm).
  • Zbaton çdo shtet si workflow veçantë.
  • Konfiguro secili prej këtyre workflows shtetit për të ekzekutuar në përgjigje të ndonjë ndryshim në list item.

Çdo shtet workflow ndjek këtë model të përafërt:

  • Pas inicializimit, determine whether it should really run by inspecting state information in the "current item". Abort if not.
  • Të bëjë punën.
  • Update the "current item" with new state information. This triggers an update to the current item and fires off all the state workflows.

Përveç nga përfitim të dukshëm që mund të krijojë një deklarativ makinë workflow shtetëror, të gjitha informatat që shteti është i frikshëm për IKP të ndërtimit dhe pamje interesante.

Ajo ka një pengesë mjaft të konsiderueshme — standard workflow history tracking is even more useless than normal 🙂 That’s easily remedied, megjithatë. Store all of your audit type information in a custom list. That’s probably a good idea even for vanilla sequential workflow, but that’s for another blog post 🙂

I call this a "mea culpa" sepse unë kam, për fat të keq, said more than once on forums and elsewhere that one must use visual studio to create a state machine workflow. That simply isn’t true.

</fund>

Abonohen në blogun tim.

Technorati Tags:

Përdorni semaforët në SharePoint Designer Workflow për Parandalimin unazore pafundme

It’s possible to cause an endless loop in a SharePoint Designer workflow. A common implementation pattern like this causes the problem:

  • Krijo një workflow dhe shoqërojnë me një listë.
  • Tregojnë se ajo duhet të fillojë të krijojë më i artikujve të reja dhe përditësimin e sendeve ekzistuese.
  • A step in the workflow updates a field in "Current Item".
  • Që nga pika e tanishme ndryshuar, workflow fillon rishtas.

Për të parandaluar këtë lak pafund, të zbatojë një semafor të thjeshtë:

  • Shto një shtyllë faqe (apo kolonë në listën / bibliotekës në qoftë se ju nuk jeni duke përdorur llojet e përmbajtjes).
  • Fshehur atë nga faqja e redaktimit (lehtë të bëni nëse një kolonë faqe nëpërmjet pronave të saj, jo aq e lehtë në qoftë se një kolonë listë).
  • Në workflow, kontrolloni për të parë nëse vlera e kolonën e semaforëve është bosh.
  • Nëse është bosh, vendosur atë në një vlerë jo-bosh dhe të vazhdojë.
  • Nëse nuk është bosh, dilni menjëherë.

Kjo mund të bëhet një zgjidhje mjaft të nuancuar, në varësi të kërkesave të biznesit dhe kështu me radhë, por kjo ka qenë një model i realizueshëm, kur unë kam nevojë për atë.

</fund>

Technorati Tags:

Abonohen në blogun tim.

Ecni nëpër-: Fix trajnimin e punonjësve Template Available Vende Bug unregister

Sa shumë njerëz e dinë, the Employee Training template provided by Microsoft here has a bug that we can reproduce following these steps:

  • Krijo një klasë me një madhësi max e 10 nxënësit.
  • Regjistrohem –> Total available seats properly decrements by one. Pasojë: 9 vende të disponueshme.
  • Unregister: –> Bug. Total available seats should increment by one. It does not. Pasojë: 9 available seats as per SharePoint, but in fact, there are 10 vende të disponueshme.

Zgjidhje: Use SharePoint Designer to correct the workflow.

I parë, open up the site. The folder list for me looks like this:

imazh

If we have a look at the "Attendee registration" workflow, we see that there is a step labeled "Enforce seating policy". It looks like this:

imazh

This step in the workflow updates the item by incrementing the "Filled Seats" metadata column on the course. If we pull that up in more detail, we see this:

imazh

That’s all the information we need to fix the unregistration workflow.

If we flip over to the unregistration workflow, there is no similar workflow step. Add it as follows:

1: Expand "Attendee unregistration" and open up the XOML (see first screen shot if you’re lost).

2: Add a new workflow variable, "New Filled Seats" of type "Number".

3: Assign a value to "New Filled Seats" siç tregohet:

imazh

4: Decrement the Filled Seats by 1:

imazh

5: Update the related Course item:

imazh

6: Make sure all the steps are in the right sequence. Për mua, kjo duket si ky:

imazh

7: Finish the workflow to re-build it.

8: Provë.

</fund>

Abonohen në blogun tim.

Technorati Tags: ,

Drejt modelet SharePoint teknik të projektimit: SharePoint Designer Workflow + Marresit Event Koktej = High potencë

Një nga modelet e reja që unë të gjeni në përpilimin e zgjidhjeve thekson SharePoint SharePoint Designer punës dhe një marrës ngjarje.

Këtu është një skenar i biznesit për ta vënë atë në kontekstin e:

  • Unë ngarkoj një dokument me një lib doc.
  • Unë kick off multi-hap workflow krijuar duke përdorur SharePoint Designer.
  • Në një moment gjatë këtij procesi, workflow assigns a task to someone (via collect data from user or assign a task).
  • We want to use a KPI to track how long that task is awaiting completion. The KPI shows green for tasks that are completed or due more than 3 days from now. It shows yellow if the task is due tomorrow or today. It shows red if the task is past due.
  • Here’s the kicker: I want the date that drives that KPI to be holiday-aware.

I can’t calculate a holiday-aware due date in SharePoint Designer workflow very easily. I would have to create a custom action or use a 3rd party tool. Megjithatë, it’s easy enough to calculate such a date in an event receiver. Merge those two together and we get a pattern like this:

  • Define a hidden yes/no site column on the document library labeled "DoCalcualteDueDate".
  • Initialize it to false.
  • At the appropriate time in the workflow (e.g. just before the "collect data" veprim), assign that value to True.
  • An ItemUpdate() event receiver looks to see if "DoCalculateDueDate" is true. Since the event receiver runs on every update, "DoCalculateDueDate" is normally false.
  • When workflow assigns DoCalculateDueDate to true, the event receiver calculates the holiday-aware due date.
  • When the event receiver does this calculation, it sets the DoCalculateDueDate flag to false.

Në fund, SPD workflow is communicated with an event receiver via the DoCalculateDueDate semaphore and we have holiday-aware due dates that are assigned at the exactly correct moment in the workflow’s life. SharePoint Designer controls when the due date is assigned but the event receiver performs the actual calculation and assignment.

</fund>

Abonohen në blogun tim.

Sjellja vëzhguar: Moving workflows SPD Brenda një Koleksion Site

UPDATE: I’ve been researching how to embed a SPD workflow into a site definition. Ky zinxhir forum MSDN ka disa informacione interesante. It’s not conclusive, por tregon rrugën nëpër xhungël.

I’m giving this post a slightly oddball "Observed Behavior" lead since I’m a little leery of drawing conclusions from it. SPD workflows are … tekanjoz.

Njerëzit janë shpesh të kërkuar / pyesin / fretting over moving SPD workflows from one place to another. Sot, Kam ndjekur këto hapa dhe bërë këto vëzhgime:

  • Kam krijuar një workflow duke përdorur SharePoint Designer në një vend të bashkangjitur në një bibliotekë dokument.
  • Biblioteka lidhur Dokumenti strehuar tashmë disa dokumente.
  • I shpëtuam faqes si një template.
  • Kur kam ruajtur faqen si një template, I shpëtuam përmbajtjen si edhe.
  • Kam krijuar një faqe të re në mbledhjen njëjtin vend se duke përdorur template.

Në këtë pikë, I tried to run the workflow. It promptly terminated itself with the log message, "Failed on start".

I expected this. I have low expectations when it comes to moving SPD workflows around.

Kam vazhduar:

  • Hapi vend në SharePoint Designer.
  • Had a peek at the workflow. It seemed fine.
  • I clicked "Finish".
  • Unë u zhvillua rrjedhën e punës.

Këtë herë, ai ka punuar mirë.

I’ll add that this workflow used the "collect data from user" veprim i cili është një veprim relativisht komplekse nën kapuç.

I tentatively conclude that the process of "finishing" the workflow caused SPD to properly associate the SPD workflow with the new document library. I also conclude the XOML and other XML artifacts are reasonably "loose". They are not super tightly coupled to the document library.

Çdo të thotë kjo? Assuming it’s a reliable and reproducible process, there’s at least one rough method we can use to move them around. I don’t know if this would work if we crossed site collection boundaries or even more drastically, ferma të tëra të reja (e.g. dev në skenë të stimuloj).

Nëse jeni duke e lexuar këtë dhe të prirë, ju lutem postoj një koment ose email mua your SharePoint Designer migration story. I’ll gladly update this posting with any insights thus offered.

</fund>

Abonohen në blogun tim.

Technorati Tags:

Shpejtë dhe i thjeshtë: Workflow-vetëm Field Update

It’s often useful to store status information in a custom list such as an approval code which should never be directly manipulated by end users. This is a common business scenario. I have been working on a project this year that generates various status and reminder dates via SharePoint Designer workflows that then drive KPIs and generally support time-critical business processes.

Use a site content type / column to achieve this effect.

Create a site content type with the status column as shown:

imazh

Note the "Status (for Demo)" field at the bottom.

Tjetër, click on the column name to access the column’s properties. Select "Hidden (Will not appear in forms)" in the Column Settings section as shown:

imazh

This removes the field from the standard edit/update forms. Megjithatë, it is still available in views, KPIs, the object model and anywhere else you want to use it, including SPD workflow.

</fund>

Abonohen në blogun tim.