0

我正在为 Google 表格构建一个 Google Apps 脚本应用程序,我想将其部署为Google GSuite Marketplace中的插件。我的应用程序包含三个组件:

  1. Google 表格中的嵌入式自定义菜单和一组对话框,允许一组应用程序用户(“用户组 1”)操作电子表格数据

  2. 为另一组用户(“用户组 2”)提供移动设备访问涉及电子表格数据的不同功能集的 Web 应用程序

  3. 应用程序可用于根据需要以编程方式生成其他工作表的模板工作表(理想情况下,对用户隐藏)。

我想将所有组件部署为单个附加组件的一部分。我希望将组件 1 和 2 绑定到同一个电子表格。事实上,我希望“用户组 1”中的某个人能够单击一个按钮来获取 Web 应用程序的 URL。这需要能够通过 Apps 脚本代码在“发布”菜单上执行功能。

对附加组件文档的阅读没有提到部署附加组件的能力,其中包括 (a) 嵌入在 Google 表格中的 UI,(b) 在同一用户电子表格上运行的关联 Web 应用程序,以及 (c ) 模板(隐藏)工作表。有没有人有这方面的经验,或者关于如何进行的建议?

目前,我看到的唯一解决方案是部署两个单独的应用程序(组件 1 和 2),但是 Web 应用程序不会绑定到特定的电子表格,因此需要使用不同的 API。至于访问模板表,我认为可以通过 URL 访问外部表,但我认为加载项不可能包含模板表。

4

1 回答 1

1

1号

附加用户界面

附加组件可以创建菜单项打开对话框侧边栏。对于自定义界面,HTML 服务提供客户端 HTML、CSS 和 JS,但有一些限制:值得注意的是,我们的安全沙箱不适用于许多 JS 库。

自定义侧边栏

边栏可以在Google 文档、表单或表格编辑器中显示 HTML 服务用户界面。


2号

我不完全确定我理解您的部署问题 -但是

只要满足以下要求,独立脚本绑定到 G Suite 应用程序的脚本都可以转换为 Web 应用程序。

我能够从单个独立脚本部署加载项和 Web 应用程序


3 号

使用copyTo(Spreadsheet)将工作表从不同的电子表格复制到您正在处理的工作表,并使用setName()更改名称。

或者您可以在同一个电子表格中制​​作模板表并使用hideSheet()

于 2017-11-05T17:24:53.263 回答