1.工作流就是指某个业务逻辑的流程,我们在工作流的平台上面,把它的流程中的各个步骤完全显示出来。在Captaris WorkFlow中,工作流是由一个个Task(任务)组成(微软的WF应该叫活动,应该是Activity)。例如:提交一个单子,老总审批,部门执行,这些连贯性的步骤就组成了一个工作流程,而其中每一个步骤就一个Task。

2.    完成一次工作流的任务就可以称为一个Process,不同的工作流分别对应就一个Model。Folder 代表文件夹(在Captaris WorkFlow中是虚拟的,不存在真实的硬盘空间中),可以将不同的工作流(cw)放在文件夹中。文件夹的创建:右击项目,可以看到workflow,点击…按钮,点击此按钮后,弹出对话框,框中有Make New Folder。显示如下图(此图要在项目创建以后才有):

Deployment –> Deploy Folder 就是工作流存放的文件位置。

3.    在Captaris  Workflow 中,Task分为Window Task,System Task,Web Task和Event Task(微软的Activity类型好像很多)。这些Task 下面具体会讲到。

4.    打开vs2005,新建一个项目,就可以看到Captaris WorkFlow。如下图:

5.    点击确定以后, 会弹出如下窗体:

用户必须输入User和Password,(开发一般都是admin)选择Log on to 和Server。

User 可以是Captaris  Workflow中自创建的用户,例如:admin,也可以是域用户。如果是自创建的用户,Log on to 选择 (Workflow default), 如果是域用户,选择所属的域名。

Server是开发应用程序连接的服务器,可以是本地(localhost)也可以是远程的。

6.    点击OK以后,就可以看到一个工作流的项目了。cw后缀的就是进行工作流开发的文件。返工单的工作流如下图:

刚才提到的Window Task,System Task,Web Task和Event Task在左边的工具栏都可以看到了。

7.      一般来说,开发工作流,在解决方案中除了包括工作流的项目,还应该包括一个宿主项目,可以是一个winform项目,也可以是一个web的项目,当然用控制台也是可以的。如下图:

如果有用到工作流中的类,需要修改继承,将*.aspx.cs文件中继承的命名空间

改为

8.      建立完宿主项目,就必须建立它和工作流项目之间的关联。Web Task 使用在Web平台上面。它有一个Web Form URL属性,它对应着一个aspx页面,如图:

也可以将某一个aspx页面拖拽到对应的Web Task上,拖拽后,Web Task的颜色会发生变化,结果也如上图显示,比较图如下图:

9.      除了上面说的属性,还有其它属性。Image Id属性用来显示图片,Name属性相当一个标识符(就像TextBox中的id),Description用来显示Web Task 文本的内容(相当于TextBox中的Text)Responsible Id属性是关于权限的属性(这个单独介绍),Allow Reset属性允许Web Task做Reset的操作,就是重新操作工作流中对应的步骤。

10.      控件,可以用来保存工作流的一些状态。例如在返工单工作流中保存了返工单号,工作流进程编号,邮件服务器,邮件标题,邮件内容等待。如下图:

工作流在部署完成后,如果添加新的XML,或者XML的新内容都将对工作流进程产生影响。

11.      Web Task的事件有六种,Complete,Execute,Failed,Overdue,Ready,Reset事件。看英文就基本明白这些事件的意思了。Overdue是延迟事件,就是说当对应的Web Task在规定的时间内没有完成,便会触发。

12.      除了刚在工具箱里的控件外,还可以手头添加其它控件,例如:发邮件控件,设置延迟时间的控件。点击Captaris  Workflow,如下图:

点击Custom Workflow,如下图:

选择所需的Action,点击OK,在左边的工具栏可以显示,如下图:

Set Task Due Date 控件可以设置延迟的时间,设置完会触发Overdue事件。

参考文件:C:"ProgramFiles"Captaris"CaptarisWorkflow"Help"Captaris_Workflow_Visual_Studio_Integration.chm

In the help file, there is a step by step explanation in the section -> Custom Actions -> Core Actions -> Set Task Due Date

Send Email 控件用户发送邮件,将其拖拽到相关的Task对应的事件即可。

13.      Window Task 和Web Task 基本相同。System Task是直接执行的,不需要通过web页面或者winform窗体,它可以作为一个工作流的完结,它的Ready事件中可以用来创建子工作流。

例子:根据用户选择的部门经理创建子工作流进行各部门经理审核。由于不确定用户选择部门经理的个数(每个部门经理审核都是一个Task),所以只能动态创建Task。此时,创建一个新项目的工作流,作为子工作流。

父工作流在  这个System Task的Ready事件中创建上面建好的子工作流。(Model.NewProcess()为创建的方法,这其实是创建子工作流的一个进程)

14.      开发完需要部署,右击项目名称,点击Deploy,如下图:

          

    每修改一次工作流的内容都需要Deploy才算成功。

转载于:https://www.cnblogs.com/hyt123123/archive/2009/07/01/1514586.html

