在Infopath Form Service利用WSS Web Service技术通过VSTA代码把复杂表单写入SharePoint列表数据库

    企业中各式各样的表单是Infopath最恰当的应用,但是有人总是抱怨Infopath不够灵活,他们承认利用InfoPath设计表单可以高效地设计出最美观的表单,但是设计出的表单如何与数据库结合、如何与列表结合却是头疼的问题。一个包括了复杂“重复表”的InfoPath表单在列表库中就是一个文件,这让表单中的每行数据记录如何分别统计汇总呢?下面就给你一个解决这个问题的最佳答案。

应用场景:“客户管理”:

截图:【客户资料库:表单新建页面】

 如上图,又有单独的字段又有重复表。重复表【联系人资料】信息写入到【联系人信息表】。

我们采用两个库,一个InfoPath表单库以来存储表单,以提供数据录入的界面(操作员接口),一个列表库存储表单中的记录,以提供统计、分析等功能(查询数据库)。然后采用VSTA的方式,在InfoPath的表单的“提交”编写代码,这个代码完成两种功能:1、把表单提交到表单库。2、把表单中的每一行联系人信息,提交到另一个列表库中(为了方便,客户简称要重复存储于每行记录中)。这种结构就类似于InfoPath+SQL的方式,只不过SQL比较麻烦,我换成了列表库。因为列表库有现成的WebSerivce可以使用。

客户资料库【表单库】:

【联系人信息】列表(存放客户资料库【联系人资料】重复表记录):

本文是笔者辛勤的劳动成果,转载请标明出处,盗版必究。

【相关文章:】

带有托管代码的InfoPath2007表单模版发布到SharePoint表单库(浏览器方式查看)

【参考文章:】

[ InfoPath应用场景:库存管理 ] 在InfoPath Form Service利用WSS Web Service技术,通过VSTA代码把复杂表单写入SharePoint列表数据库 (一)

源代码及表单CSDN下载:】

 http://download.csdn.net/source/1794546

 

 

 

posted @ 2009-11-02 17:48  冷月孤星  阅读(1089)  评论(2编辑  收藏  举报