వర్గం ఆర్కైవ్స్: SharePoint వర్క్ఫ్లో

డైలీ టాస్క్ రిమైండర్లు ఇమెయిల్ // SharePoint డిజైనర్ వర్క్ఫ్లో లో మళ్ళీ వెతికినా

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 ప్రచురించబడింది కొత్త వద్ద SharePoint పత్రిక సైట్. More generally, వ్యాసం SPD ఒక మళ్ళీ వెతికినా నిర్మాణం ఎలా సృష్టించాలో వివరిస్తుంది.

పత్రిక సహా కథనాలు అనేక రకాల ఉంది, ఇతర విషయాలు, చాలా సాంకేతిక విషయాలను, interviews and industry news. I recommend you add it to your RSS feed.

మీరు అమ్మే ఒక ఉత్పత్తి లేదా సేవ కలిగి ఉంటే, 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.

చివరగా, మీరు ఒక పెద్ద ప్రేక్షకుల ముందు ఏదో వ్రాయడానికి మరియు అది పొందడానికి దురద అయితే మేము, this is a great time and place to scratch it.

</చివర>

నా బ్లాగ్ సబ్స్క్రయిబ్.

Technorati టాగ్లు:

నా కొత్త “SharePoint డిజైనర్ రక్షణ” వ్యాసం అందుబాటులో ఉంది

సుమారు మార్క్ మిల్లర్ ఎండ్ యూజర్ SharePoint has posted my latest article about using SharePoint Designer to create great workflow solutions up on his site. దాన్ని తనిఖీ.

ఈ వ్యాసం లో, నేను రూపకల్పన ప్రక్రియ గురించి మాట్లాడటానికి మరియు, ఎక్కువ వివరాలు, SharePoint లక్షణాలు ఉపయోగించి ఒక నమ్మకమైన మరియు పునరావృతం పరీక్ష ప్రక్రియ ఏర్పాటు ఎలా (కస్టమ్ జాబితాలు, సైట్ టెంప్లేట్లను). The article targets End Users, కానీ విధానం చాలా డెవలపర్లు మంచి ఉంది.

</చివర>

నా బ్లాగ్ సబ్స్క్రయిబ్.

SharePoint డిజైనర్ లాగిన్ వర్క్ఫ్లో కార్యాచరణ

గత వారం, నేను ఎలా బయటకు పని లూప్ మరియు ఒక రాష్ట్ర యంత్రం అమలు SharePoint డిజైనర్ ఉపయోగించి మరియు పేర్కొన్న, జనాంతికంగా, నేను బహుశా మంచి వర్క్ఫ్లో లాగింగ్ గురించి ఒక బ్లాగ్ పోస్ట్ను వ్రాసిన అని.

బాగా, Sanjeev Rajput beat me to it. ఒక లుక్ కలిగి.

కస్టమ్ జాబితాలో లాగ్ డేటా సేవ్ సాధారణ వర్క్ఫ్లో చరిత్ర ఉపయోగించి ఉన్నతమైన ఉంది:

  • ఇది కేవలం ఒక కస్టమ్ జాబితా వార్తలు, కాబట్టి మీరు చాలా సులభంగా ప్రతిభను ఎగుమతి చేయవచ్చు.
  • మీరు వీక్షణలు సృష్టించవచ్చు, డైనమిక్ డేటా ఫిల్టర్, మొదలైనవి.
  • ఇది మీరు సాధారణ వర్క్ఫ్లో చరిత్ర పొందుటకు స్వీయ ప్రక్షాళన లోబడి కాదు.

కొన్ని సమస్యలు ఉన్నాయి / దుష్ప్రభావాలు:

  • లాగింగ్ చాలా చాలా నడుస్తున్న పనితీరుకు జాబితాకు రాసిన చాలా డేటా కావచ్చు.
  • Maybe you *do* want automatic purging. You don’t get that feature with this approach (కోడింగ్ లేకుండా).
  • 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.

