2010-09-08 23 views
1

我一直在使用InfoPath表单在过去的两个月左右的时间,而我现在有以下要求:从InfoPath表单从第一值打开的形式向新

我有一种形式,由某些用户填充,然后发送给其他用户。后者在查看表格上的数据后,可以选择接受&回复或拒绝。

当他们点击Accept & Reply时,会触发另一个表单,其中一些字段会重复。我想知道如何从第一种形式获取值到触发形式。

让我确定我是而不是使用SharePoint;他们正在从LAN上的共享文件夹访问表单。

在此先感谢您的帮助。

优素福

回答

2

,我知道你不能直接访问新的形式,因为InfoPath中保存的所有实例分离(SDI VS MDI)。您需要一个“中间”存储位置。如果你有一个可用的数据库,那么数据库不是一个坏主意 - 当用户单击按钮时,数据被保存到数据库,然后打开新表单并在表单加载中从数据库读取数据。

我们使用的另一种方式(同样麻烦)是使用表单本身的空白副本(而不是原始的xsn)。这很糟糕,因为如果您更改模板,但必须手动将空白副本保持更新,但对于您正在执行的操作来说效果很好。只有在您真的需要填充这些字段并且没有可用于临时存储的数据库时才推荐。

打开您的表单模板,就像您要填写表单一样,只需将“空白”副本保存到共享中(它将另存为xml)。源表单上的按钮背后的过程是:创建一个空白表单的唯一副本(我们将它们全部存储在每晚清除的子文件夹中),以编程方式打开并编辑新的空白副本(很简单,因为它是xml)数据保存在正确的字段中,保存编辑后的副本,为用户打开编辑后的副本而不是xsn。

+0

这是一个非常完整的答案,我认为临时数据库解决方案应该是最合适的;然而,在我工作的部门中,人们并不都使用相同的InfoPath版本;最旧的是2003年,最新的是2010年。由于我不得不迎合这些,似乎保存到数据库(或者XML文件)是不可能的。那么您是否知道使用InfoPath 2003的任何解决方案? – Yusuf 2010-09-09 04:27:17

+0

因为您只存储原始数据,所以版本对于DB解决方案(或XML文件)无关紧要。为所有“共享”字段添加一个包含列的表格以及一个键。第一种形式保存到表格中,第二种形式从中读取。所有版本的IP都可以使用辅助数据源来完成。您还可以使用托管代码解决方案以及更多的工作。 – ktharsis 2010-09-09 15:17:05

+0

实际上,我似乎无法使用Access数据库或XML文件作为兼容2003的表单。 – Yusuf 2010-09-13 12:19:51

相关问题