没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
原创|其它|编辑:郝浩|2009-07-30 10:04:47.000|阅读 1719 次
概述:
MS Office InfoPath 2007是一整套创建收集和共享信息的动态表单工具,它可以创建功能丰富的动态表单,供团队和组织收集、共享、重复使用和管理信息。InfoPath Forms Services是对InfoPath作的Web扩展,允许用户使用 Web 浏览器填写InfoPath表单
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
MS Office InfoPath 2007是一整套创建收集和共享信息的动态表单工具,它可以创建功能丰富的动态表单,供团队和组织收集、共享、重复使用和管理信息。InfoPath Forms Services是对InfoPath作的Web扩展,允许用户使用 Web 浏览器填写InfoPath表单,用户不需要在其计算机上安装 InfoPath 便可填写 InfoPath 表单,也不需要额外从 Web 上下载任何内容。这为开发纯B/S结构的应用提供了良好的平台。但是,在浏览器中填写表单的用户所能使用的功能集并不完全,不能实现InfoPath客户端的所有功能。也就是说,InfoPath Forms Services 不能兼容InfoPath客户端部分功能。
在表单中实现上下联动的下拉列表框能提供非常好的用户体验,这个功能在InfoPath客户端可以说是开箱即用的功能。在InfoPath客户端通过对控件数据源进行“筛选数据”就可以实现数据联动功能。然而,InfoPath Forms Services不支持“筛选数据”功能,不能按照InfoPath客户端那样实现数据联动。在InfoPath Forms Services中究竟可否实现数据联动呢?答案是肯定的,只不过方法稍微复杂一些。本文介绍第一种实现方法——“Web Service+规则”方法。后续文章会介绍VSTA编程方法以及在重复表中实现联动的下拉列表框的方法。
Microsoft Office SharePoint Server2007(MOSS2007)企业版包含了InfoPath Forms Services,以下操作在MOSS2007企业版+IE6.0环境下测试通过。
用InfoPath设计表单时,可以作为下拉列表框的外部数据源有四种,即XML文档,MS SQL Server 数据库,Web Service和SharePoint列表。在这四种数据源只有Web Service支持参数查询,所以本例中我们选择Web Service作为联动的下级下拉列表框的数据源。我们的思路是这样的:表单上有两个下拉列表框,在上级下拉列表框的属性中设定规则,当上级下拉列表框的值改变时设置下级下拉列表框数据源的查询参数,然后重新检索数据,这样就刷新了下拉列表框的选项内容。
下面我们详细说明实现过程。
首先,我们需要准备一个演示用的Web Service,这个Web Service有一个操作GetCitiesByProvince,通过传入参数——省的名称,可返回该省城市名称的列表。具体如何创建Web Service这里不再赘述,下面是代码。这段代码只作为演示用,不具实际意义,实际应用中应该从数据库里查询数据。
将以上代码保存为文件ddlbws.asmx,放到SharePoint网站的_Layouts的虚拟目录,缺省物理路径为“c:\Program Files"Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\LAYOUTS”。至于为什么放到这个目录中,我们在这里只作简要说明,有兴趣的朋友可以在网上搜索SharePoint中自定义Web Service的相关文章。一般认为,将Web Service文件放到_Layouts这个目录操作起来最简单,而且在InfoPath Forms Services中调用方便,不会有安全和信任方面的问题。
部署完ddlbws.asmx这个文件后可以试着在IE中访问该Web Service,观察是否部署成功,地址为:http://< SharePoint网站地址>/_layouts/ddlbws.asmx。如果部署成功,应该出现该Web Service的说明网页,如下图。
1. 打开InfoPath客户端,点击菜单“设计表单模板”,在“设计表单模板”对话框中钩选“仅启用浏览器兼容性功能”。
2. 进入设计版面后我们先添加一个Web Service数据连接,作为以后用到的下拉列表框的数据源。选择菜单工具/数据连接进入数据连接对话框,点击“添加”按钮进入“数据连接向导”。选择新建连接/仅接收数据。
3. 进入下一步,选择“Web服务”。
4. 进入下一步,输入Web服务的位置:http://<sharepoint/网站地址>/_layouts/ddlbws.asmx
5. 进入下一步,选择操作GetCitiesByProvince。
进入下一步,不要钩选“在表单模板中存储一份数据副本”。
7. 再下一步,接受缺省的数据连接的名字,点击“完成”按钮。
8. 创建完毕数据连接后我们接着设计表单。在表单模板中设置好布局,放置两个下拉列表框ddlb1和ddlb2。
9. 进入下拉列表框ddlb1的属性对话框,在“数据”页中,删除原有选项,手动输入两个选项“四川”和“新 疆”。
点击“规则”按钮,再点击“添加”按钮进入规则设置对话框。在这里,我们添加三项操作,下表给出说明。
No. |
操作 |
说明 |
1 |
设置域值: ddlb2 = “” |
ddlb1值改变后先将ddlb2值清空 |
2 |
设置域值: province = . |
设置Web Service数据源的查询参数province |
3 |
使用数据连接进行查询: GetCitiesByProvince |
按照新参数重新检索数据 |
11. 设置好规则后,我们还需要进入ddlb1属性的“浏览器表单”页,将回发设置更改为“始终”。
12. 下拉列表框ddlb1的属性设置完毕后,我们接着设置ddlb2的属性,这次我们只需要设置它的数据源。在“列表框项”下选择“从外部数据源查找值”,将“数据源”设置为GetCitiesByProvince,“项”设置为:/dfs:myFields/dfs:dataFields/tns:GetCitiesByProvinceResponse/tns:GetCitiesByProvinceResult/tns:string
值和显示名称都为“.”
至此,InfoPath表单设计完毕,将这个表单模板保存为ddlb.xsn。下一步我们将要把这个表单发布到SharePoint的网站上。
在InfoPath表单设计界面中,点击设计任务窗格中的“发布表单模板”启动发布向导,按照该向导可以一步一步地将该表单发布到SharePoint的网站上,具体操作步骤这里就不赘述了,不熟悉的读者可以很容易在网上找到相关文章。发布成功后就可以测试一下效果。
以上三步演示了如何使用规则加调用Web Service方法实现下拉列表框联动的整个过程。这种方法实现起来相对容易,InfoPath表单中不需编程,发布也简单,但必须与Web Service配合使用,需要Web Service开发。后续文章将介绍通过VSTA编程实现下拉列表框联动的方法,后者更为通用,但实现起来较为复杂。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com
文章转载自:博客园面对“数字中国”建设和中国制造2025战略实施的机遇期,中车信息公司紧跟时代的步伐,以“集约化、专业化、标准化、精益化、一体化、平台化”为工作目标,大力推进信息服务、工业软件等核心产品及业务的发展。在慧都3D解决方案的实施下,清软英泰建成了多模型来源的综合轻量化显示平台、实现文件不失真的百倍压缩比、针对模型中的大模型文件,在展示平台上进行流畅展示,提升工作效率,优化了使用体验。
本站的模型资源均免费下载,登录后即可下载。模型仅供学习交流,勿做商业用途。
本站的模型资源均免费下载,登录后即可下载。模型仅供学习交流,勿做商业用途。
本站的模型资源均免费下载,登录后即可下载。模型仅供学习交流,勿做商业用途。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@evget.com
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
慧都科技 版权所有 Copyright 2003-
2025 渝ICP备12000582号-13 渝公网安备
50010702500608号