</చివర>

Technorati టాగ్లు:

నా బ్లాగ్ సబ్స్క్రయిబ్.

Tribbles తో ట్రబుల్ … తప్పు .. KPIs

This past week I finished off a proof of concept project for a client in Manhattan. While implementing the solution, నేను MOSS KPIs మరొక లోపం ఎదుర్కొంది (ఒక మునుపటి KPI సమస్య మరియు నా ప్రత్యామ్నాయాన్ని కోసం ఇక్కడ చూడండి).

నేపద్యం: 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, ఈ సైట్లలో హోస్ట్ అనేక పత్రం గ్రంధాలయాలు, use audience targeting and so forth. Just a bunch of stuff to help with collaboration among the internal employees, ఉద్యోగులు మరియు క్లయింట్ యొక్క పాల్గొనే వ్యాపార భాగస్వాములు ప్రయాణించే.

మేము కూడా వర్క్ఫ్లో రాష్ట్ర డేటా ప్రచారం మరియు KPIs ఉపయోగించి చూచుటకు వంటి నిర్దిష్ట వ్యాపార ప్రక్రియ మొత్తం ఆరోగ్య పర్యవేక్షించే కొన్ని KPIs చూపించు కోరుకున్నాడు.

చివరకు, మేము సైట్ లో ఒక జాబితాలో ఒక దృశ్యం ఒక గణన చేసే KPI జాబితా అంశాలను ఉపయోగిస్తారు (మరో డేటా మూలం నుండి లాగడం వ్యతిరేకంగా, ఎక్సెల్ లేదా SQL వంటి).

సమస్య: మీరు ఊహించిన విధంగా, మేము ఒక ఉత్పత్తి ప్రపంచంలోకి ముందుకు ప్రాథమిక ఆలోచన తీసుకుని ఉన్నాయి ఊహిస్తూ, we would want a site template. Provision a new site based off a "business process" టెంప్లేట్.

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.

ఉదాహరణకు:

  • Create a new site and build it to perfection. This site includes the KPI data.
  • ఒక టెంప్లేట్ ఆ సేవ్.
  • ఒక కొత్త సైట్ మరియు బేస్ ఏర్పాటు టెంప్లేట్ ఆఫ్ ఉంటే.
  • ఈ కొత్త సైట్ యొక్క KPI జాబితా అంశాలు’ మూలాల సైట్ టెంప్లేట్ పాయింటు, కాదు ప్రస్తుత సైట్.

అనేది ప్రక్రియ URL సరి లేదు.

I tried to solve this by specifying a relative URL when defining the KPI list item. అయితే, నేను ఆ పని ఏ వైవిధ్యం పొందుటకు కాలేదు.

I always want to pair up these "problem" పరిష్కారం రకమైన బ్లాగు పోస్ట్లు, 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, కాబట్టి మీరు నిజంగా మొదటి నుండి మొత్తం విషయం పునర్నిర్వచించటం కలిగి.

ఎవరైనా ఈ నిర్వహించడానికి ఒక మంచి మార్గం తెలిస్తే, వ్యాఖ్యను పోస్ట్ చెయ్యండి.

</చివర>

Technorati టాగ్లు:

మియా చిన్న — SharePoint డిజైనర్ * * రాష్ట్రం మెషిన్ పనితీరుకు సృష్టించవచ్చు

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 came across this MSDN forum post అలాగే. 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, but here’s the gist of it:

  • The approach leverages the fact that a workflow can change a list item, thereby triggering a new workflow. I’ve normally considered this to be a nuisance and even blogged about using semaphores to handle it.
  • SharePoint allows multiple independent workflows to be active against a specific list item.

To configure it:

  • Design your state machine (i.e., the states and how states transition from one to the next).
  • Implement each state as separate workflow.
  • Configure each of these state workflows to execute in response to any change in the list item.

