Infopath表单已锁定但未检出

时间:2011-06-29 08:29:38

标签: sharepoint infopath

我将Infopath表单存储在Sharepoint文档库中。

由于这些表单是在断开连接的环境中完成的,因此文档库用于存储提交的表单(以及其他相关文档)。 Web应用程序还会更新Infopath文档。

与表单关联的Infopath模板作为msi安装在用户的PC上。

我注意到,如果用户从文档库中打开了其中一个表单(但未检出),则使用“复制”Web服务更新文档会返回“DestinationCheckedOut”错误。我的问题是,有什么我可以用来查询Sharepoint来确定用户是否打开了文件。我已经使用了列表Web服务和CheckoutUser,但这只有在签出文档时才有效(不仅仅是打开)。我也尝试将“版本设置”设置为“需要在编辑时检出文档”,但这样做会返回错误“Infopath无法打开以下文件:.....文件不是有效的XML文件”时由用户打开的表格。

我将处理“DestinationCheckedOut”异常,但希望在尝试更新过程之前先让我的代码检查此方案。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

我不知道是否有任何Web服务可以返回您要查找的信息。

服务器端对象模型调用是SPFile.CheckOutStatus和SPFile.CheckOutType(http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spfile_properties.aspx)。当文档被简单地打开以进行编辑时,有两种类型的“签出”,另一种是明确签出时 - 你打到第一种。