问题标签 [form-library]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
163 浏览

sharepoint - 如何在表单库中显示哪些用户已完成表单?

我在 Sharepoint 2007 站点上有 10 个表单库。

该网站供20名“学者”使用。任何学者(或帮助他们的十几个秘书类型中的任何一个)都可以进入任何表单库,单击 [新建] 以获取 Infopath 表格,从下拉列表字段中选择适当的学者姓名,填写其余部分表格,然后单击 [提交]。然后保存表单(表单的标题是从下拉列表中选择的学者名称)。

该网站的所有者希望能够生成一份报告(在任何给定时间),列出所有 20 位学者以及 10 份表格中的哪一份已完成。

关于如何自动化的任何想法?

0 投票
1 回答
2534 浏览

sharepoint - sharepoint 2010:如何以编程方式创建表单库

任何人都可以指导我使用 C# 以编程方式创建表单库。这用于发布 infopath 表单。创建表单库后,我需要将完全受信任的文件(.xsn 文件)添加到该特定库的 FORM 文件夹中。

0 投票
1 回答
1208 浏览

sharepoint - 带有表单库的 SharePoint 2010 网站模板 - 表单模板包含网站 URL

我正在开发一个网站模板,该模板将用于为不同的组织单位创建数百个网站。该站点应包含一个表单库,以及一个 InfoPath 表单模板。

我的问题是 - 是否可以创建模板并让高级用户创建站点,而无需任何管理员或开发人员参与?如果不是 - 最简单的选择是什么?

问题是表单模板包含站点 URL,我不知道这是否可以避免。因此,当创建站点并提交表单时,它最终会出现在原始站点的库中。

我已经为试点项目创建了一些站点,到目前为止我一直在做的是解开 XSN 文件,手动编辑 URL,重新打包到 XSN 中并发布到新库。这可行,但涉及我希望避免的站点创建过程中的手动步骤。这是我正在编辑的行:

也在这里:

我正在将 subsite1 更改为 subsite2。

我尝试设置一个相对 URL,首先是提交元素,然后是两者,但无济于事。表单正在呈现(在浏览器中),提交工作(没有错误)但是提交的表单不在库中。进一步研究,表单最终被提交到根站点上的表单库 - http://my_farm_url/form_lib!当您考虑它时,这是有道理的,这就是form_lib从站点,从根站点角度将您带到的相对 url。

目前我设想的唯一解决方案是创建一个工具,帮助用户基于模板创建站点,在幕后修复 XSN。我不知道如何以编程方式发布表单模板,但应该可以。除了这个未知数之外,它也不是很自动化,如果可以找到仅适用于 SharePoint/InfoPath 工具的适当解决方案,我将非常高兴。

0 投票
1 回答
2775 浏览

javascript - 将项目添加到表单库时自动刷新 SharePoint 网站

我有一个关于在向其中添加项目时自动刷新 SharePoint 表单库的问题。我们公司内部有一个业务团队,团队中的任何人都可以填写特定的 InfoPath 表单。填写并提交该表单后,它会保存到上述 SharePoint 表单库中。

当任何用户提交这样的表单时,其他用户希望知道它已经发生并且他们几乎总是打开浏览器并指向这个特定的 SharePoint 表单库。这些表单提交及其包含的数据在一定程度上是时间紧迫的,因此这是团队中每个人了解提交信息的最新信息的重要方式。

有谁知道在 InfoPath 中是否可以使用这样的工作流?我已经用谷歌搜索了这个问题,我发现了很多关于使用 SPUtility 类的功能重定向到同一页面的有用建议(这似乎确实有效),但我想刷新/重定向整个页面,而不仅仅是SPUtility 类显然负责的弹出窗口。我还看到一些结果建议使用包含一些 JavaScript 的内容编辑器 Web 部件来刷新页面,然后通过工作流或事件接收器访问该内容编辑器。有没有人有解决此类问题的经验或有一些想法?我不是在寻找任何人为我编写解决方案 - 我只需要从对 SharePoint 更有经验的人那里推动正确的方向。

谢谢!

0 投票
1 回答
2319 浏览

xml - 设置以编程方式创建的 XML 文档以在 SharePoint 中使用 InfoPath 模板打开

我在获取我以编程方式创建并添加到 SharePoint 中的表单库以使用 InfoPath 模板打开的 XML 文档时遇到问题,而不仅仅是在 Internet Explorer 中作为纯 XML 文档打开。

基本上,我有一个 Web 服务,它检查数据库以查看某些条件是否为真。如果是,则 Web 服务以编程方式创建一个 XML 文档,该文档与前面提到的 InfoPath 模板创建的文件具有相同的 XML 架构。通常的过程是真实用户打开此 InfoPath 模板,填写数据并单击 SUBMIT 按钮,在后台创建 XML 文档并将其保存在表单库中。当用户稍后进入表单库查看该 XML 文档时,该文档会自动使用 InfoPath 模板打开(而不仅仅是在 Internet Explorer 中作为 XML 文档打开)。

我试图找出为什么我从 Web 服务生成的 XML 文档在这方面的行为与从 InfoPath 生成的 XML 文档不同。这是我用来在 Web 服务中创建 XML 文档的代码片段:

