历史版本70 :FineDB 数据库简介 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 描述编辑

FineReport 报表内置有一个 HSQL 数据库 FineDB,这个数据库具体有什么作用呢?并且存放的是什么内容呢?

2. 说明编辑

2.1 存放位置及保存内容

FineDB 保存在 %FR_Home%/webapps/WEB-INF/embed 下,里面存储了数据决策系统中除平台属性配置以外的所有信息,包括目录树设置以及模板定时任务信息等等。

2.2 包含的文件

db.properties:必有,存放 HSQL 数据库的属性。

db.script:必有,保存表及数据。

db.lck:可无,表示数据库处于打开状态。

db.log :可无,文件包含当前数据库的变更。

db.lobs:可无,保存某些类型的数据。

db.tmp:可无,临时文件目录。

注:上述文件中除 db.properties、db.script 等必有外,其他文件默认没有,若数据库被使用,且表及数据修改了如配置了管理平台的某些属性,这些文件会自动生成。

2.3 HSQL 数据库出故障

内置 HSQL 的表结构有问题或数据库字段不正确有可能会执行错误,如 SetPrinterOffsetService.initDB 会导致管理平台启动不了。
解决方案——删除 HSQL 文件, 或者手动修改数据库表结构。

2.4 FineDB 时间长后数据量太大的处理方法

参见文档 FineDB 过大处理办法

3. HSQL 数据库连接方式编辑

3.1 内置 JDBC 连接方式

点击服务器>定义数据连接,新增一个 JDBC 数据连接

数据库选择 others

驱动器手动输入:com.fr.third.org.hsqldb.jdbcDriver

URL输入:jdbc:hsqldb:file://${ENV_HOME}/embed/finedb/db(Windows/Linux/Mac 通用)

用户名为 sa,密码为空,如下图所示:

222

点击测试连接,即可连接成功。

新建一个数据库查询,在左侧的下拉框中选择,刚刚新建的数据连接,即可在列表框中看到所有 FineDB 里面所有的数据表,拖曳至右侧的 SQL 语句框中即可使用。

222

注:服务器添加了 FineDB 这个数据连接务必控制这个 数据连接的权限,否则存在被越权访问并修改配置数据库的风险。

更多查询语法可参见:报表日志 LogDB 数据库

3.2 平台连接方式

参见文档 [平台] HSQL 数据连接

3.3 第三方工具连接方式

参见文档 如何使用第三方管理软件连接报表内置 HSQL 数据库 FineDB

4. 修改 HSQL 数据库中数据编辑

如果想要修改 FR 内置 HSQL 数据库中的数据,只能通过 填报模板 进行数据修改,下面我们来修改一个数据决策系统中的用户名 PUBLIC.FINE_USER 数据表里面的数据。

4.1 模板设计

新建数据集 ds1:SELECT * FROM PUBLIC.FINE_USER

如下图所示,将数据集中的数据列拖曳至模板中,并全部添加文本控件:

222

4.2 填报属性设置

点击模板>报表填报属性,添加一个内置 SQL,如下图,将数据列与单元格绑定,并设置 ID 为主键,如下图所示:

222

4.3 修改数据

点击填报预览,将安娜的用户名修改为测试,提交入库,然后刷新页面,可以看到安娜的用户名被修改成了测试,如下图所示:

222

5. FineDB 数据库中表的含义编辑

注:9.0 版本与 10.0 版本的 FineDB 表结构有较大差异,9.0 版本的 FineDB 表结构请参照 9.0 版本内置 HSQL 数据库 finedb

5.1 权限

表名    表功能
fine_custom_role自定义角色表
fine_dep_role部门职务角色,这是一个中间表,连接了部门与职务
fine_department部门表
fine_extra_property

记录一些额外的信息(目前只用来记录用户的额外信息)

fine_homepage_expand主页类型权限实体的扩展属性表
fine_post职务表
fine_user用户表
fine_user_role_middle用户-角色中间表,用户通过该表关联到自定义角色和部门职务角色
fine_authority权限表,记录所有权限值
fine_authority_object权限实体表,记录所有用到权限的对象和目录名称以及报表名称

