一步步学习微软InfoPath2010和SP2010--第十一章节--创建批准流程(8)--提交表单操作

本文主要是介绍一步步学习微软InfoPath2010和SP2010--第十一章节--创建批准流程(8)--提交表单操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        不同的审批中,不同的操作将以指定次序发生。而且,不同操作会根据表单是批准还是拒绝相应发生。然而,无论表单是批准还是拒绝,当前登录用户的名字和当前日期都会被保存。根据你定义的规则,下面是表单的行为:

1.      无条件

        当提交按钮被点击时,发生下列操作:

        A. Approver域被设置为当前登录用户名。

        B. Approval Data域被设置为当前日期。

2.      批准

        当表单被批准时,FormStatus值被设置为VP Approval。VP将是下一个批准表单的人,并且VP approval节在manager approval之下。

3.      拒绝

        当表单被拒绝时,FormStatus值被设置为Rejected。

        下面练习中,你将创建操作规则,当提交按钮被点击时执行。

        准备:设计模式打开ContosoReimbursementform.xsn,切换到Approval视图。

1.      双击选中“提交”按钮,点击功能区“管理规则”。

2.      点击“新建”选择“操作”,命名Set Approver Info。

3.      在“运行这些操作”,点击“添加”,选择“设置域值”。


4.      点击“域”框旁的域选取器。


5.      在Manager_Approval节,选择ManagerApprover域,点击“确定”。


6.      点击“fx”按钮,点击“插入函数”。

7.      选择userName函数,点击“确定”,并点击“插入公式”窗口的“确定”。


8.      点击“确定”关闭规则详细信息。


9.      再次点击“添加”,选择“设置域值”。重复步骤4-7,ManagerApprovalDate域值Today()。


10.  在“规则”窗格,点击“新建”,选择“操作”,命名Approved,条件ManagerApproval等于Approved(已批准),点击“确定”。


11.  添加一个设置域值操作。FormStatus设置为VP Approval,点击确定。记住是大小写敏感的。


12.  点击“新建”按钮创建另一个操作规则,命名Rejected,设置条件FormStatus等于Rejected。

        注意:正如步骤11,不需要点击“fx”按钮,可以直接输入文本。

13.  设置完所有值,表单需要提交并关闭。点击“新建”,选择“操作”。命名Submit and Close。无条件。创建两个操作:提交表单到SharePoint(Submit Data),并关闭表单。

        现在提交按钮有5个规则。


        自动化这个表单幕后需要很多操作。所有这些复杂性对于填表人都是透明的。Approval流程易于理解且非常简单。

        在下面的练习中,你将复制Manager Approval节来创建另一个approvals。

1.      切换到Approvals视图,选择Manager Approval节,在左下角点击“节”,按下Ctrl+C复制这个节。


2.      按下右箭头知道光标在节右边,粘贴。

3.      在新节的标题,改变Manager为VP。现在所有的VP域需要使用,而不再是manager域。右击VP节左下角的“节”,选择“改变绑定”。


4.      控件需要绑定到VP Approval节,而不是Manager Approval,选择VP_Approval节,点击“确定”。


        现在每个单独控件需要改变绑定。

5.      在VP Approval节,右击Approve选项,选择“改变绑定”。在VP_Approval节,选择VPApproval域,点击“确定”。


6.      使用步骤5的方法,改变下列控件的绑定。


7.      已计算值Approved by域有点不同。点击选中这个控件,按下Alt+Enter打开属性。XPath域为空,所以计算值需要重新创建。如果XPath不为空,清空。点击旁边的“fx”按钮。


8.      创建下列公式,连接VPApproval、 By:和VPApprover,点击两次“确定”。

        现在Approve选项需要重新设置默认值。

9.      选中Approve选项,打开属性,选中“默认情况下选中此按钮”,点击“确定”。

        现在规则需要稍微修改下。

10.  双击选中Approve选项。点击“管理规则”按钮,有个规则Disabled。点击链接打开规则条件。

11.  修改条件中的文本为VP Approval。

12.  修改approval节中六个控件,格式规则与manager approval规则相同,除了条件是“VP Approval”。

