• 最新功能
  • 1 EXCEL服务器概述
  • 2 安装与卸载
  • 3 基本概念&基本操作
  • 4 建立部门、角色、用户
  • 5 建立基础数据
  • 6 管理业务数据
  • 7 熟练填报
  • 8 数据查询
  • 9 工作流
  • 10 回写公式
  • 11 统计报表
  • 12 应用系统管理
  • 13 系统管理模块的常用操作
  • 14 填报网站
  • 15 移动端应用
  • 16 系统外观设计
  • 17 模板管理
  • 18 角色和用户
  • 19 数据项、数据表、数据库
  • 20 数据规范详解
  • 20.1 自动编号
  • 20.2 树型选择
  • 20.3 树型和列表的动态条件
  • 20.4 对列表选择加上分类树
  • 20.5 动态决定弹出选择
  • 20.6 二维码数据模型
  • 20.7 信息采集设备
  • 20.8 电子签章
  • 20.9 文字识别
  • 20.10 选择框控件
  • 20.11 数据规范分类
  • 21 工作流详解
  • 22 表间公式详解
  • 23 实时系统、实时管理
  • 24 即时通讯
  • 25 文档管理
  • 26 网盘
  • 27 和其它系统的数据集成
  • 28 和CAD软件的集成
  • 29 与移动端其它应用的集成
  • 30 安装与部署的高级话题
  • 31 表达式函数详解
  • 32 通过VBA程序操纵EXCEL服务器
  • 33 通过命令行操作ES客户端
  • 34 商业智能BI系统
  • 35 WebApi的应用
  • 36 共享文档
上一节 下一节

20.1 自动编号


在第5章,我们初次接触了自动编号的概念。本节对自动编号数据规范再做一下详细的说明。按下图建立《发文登记》模板。



在模板上定义数据项如下:

表名发文登记表所在工作表Sheet1
样式单一数据项是否创建
主键区域字段名数据类型必填填写规范
B2密级文字(20字以内)固定取值的下拉,三个选项:绝密、机密、普通
E2文件号文字(20字以内)
C3:E3文件标题文字(100字以内)
C4:E4文件内容文字(2000字以内)
C5录入人文字(20字以内)当前用户姓名
E5录入日期日期当前日期

20.1.1 自动编号的组成

自动编号由若干“段”组成,每段可能是如下无类信息之一:

段类别说明
系统变量为与当前用户有关的内容,包括:当前用户部门编号,当前用户所在部门,当前用户所在机构,当前用户姓名,当前用户登录帐号。
固定文字顾名思义,就是定义自动编号时规定好的固定文字内容
日期变量表示时间相关的信息,有YYMM,YYYYMM,YYYYMMDD,YYMMDD,YY,YYYY,MMDD等格式,在产生编号的时刻,根据当前日期决定
表单变量对应模板上的字段,在填报的时候,根据这个字段中用户填写的内容构造编号的这一段。表单变量具体对应模板上的什么字段,在把自动编号绑定到模板数据项的时候再指定,定义自动编号的时候不需要指定
顺序号从1开始的顺序号,需要规定位数

假设《发文登记》用于登记所有下发的文件,每份下发的文件,有一个系统自动产生的文件号。

我们希望在文件号中能体现出来:此文件的密级是什么,是哪个部门下发的,是该部门在当年第几次下发的。例如,财务部2008年第3次下发的绝密文件,编号为“绝密-财务部发(2008)第003号”,总经办2007年第6次发普通文件,编号为“普通-总经办发(2008)第006号”。分析这个问题我们会看出,文件的编号中必须包含如下信息:

  • 文件的密级,密级是发文登记表中的一个字段,所以它是一个“表单变量”
  • 发文部门的信息,操作人所在的部门,它是一个“系统变量”
  • 发文时间(年份)的信息,和操作时间有关,它是一个“日期变量”
  • 顺序号,以上信息都相同的情况下,从1开始顺序编号,留3位

由此定义如下的文件编号:



如上图所示,文件编号由8段组成。

开头是一个表单变量,表示这将是模板上的一个字段,填报时,根据这个字段的值决定这段的内容。当我们把此自动编号关联到具体的发文登记表模板上的时候,将指定这个表单变量具体对应模板上的“密级”字段;

接下来是一个固定文字“-”;

然后是“系统变量—当前用户所在部门”,即,谁来填报“发文登记表”,这里就是谁所在的部门名称。

接下来又是固定文字“发(”;

下面一段,是一个日期变量,这个选择格式为“YYYY”,即填报时刻的年份;

然后又是一段固定文字“)第”;

接下来为顺序号,即,同一密级、同一部门、同一年,下发的文件,从1开始编号,顺序递增,这里我们规定顺序号为3位,这意味着,同一密级、同一部门、同一年之内,发文的数量最多为999份。

最后,还是一段固定文字“号”。

20.1.2 将编号中的表单变量绑定到数据项

在上一节,我们定义了一个自动编号数据规范“发文号”,下面把这个自动编号关联到《发文登记表》模板的“文件号”字段上。

在设计栏目中,选中《发文登记表》模板,打开其“管理数据表”窗口。选中“发文号”字段,选择其数据规范为自动编号“发文号”,弹出“字段数据规范设置”窗口,如下图所示。



设置表单变量的绑定字段为“发文登记表.密级”。

生成时机

当一个自动编号中带有表单变量时,编号需要根据表单变量的绑定字段的内容来构造,在填报的过程中,绑定字段的内容可能被多次输入,比如在这个例子中,绑定字段是“密级”,用户可能一开始选择了密级为“机密”,然后发现不对,又改成了“绝密”,那么是不是每次改变都要重新产生一个文件号呢,这里提供了两种选择,一种是“保存时”,也就是不管填报过程中绑定字段被反复修改了多少次,直等到保存时才去生成编号,因为那个时候绑定字段的内容已经定了,不会再变了;另一种选择是“绑定字段改变时”,也就是说只要绑定字段的内容改变,编号都会重新生成。

在本例中,我们选择生成时机为“保存时”。

说明:含有表单变量的自动编号,无论哪种生成时机在满足条件时客户端和WEB端都可生成正确的编号。

修改表单时,编号否要重新生成

关于带表单变量的编号生成,还有一个问题需要注意,就是已经存在的表单,如果打开修改,而且修改时又改变了绑定字段的内容,这种情况下编号怎么办?要根据新的绑定字段内容重新生成吗?还是保持不变?

在“字段数据规范设置”窗口上有一个选项“编号一旦生成并存入数据库,绑定字段改变编号不变”,可通过这个选项,来控制表单修改时,是否要根据改变后的绑定字段内容重新生成编号。

20.1.3 编号重用

很多情况下,我们会要求单据的编号必须连续,中间不能有断号。

产生断号的原因有以下两种情况:一是我们选择填报一份单据,则产生了新编号,但是最终并没有保存着张单据,而是直接关闭了,则已产生的编号成了废号。二是我们删除了一张单据,则被删除的单据上用到的编号也成为了废号。

我们可以选择通过自动编号的重用方式,使得废号可以被再利用。如下图所示。



上一节 下一节