5.2 定时调度

表名  表功能  
  fine_schedule_output  定时任务中的导出
  fine_schedule_record  记录任务执行日志
  fine_schedule_task  定时任务表
  fine_base_output  任务附件处理主表
  fine_output_class  自定义类处理
  fine_output_client_notice  客户端通知
  fine_output_email  推送邮件
  fine_output_ftp  FTP 上传
 fine_output_mount 定时调度任务挂载目录
 fine_output_platform_msg 平台系统消息
 fine_output_print 打印处理
 fine_output_sms 发送短信
 fine_backup_node 备份节点表
 fine_favorite_entry 收藏目录表
 fine_base_message 平台消息主表
 fine_process_message 上报消息
 fine_system_message 平台系统消息
 fine_block_ip 记录访问报表拦截的信息
 fine_mobile_device 移动端设备表

5.3 报表

表名    表功能
  fine_print_offset  打印偏移
  fine_print_offset_ip_relate  打印偏移 IP 关联表
  fine_param_template  模板参数组合
  fine_remote_design_auth  远程设计用户表
  fine_write_stash  填报暂存表
  fine_process_expand  上报流程类型权限实体的扩展属性表
  fine_report_expand  报表类型权限实体的扩展属性表

5.4 配置

表名  表功能  
 fine_conf_classname    配置类的字段是接口类型的情况下,记录其类型
 fine_conf_entity  存储配置类中的数据
 fine_conf_xmlentity    有些字段的结构及其复杂,为了将其存储到数据库中,存储成 XML 的方式

5.5 Quartz 模块 (不允许修改)

  表名  表功能
  qrtz_blob_triggers  以 Blob 类型存储的触发器
  qrtz_calendars  存放日历信息, Quartz 可配置一个日历来指定一个时间范围
  qrtz_cron_triggers  存放 Cron 类型的触发器
  qrtz_fired_triggers  存放已触发的触发器
  qrtz_job_details  存放一个 JobDetail 信息
  qrtz_simple_triggers  简单触发器的信息
  qrtz_triggers  触发器基本信息

5.6 Swift 模块(不允许修改)

  表名表功能  
  fine_swift_col_idx_conf  字段索引配置
  fine_swift_config_entity  Swift 内部配置表
  fine_swift_metadata  用于存放数据表元数据
  fine_swift_seg_location  Swift Segment 分布信息
  fine_swift_segments  Swift Segment 详细信息
  fine_swift_service_info  保存 Swift 服务信息
  fine_swift_tab_idx_conf  表索引配置
  fine_swift_table_path  Cube 中间目录配置管理

5.7 数据上报模块(2018 年 12 月 27 日新增表)

  表名表功能  
  fine_workflow  上报流程中的流程
  fine_workflow_task  上报流程中的任务
  fine_workflow_task_impl  上报流程中的任务下发出来的具体任务
  fine_workflow_node  上报流程中的节点
  fine_workflow_stash_data  上报流程中的数据暂存
  fine_workflow_log  上报流程中的操作日志

5.8 Excel 批量导入模块(2018 年 12 月 27 日新增表)

  表名表功能  
  fine_excel_submit_task  Excel 批量导入权限实体扩展表

6. FineDB 数据库数据字典编辑

6.1 权限

fine_custom_role——自定义角色表

  字段含义  
id主键
creationType

用户来源:

1-管理员手动创建  

2-同步数据集创建

description描述信息
enable

是否启用:

1-启用 

0-不启用

lastOperationType

最近一次修改类型:

1-管理员手动修改  

2-同步数据集修改

name自定义角色名称


fine_dep_role——部门职务角色,这是一个中间表,连接了部门与职务

  字段含义  
id主键
creationType

创建类型:

1-管理员手动创建  

2-同步数据集创建

lastOperationType

最后修改类型:

1-管理员手动修改  

2-同步数据集修改

departmentId所关联的部门 ID
postId所关联的职务 ID


fine_department——部门表

  字段含义  
id主键
creationType

创建类型:

1-管理员手动创建  

2-同步数据集创建

description描述信息
enable

是否启用:

1-启用 

0-不启用

lastOperationType

