常见问题
遇到问题了吗?不用担心,答案都在这。
全站搜索

如何自动在 Ragic 表单上登记 Google Maps 行车路线的里程数与移动所需时间?

Tips:这个应用需要串接 Google 的地图平台,并使用其中的 Directions API,每次调用 API 的价格约为 0.005 美元,你可以参阅 Make 的官方文档Google 的定价说明来了解更多细节。

你也可以参阅这份文档,了解如何查看自己的 API 用量与帐单。

如果你是交通、运输业者,或者是常跑外勤的业务,应该会很常有预估时间、计算油费的需求,举例来说,你可能会有个像是这样的表单:

不过,用户如果要自己手动记录里程、耗时,写起来其实很麻烦,进程要是多起来,难免也会忘东忘西,最后根本就没办法有效率地掌握信息。

然而,大家上路时常用来导航的 Google Maps,其实就会帮你算出预估的行车时间跟里程了。想想看,如果你只要在 Ragic 表单的地址字段中填入自己的起点与目的地,就能让计算机帮你把 Google Maps 算出来的行车路线、耗时跟里程填到表单里,甚至依照里程算出油费,是不是就可以省下很多琐碎的手动操作?

想做到这件事,你可以透过 Make(原 Integromat)设计一套如下的串接流程:

当在 Ragic 登记进程的起点与终点时,自动透过 Google Maps 计算路径,并回传路线与信息回 Ragic。

接下来,我们会介绍两种不同的设计方式,分别是比较简单的两点之间计算进程,以及更适合物流、运输业者的多停靠点计算

你可以分别点击上述字描述,跳转到符合你需求的段落。

基础串接:计算两点之间的进程距离与时间

如果你是偶尔跑跑外勤的业务、需要出门办点事的人,那么大多数的时间应该都会是在公司、目的地两个站点之间来回,在这个情况下,你可以尝试比较简单的串接设计。

步骤 1:依照需求创建 Ragic 表单、设置 Make 触发端

要开始登记进程信息,你可以制作一个像下图一样的“外勤登记表”表单:

Tips:因为稍后从 Google Maps 获取的数据当中,距离与耗时分别会以“公尺”和“秒”为单元计算,因此建议在字段名称上就先备注起来以免造成混乱。

如果你的公司有直接依据公里数补助油钱,你也可以再加入一个“油费估算”字段,并依照需求设计公式。

举例来说,如果公司给予的补助是每公里 9 元的话,就可以设计公式如下:

创建表单之后,就可以打开 Make,指定串接到这个表单了。

接下来,我们建议你直接先单击一次左下角的 Run Once,并且创建一笔测试用的模拟数据,让 Make 可以获取表单的字段与测试信息:

步骤 2:设置 Google Maps 的动作端、串接规则

接下来,你需要在 Make 加上一个 Google Maps 的动作端。由于我们需要计算最佳路径,并得出这个路径的里程与耗时,因此要选择“Get Directions”这个动作:

如果你是第一次使用 Make 串接 Google Maps,就会需要透过 API Key 来进行链接,为此,你需要在 Google 云平台上获取 API Key,具体步骤如下:

1. 首先,点击这里并以你的 Google 帐号登录云平台

2. 点击上方的“选取专案”,并且在弹出窗口中选择专案或新增专案

(如果你曾经创建过专案,请直接移至第 4 步)

3. 输入专案信息并点击创建

4. 点击上方的汉堡菜单,并依序点击“API 和服务”→“程序库”

5. 搜索以下的 API 并参阅下图一一启用:

  .Geocoding API

  .Maps Elevation API

  .Time Zone API

  .Directions API

  .Distance Matrix API

  .Maps Static API

  .Places API

  .Geolocation API

  .Roads API

6. 再次展开汉堡菜单,选择“API 和服务”中的“证书”

7. 点击 API 密钥旁的“显示密钥”

拷贝完 API Key 之后,就可以将其贴在 Make 上,完成帐号连接啰!

接下来需要设置 Google Maps 用来计算路径的起点与终点。因为我们刚刚创建的测试数据有输入值,因此我们除了看到字段编号之外,还会顺带看到这个字段内的数据值,让我们更好选取到正确的字段,像是我们知道“终点”会是“100台湾台北市中正区忠孝西路一段47号B1”这个值,就可以直接看到对应的字段编号是 1003173:

步骤 3:新增一个 Ragic 的动作端以回传数据

由于我们要将 Google Maps 生成的结果再回传到 Ragic,因此需要再创建一个 Ragic 的“Update a Record”(更新纪录)动作端,将数据更新回“外勤登记表”上。

为了让 Make 知道要更新到哪笔数据上,首先,你要在 Key Domain 上选择我们设计的“独特值”字段,也就是“进程编号”字段,参照的 Keyword 则直接填入从触发端获取的值:

接下来,就可以指定要从 Google Maps 获取哪些数据了。由于我们希望 Google Maps 可以帮我们算出两点之间的最佳路线,并且获取这条路线的里程跟耗时,因此你可以参阅下图,个别需要在这三个字段里面填入这些值:

