• 最新功能
  • 1 EXCEL服务器概述
  • 2 安装与卸载
  • 3 基本概念&基本操作
  • 4 建立部门、角色、用户
  • 5 建立基础数据
  • 6 管理业务数据
  • 7 熟练填报
  • 8 数据查询
  • 9 工作流
  • 10 回写公式
  • 11 统计报表
  • 12 应用系统管理
  • 13 系统管理模块的常用操作
  • 14 填报网站
  • 15 移动端应用
  • 16 系统外观设计
  • 17 模板管理
  • 17.1 模板属性详解
  • 17.2 模板定义的导入导出
  • 17.3 模板数据的初始化
  • 17.4 模板权限
  • 17.5 模板另存
  • 17.6 删除模板数据、删除模板定义
  • 17.7 Word模板
  • 18 角色和用户
  • 19 数据项、数据表、数据库
  • 20 数据规范详解
  • 21 工作流详解
  • 22 表间公式详解
  • 23 实时系统、实时管理
  • 24 即时通讯
  • 25 文档管理
  • 26 网盘
  • 27 和其它系统的数据集成
  • 28 和CAD软件的集成
  • 29 与移动端其它应用的集成
  • 30 安装与部署的高级话题
  • 31 表达式函数详解
  • 32 通过VBA程序操纵EXCEL服务器
  • 33 通过命令行操作ES客户端
  • 34 商业智能BI系统
  • 35 WebApi的应用
  • 36 共享文档
上一节 下一节

17.3 模板数据的初始化

当我们设计好了一个信息系统,正式投入使用之前,还有一项准备工作要做:把系统需要的各种基础数据和期初数据整理好,一次性录入系统。这项工作称为“数据初始化”。

比如,一个制造企业,各种物料有2万多种,为了系统的业务流程正常进行,需要把这2万多种物料以及它们的期初库存事先输入系统。如果全部由人工一条一条地输入,工作量很大;但是因为业务本身不可能停顿,物料的当前库存会随时变化,所以需要在尽可能短的时间内完成这项工作。有没有高效率的解决办法呢?答案是肯定的。

我们在模板上创建的数据表实际上存储在应用数据库中。例如,我们在ESApp1应用中创建了一个订单模板,在其上创建了两个数据表,“订单_主表”和“订单_明细”,打开SQL Server 企业管理器,我们会看到,在ESApp1数据库中增加了两个表,如下图所示。我们填报的订单信息都会存储在这两个表中。



执行“数据初始化”,我们需要做的步骤是:

  1. 把需要导入系统的数据,事先整理到Excel文件中。
  2. 把整理到Excel文件中的数据,导入到SQL Server 数据库中已创建的模板数据表中。
  3. 对模板数据表中的ExcelServerRCID、ExcelServerRn等系统字段赋值,使得这些导入的数据能够让用户在我的工作台上看得到。

上述的第一个步骤,只能靠用户自己手工完成;第2)个步骤,熟悉SQL Server数据库的用户,可以自己做,也可以通过Excel服务器软件的界面做;第三个步骤,只能通过软件的界面完成。

整理需要导入的数据

将需要导入系统的模板数据整理到Excel中的方法很简单,有以下要求要满足:

  • 模板的主表上必须定义主键。
  • 针对模板上的每个表建立一个Excel文件,要导入的数据放在第一个Sheet中,每列的标题是字段名。
  • 如果一个模板上有多个数据表,需要把主表数据和明细表数据分别整理在不同的Excel文件中,但是,明细表上,必须有一个(或几个)字段,相应地Excel文件中有一列(或几列),和主表上的主键字段对应,能够根据这(几)个字段的值定位到主表Excel文件中的某一行。

至于为什么有这三点要求,我们用下面的例子来说明一下。

假设我们要向订单模板导入数据,模板上有“订单_主表”和“订单_明细”两个数据表,把它们的数据分别整理到两个Excel文件中,如下面两个图所示:




现在问题来了,这里共有23条订单_明细的数据,它们是一张订单上的?还是9张订单上的?如果是9张订单上的,哪几条是第一张订单的?哪几条是第二张订单的?

当我们实际填报一份订单的时候,是不用关心上述问题的,因为正填报的订单就是一份,无论多少条明细,都是这一份订单的明细,但当成批导入数据的时候,就不是这么简单了,我们必须能够区分这“大批”的订单明细数据是怎样划分成一张张订单的。

怎样区分呢?因为“订单_主表”的主键是“订单编号”,也就是说,只要知道订单编号,就能唯一地确定一份订单,所以,我们对每一条明细数据也都标注其所在的订单号,如下图所示,我们在明细表上增加一个字段“订单编号”,相应地在需要导入的明细表Excel文件中也增加这一列,靠这列的值和主表中哪条记录的订单编号列相等,来识别每条明细应该归属于哪份订单。





导入数据,进行初始化

  1. 登录系统,进入设计栏目。
  2. 在“功能模块”中,找到要导入数据的模板,选择右键菜单【初始化数据】
  3. 弹出“初始化数据”窗口,选择主表:订单_主表,确定表单填报人,然后选择导入文件,在“导入数据预览”中可以看到要导入的主表数据。点击【下一步】。



4.勾选检查必填选项情况下,当有必填字段未填则会提示未填内容。不勾选时若也有必填未填则可成功导入数据。

5.如果该模板下设置了工作流,那么会弹出如下对话框(否则会跳过这一步),选择导入的数据如何流转,点击【下一步】。


6.如果该模板仅有主表,那么直接点【完成】即开始导入,前面我们分析过了,订单模板下即有主表,也有明细表,所以我们按照提示,点击【下一步】继续选择明细表的导入文件。


7.在如下窗口中,选择明细表,指定明细表中的字段和主键字段的关联关系,然后选择导入文件,在导入数据预览中可以看到要导入的明细数据。点击【下一步】。

8.最后点击[完成],开始导入,最后提示“初始化数据完成!”,点击【确定】。



导入完成后,进入我的工作台,会看到被导入的数据。

初始化之前需要整理数据,如果我们已有若干订单的excel文件又不想逐一整理数据,如何较方便的将excel文件中的订单数据转入系统呢?可以通过前面的7.5.3节中“批量导入Excel文件”功能实现。

上一节 下一节