最后修改类型:

1-管理员手动修改 

2-同步数据集修改

name部门名称
parentId所关联的父部门 ID


fine_extra_property——记录一些额外的信息(目前只用来记录用户的额外信息)

  字段含义  
  id  主键
  name  属性名称
  relatedId  所关联的数据项 ID(用户 ID)
  type  所关联的数据项类型
  value  属性值


fine_homepage_expand——主页类型权限实体的扩展属性表

  字段含义  
  id  主键
  androidPadHomePage  用于 Android 平板的主页链接
  androidPhoneHomePage  用于 Android 手机的主页链接
  iPadHomePage  用于 iPad 的主页链接
  iPhoneHomePage  用于 iPhone 的主页链接
  pcHomePage  用于 PC 的主页链接
  type

  主页类型( URL 类型主页、报表类型主页 ):

  0-FR模板 

  1-平台目录 

  2-链接 

  3-BI模板


fine_post——职务表

  字段  含义
id主键
creationType

创建类型:

1-管理员手动创建  

2-同步数据集创建

description职务描述
enable

是否启用:

1-启用 

0-不启用

lastOperationType

最后修改类:

1-管理员手动修改  

2-同步数据集修改

name职务名称


fine_user——用户表

  字段 含义 
id主键
creationType

用户来源:

1-管理员手动创建  

2-同步数据集创建

enable

是否启用:

1-启用  

0-不启用

lastOperationType

最后修改类型:

1-管理员手动修改  

2-同步数据集修改

email电子邮箱
language语言
male

性别:

1-男 

0-女

mobile手机号
password密码 
realName真实姓名
userName用户名
workPhone工作手机号
userType

用户类型:

1-管理员  

2-普通用户

adminld所属管理员 ID


fine_user_role_middle
——用户-角色中间表,用户通过该表关联到自定义角色和部门职务角色

  字段 含义 
id主键
roleId所关联的角色 ID
roleType

所关联的角色类型:1-部门职务角色  2-自定义角色

userId所关联的用户 ID


fine_authority——权限表,记录所有权限值

  字段含义  
  id主键
  authority

权限值

1-拒绝

2-允许

  authorityEntityId所关联的权限实体 ID
  authorityEntityType

所关联的权限实体类型

0-(默认)权限实体

x-外部权限实体

  authorityType

  权限类型(查看、编辑等)

1-查看

2-编辑

3-管理

x-其他

  roleId

  所关联的角色 ID

1-部门职务角色

2-自定义角色

3-用户角色

  roleType  所关联的角色类型(用户角色、自定义角色、部门职务角色)


fine_authority_object——权限实体表,记录所有用到权限的对象

  字段含义  
  id主键
  expandId所关联的扩展属性记录  ID
  expandType

所关联的扩展属性类型

1-上报流程扩展权限实体表

2-报表扩展权限实体表

3-平台目录权限实体类型

4-模板权限实体类型

x-其他

  parentId所关联的父节点 ID
  coverId  封面 ID
  description描述信息
  deviceType

显示类型

1-PC

2-平板

4-手机

  displayName显示报表名称和目录名称
  icon图标 ID
  path路径
  sortIndex排序顺序


6.2 定时任务

fine_schedule_output——定时任务中的导出

  字段含义  
  id  主键
  baseName  生成附件名称
  createAttachByUsername

  是否按不同用户生成不同附件:

  1-是 

  0-否

  formats  导出附件类型


fine_schedule_record——记录任务执行日志

  字段  含义
  id  主键
  creator  任务创建者
  detailMessage  详细信息
  filePath  生成附件路径(预留字段,未使用)
  taskName  任务名称
  runType  附件处理类型
  nextFireTime  下次执行时间(预留字段,未使用)
  logType  日志类型(成功,失败,跳过)
  logTime  任务执行时间(日志打印时间)


fine_schedule_task——定时任务表