Captaris WorkFlow的开发和部署相关推荐

  1. Captaris Workflow开发系列课程介绍。

    前言: 公司做为Captaris Workflow在中国的主要代理商,不仅提供Captaris Workflow产品,更提供基于Captaris Workflow技术和产品的培训.开发和辅导以及工作流 ...

  2. Captaris Workflow 6.0 EventService 执行效率低下的排除。

    如果您的Captaris Workflow Event Task执行的间隔时间超过30分钟,客户可能向您抱怨流程效率太低了,这时候你可以准备一个只包含Event Task的模型(我已经做了一个,点击此 ...

  3. MathWorks的AI之路:面向工业场景,打通开发到部署的全链路

    作者 | 阿司匹林 AI正在快速发展,并在更多的领域落地.对于MATLAB和Simulink的开发商MathWorks来说,把握AI的机会,显得尤为重要. 不少人对MATLAB等的印象依然停留在学校期 ...

  4. 用对方法,开发与部署深度学习原来如此简单……

    相信大部分人都会谈癌色变,正如我们所知的一样,晚期癌症患者的生存率低于 20%,而尽管早期患者可以被治愈,且治愈率高达 90% 以上,但因为大部分癌症早期起病隐匿,更重要的原因在于受限于现有医疗水平, ...

  5. 【Smobiler企业APP开发之一】开发环境部署

    最近研究了下Smobiler-.net移动开发,对于做企业APP开发Smobiler还是够用的,况且是完全使用C#进行编程,对于使用C#进行程序设计的程序员来说还是很容易上手的. 本章节主要介绍Smo ...

  6. 为ML开发、部署提供靠谱的系统工程方法,NASA、牛津、微软等多家机构提出MLTRL框架

    MLTRL 框架具备鲁棒性好.可靠性强等优点,并定义了一种通用语言,支持不同团队和组织的人员协同工作. 选自arXiv,作者:Alexander Lavin等,机器之心编译,编辑:陈萍 使用现代工具可 ...

  7. 基础、数据、开发、部署,AI 时代企业的全方位升级

    当"AI+"的趋势无可回避,企业领导者们需要比过往更认真地思考,如何适应全新的AI时代和其所代表的未来发展趋势. 头图来源 | 视觉中国 当AI成为基础设施 眼下,已经没有企业的领 ...

  8. 笔记合并_.NET Core开发实战(第23课:静态文件中间件:前后端分离开发合并部署骚操作)学习笔记(上)...

    23 | 静态文件中间件:前后端分离开发合并部署骚操作 我们先来看一下静态文件中间件有哪些能力 1.支持指定相对路径 2.支持目录的浏览 3.支持设置默认文档 4.支持多目录映射 源码链接: http ...

  9. 告别繁琐提升效率,Docker 帮您降低从开发到部署的复杂性

    出品丨Docker公司(ID:docker-cn) 编译丨小东 每周一.三.五晚6点10分 与您不见不散! 在 Mobelux,开发项目永远不会停止.我们一直在研究新的和现有的代码库.无论何时,都有多 ...

  10. 居然仅用浏览器,就完成了Spring Boot应用的开发与部署!

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 最近有幸试用了一下阿里云的一个新产品:云开发平台,体验一 ...

最新文章

  1. Science:“每周工作进展汇报”在博士培养中的作用
  2. C#开发微信门户及应用(10)--在管理系统中同步微信用户分组信息
  3. vue --- [全家桶] Vuex
  4. ES6之Module的语法(1)
  5. python 访问网页aspx_asp.net – 如何向python中的.aspx页面提交查询
  6. Debian下使用OpenLDAP
  7. C++之set()函数和get()函数探究
  8. TMG 模拟公司网络架构要点
  9. ANT的安装/配置笔记
  10. 正则表达式匹配html标签
  11. SecureCRT 连接ubuntu操作系统(解决Ubuntu密钥交换失败的问题)
  12. 观点 | 滴滴 AI Labs 负责人叶杰平教授:深度强化学习在滴滴的探索与实践+关于滴滴智能调度的分析和思考+滴滴派单和Uber派单对比
  13. 苹果 python蚂蚁森林自动收能量_蚂蚁森林自动收能量的最新脚本
  14. python怎么将字母排序_请教如何用python按字母顺序排序英文名字但是不可以用sort函数...
  15. 让Siri当你的管家,用iPhone玩转小米智能家居
  16. keil设置c语言字体大小,Keil uVision4怎么放大字体?放大字体和关键字标注颜色方法介绍...
  17. Visual Studio2010当前不会命中代码,源代码与原始版本不同问题的解决方法
  18. 2023电工杯数学建模思路 - 复盘:校园消费行为分析
  19. [ 后端篇 ] 10 - AWS API 返回 Endpoint request time out
  20. iphone手机信号差?教你一招辨别基带是高通还是英特尔

热门文章

  1. MYSQL查询近一年 近一月 近一周 今天数据 没有数据返回0 按时间有序返回数据
  2. php 修改文件所有者,PHP 改变文件的所有者
  3. 测度定义_测度论浅谈
  4. networkxpdf_1 NetworkX概述
  5. abaqus帮助文档_Abaqus 屈曲特征值求解 非线性屈曲分析
  6. weblogic安装部署 linuxs——wls1036版本
  7. 大数据Hadoop学习记录(2)----基于Java语言的HDFS文件数据载入(判断文件是否存在、写入文本文件、上传本次文件到HDFS、读取HDFS文件内容)
  8. dategridview代码选中行_使用IntelliJ IDEA进行Java代码调试的技巧
  9. 文科辅修计算机科学,英属哥伦比亚大学专业详情.docx
  10. Java编程:弗洛伊德算法(无向图所有顶点最小路径)