我刚开始使用 Google Apps 脚本,需要一些帮助。我正在开展一个项目,创建一个用于管理“课堂”的 Google 表格,该表格可以在我们的组织中安装。我的目标是让每个管理员都可以使用它,而无需将代码复制到他们自己的 Google Apps 脚本项目中。
我的代码由两个主要脚本组成:
创建 Spreadsheet.gs: 此脚本设置电子表格模板。
Code.gs:这包含用于管理课堂的各种功能的列表。
经过多次尝试,我使用 Google Cloud 成功安装了该脚本作为我们组织内的内部插件。该附加组件与我的主帐户完美配合。但是,当我尝试将附加组件与另一个帐户一起使用时,电子表格模板已正确创建,但链接到第二个代码文件中的脚本的按钮会生成以下错误:
“读取数据时发生错误。错误代码:PERMISSION_DENIED。” // 这是从波兰语翻译过来的
我了解到,同时登录多个 Google 帐户时可能会出现此类问题。为了排除故障,我关闭了 Chrome 并使用隐身窗口登录有问题的帐户,但使用按钮时仍然存在相同的错误。我什至尝试了不同的浏览器,但问题仍然相同。
Google Cloud 中启用了 Classroom、Google Drive、Admin SDK 和 Google Sheets 所需的 API。当我将代码直接粘贴到 Google Apps 脚本中时,该脚本运行良好。仅当将代码用作附加组件的一部分时才会出现此问题。令人费解的是为什么代码的一部分(使用按钮创建模板)可以工作,但管理查询的脚本会抛出错误。
如果有人能解释我可能出错的地方、问题的根本原因是什么,以及我应该采取哪些步骤来确保一切正常工作,我将不胜感激。预先感谢您的帮助!
用侧边栏或对话框上的自定义菜单项和 / 按钮替换“按钮”。另一种选择可能是创建工作区插件并使用卡服务来创建所需的按钮。
众所周知,脚本对于脚本所有者的行为可能与对于附加用户的行为不同。考虑到这一点,在规划用户界面时尽早测试您的想法,因为它们可能会影响“后端”工作。