字段    含义
  id  主键
  taskName  任务名称
  creator  任务创建者
  editable  任务是否可编辑(预留字段,未使用)
  scheduleOutput  关联外键(fine_schedule_output)
  userGroup    用户组
  triggerGroup  触发器组
  templatePath  模板路径
  taskParameter  模板参数
  taskState  任务状态(运行中,暂停,结束)
  taskType  任务类型(FR,BI)
  taskDescription  任务描述(预留字段,未使用)
  showType   模板预览类型
  taskCondition  任务执行条件
  sendBackupFile  (预留字段,未使用)
  repeatTime  任务失败重启时间间隔
  repeatTimes  任务失败重启次数
  preFireTime  上次执行时间
  nextFireTime  下次执行时间
  outputStr  附件处理类型


 fine_base_output——任务附件处理主表

  字段  含义
  id  主键
  actionName  附件处理类名
  executeByUser

  是否按不同用户分别执行:

  1- 是 

  2-否

  resultUrl  结果链接
  runType  附件处理类型
  outputId  外键关联(fine_schedule_output)


fine_output_class——自定义类处理

字段  含义  
  id  主键
  className  自定义类名


fine_output_client_notice——客户端通知

  字段  含义
  id  主键
  addressee  接收人
  content  内容
  customizeLink  自定义链接
  linkOpenType  链接类型
  mediaId  富文本消息的图片 ID
  subject  主题
  terminal  推送终端
  type   消息类型


fine_output_email——推送邮件

  字段  含义
  id  主键
  addLink  结果链接
  bccAddress  密送
  ccAddress  抄送
  bodyContent  内容
  subject  主题
  userAttach  使用附件
  previewAttach  正文预览


fine_output_ftp——FTP 上传

  字段  含义
  id  主键
  serverAddress  FTP 服务器地址
  username  账号
  password  密码
  port  端口
  savePath  上传路径


fine_output_mount——定时调度任务挂载目录

字段    含义
  id  主键
  folderEntryID  挂载到目录节点 
  folderEntryName  生成的目录节点名称
  folderEntryStr  挂载到目录节点名称
  description  描述


fine_output_platform_msg——平台系统消息

字段  含义  
  id  主键
  subject  消息主题
  content  消息内容
  linkOpenType  平台内打开


fine_output_print——打印处理

  字段  含义
  id  主键
  printerName  打印机名称


fine_output_sms——发送短信

  字段含义  
  id  主键
  templateID  短信模板 ID


6.3 平台 

 fine_backup_node——备份节点表

  字段含义  
  id  主键
  backupModule  备份模块
  backupModuleName  备份名称
  backupTime  备份时间
  savePath  备份路径
  backupSize  备份文件的大小
  type  类型:auto - 自动备份,manual - 自动备份


 fine_favorite_entry——收藏目录表

字段    含义
  id  主键
  entryId  收藏的目录 ID
  userId    收藏目录的用户 ID
  time  收藏时间


fine_base_message——平台消息主表

字段  含义  
  id  主键
  createTime  消息创建时间
  message  消息内容
  readed

  是否已读:

  1 - 是

  0 - 否

  toasted

  是否已弹窗:

  1 - 是

  0 - 否

  type  消息类型
  url  消息链接
  urlType  消息链接类型
  userId  用户 ID


fine_process_message——上报消息

  字段  含义
   id  主键
  allTaskId    全部任务 ID
  deadLine  结束时间
  processed

  是否完成:

  1- 完成 

  0 - 未完成

  taskId  上报任务 ID


fine_system_message——平台系统消息

字段   含义 
  id  主键
  title  消息标题
  terminal  设备


fine_block_ip——记录访问报表拦截的信息

  字段含义  
  ip  拦截 IP
  createTime  首次加入拦截的时间
  rejectedVisits   拦截访问次数  


fine_mobile_device——移动端设备表

字段  含义  
  id  主键
  username  关联的用户名
  macAddress  设备 Mac 地址
  deviceName  设备名称
  passed  设备是否通过认证
  createDate  设备添加日期
  updateDate  设备修改日期


6.4 报表

fine_print_offset——打印偏移

  字段含义  
  ip  客户端 IP 地址
  cptName  模板名称
  offsetX  横向偏移量
  offsetY  纵向偏移量
  sign

  偏移选项

  0-不偏移

  1-全局配置

  2-单模板配置


