本文原发表于2018/03/27,以一般公司订盒饭的痛苦经验出发,教大家怎么用 Ragic 打造出方便的订盒饭系统,之后我们直接将这个设计做成供大家免费使用的模块,因此本文将部分的内容,挪至【免费模块】订盒饭系统上线——简介与教学,关于“订盒饭系统”的缘起、模块介绍、使用说明,也请参阅该篇文章;若要下载订盒饭模块,请到这个页面。
本文仅保留“设计教学”的部分,给大家参阅,知道如果要从头开始在 Ragic 设计这样的表单,你可以怎么做。
要说明的是:从设计教学-->模块的过程,我们做了一些设计上的调整和表单的美化,本篇设计教学和实际模块并不完全一样。(这也是 Ragic 的优点,可以容许很弹性的变更设计)
例如,本篇教学文是以“每天订一次盒饭”为前提设计的,只有“订购日期”的字段,目前的订盒饭模块则将字段改成“订购时段”,可以管理一天多次订盒饭,比较有弹性。另外,本篇教学另外提供以“报表”来统整信息的方式。
一个简单但方便的订盒饭系统应该要有以下元素:首先要能纪录所有店家的信息和菜色、价格,有人要订餐时只要点选就可以。
第二,要让订餐的个人可以在一个页面登记好数据上载,但负责统整的行政人员只要在统整页面就可以看到当天订购总额、要分别付给各店家多少钱,以及发盒饭饮料时的发放清单。
我们使用Ragic的设计工具,快速设计了一个一般公司可以使用的订盒饭系统给大家参阅。所有人都可以透过在Ragic云数据库登记帐户(新用户可以申请专业版30天试用),成为 Ragic 数据库的系统管理员,来设计这样的表单。
订盒饭牵涉两组角色:“订盒饭的人”、“订盒饭的对象(商家)及其菜色”,其中,“订盒饭的人”也可以分成两类,一类是要个别提出订购需求的员工,另外还有一个统整信息、帮大家订购的负责人。
(1-1) 店家基本信息
首先我们要创建一个盒饭店的基本数据表,也就是在Ragic创建一个表单,名称叫“盒饭、饮料店家列表”(点链接可以看到范例)。
店家基本信息的这张表单字段包括:店家编号、名称、类型,电话、地址、备注等基本信息,为一般字段,以及一个横向排列的子表格纪录这家店的菜色,包括(菜色)品项编号、品项、单价。若有需要还可以加上图片和菜色描述的字段。
在这张表单中,为了之后呈现数据的方便,我们在子表格右侧放了两个套用公式并且隐藏起来的字段“店家名称”和“店家菜色”,“店家名称”是直接带入主要字段的店家名称,主要是让子表格每一列数据都有这个信息,而“店家菜色”是用字符串公式把菜色名称加上店家名称,之后选择菜色时会更清楚是选哪一家。
(注:如果没有使用过Ragic,可以参阅我们的设计文档学习在Ragic创建表单,简单的新增、拖曳就可以做到,并可以选择字段种类。横向排列的子表格教学可以看这里。)
保存设计之后新增店家数据,画面会像这样:
(1-2) 菜单(品项)信息
我们可以将店家数据底下的菜单子表格,变成另一张包含所有店家菜色的表单,可以当成之后用户订餐时选菜色的依据。在设计模式下,到表单工具 > 用子表格生成新表单,选择将“店家品项”子表格生成新表单,链接字段设为“店家编号”,就生成出以每个店家的每一道菜色/品项为单元的表单“盒饭、饮料店家品项清单”,列表页画面如下。
(2-1) 创建个人订购单
我们做一张个人订购单,让要订餐的个人只要每天来这个表单填一次数据,后续的麻烦事就都交给系统处理。个人订购单的设计页面像这样:
包含可以辨认出是哪一次订购的独特值字段“订购单编号”、填表人、填表日期。订购单编号可以设成自动生成字段,填表人可以套用默认值(创建用户名称),填表日期也可以套用默认值(创建日期)。有需要的话也可以勾选“必填”、“只读”(避免用户乱填数据)。
另外还有一个点餐的子表格字段。其中,建议将订购数量字段设为“必填”,以免用户遗漏填写。(子表格用公式带入填表人和填表日期字段一样是为了之后带入数据的便利,可以设为隐藏)
在这里,我们要设计让用户点选菜色时,可以直接从之前创建的“盒饭、饮料店家品项清单”选择,因此要在两个表单之间创建链接与加载的关系,在设计模式 > 表单工具 > 链接与加载,进入链接管理工具,将要链接的字段连在一起。
*首先设置让“个人订购单”店家名称的字段链接自“盒饭、饮料店家列表”。
*接着再做一次链接设置,链接菜色和价格。
完成之后,用户来填数据的时候,只要在“店家名称”空格点一下,就会退出菜单,直接点选店家:
接着在“店家菜色”的地方再点一次,就会退出菜单的品项。这里我们设置当用户选A店家时,品项的菜单就只会退出属于A店家的菜单。
这是用链接加载的动态筛选功能设置的。
用户填好表单后,因为“小计”和“个人总计”的字段已经套好自动计算的公式,马上就可以知道这位用户要付多少钱。
(3-1) 用报表直接看信息
以上的表单设计好之后,负责订盒饭的人其实已经可以透过Ragic内置的的报表工具,看到系统计算出来的各种金额。
只要到数据库的“报表”页签新增数据仪表板报表,数据来源选择“个人订购单”,就会跑出一些统计数据。订盒饭最主要要看的应该是要付每个店家多少钱、以及确认收到的总额是多少钱,可以在报表上把不需要的字段右上角单击“x”消掉,留下以店家名称来归类的字段就可以。
我们以下面的设置方式,保存了一张“当日订购统计”报表,之后就不用另外设置了。
每次大家传送订购信息后,负责统整的人到“当日订购统计”报表,输入当日日期(例如2018/03/24),就可以看到“小计”字段有所有应该收到的费用($350元),以及要付给每个店家多少钱(珍珍盒饭110元,巷口咖哩100元,50饮料店140元)。如果希望表单少一些、单纯一些,这样就够了。
(3-2)另外产出细项和每日“统整表单”,一目瞭然
如果你还是想要一张一目瞭然的表单,可以另外做出订购细目和统整表单。
首先在个人订购单的表单页面,再使用一次“子表格生成新表单”的设计工具,将用户点餐的细项引出生成另一个“个人订购细项”的表单。
我们这里再设计一张统整表单,设计页面如下:
设计“统整单号”、“订购日期”、“总金额”三个字段,再使用显示从其他表单的链接这个设计工具,将“个人订购细项”这个表单拉进来当底下的参照子表格。
(在拉进来之前,要先为“个人订购细项”和“统整表单”创建链接关系,此时可使用“订购日期”这个字段来链接,如下:)
统整者每天开放大家订盒饭时,在统整单创建一笔当日数据(填上日期),大家填完想要的餐之后,就可以透过这个表单看到所有信息(总金额、谁订了什么餐)。依店家归类的金额可以到报表去看。
要注意的是,如果你要做像“统整表单”这样的设计的话,为了让公式正确计算,你必须回到“每日订购单”这张表单的设计模式,到左侧工具条中的表单设置 > 表单设置 勾选保存时触发相关表单的全部公式重算。这样才能确保“每日订购单”填写数据保存时,会触发“统整表单”根据新增、减少或调整的订购品项,计算出正确的总和数字。这部分相关的原理与说明可以参照这篇文档。
除了设计方便,Ragic表单的另一个优点就是可以随时弹性依需求改变设计。
例如:有需要的话可以在个人订购单加开一个“备注”字段,纪录个人的特殊需求。以下是我们针对特定需求提供的设计建议:
不想要花钱
Ragic是一个有很多免费资源的电子化工具,但毕竟也是商业服务,在Ragic使用 3 张以上的客制表单需要收费(请参阅我们的价目表)。但这也代表,如果使用的表单不超过3张的话,是完全免费的!所以你只要设计简易版的三张表单,不保存报表(已保存的报表算是一张表单),每次到报表工具引出数据仪表板就可以查看了。
想花少一点钱
Ragic 计费制度和一般 Saas 服务类似,月租、单击用户人头计费,如果你可以接受每个月 5 美金(约台币150元)或19美金(不到台币600元)的费用,你可以将“个人订购单”的“填表人”字段删掉,另外新创建一个新的“自由输入”填表人字段,把表单权限设为“EVERYONE”都有问卷式用户以上的权限,这样订盒饭的人不需要登录成为用户,大家就都可以用。
想规定订盒饭截止时间,超时不候
你本来就可以在个人订购单的右下角“i”图符点一下,会显示新增数据的时间,这样可以知道这个人何时填表的。
你也可以改变表单设计让这件事更方便:你可以另外新增一个“填表时间”字段,字段默认值套用“创建时间”,将它设为只读,再将填表时段之外的时间,设为筛选条件,保存这组筛选条件,之后就可以很容易将这些不合规定的订购单找出来删除,或者以这个逻辑设置输入检查让超过时间的人不能填数据。(注:要搭配输入检查的话,大家需要在订盒饭的当日填单,或者你需要将时间字段的格式改成 yyyy/MM/dd HH: mm 这种有加上日期的格式)
如果一个人只准填一张单子
可以在填表人的字段设置字段值不可重复。
如果你的组织每天开放订盒饭的店家数是固定的
可以考虑使用COUNTIF公式来让统整表单直接秀出每个店家应付的金额。
如果固定轮流订某些店家
这是读者回馈让我们得到的灵感。如果固定礼拜一订A店家,礼拜二订B店家,礼拜三订C店家的话,可以在“个人订购单”新增一个“今天星期几”的选项字段,同时在“店家列表”新增一个“星期几订购”的选项字段,选项值要相同(例如星期一、星期二、星期三...)。
然后在“个人订购单”链接加载“店家列表”“店家名称”字段的动态筛选设置中,设置规则:只显示“个人订购单”“今天星期几”字段等于“店家列表”“星期几订购”字段的数据,就可以只显示限定的店家了。