Как обрабатывать пользовательский ввод в рабочем процессе - PullRequest
3 голосов
/ 21 сентября 2010

Я создаю небольшое приложение рабочего процесса, чтобы проверить возможности WF.
Что я получил до сих пор:
Workflow example

Я могу запустить рабочий процесс и добавить параметр, которыйиспользуется в операции StartProcess.Таким образом, поток проходит через первое решение и приходит либо к оплате по счету, либо к оплате кредитной картой.

Следующая часть - мой вопрос:
Когда поток достигает последовательности платежей по счету, следующие действия называются:
Sub sequence

В этой последовательности я вызываю пользовательскую операцию InitiateInvoicePayment, которая создает новый объект для хранения данных счета.На данный момент я хочу, чтобы пользователь заполнил оставшиеся необходимые данные, как показано как действие получения, но здесь я застрял.

Как я могу остановить поток и дождаться ввода данных пользователем, в идеале запустить клиентское приложение, чтобы показать форму, основанную на переменной из потоковой диаграммы?

1 Ответ

3 голосов
/ 21 сентября 2010

Операция получения предназначена для приостановки рабочего процесса, никаких больших проблем там нет.

Сторона интерфейса немного отличается. Есть несколько способов сделать это. Что-то, что я часто делаю, это записывает эти запросы пользовательского интерфейса в базу данных, и пользовательский интерфейс опрашивает таблицу на наличие данных. Таким образом, запрос на сопоставление данных счета появится достаточно скоро. И большим преимуществом является то, что вы независимы от клиентского интерфейса, который действительно активен в данный момент. Вы также можете использовать что-то более прямое, например, действие отправки WCF, и приложение UI будет прослушивать запросы, когда рабочий процесс их генерирует.

...