zoukankan      html  css  js  c++  java
  • 基于SharePoint 工作流的InfoPath 2010的报修系统的建立:第四章 报修单批准和处理等视图的设计

    在上一章,我们讲述了如何去建立一个拥有规则、基于浏览器和提交的表单,并且通过带筛选的功能,我们还可以自动地设置一些域的默认值。这一章我们主要把所有的规则应用,去建立其它的视图,这些视图包括用来审批的:审批单视图,记录处理过程的处理视图。

    一、建立审批视图:

    如下图,我们新建一个视图,其中包括如下的字段,其中在绿色框架中的,就是在前一章中创建的报修单的一些字段,这里,为了让审批者可以看清,我们把报修单中的了段都做成了“已计算值”

    image

    1 处理人:在处理人这个域中,我们使用了,“个人/组选择器”,如下图,并且我们把“当前处理人”,这个字段就设置成这个域下面的DisplayName。

    image

    2. 提交按钮

    同样,这个提交按钮,我们也要让它去执行三个操作,如下图,但是也有一个条件,就是当前登录的人在人事情况表中的职务必须包括“经理”,如下图:

    条件公式为:contains(xdXDocument:GetDOM("人事情况表")/dfs:myFields/dfs:dataFields/d:SharePointListItem_RW/d:JobTitle[../d:_x59d3__x540d__x62fc__x97f3_ = xdUser:get-UserName()], "经理")

    image

    二、处理视图:

    image

    1 如何筛选最大日期的数据。在处理视图,我们使用了一个重复表,来记录每一个处理的过程,其中包括如下的信息:处理日期、处理人、处理状态、说明,为了管理上的方便,我们还必须有一组字段来反应最新的处理结果,这组字段叫“最新组”,但是这个最新的处理结果只能从重复表中选取日期最新的,这组域就叫:当前处理人、当前处理日期、当前处理状态、当前状态说明。为了能在重复表中,把最新的处理条目筛选出来,我们可以在重复表中使用规则,当得重复表中的任一一个控的有变化时,我们就把当前的行与“最新组”比较,把最近日期的数据填到“最新组”中去。

    我们必须在重复表中的处理日期,应用如下的规则:

    image

    同样在处理人、处理状态、处理说明,我们都同样应用如上的处理规则。

    2 提交:提交前判断一下职务是不是包括行政或是经理,就行了。

    三、查看(打印)视图:

    其实查看或是打印视图,就是一个可以看到全面信息的只读表格:

    image

    四、初始规则和属性提升:

    如果要让表单一开始就根据域值来进行属性的选择,那么就必须设置初始的规则:

    如下图

    image

    1 当前处理状态为“未指定”,或是空是,我们切换到报修视图,说明系统允许报修人填写或是修改报修内容。

    2 当前处理状态为“未审批”,当前用户是经理,并且审批人为空时,我们切换到审批视图,并且设置审批人为当前登录人。

    3 当前处理状态为“未审批”,当前用户是经理,我们切换到审批视图。

    4 审批为“同意”,当前是经理或是行政人员,切换到处理视图。

    5 其它情况,切换到打印视图。

    同时,我们把其它所有的属性都进行提升,提升到库的栏,这样我们在进行信息归类时,就可以通过网站的操作来进行工作流的制作。

    现在表单基本都做好了,使用者可以来在库中提交报修申请,如果经理打开了,就会自动切换到审批视图进行审批,如果审批通过,行政人员打开后,就可以进行处理的记录。现在缺的就是如何把这些操作通过一些自定义的操作串起来,当然你也可以命令部下每天打开文档库看看你的申请有没有被批准,有没有新的申请过来,但这总不是太智能不是嘛?下一章,我们就通过SPD的工作流,把这样东东通过任务列表和电子邮件信息串起来。

  • 相关阅读:
    [网络流24题]飞行员配对方案问题
    学习笔记——线性基
    HDU 4507 吉哥系列故事——恨7不成妻(数位DP求平方和)
    bzoj1415&洛谷P4206 [NOI2005]聪聪与可可
    后缀自动机(模板+例题)
    最小表示法(模板)poj1059
    求次小生成树(洛谷P4180&bzoj1977)
    KMP poj3942
    最小表示法(模板) CH1807
    数位dp 求山峰数(hill)
  • 原文地址:https://www.cnblogs.com/dosboy/p/1948793.html
Copyright © 2011-2022 走看看