катэгорыя Архівы: Працоўных працэсаў 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 Magazine сайт. 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 Designer” Даступныя мовы

Марк Мілер, па меншай Канчатковага карыстальніка 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 Designer,

На мінулым тыдні, Я працаваў, як пятлю і рэалізацыі дзяржаўнай машынай выкарыстаннем SharePoint Designer і згадаў, як у бок, што я б, верагодна, напісаць у блогу аб лепшай працоўны працэс рэгістрацыі.

Добра, Sanjeev Rajput beat me to it. Паглядзець.

Захаванне дадзеных часопіса ў карыстацкі спіс здаецца эфектыўна, чым выкарыстанне рэгулярных гісторыі праходжання дакументаў:

  • Гэта проста карыстацкі спіс, так што вы можаце экспартаваць яго ў Excel вельмі лёгка.
  • Прадстаўлення можна ствараць, дынамічнай фільтравання дадзеных, і г.д..
  • Гэта не падлягае аўтаматычнай прадзьмуху вы атрымліваеце з рэгулярнымі гісторыі праходжання дакументаў.

Ёсць некаторыя рызыкі / Недахопы:

  • Шмат працоўных патокаў з вялікім вядзення часопіса могуць прывесці да занадта шмат дадзеных, якія будуць запісвацца ў спіс.
  • 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.

</канец>

Падпісацца на мой блог.

Праблемы з Tribbles … памыляцца .. КПЭ

This past week I finished off a proof of concept project for a client in Manhattan. While implementing the solution, Я сутыкнуўся з іншым недахопам MOSS КПЭ (Глядзіце тут для папярэдняга выпуску 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, вандруюць супрацоўнікаў і партнёраў-удзельнікаў бізнес-кліента.

Мы таксама хацелі паказаць некаторыя ключавыя паказчыкі эфектыўнасці, якія кантралююць агульны стан здароўя, што канкрэтных бізнес-працэсаў і распаўсюджваюцца праз працоўны працэс звестак, якiя складаюць дзяржаўную і праглядзець з дапамогай ключавых паказчыкаў эфектыўнасці.

У рэшце рэшт, мы выкарыстоўвалі KPI спіс прадметаў, якія разлічваюць на від на спіс на сайце (у адрозненне ад выцягвання з іншай крыніцы, як Excel або 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 Тэгі:

Mea Culpa — SharePoint Designer * Можна * Стварыць аперацый канчатковых аўтаматаў

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 па прадухіленні Бясконцыя цыклы

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".
  • Так як бягучы элемент зменены, працоўны працэс пачынаецца зноўку.

Каб прадухіліць гэта бясконцы цыкл, рэалізацыі простага семафора:

  • Дадаць слупок сайта (або калонкі ў спіс / бібліятэку, калі вы не выкарыстоўваеце тыпы кантэнту).
  • Схаваць ад старонкі рэдагавання (лёгка зрабіць, калі сайт калону праз яго ўласцівасці, не так проста, калі слупок спісу).
  • У працоўным працэсе, праверыць, калі значэнне семафора слупок застаецца пустым.
  • Калі яна пустая, ўсталяваць яго на не абы-значэнне і перайсці.
  • Калі гэта не пустая, выйсці неадкладна.

Гэта можа стаць даволі тонкія рашэння, у залежнасці ад патрабаванняў бізнесу і г. д., але гэта быў рэальны карціна, калі я меў патрэбу ў ім.

</канец>

Падпісацца на мой блог.

Прахадных: Выправіць Навучанне персаналу Шаблон Даступныя Unregister месцаў памылка

Як многія ведаюць,, Шаблон Навучанне персаналу якія прадстаўляюцца Microsoft тут ёсць памылка, што мы можам прайграць наступныя дзеянні:

  • Стварыце клас з Максімальны памер 10 студэнтам.
  • Рэестр –> Total available seats properly decrements by one. Вынік: 9 даступных месцаў.
  • Адмяніць рэгістрацыю: –> Bug. Total available seats should increment by one. It does not. Вынік: 9 Запаўняльнасць месцаў у адпаведнасці з SharePoint, але на самой справе, маюцца 10 даступных месцаў.

Рашэнне: Выкарыстанне SharePoint Designer выправіць працоўны працэс.

Першы, 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, мы бачым гэта:

малюнак

Гэта ўсё, што інфармацыя, якую мы павінны выправіць працоўны працэс адмены рэгістрацыі.

Калі перавярнуць ў працоўны працэс адмены рэгістрацыі, 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 Designer працоўны працэс + Прыёмнік падзей = Высокае Кактэйль патэнцыі

Адна з новых мадэляў я знаходжу ў распрацоўцы рашэнняў SharePoint выкарыстоўвае SharePoint Designer працоўны працэс і прыёмнік падзеі.

Вось бізнес-сцэнар, каб змясціць яго ў кантэкст:

  • Я загрузіць дакумент да дакумента Lib.
  • Я адкідаю шматступенны працэс, створаны дапамогай SharePoint Designer.
  • У нейкі момант у ходзе гэтага працэсу, працоўны працэс прызначае задачу камусьці (з дапамогай збору дадзеных ад карыстальніка або прызначыць задачу).
  • 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.
  • Вось футбаліст: Я хачу, што дата дыскаў, KPI, каб быць святам-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. Аднак, 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".
  • Ініцыялізаваць яго да ілжывым.
  • У адпаведны час у працоўны працэс (e.g. 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 да сапраўднага, прыёмнік падзей разлічвае свята-Aware тэрмін.
  • Калі прыёмнік падзей робіць гэты разлік, яна ўсталёўвае сцяг 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.

</канец>

Падпісацца на мой блог.

Назіранае паводзіны: Перамяшчэнне СПД Рабочыя працэсы ў сямействе

АБНАЎЛЕННЕ: 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 … тэмпераментны.

Людзі часта просяць / цікава / fretting over moving SPD workflows from one place to another. Сёння, Я рушыў услед за гэтымі крокамі, і зрабіў гэтыя назіранні:

  • Я стварыў працоўны працэс з дапамогай SharePoint Designer ў месцы прымацаваная да бібліятэкі дакументаў.
  • Асацыяванага з бібліятэкай дакументаў ужо знаходзілася некалькі дакументаў.
  • Я выратаваў сайт як шаблон.
  • Калі я выратавала сайт як шаблон, Я выратаваў зместу, а.
  • Я стварыў новы сайт у адной калекцыі сайта з дапамогай гэтага пра шаблон.

У гэты момант, 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 Designer.
  • 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, ўсё новыя фермы (e.g. распрацоўніка на сцэну, каб заахвоціць).

Калі вы чытаеце гэта і схільныя, просьба пакінуць каментар або напішыце мне your SharePoint Designer migration story. I’ll gladly update this posting with any insights thus offered.

</канец>

Падпісацца на мой блог.

Хутка і проста: Workflow-толькі Абнавіць поле

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 (для Demo)" поле ў ніжняй.

Наступны, click on the column name to access the column’s properties. Select "Hidden (Не з'явіцца ў формах)" у раздзеле Параметры слупкоў, як паказана:

малюнак

This removes the field from the standard edit/update forms. Аднак, ён па-ранейшаму даступны ў такіх відах, КПЭ, аб'ектнай мадэлі і ў іншым месцы вы хочаце выкарыстоўваць яго, including SPD workflow.

</канец>

Падпісацца на мой блог.