Workflow - это полная или частичная автоматизация бизнес-процесса, при которой документы, информация или задания передаются от одного участника (бизнес-процесса) к другому для выполнения действий согласно набору руководящих правил.
При описании бизнес-процессов PHP-платформа Wad-er основывается на моделировании Workflow-процессов по технологии сетей Петри.
Для реализации WorkFlow-процесса и отображения его схемы был написан модуль Wad-er WorkFlow System. Рекомендуется установить модуль в панели управления (Использование готовых модулей) перед тем, как знакомиться с особенностями Workflow-процессов в PHP-платформе Wad-er.
Workflow-процессы в PHP-платформе Wad-er описываются при помощи следующих составных частей:
Все таблицы можно посмотреть в модуле Wad-er WorkFlow System.
Пример Workflow-схемы.
Создайте новую страницу (Создание страницы) и разместите на вкладке Содержание следующий код:
//Код (Id) шаблона бизнес-процессов
$wfid = 4;
include_once(SYS_BASE_PATH.'main/classes/workflow.class.php');
class wwf extends wAjaxWorkFlow
{
public $workflowid = 0;
public function getXml($trans = 0)
{
//получение данных в xml-формате о
$f = new wworkflow_models_wflow();
$f->id = $this->workflowid;
return $f->getXml($trans);
}
public function boxMove($formid = 0, $leftcorner = 0, $topcorner = 0, $boxwidth = 0, $boxheight = 0)
{
$f = new wworkflow_models_wftrans();
$f->id = $formid;
$f->read();
$f->setFieldNewVal('topcorner', floor($topcorner));
$f->setFieldNewVal('leftcorner', floor($leftcorner));
$f->setFieldNewVal('boxwidth', floor($boxwidth));
$f->setFieldNewVal('boxheight', floor($boxheight));
$f->update();
return '';
}
}
$parent = (isset($_POST["parent"])) ? $_POST["parent"] : 0;
$w = new wwf('wwf_wftrans', 'wwf_conns');
$name = $parser->utils->getFieldFromSql('SELECT title FROM wwf_wflow WHERE id='.$wfid, '');
$w->caption = $name;
$w->workflowid = $wfid;
$w->f = new wworkflow_models_wftrans();
$w->f->setFieldVal('wfid', $wfid);
$w->f->setFieldAttr('wfid', 'refval', $name);
$w->f->setFieldAttr('wfid', 'ro', true);
$name = $parser->utils->getFieldFromSql('SELECT title FROM wwf_wftrans WHERE id='.$parent, '');
$w->c = new wworkflow_models_conns();
$w->c->wfid = $wfid;
$w->c->setFieldVal('fromtrans', $parent);
$w->c->setFieldAttr('fromtrans', 'refval', $name);
$w->c->setFieldVal('totrans', $parent);
$w->c->setFieldAttr('totrans', 'refval', $name);
$w->editing = true;
$w->adding = true;
$w->copying = true;
$w->deleting = true;
$w->resizable = true;
$w->draggable = true;
$w->addHidden('wfid', $wfid);
$w->cardurl = $parser->makeUrl('wwf_wftrans_card');
$w->show();
Зайдите по адресу http://site.com/newpage, где newpage – Код (Id) созданной страницы – на странице отобразится шаблон бизнес-процесса.