Each state workflow follows this rough pattern:

  • Upon initialization, determine whether it should really run by inspecting state information in the "current item". Abort if not.
  • Do the work.
  • Update the "current item" with new state information. This triggers an update to the current item and fires off all the state workflows.

Aside from the obvious benefit that one can create a declarative state machine workflow, all that state information is terrific for building KPIs and interesting views.

It does have a fairly substantial drawback — standard workflow history tracking is even more useless than normal 🙂 That’s easily remedied, అయితే. 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" because I have, అకస్మాత్తుగా, 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.

</చివర>

నా బ్లాగ్ సబ్స్క్రయిబ్.

Technorati టాగ్లు:

ఎండ్లెస్ లూప్స్ నివారణకు SharePoint డిజైనర్ వర్క్ఫ్లో లో Semaphores ఉపయోగించండి

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

  • ఒక వర్క్ఫ్లో సృష్టించు మరియు జాబితా అనుబంధం.
  • కొత్త అంశాల సృష్టించినప్పుడు మొదలు మరియు ఇప్పటికే ఉన్న ఐటెమ్లను యొక్క అప్డేట్ చేయాలి సూచించండి.
  • A step in the workflow updates a field in "Current Item".
  • ప్రస్తుత అంశాన్ని మార్చబడింది నుండి, వర్క్ఫ్లో కొత్తగా ప్రారంభమవుతుంది.

ఈ అంతులేని లూప్ నిరోధించడానికి, ఒక సాధారణ సంకేత పదాల ద్వారా వార్తలను చేర వేయు పద్ధతి అమలు:

  • ఒక సైట్ కాలమ్ జోడించు (మీరు కంటెంట్ రకాల ఉపయోగించి కాకపోతే జాబితా / లైబ్రరీ లేదా కాలమ్).
  • మార్చు పేజీ నుండి దాచిపెట్టు (అది తేలిక దాని లక్షణాలు ద్వారా సైట్ కాలమ్, సులభంగా లేకపోతే జాబితా కాలమ్).
  • వర్క్ఫ్లో లో, సంకేత పదాల ద్వారా వార్తలను చేర వేయు పద్ధతి కాలమ్ విలువ ఖాళీ ఉంటే చూడటానికి తనిఖీ.
  • అది ఖాళీగా ఉంటే, ఒక ఖాళీ లేని విలువ ఇది సెట్ మరియు ముందుకు.
  • ఖాళీ లేదు ఉంటే, వెంటనే నిష్క్రమించడానికి.

ఈ ఒక బొత్తిగా nuanced పరిష్కారం కావచ్చు, వ్యాపార అవసరాల ఆధారంగా మొదలగునవి, నేను అవసరం చేసినప్పుడు కానీ ఒక వ్యావహారిక నమూనా కూడా.

</చివర>

Technorati టాగ్లు:

నా బ్లాగ్ సబ్స్క్రయిబ్.

ఎడ్యుకేషన్ ద్వారా: Employee శిక్షణ మూస లభ్యమవుతున్న సీట్ల UNREGISTER బగ్ను పరిష్కరించుటకు

అనేక మంది తెలిసిన, Employee శిక్షణ టెంప్లేట్ ఇక్కడ Microsoft అందించిన ఈ దశలను అనుసరించడం మేము పునరుత్పత్తి చేసే ఒక బగ్ ఉంది:

  • ఒక గరిష్ట పరిమాణం తరగతి సృష్టించు 10 విద్యార్థులు.
  • నమోదు –> Total available seats properly decrements by one. ఫలితంగా: 9 అందుబాటులో సీట్లు.
  • UNREGISTER: –> Bug. Total available seats should increment by one. It does not. ఫలితంగా: 9 SharePoint ప్రకారం అందుబాటులో సీట్లు, కానీ నిజానికి, ఉన్నాయి 10 అందుబాటులో సీట్లు.

పరిష్కారము: వర్క్ఫ్లో సరిచేయడానికి SharePoint డిజైనర్ ఉపయోగించండి.