fine_print_offset_ip_relate——打印偏移 IP 关联表

  字段 含义 
  motherID  对应打印偏移表的 ID 字段
  childIP  关联客户端 IP


fine_param_template——模板参数组合

字段  含义  
  templateid  模板 ID
  username  用户名
  tpgroup  参数组合


fine_remote_design_auth——远程设计用户表

字段  含义  
  userId用户 ID
  userName用户名
  path有远程设计权限的路径
  pathType

路径类型:

0-文件 

1-文件夹


fine_write_stash——填报暂存表

  字段含义  
  username  用户名
  reportPath  模板路径
  data  暂存数据


fine_process_expand——上报流程类型权限实体的扩展属性表

  字段含义  
  id  主键
  processType  上报流程类型


fine_report_expand——报表类型权限实体的扩展属性表

  字段含义  
  id主键
  showType

0-填报 1-分页 2-分析 3-表单预览 4-新填报

  transmitParameters自定义的一些预览参数


6.5 配置

fine_conf_classname——配置类的字段是接口类型的情况下,记录其类型

  字段 含义 
  id  当前字段在配置中的位置  
  className  字段类型


fine_conf_entity——存储配置类中的数据

  字段  含义
  id  数据在配置中的位置
  value  数据值


fine_conf_xmlentity——有些字段的结构及其复杂,为了将其存储到数据库中,存储成 XML 的方式

字段  含义  
  id  数据在配置中的位置
  value  该字段的 XML 文本值


6.6 Quartz模块(不允许修改)

qrtz_blob_triggers——以 Blob 类型存储的触发器

字段    含义
  SCHED_NAME  QuartzScheduler
  TRIGGER_GROUP  触发器组
  TRIGGER_NAME  触发器名称
  BLOB_DATA  任务数据


qrtz_calendars——存放日历信息, Quartz 可配置一个日历来指定一个时间范围

字段   含义 
  CALENDAR_NAME  日历名称
  SCHED_NAME  QuartzScheduler
  CALENDAR  日历信息


qrtz_cron_triggers——存放 Cron 类型的触发器

  字段含义  
  SCHED_NAME  QuartzScheduler
  TRIGGER_GROUP  触发器组
  TRIGGER_NAME  触发器名称
  CRON_EXPRESSION  Cron 表达式
  TIME_ZONE_ID  时区


qrtz_fired_triggers——存放已触发的触发器

字段    含义
  SCHED_NAME  QuartzScheduler
  TRIGGER_GROUP  触发器组
  TRIGGER_NAME  触发器名称


qrtz_job_details——存放一个 JobDetail 信息

  字段含义  
  JOB_GROUP  任务组
  SCHED_NAME  QuartzScheduler
  JOB_NAME  任务名称
  DESCRIPTION  描述  


qrtz_simple_triggers——简单触发器的信息

  字段  含义
  SCHED_NAME  QuartzScheduler
  TRIGGER_GROUP  触发器组
  TRIGGER_NAME  触发器名称
  REPEAT_COUNT  重复次数
  REPEAT_INTERVAL  重复时间间隔


qrtz_triggers——触发器的基本信息

  字段  含义
  SCHED_NAME  QuartzScheduler
  TRIGGER_GROUP  触发器组
  TRIGGER_NAME  触发器名称
  START_TIME  开始时间
  END_TIME  结束时间
  TRIGGER_TYPE  触发器类型
  TRIGGER_STATE  触发器状态
  NEXT_FIRE_TIME  下次执行时间
  PREV_FIRE_TIME  上次执行时间
  JOB_GROUP  任务组
  JOB_NAME  任务名称


6.7  Swift 模块(不允许修改)

  • fine_swift_col_idx_conf——字段索引配置

  字段  含义
tableKey数据表 SourceKey
columnName字段名
requireIndex是否生成索引
requireGlobalDict是否生成全局索引


fine_swift_config_entity——Swift内部配置表

字段  含义  
configKey配置所在的位置
configValue配置值


fine_swift_metadata——用于存放数据表元数据

  字段  含义
  id  数据表算出来的 SourceKey
  swiftSchema  数据文件存放位置(CUBE / LOG 等)
  schemaName  数据库表的 Schema
  tableName  表名
  remark  转译名
  fields  字段信息


