开源ERP的精华-OpenBravo 数据库结构基本分析

一.表前缀的意义

A_:基本资料管理(asset management)

AD_:基础字典(application dictionary)

C_:核心功能

I_:导入数据的临时表和过程

M_:物料管理

FACT_:会计表

GL:总账(国内的用友软件的总账也是这个前缀)

MA:制造

S:服务管理

CUS,PD,US,ZZ:个性化开发

二.通用列前缀的意义

Created:创建记录的日期

CreatedBy:创建记录人的ID

Updated:更新记录日期

UpdateBy:最后一次更新记录人的ID

isActive:是否逻辑存在(就是用户视图看不见,但物理数据仍在,用来控制数据在用户视图上显示的字段)

AD_Client_ID:拥有该记录权限的人的ID号,如果为0,则是系统管理员专用ID.

AD_ORG_ID: 拥有该记录组织机构的ID号,如果为某机构的ID,则该机构所有用户都可以拥有该类数据的访问权限。这些通用列前缀是这套ERP数据权限管理的根本。绝大部分表都有这个设计。

个人想法:是不是把这个控制字段放到另一张表中,统一管理,而不每张表都放这个重复的设计。目前看当然是不行的。因为表如果关键字一样(例如:AD_SYSTEM_ID,AD_preference,都是PK=ad_client_ID+ad_orgID),就没办法区别数据了。除非有一个全局的记录表 (C_GobleRec类似如下设计:GobleRecIDFK, Created, CreatedBy, Updated, UpdateBy, isActive这样的设计效率不会更高点,表的空间被缩小了。每个表中都有一个GobleRecID字段。这样扩充性会更高,每张表如果加控制字段不用全部Alter Table。但执行效率,由于都要到此表查询,可能会下降?如果按模块再分成C_SubGobleRecC_SubGobleRecID(FK),由全局GobleRecIDFK)进行统管,速度会更快(类适数据库索引文件的设计)?

      

三.ERP分析方法

个人经验顺序为:BOFM (B=BaseInfo),(O=Operation),F(Finance),M(Mangement)/MRP

先基础管理系统,先简后繁,提高信心。然后(业务)进销存系统,财务系统,管理分析/生产制造/财务管理/决策支持(生产管理是最复杂的,因此如果缺乏管理知识或实际工作经验,很难继续分析)。

 

1.       系统管理、人员管理,组织机构管理

表:AD_ORGINFO: 在这个表中的LOGO字段比较有意思。每个组织机构(组织机构代替了部门与公司的设计,符合管理学上通用的命名)可以加上图标。

数据权限控制:

Created:创建记录的日期

CreatedBy:创建记录人的ID

Updated:更新记录日期

UpdateBy:最后一次更新记录人的ID

isActive:是否逻辑存在(就是用户视图看不见,但物理数据仍在)

:AD_SESSION 用来记录登录会话信息的:AD_SYSTEM_INFO,是用来记录OpenBravo系统信息的。设计中OB就是OpenBravo的简称。如OB_Version

Ant_Version:JAVAANT工具。

 

AD_Developer 开发人员表。哈哈。在部署和改造完成后,你把你的名字也写进去?

SVNUser

有兴趣的可以到我的下载中去下载OpenBravo的E-R图.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值