对 SharePoint 技术设计模式: SharePoint 设计器的工作流 + 事件接收器 = 高浓度鸡尾酒

找到中手工创建 SharePoint 解决方案的新兴模式之一利用 SharePoint 设计器的工作流和事件接收器.

这里是一个业务情形,把它放在上下文:

  • 将文档上载到文档库.
  • 我开球多级使用 SharePoint 设计器创建的工作流.
  • 在这过程中一些点, 工作流将任务分配给某人 (通过从用户那里收集数据,或将一个任务分配).
  • 我们想要使用 KPI 来跟踪多久这项任务正在等待完成. KPI 显示绿色为完成的任务或适当多 3 从现在起天. 它呈黄色,如果任务的截止日期明天或今天. 它显示红色任务是否过期.
  • 出人意料的是: 我想要的驱动器,KPI 假日意识到的日期.

我无法计算假期意识到到期日期在 SharePoint 设计师工作流很容易. 要创建自定义操作或使用第三方工具. 不过, 很容易计算中的事件接收器的日期. 将这两个合并在一起,我们得到这样的图案:

  • 定义隐藏是 / 无上的文档库的网站栏标有"DoCalcualteDueDate".
  • 将它初始化为 false.
  • 在适当的时候在工作流中 (例如:. 只是之前的"收集数据" 行动), 将该值指定为 True.
  • ItemUpdate() 事件接收器看上去看看"DoCalculateDueDate" 是真的. 由于在每次更新上运行的事件接收器, "DoCalculateDueDate" 是通常虚假.
  • 当工作流分配 DoCalculateDueDate 为 true, 事件接收器计算假日意识到到期日期.
  • 当事件接收器没有这种计算, 它设置的 DoCalculateDueDate 标志为 false.

在结束, SPD 工作流向事件接收器通过 DoCalculateDueDate 信号量的沟通,我们有假期意识到由于在工作流的生命完全正确时刻分配的日期. SharePoint 设计器控件时分配的截止日期,但事件接收器执行实际的计算和分配.

</结束>

订阅我的博客.

Technorati 标签: ,

留言

您的电子邮件地址不会被公开. 必需的地方已做标记 *