Google 表单确认脚本

2024-02-01

我一直在尝试按照此处所述整理一个确认脚本:http://alamoxie.com/blog/tech-tips/sending-confirmation-emails-google-docs-form/ http://alamoxie.com/blog/tech-tips/sending-confirmation-emails-google-docs-form/

但我总是收到此错误代码:

TypeError: Cannot read property "values" from undefined. (line 5, file "Confirmation Email")

标准确认书上的脚本的目的是提供一种易于阅读和打印的表格,该表格仅占用一页且仅包含相关信息,而不是标准确认书的 12 页。

在本例中,我使用它来创建食品订单。请求者可以选择他们想要的活动项目,提交它,然后电子邮件确认将发送给管理员,该确认邮件可以打印并交给厨房提取。我已经成功制作了邮件合并类型文档,但它发送了列表中所有内容的确认,而我想要的只是输入的最新行(因此是确认脚本)。

这是我的代码:

    function onFormSubmit(e) {

  // First establish the variables. Name each variable by the e.values (column number in the spreadsheet).

  var timeStamp = e.values[0];
  var Activity = e.values[2];
  var pickUp = e.values[3];
  var pickUptime = e.values[4];
  var nPeople = e.values[5];
  var submitUser = e.values[6];
  var Equipment = e.values[7];
  var Drinks = e.values[8];
  var Breakfast = e.values[9];
  var Lunch = e.values[10];
  var Dinner = e.values[11];
  var eveningProgram = e.values[12];  
  var Event = e.values[13];
  var Snacks = e.values[14];
  var Notes = e.values[15];
  var userEmail = e.values[17];

  // These are the components of the email confirmation

   var emailTo = userEmail;
   var CCAddr = "[email protected] /cdn-cgi/l/email-protection";
   var subject = "Food Order Request";
   var emailBody =  "Food Order Requisition\n\n" +
                    "Pick up Date:" + pickUp + 
                    "\nPick up Time:" + pickUptime +
                    "\nSubmitted by:" + submitUser +
                    "\nDate Submitted:" + timeStamp +
                    "\n\nActivity:" + Activity +
                    "\nPeople:" + nPeople +
                    "\nMeal:" +Event +
                    "\nThe following is needed for" + Activity + "by" + submitUser + "who can be reached at" + userEmail +
                    "\n\nEquipment and Supplies:\n" + Equipment +
                    "\n\nDrinks:\n" + Drinks +
                    "\n\nSnacks:\n" + Snacks +
                    "\n\nBreakfast:\n" + Breakfast +
                    "\n\nLunch:\n" + Lunch +
                    "\n\nDinner:\n" + Dinner +
                    "\n\nEvening Program/Special Events:\n" + eveningProgram +
                    "\n\nThe following special notes were also requested:\n" + Notes +
                    "\n\nProcessed by:___________________ Processed Date & Time:_________________________Food Order Requisition";

  /**
   * Un-comment this to use it for debugging
   */
//  for (var i in e.values) {
//    Logger.log("" + i + ":" + e.values[i]);
//  }

                    MailApp.sendEmail(emailTo, subject, emailBody);


}

问题是它告诉我我的值未定义,我不明白为什么......任何人都可以帮忙解决这个问题吗?


该脚本无法从脚本编辑器执行,只有在表单提交触发时才有效,就是这样e(事件信息)获取其参数。如果从脚本编辑器启动,事件信息为undefined,这是合乎逻辑的,因为没有发生任何事件。

所以你应该通过发送表格来测试它。

编辑:你必须创建一个onFormSubmit trigger使脚本在提交表单时运行:请参阅此处的文档 https://developers.google.com/apps-script/understanding_triggers并且here https://developers.google.com/apps-script/understanding_events

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Google 表单确认脚本 的相关文章

