[我很欣赏这有点主观 - 但必须有人知道编写系统的知识来处理这种类型的要求。注意:我们使用 C#、.Net4 并且有 SP2010]
我一直在为自定义业务应用程序评估 SharePoint2010 和 WF4,这些应用程序涉及工作流,也需要后端系统交互。
(也可以选择既不是 SP2010 也不是 WF4,只需将状态更改写入 DB 并编写直接 Windows 服务来执行任何自动化阶段。)
对于大多数要求,SP2010 证明了非常陡峭的学习曲线和受限的功能......但是,对于工作流部分,尤其是它擅长的“列表和任务”,并且易于实施具有随附安全性的新列表是一个奖励.
那么,有没有办法在 WF4 中模拟其中的一些功能?
主意
MVC3 应用程序,用户的 AD 组决定了他们可以执行哪些“队列”和功能。
用户可以看到他们自己的请求和他们的状态等。
用于托管工作流的 WF4 服务,其中一些步骤是自动的。
示例 1
用户 NormalPerson (NP) 打开站点,点击“创建新请求”
表单允许他们从后端系统中查找数据(数千行,SP2010 在这方面遇到了严重的困难,特别是因为它需要多次搜索和过滤器/排序 - 然而,jQuery+DataTables+Ajax 使这变得简单)
NP 保存请求
WF4“获取”请求,设置为“需要批准”,将电子邮件发送到 BackOffice (BO) 组并持续到 DB(通过 BLL 交互)
BO 用户可以打开站点并查看“新请求”列表,打开一个并批准它。
WF4“获取”字段中的更改,将电子邮件发送到 NP 和案例管理组,保存到 DB。
CM 用户打开“等待操作”列表并执行操作(也更新后端系统),设置为已完成。
WF4“获取”更改并向NP发送确认,归档请求。
示例 2
NP 创建新请求
WF4 发送电子邮件,设置“需要批准”
BO 用户在列表中找到新请求,打开但拒绝
WF4 向 NP 发送带有请求链接的电子邮件
NP 打开链接,修改请求,保存
WF4 向博群发送“更新”邮件并标记为重新提交
BO 用户打开“重新提交”列表,选择项目并设置为“需要经理批准”
WF4 发送经理电子邮件
经理在他的列表中看到项目,打开并批准。
WF4 向 CM 组发送电子邮件.....照常进行。
示例 3
NP 保存新的请求
WF4 收到请求,其限制如此直接地通过适当的电子邮件发送到“CM”
CM用户拿起............照旧进行。
示例 4
NP 保存新的请求
WF4 收到请求,它不需要任何手动干预,因此更新后端系统(BLL/WCF 调用等)并设置为“已完成”并使用电子邮件等。
CM用户拿起............照旧进行。
示例 5
NP 保存新请求
WF4 收到请求,发送电子邮件并离开为“需要批准”
NP 在任何人处理它之前打开请求并取消它。
WF4 获取更改并将项目移动到“已取消”。