
5.2 自动编号
自动编号是另一类填写规范。如在《客户登记表》中,我们期望客户的编号由系统自动按顺序产生,就需要定义自动编号。
1) 用Admin账户登录到管理台
2) 在管理台主界面上,选择左侧树型中的“自动编号”,右击鼠标,选择弹出菜单“新建à自动编号”,如下图所示:
3) 弹出自动编号定义窗口,如下图所示:
系统自动产生的流水号由三部分组成:字头、日期信息和顺序号。
假设我们定义客户编号的字头是“KH”,日期部分格式为“YYMM”,顺序号3位,那么2006年1月第一次输入客户信息时,系统自动产生的客户编号是“KH0601001”,2005年12月第9次输入客户信息时,系统自动产生的客户编号时“KH0512009”。
按照这样的编号方法,实际上限定了1个月内最多输入999个新客户,如果可能输入超过999个新客户,或者我们增加顺序号的位数,从3改成4,这样每月的最多客户数可达到9999个;或者把日期格式从“YYMM”改成“YYMMDD”,也就是说,每一天都从001开始编号,直到999。
上述编号的三部分内容中,字头可以没有,日期部分格式也可以选无。
在对话框下方的“样例”处显示了按照您的设定,系统会为您产生的新编号的样例。
4) 按[确定],保存自动编号的定义。
定义了自动编号后,还需要把它指定为某数据项的填写规范,这样在填写新表单是,自动编号才能够自动产生。
1) 回到Excel,用Admin账户登录
2) 打开模版《客户登记表》
3) 选择菜单“模版à创建数据表”
4) 设置“客户”表中“客户编号”字段的填写规范为“客户编号”,如下图所示。
5) 按[修改],[返回]
6) 关闭模版
断开连接,用唐明的账户tangm重新登录,新填一张《客户登记表》,您会发现客户编号已经自动产生。
用前述方式自动产生的客户编号不支持废号重用,比如说您填了一张《客户登记表》,自动产生的客户编号是“KH0601001”,又填了第二张《客户登记表》,自动产生的客户编号是“KH0601002”,然后您删除了第一次填的客户信息,随即又填了第三张,这时自动产生的客户编号是“KH0601003”,而不会使用已被用过又作废的“KH0601001”。
当我们新填《客户登记表》时,客户编号自动产生,比如说“KH0601001”,如果这张表单不保存,直接关闭了,您再填下一张表单时产生的客户编号是“KH0601002”,而不会是“KH0601001”,即使它并没有保存。也就是说,每个自动编号都只能生成一次,不会重复生成同一个号。
之所以有这样的规定,是因为Excel服务器是一个网络系统。假设现在两个销售员唐明和刘军分别在自己的电脑上输入客户信息。唐明先开始填报,产生了001这个号,在唐明没有保存之前刘军也开始填报了,系统该为刘军产生什么号呢?即使001号还没有保存,也得为刘军产生002,否则两个人都要保存时,就会发生重号。
但是这样一来,有可能产生不必要的废号,为了避免这个问题,我们在定义“客户编号”这种自动编号时,可以设定“新编号在保存报表时才产生”,如下图,
这样在实际填写《客户登记表》时,客户编号处是空白,只有保存了表单后,再次打开,才能看到自动产生的客户编号。
要注意的是,如果您指定了某字段的填写规范是保存时才产生的自动编号,那么一定不要把该字段设成必填项,否则会导致表单无法保存。