随机推荐

  • 从 DataGridView 中获取选定的行

    每当用户单击 添加到购物车 按钮时 我都会将用户在 找到的项目 网格 屏幕截图的左侧 中选择的那些行添加到 选择的项目 网格 屏幕截图的右侧 中 屏幕截图 链接http img856 imageshack us img856 3015 da
  • android - 将 dp 转换为 float

    我的字体大小是12dp 我正在使用设置字体TextPaint 因为我使用的是跨度 问题是参数TextPaint接受是浮动的 我想知道如何将 12 dp 转换为浮点数 From android content res Resources ge
  • 系统调用位于 glibc 源代码中的哪里

    所以我正在查看 linux glibc 源代码 但我没有看到它实际上在哪里做了任何事情 以下内容来自io chdir c但它表明了许多源文件 这里发生了什么 显然我错过了一些东西 秘密是什么 它在哪里进行系统调用或实际执行某些操作 stub
  • 创建有角度的彩色横幅

    您好 我正在尝试在 HTML 和 CSS 中创建以下斜条外观 只是蓝色和紫色区域 后面是白色 我显然可以看到如何使用图像来做到这一点 但是仅 HTML CSS 又如何呢 这可能吗 它在网站上使用 www africa dating 我知道我
  • 如果“git push heroku master”失败怎么办?

    我的本地 Windows XP 计算机上有一个可以运行的 Rails 应用程序 我想将其上传到 Heroku 上 我按照这个教程https devcenter heroku com articles rails3 https devcent
  • Bootstrap 响应式网格布局(3 列),每个网格元素下方具有折叠/隐藏的 col-12

    我试图使 100 列出现在引导网格列内的元素下方 因为用图片更容易理解 所以我想要实现的目标是 选择其中一张图像 1 到 x 时 隐藏的 div 具有不同的内容 应以完整的 12 列大小显示在图像下方 我设法做到了这一点 但是 当使用较小的
  • Rpm 构建限制

    我是 rpm 打包的初学者 据我了解 由于 cpio 限制 rpm build 在文件大小 gt 4GB 时存在问题 因此 我使用 gnu split 将包中的大文件拆分为 512MB 的文件 这是作为 rpmbuild 的一部分完成的 因
  • 我应该在本地存储 Google Web Fonts API 生成的 CSS 吗?

    我正在使用一些谷歌网络字体 我听说 Google 处理不同浏览器之间的所有问题 并根据请求标头中的浏览器提供不同的媒体 我的问题是 它在什么时候执行此操作 原因是对于 API 您可以简单地包含一个 CSS 文件 其中包含 font face
  • 在 Mac 中启动并运行 appium [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我刚刚安装了 Java 和 appium 如下面的链接所述 在 macOS sierra 10 12 3 上安装 appium https
  • json 和多维数组

    我有一个像这样的多维数组 Array 1 gt Array product id gt 1 product model gt HFJ5G1 5 product type gt plat product return gt graviteit
  • 如何迭代 RecyclerView 中的所有视图/项目?

    我需要遍历所有RadioGroups in my RecyclerView 我尝试过的代码 for int i 0 i
  • 在 datefiled 中覆盖 Django auto_now

    有没有办法将日期传递到覆盖 auto now 的数据字段 如果日期未通过 我只想使用 auto now 根据文档 请注意 始终使用当前日期 这不仅仅是默认设置 您可以覆盖的值 https docs djangoproject com en
  • 如何在 Eclipse 中使用 MATLAB?

    在我的计算机科学课程中 我们使用 MATLAB 来编写所有作业 测验问题等 我已经使用 Eclipse 进行 Java 编码和 Android 编码 是否可以使用 Eclipse 在 MATLAB 中进行编码 Eclipse 的 MATLA
  • 我真的需要将“&”编码为“&”吗?

    我正在使用一个 我的网站中带有 HTML5 和 UTF 8 的 符号
  • 耙子中止!无法加载此类文件——El Capitan 上的 mysql2/mysql2

    从过去两周开始 我一直在尝试在 Mac 上设置我的代码 以前我使用的是 Ubuntu 设置代码从未如此困难 我几乎遵循了所有教程 但没有运气 请任何人指导我在 mac 上设置 RoR 在遵循所有教程之后 我最终只遇到 mysql 错误 ra
  • 为什么cursorLoader没有通知源数据的变化?

    我有一个简单的 contentProvider 一个带有 ListView 的布局以及一个用于在内容提供程序和 CursorLoader 中添加项目的按钮 这android content Loader D http developer a
  • 如何使用 wget 下载页面但如果页面不存在则忽略 404 错误消息?

    有什么办法可以拥有wget下载 URL 或抓取网页时忽略 HTTP 错误响应代码 假设我理解你所说的 忽略错误 的意思 你可以尝试 content on error争论 根据 wgetmanual http www gnu org soft
  • 图标、资产目录和 Info.plist 混乱

    我有一个应用程序 它最初是在 iOS 5 上运行的 并且从那时起就一直在更新 对于 iOS 7 我已改用资产目录来存储所有资源 这很好 而且看起来效果很好 但是 当我尝试提交给 Apple 时 我收到验证错误 图像路径无效 在键 CFBun
  • Terraform - 在 Variables.tf 中添加 type = map(object()) 的验证

    首先感谢这篇文章在 variavles tf 中添加 type map object 的默认字段 https stackoverflow com questions 64336021 adding a default field for t
  • Google 表单确认脚本

    我一直在尝试按照此处所述整理一个确认脚本 http alamoxie com blog tech tips sending confirmation emails google docs form http alamoxie com blo