మొదటి, open up the site. The folder list for me looks like this:

ప్రతిమ

If we have a look at the "Attendee registration" వర్క్ఫ్లో, we see that there is a step labeled "Enforce seating policy". It looks like this:

ప్రతిమ

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, మేము ఈ చూడండి:

ప్రతిమ

మేము unregistration వర్క్ఫ్లో పరిష్కరించడానికి అవసరం అన్ని సమాచారం.

మేము unregistration వర్క్ఫ్లో కు కుదుపు ఉంటే, there is no similar workflow step. Add it as follows:

1: Expand "Attendee unregistration" మరియు XOML తెరుచుకుంటుంది (మీరు కోల్పోయిన చేస్తుంటే మొదటి స్క్రీన్ షాట్ చూడండి).

2: ఒక కొత్త వర్క్ఫ్లో వేరియబుల్ జోడించు, "New Filled Seats" of type "Number".

3: Assign a value to "New Filled Seats" చూపిన విధంగా:

ప్రతిమ

4: ద్వారా నిండిన సీట్లు తరుగుదల 1:

ప్రతిమ

5: సంబంధిత కోర్సు అంశం అప్డేట్:

ప్రతిమ

6: Make sure all the steps are in the right sequence. నాకు, ఈ అనిపిస్తోంది:

ప్రతిమ

7: వర్క్ఫ్లో తిరిగి నిర్మించడానికి ఇది ముగించు.

8: టెస్ట్.

</చివర>

నా బ్లాగ్ సబ్స్క్రయిబ్.

Technorati టాగ్లు: ,

SharePoint సాంకేతిక డిజైన్ పద్ధతులు వైపు: SharePoint డిజైనర్ వర్క్ఫ్లో + ఈవెంట్ స్వీకర్త = హై శక్తి కాక్టెయిల్

నేను SharePoint పరిష్కారాలను ఇమిడి కనుగొనేందుకు చెందుతున్న నమూనాల ఒక SharePoint డిజైనర్ వర్క్ఫ్లో మరియు కార్యక్రమం రిసీవర్ ప్రభావితం.

ఇక్కడ సందర్భంలో అది చాలు ఒక వ్యాపార దృశ్య:

  • నేను ఒక డిఓసి lib ఒక పత్రం అప్లోడ్.
  • SharePoint డిజైనర్ ఉపయోగించి రూపొందించినవారు నేను ఆఫ్ వదలివేయడానికి బహుళ దశల వర్క్ఫ్లో.
  • ఆ ప్రక్రియ సమయంలో కొన్ని పాయింట్ వద్ద, వర్క్ఫ్లో ఎవరైనా ఒక పని అప్పగిస్తాడు (యూజర్ నుండి సమాచారాన్ని సేకరించడానికి లేదా ఒక బాధ్యతను అప్పగించడం ద్వారా).
  • 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.
  • ఇక్కడ kicker వార్తలు: నేను KPI సెలవు-తెలుసుకోవాలి అని వెళ్ళే తేదీ అనుకుంటున్నారా.

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. అయితే, 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".
  • తప్పుడు దానిని ప్రారంభించటానికి.
  • వర్క్ఫ్లో తగిన సమయంలో (ఉదాహరణకు. just before the "collect data" క్రియ), ట్రూ ఆ లెక్కించాల్సి.
  • ఒక ItemUpdate() event receiver looks to see if "DoCalculateDueDate" is true. Since the event receiver runs on every update, "DoCalculateDueDate" సాధారణంగా తప్పుగా.
  • వర్క్ఫ్లో నిజమైన కు DoCalculateDueDate కేటాయించే సమయంలో, ఈవెంట్ రిసీవర్ సెలవు-ఎవేర్ గడువు తేదీ లెక్కిస్తుంది.
  • ఈవెంట్ రిసీవర్ ఈ లెక్కలో చేస్తుంది, అది తప్పుకు DoCalculateDueDate జెండా అమర్చుతుంది.