13.  提交按钮也要修改。在VP Approval节中,选中提交按钮。在“规则”窗格中,点击“Set Approver Info”规则。在“运行这些规则”处,点击Set a field’s value: ManagerApprover =username()。

14.  更改ManagerApprover为VPApprover,点击“确定”,再次点击“确定”保存操作。


15.  Approval Date同样操作,选择VPApprovalDate。

16.  Approved和Rejected规则后的条件也需要修改。在VP_Approval节中,改变每个规则后的条件,这样选择VPApproval域。

17.  在VP Approval节中,点击选择提交按钮。选中Approved规则,设置FormStatus为Completed。


        当Manager填写完approval信息时,你不想看到VP Approval节。

18.  选中VP Approval节。

19.  创建格式规则Hidden。条件是FormStatus等于Manager Approval,选中“隐藏此控件”复选框。


表单审批过程几乎完成。表单第一次提交后,它自动在下次打开时切换到Approvals视图。最后只读视图需要配置。在这个视图上看审批过程。

        作为表单生命周期的一部分,你不想任何表单的数据在表单完成已批准后被修改。因此你使用只读视图和表单加载规则,当表单状态为已完成时,它自动切换到那个视图。这维持了数据的完整性。

        下面练习中,你将复制approvals视图到read-only视图。

1.      按下Ctrl+A,复制。

2.      在功能区,选择Read Only视图,粘贴。

3.      在“页面设计”选项卡,“视图”部分,点击“属性”。


4.      在“常规”选项卡,选择“只读”复选框,点击“确定”。


5.      点击“文件”菜单,点击“快速发布”。

        现在只读视图真正只读了。记住当最后一个审批者批准表单时,提交按钮设置FormStatus为Completed。如果FormStatus等于Completed或Rejected时,表单加载规则自动切换到只读视图。

        小贴士:只读视图中,如果你使用了附件控件,附件将不能打开和查看。解决办法是不选中只读复选框,而是每个控件单独设置为只读。

        自由发布和测试表单。


这篇关于一步步学习微软InfoPath2010和SP2010--第十一章节--创建批准流程(8)--提交表单操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1082990

相关文章

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

k8s按需创建PV和使用PVC详解

《k8s按需创建PV和使用PVC详解》Kubernetes中,PV和PVC用于管理持久存储,StorageClass实现动态PV分配,PVC声明存储需求并绑定PV,通过kubectl验证状态,注意回收... 目录1.按需创建 PV(使用 StorageClass)创建 StorageClass2.创建 PV

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

使用Java填充Word模板的操作指南

《使用Java填充Word模板的操作指南》本文介绍了Java填充Word模板的实现方法,包括文本、列表和复选框的填充,首先通过Word域功能设置模板变量,然后使用poi-tl、aspose-words... 目录前言一、设置word模板普通字段列表字段复选框二、代码1. 引入POM2. 模板放入项目3.代码

Spring Boot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)

《SpringBoot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)》本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Co... 目录引言:为什么学习Spring Boot分层架构?第一部分:Spring Boot的整体架构1.1

利用Python操作Word文档页码的实际应用

《利用Python操作Word文档页码的实际应用》在撰写长篇文档时,经常需要将文档分成多个节,每个节都需要单独的页码,下面:本文主要介绍利用Python操作Word文档页码的相关资料,文中通过代码... 目录需求:文档详情:要求:该程序的功能是:总结需求:一次性处理24个文档的页码。文档详情:1、每个

Python内存管理机制之垃圾回收与引用计数操作全过程

《Python内存管理机制之垃圾回收与引用计数操作全过程》SQLAlchemy是Python中最流行的ORM(对象关系映射)框架之一,它提供了高效且灵活的数据库操作方式,本文将介绍如何使用SQLAlc... 目录安装核心概念连接数据库定义数据模型创建数据库表基本CRUD操作创建数据读取数据更新数据删除数据查

Go语言中json操作的实现

《Go语言中json操作的实现》本文主要介绍了Go语言中的json操作的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录 一、jsOChina编程N 与 Go 类型对应关系️ 二、基本操作:编码与解码 三、结构体标签(Struc