fine_swift_seg_location——Swift Segment 分布信息

  字段  含义
  clusterId  集群ID
  segmentId  生成的 Segment ID
  sourceKey  数据表 SourceKey,表示 Segment 属于哪个表


fine_swift_segments——Swift Segment 详细信息

字段  含义  
  id  生成的 Segment ID
  segmentOwner  数据表 SourceKey,表示 Segment 属于哪个表
  segmentOrder  Segment 序号
  storeType  数据保存类型
  segmentUri  数据文件的相对 URI
  swiftSchema  数据文件存放目录(CUBE / LOG 等)


fine_swift_service_info——保存 Swift 服务信息

字段    含义
  id  Service ID  
  service  服务类型(查询、导入、历史、实时等服务)
  cluster_id  集群 ID
  service_info  服务的其他信息
  is_singleton  是否只启动一个


fine_swift_tab_idx_conf——表索引配置

  字段  含义
  tableKey  表SourceKey
  allotRule  分块逻辑


fine_swift_table_path——Cube 中间目录配置管理

  字段  含义
  clusterId  集群 ID 单机为 LOCAL
  tablePath  当前使用的中间目录
  lastPath  上次使用的临时目录
  tmpDir  生成 Cube 时使用的中间目录

6.8 数据上报模块(2018 年 12 月 27 日新增表)

fine_workflow——上报流程中的流程

  字段含义  
  name  流程名称
  creatorId  创建者 ID
  createTime  创建时间
  description  描述
  nodesId  节点 ID


fine_workflow_task——上报流程中的任务

  字段  含义
  name  任务名称
  processId  流程 ID
  parentId  父任务 ID
  creatorId  创建者 ID
  creatorName  创建者名称
  createTime    创建时间
  issueControl  定时下发
  deadLineDate  截止时间
  deadLineType  截止类型
  remindControl  提醒方式
  issueOver  是否下发结束
  leapfrogBack  越级回退


fine_workflow_task_impl——上报流程中的任务下发出来的具体任务

  字段含义  
  id主键
  alerted

是否预警:

1 - 是

2 - 否

  deadLine截止时间 如果不设置为 Null
  frTaskId$fr_task_id 的实际值
  name任务名
  taskId源 task 的 ID
  processId流程 ID
  currentNodeIdx当前的流程节点 ID
  operatorJSONNode 上的第几个节点是多用户的
  completeState任务完成状态
  needAllComplete是否需要全部完成
  reportOffset第几个模板
  operatorOffset多用户节点的第几个用户
 operatorOffsetName  多用户节点的第几个用户的名字
  state任务状态:

-1 - 初始

0 - 等待上报

1 - 等待审核
2 - 审核通过
3 - 被退回
4 - 已经关闭
5 - 超时
  senderId  发送人 ID
  sender  发送人
  sendTime  发送时间
  createTime  创建时间,确切的说是下发的时间 
  note   备注
  nodeRoute  节点走过的路径,Json
  sonTaskId  子任务的 ID    [{nodeIdx:0, userId:1, taskId:1}]
  parentId  父任务 ID


fine_workflow_node——上报流程中的节点

  字段  含义
  processId  流程 ID
  name  节点名
  description  描述
  authority  权限
  reportControl  上报详细信息
  alertControl  预警详细信息
  needAllComplete  是否需要全部完成后流转
  needOfflineReport  是否需要离线填报


fine_workflow_stash_data——上报流程中的数据暂存

  字段含义  
  userId  用户 ID
  taskId  任务 ID
  reportPath  报表路径
  data  数据


fine_workflow_log——上报流程中的操作日志

  字段 含义 
  operatorName  操作者名称
  processName  流程名
  taskName  任务名
  dateTime  时间
  message  消息

6.9 Excel 批量导入模块(2018 年 12 月 27 日新增表

fine_excel_submit_task——Excel 批量导入权限实体扩展表

  字段含义  
  id  主键
  name  任务名称
  reportPath  关联模板路径
  createTime  任务创建时间
  submitTim  提交时间
  description  描述