要注意的是,Google Maps 提供的 Distance 与 Duration 都分成 Text(字)和 Value(数值)两个选项,你可以参阅下方的说明进行换算:

Distance:Value 的单元是“公尺”,如果 Value 显示为 1941,那在 Text 上会显示为 1.9 km。

Duration:Value 的单元是“秒”,如果 Value 显示为 263,那在 Text 上会显示为 4 mins。

为了更弹性、精准地计算数值,因此我们会建议选择串接 Value。

其他的字段则可以直接留白。再单击下 OK 之后,就完成这个串接应用了。

步骤 4:测试数据并完成设置

完成设计之后,点击画面左下角的 Run Once,再一次测试串接是否能够正确运作吧!

首先,直接拷贝当时的测试数据:

单击下保存之后,回到 Make 可以看到刚刚流程有被触发一次。

再到 Ragic 重新加载一次数据,就可以看到刚刚留白的字段都被填满,油费估算字段也已经算出结果啰!

进阶串接:一趟进程有多个停靠点,要如何计算路程并加总?

如果你的停靠点比较多,例如像是物流运输业者,可能一次出门就要连续停靠好几个点,那么以上的串接方式就不太适合你。

为了更完整、方便登记信息,我们建议调整一下设计的方式:

1. 先创建一个囊括整天进程的“进程总表”

2. 从中创建一个子表格

3. 使用这个子表格创建新表单之后,再沿用上述基础串接的方式进行设置。

步骤 1:依据需求创建 Ragic 表单并设计子表格

你可以简单创建一个进程总表,除了基本信息之外,由于我们将会有多个停靠点,因此站点信息会放在下方的子表格,字段分配如下:

如果你希望更好统整信息的话,也可以再透过 SUM 公式,将里程与耗时加总起来:

Tips:因为稍后从 Google Maps 获取的数据当中,距离与耗时分别会以“公尺”和“秒”为单元计算,因此建议在字段名称上就先备注起来以免造成混乱。

而如果你的公司有直接依据公里数补助油钱,你也可以再加入一个“油费估算”字段,并依照需求设计公式。

举例来说,如果公司给予的补助是每公里 9 元的话,就可以设计公式如下:

步骤 2:从子表格生成新表单,并设置 Make 的触发端

因为我们会将进程的站点信息登记在子表格当中,但子表格本身不是一个独立的数据,因此我们会需要从子表格生成新表单,将这些进程转为独立的数据。

生成的新表单看起来会像这样:

不过,为了让 Make 可以回传数据,因此这张表单内也需要一个可以识别的独特值,你可以再加上一个自动生成字段,并用“进程编号”作为依据,再为字段调整一下排列,最终看起来就会像这样:

做完这个步骤之后,其实我们要做的事情就跟基础串接大致相同了!保存设计之后,就可以到 Make 设置触发端:

完成设置之后,你可以先单击一下画面左下角的“Run Once”,并在“进程细项”表单里新增一笔数据,这样一来,Make 才能获取表单内的字段细节。

步骤 3:设置动作端与串接规则

接下来,你需要在 Make 加上一个 Google Maps 的动作端。由于我们需要计算最佳路径,并得出这个路径的里程与耗时,因此要选择“Get Directions”这个动作:

单击照指示完成帐号链接之后,只要在 Google Maps 上设置起点与终点,Make 就会自动帮你将这些数据传入 Google Maps 进行运算了。

完成 Google Maps 的动作端设计之后,我们也需要再加一个 Ragic 的动作端以回传数据,不过要特别注意的是,因为我们要让 Make 串接到“进程细项”这张表单,因此这里的 Key Domain 与 Keyword 并不是“进程编号”,而是我们另外设计的“细项编号”字段。

接下来,就可以设置里程、耗时和路线这几个字段的串接了。

关于这个步骤的更多细节,你可以再点击这里查看如何将帐号连接至 Google Maps,以及对两个动作端进行设置。

设计完成之后,就可以开始测试串接应用是否正确运作了。

步骤 4:测试数据并完成设置

为了确定串接能够正常运作,再一次单击下左下角的 Run Once,启动串接流程吧!

启动串接流程之后,你需要到“进程细项”表单,再新建一笔数据:

单击下保存之后,回到 Make 可以看到三个步骤都有被触发、完成动作:

再回到表单上看,也可以看到进程的详细信息被计算机自动填入啰!

最后,再到进程总表上确认,就可以看到子表格内的第二笔数据——刚刚有触发 Make 流程的数据,都已经有完整的信息了,下方的总里程、总耗时跟油费估算也完成计算了:

你可以再多建几笔数据,确认字段内的公式设计没有问题,或者再依照需求多创建一些字段,确认完全正常运作之后,就完成串接应用跟表单的设计啰!

要注意的是,虽然新表单“进程细项”与母表单“进程总表”内的子表格是连接关系,但是 Make 的 Watch New Record 现阶段只会侦测直接从新表单新增的数据,因此之后要登记数据时,都必须从“进程细项”这个新表单进行。

回最上面

    马上登记
    免费试用 Ragic!

    用 Google 帐号登记

    立即科技 Ragic, Inc.
    02-7728-8692
    台北市中正区南昌路二段81号9楼