此时,我的 XML 文档已成功提交到我的表单库,但是当我打开它时,它在 Internet Explorer 中以纯 XML 的形式打开,而不是使用我指定的模板。我假设该项目的 HTML_x0020_File_x0020_Type 和 TemplateUrl 属性将为 SharePoint 指定足够的信息,以便知道它需要使用 InfoPath 模板打开此文件,但也许还有一些其他属性需要我专门设置。有没有人有过类似问题的经验?起初我认为我用于模板的 URL 是错误的,但我直接从通过 InfoPath 模板创建的现有 XML 文档中复制了它,所以我认为这不是问题(我遗漏了任何真实的我上面的示例代码中的 URL 和文件名,所以请忽略这些 URL 不正确的事实)。

提前感谢您的任何回答,感谢您提供的任何帮助。

0 投票
1 回答
4603 浏览

sharepoint - 如何确保 Sharepoint 表单链接在浏览器中打开?

我们拥有 SharePoint 2013 测试和生产环境。测试环境中的站点有一个带有模板、一些工作流和一些表单的表单库。相同的模板和工作流程应用于生产环境中的表单库。某个工作流程会导致发送一封电子邮件,其中包含指向该表单的链接([%Current Item:Encoded Absolute URL%]);所以链接直接指向表单 .xml 文件。

当通过 Internet Explorer 打开来自测试系统的电子邮件链接时,表单将显示在浏览器中。当通过 Internet Explorer 打开来自生产系统的电子邮件的链接时,系统会提示用户下载 .xml 文件以填写并提交 viq InfoPath Filler。需要明确的是,这种不同的功能发生在同一台机器上,相同的 IE 安装/配置。这些链接在语法上看起来是相同的。所以我自然怀疑服务器设置。

我花了一天的时间研究这个。这些是我发现的一些更有用的资源。

我能够缩小问题的范围,即问题仅发生在安装了 InfoPath 的环境中,并且当 Internet Explorer 是正在使用的浏览器时。否则表单总是在我们想要的浏览器中打开。

我已经验证的事情:

  1. 在链接中添加“?OpenIn=Browser”将强制 IE 在浏览器中打开链接。但是从测试环境发送的邮件不需要这个;让我认为它是基于服务器配置的,我可以做其他事情。
  2. 表单库在生产中将“在浏览器中打开文档”设置设置为“在浏览器中打开” - 但 IE 仍会提示下载 .xml。
  3. 站点设置已停用站点集功能“默认情况下在客户端应用程序中打开文档”。
  4. InfoPath 表单本身是一个“Web 浏览器表单”,因此应该(并且现在)可以在浏览器窗口中呈现。

我也在 SO 上查看了类似的问题,例如Get a SharePoint InfoPath form to load in the browser from a task,但还没有找到关键。

我在 SharePoint 2007-2013 中发现了许多对这个问题的引用,大多数人建议在链接中添加“?OpenIn=Browser”或其他一些查询字符串参数。所以我有一个解决方法——但是一个环境有效,而另一个环境无效,我真的很想确定实际问题是什么。

0 投票
0 回答
51 浏览

forms - SharePoint 2010 InfoPath 表单库文件名

我在 SharePoint 2010 中有一个表单库,并设计了 InfoPath 表单来向该库添加/更新内容。假设我在 InfoPath 表单中有一个名为“CustomFileName”的字段,因此每次更新该字段时,InfoPath 文件的名称都会更改为该字段。

相反,每次更新“CustomFileName”字段时,它都会创建一个新的文件/条目。我尝试使用工作流,但这不是一个选项,因为 CustomFileName 值有时包含多个中断工作流的句点。

清单:

  • 在数据连接向导中,我确实在“文件名”字段中指定了“CustomFileName”
  • 在提交规则中,当“CustomFileName”为空时,我确实有一个规则 - 使用 Name+“.xml” 表示法

我们需要重命名文件名,而不是每次都创建一个新文件。重写是可以的,只要我们能追溯版本历史。

在这里的任何帮助将不胜感激。

0 投票
0 回答
541 浏览

reactjs - 如何创建互斥的是/否复选框+设置默认复选框值

我正在尝试创建一个实现以下功能的react-hook-form组件:

  • 两个复选框不能同时选中:一个“是”和一个“否”复选框。当用户单击“是”时,不应选中“否”复选框,分配给默认键的值应为“是”。当用户单击“否”时,会发生相反的情况。如何使用 react-hook-form 实现两个互斥的复选框?
  • 如果用户在前一个会话期间选中了一个框,则其中一个复选框将保持先前输入的值(例如,如果在第一个会话期间用户选中“否”,当页面重新加载时用户将看到“否”被选中) . 当用户返回表单时,如何确保选中正确的复选框?无论我到目前为止尝试了什么,当我返回表单时都会检查两个复选框 - 无论是否分配了默认值。
  • 只有一个值,一个字符串(不是数组)应该应用于指定的键。(例如,{...otherKeysValues, key_name: "yes"})。截至目前,这些值作为{...otherKeyValues, key_name: ["yes"]}{...otherKeyValues, key_name: ["yes", "no"]}取决于我的设置返回。

这是我正在使用的代码的粗略示例: