提交后立即发布成绩 - 如何使用 Apps 脚本

Kri*_*hna 3 google-apps-script google-forms google-form-quiz

我正在使用以下几行 Apps 脚本动态生成 Google 表单测验

 form.setIsQuiz(true);
 form.setTitle("New")
 .setDescription('Test')
 .setConfirmationMessage('Thanks for responding!')
 .setAllowResponseEdits(false)
 .setAcceptingResponses(true)
 .setLimitOneResponsePerUser(true)
 .setShuffleQuestions(true)
 .setProgressBar(true)
 .setCollectEmail(true)
Run Code Online (Sandbox Code Playgroud)

这是创建一个表单,我可以将测验发送给多个人。但我也想“发布分数>>提交后立即”。这是 Google 测验表单中的一项功能。但我找不到与“发布分数 >> 提交后立即”的 Google 表单功能等效的方法。

我无法为每个表单手动执行此操作,因为我生成了数百个分发给不同人群的表单。

zim*_*ady 5

AFAIAA,目前无法直接使用 Google Apps Script 方法执行此操作。

一种可能的解决方法是创建一个最小的 Google 表单,使其成为测验,并将其配置为“每次提交后立即”。无需在脚本中创建表单,只需复制此表单文件(使用您的脚本)并在副本中以编程方式继续构建您的测验。

值得注意的是,Google Apps Script 中的这一遗漏可能会导致已完成测验中出现错误。当使用脚本创建表单并使用 .setIsQuiz(true) 方法将其转换为测验时,“发布标记”设置默认为“稍后,手动审核后”。在表单设置用户界面中,此选项包括注释“打开电子邮件收集”- 这样当手动发布结果时,有一个电子邮件地址可以将结果发送到。使用上述步骤创建测验时,未启用电子邮件收集。这意味着无法手动发布结果。上述解决方法可缓解此问题。