చివరికి, 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.

</చివర>

నా బ్లాగ్ సబ్స్క్రయిబ్.

Technorati టాగ్లు: ,

పరిశీలించిన ప్రవర్తనకు: ఒక సైట్ కలెక్షన్ లోపల SPD పనితీరుకు మూవింగ్

UPDATE: I’ve been researching how to embed a SPD workflow into a site definition. ఈ MSDN ఫోరమ్ గొలుసు కొన్ని ఆసక్తికరమైన సమాచారం ఉంది. It’s not conclusive, కానీ అడవిలో మార్గం పాయింట్లు.

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 … సహజ స్వభావం గల.

ప్రజలు తరచుగా అడుగుతున్నారు / wondering / fretting over moving SPD workflows from one place to another. నేడు, నేను ఈ దశలను అనుసరించి ఈ పరిశీలనలు తయారు:

  • నేను ఒక పత్రాన్ని లైబ్రరీ జత ఒక సైట్ లో SharePoint డిజైనర్ ఉపయోగించి ఒక వర్క్ఫ్లో రూపొందించినవారు.
  • సంబంధిత పత్రం లైబ్రరీ ఇప్పటికే అనేక పత్రాలు ఉంచారు.
  • నేను ఒక టెంప్లేట్ వంటి సైట్ సేవ్.
  • నేను ఒక టెంప్లేట్ వంటి సైట్ సేవ్ చేసినప్పుడు, నేను అలాగే కంటెంట్ సేవ్.
  • నేను ఆ టెంప్లేట్ ఉపయోగించి అదే సైట్ సేకరణలో క్రొత్త సైట్ రూపొందించినవారు.

ఈ సమయంలో, 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.

నేను కొనసాగింది:

  • SharePoint డిజైనర్ లో సైట్ ప్రారంభించారు.
  • Had a peek at the workflow. It seemed fine.
  • I clicked "Finish".
  • నేను వర్క్ఫ్లో అమలు.

ఈ సమయం, ఇది జరిమానా పని.

I’ll add that this workflow used the "collect data from user" హుడ్ కింద ఒక సాపేక్షంగా క్లిష్టమైన చర్య ఇది ​​చర్య.

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.

దీని అర్థం ఏమిటి? 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, మొత్తం కొత్త పొలాలు (ఉదాహరణకు. పొడుచు కు దశ dev).

దీన్ని చదివే మరియు వంపుతిరిగిన ఉంటే, లేదా ఒక వ్యాఖ్యను పోస్ట్ చెయ్యండి నాకు ఇమెయిల్ your SharePoint Designer migration story. I’ll gladly update this posting with any insights thus offered.

</చివర>

నా బ్లాగ్ సబ్స్క్రయిబ్.

Technorati టాగ్లు:

త్వరిత మరియు సింపుల్: వర్క్ఫ్లో మాత్రమే అప్డేట్ ఫీల్డ్

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.

ఒక సైట్ కంటెంట్ రకం ఉపయోగించండి / ఈ ప్రభావాన్ని సాధించటానికి కాలమ్.

చూపిన విధంగా స్థితి కాలమ్ తో ఒక సైట్ కంటెంట్ రకం సృష్టించు:

ప్రతిమ

Note the "Status (డెమో కోసం)" దిగువన రంగంలో.

తర్వాత, click on the column name to access the column’s properties. Select "Hidden (రూపాల్లో కనిపించదు)" చూపిన విధంగా కాలమ్ సెట్టింగులు విభాగంలో:

ప్రతిమ

This removes the field from the standard edit/update forms. అయితే, అది ఇప్పటికీ వీక్షణలు అందుబాటులో ఉంది, KPIs, ఆబ్జెక్ట్ మోడల్ మరియు ఎక్కడైనా మీరు ఉపయోగించడానికి మీరు, including SPD workflow.

</చివర>

నా బ్లాగ్ సబ్స్క్రయిబ్.

Technorati టాగ్లు: ,