OpenERP 应用和开发基础
(0.2 版)
作者:老肖
msn: saiwai76@hotmail.com
mail: xiangfu.xiao@gmail.com
QQ: 1417063315
更新日期:
2010 年 1 月,完成 0.1 版,即第六至第十章内容
2010 年 3 月,完成 0.2 版,即第一至第五章内容
2010 年 4 月,全面修订后全文发布
目录
第一章 OpenERP 介绍 ...................................................................................................................................... 1
第一节 OpenERP 的历史 .......................................................................................................................... 1
第二节 OpenERP 的架构 .......................................................................................................................... 2
一、 OpenERP 应用系统架构 .......................................................................................................... 2
二、 OpenERP 应用服务器架构 ...................................................................................................... 3
三、 PostgreSQL 数据库简介........................................................................................................... 3
第三节 OpenERP 功能和应用简介 .......................................................................................................... 4
一、 OpenERP 功能模块 .................................................................................................................. 4
二、 OpenERP 的用户群 .................................................................................................................. 7
第四节 OpenERP 开发简介 ...................................................................................................................... 7
一、 数据访问功能开发 ................................................................................................................... 7
二、 工作流和报表开发 ................................................................................................................... 9
第五节 为什么选择 OpenERP ................................................................................................................ 12
第二章 进销存业务概述 ................................................................................................................................. 14
第一节 采购业务概述 ............................................................................................................................. 14
第二节 销售业务概述 ............................................................................................................................. 15
第三节 采购、销售的财务处理 ............................................................................................................. 16
第四节 仓库管理业务概述 ..................................................................................................................... 18
第三章 OpenERP 基础业务设置 .................................................................................................................... 19
第一节 业务伙伴信息设置 ..................................................................................................................... 19
一、 理解业务伙伴 ......................................................................................................................... 19
二、 业务伙伴联系信息 ................................................................................................................. 20
三、 业务伙伴购销信息 ................................................................................................................. 21
四、 业务伙伴事件 ......................................................................................................................... 22
五、
业务伙伴财务信息 ................................................................................................................. 22
第二节 产品信息设置 ............................................................................................................................. 23
一、 产品模块配置 ......................................................................................................................... 23
二、 产品一般信息 ......................................................................................................................... 26
三、 产品供应和仓储信息 ............................................................................................................. 27
四、 产品价格和供应商信息 ......................................................................................................... 28
五、 产品描述和包装 ..................................................................................................................... 29
六、 产品财务信息 ......................................................................................................................... 30
第三节 财务数据设置 ............................................................................................................................. 30
一、 会计年度设置 ......................................................................................................................... 31
二、 会计科目表设置 ..................................................................................................................... 31
三、 分类账(Journal)设置.......................................................................................................... 33
四、 税种设置 ................................................................................................................................. 34
第四节 库存信息设置 ............................................................................................................................. 36
一、 理解 OpenERP 的库存管理 ................................................................................................... 36
二、 库位和仓库设置 ..................................................................................................................... 37
三、 设置最小库存规则 ................................................................................................................. 38
四、 库存移动(stock_move) ...................................................................................................... 39
五、 装箱单(Packing List) ......................................................................................................... 40
六、 库存盘点 ................................................................................................................................. 41
第四章 进销存案例实施 ................................................................................................................................. 42
第一节 模块安装 ..................................................................................................................................... 42
第二节 财务数据设置 ............................................................................................................................. 44
一、 设置会计科目表 ..................................................................................................................... 44
二、 设置分类账(Journal)和税种.............................................................................................. 46
第三节 业务伙伴和产品信息设置 ......................................................................................................... 47
第四节 采购业务测试 ............................................................................................................................. 47
一、 采购订单 ................................................................................................................................. 47
二、 采购财务处理 ......................................................................................................................... 49
三、 采购付款 ................................................................................................................................. 51
四、 采购入库处理 ......................................................................................................................... 52
第五节 销售业务测试 ............................................................................................................................. 53
一、 销售订单 ................................................................................................................................. 53
二、 销售订单财务处理 ................................................................................................................. 56
三、 销售出库处理 ......................................................................................................................... 58
第六节 财务报表确认 ............................................................................................................................. 58
第五章 OpenERP 数据导出和导入 ................................................................................................................ 60
第一节 数据库备份和恢复 ..................................................................................................................... 60
第二节 CSV 数据导出导入..................................................................................................................... 60
一、 数据导出 ................................................................................................................................. 61
二、 数据导入 ................................................................................................................................. 62
第三节 会计科目数据导入 ..................................................................................................................... 64
一、 科目类型导入 ......................................................................................................................... 64
二、 会计科目导入 ......................................................................................................................... 65
第四节 XML 数据导入导出 ................................................................................................................... 68
一、 XML 数据导入 ....................................................................................................................... 68
二、 XML 数据导出 ....................................................................................................................... 69
第五节 PostgreSQL 数据库数据导出导入 ............................................................................................. 69
第六章 OpenERP 开发入门 ............................................................................................................................ 72
第一节 基本概念 ..................................................................................................................................... 72
第二节 实例演练 ..................................................................................................................................... 74
一、 创建请假单对象 ..................................................................................................................... 74
二、 创建视图 ................................................................................................................................. 75
三、 创建菜单和系统动作(Action)........................................................................................... 77
四、 测试 ......................................................................................................................................... 79
五、 视图编辑器 ............................................................................................................................. 80
第三节 深入数据库 ................................................................................................................................. 81
第七章 OpenERP 的工作流开发 .................................................................................................................... 84
第一节 理解工作流(Workflow) ......................................................................................................... 84
第二节 实作工作流 ................................................................................................................................. 85
一、 修改对象和视图 ..................................................................................................................... 85
二、 创建工作流、活动和迁移 ..................................................................................................... 87
三、 测试工作流 ............................................................................................................................. 91
第三节 复杂工作流实例分析 ................................................................................................................. 91
第四节
企业流程(Enterprise Process)..................................................................................................... 93
第八章 OpenERP 的报表开发 ........................................................................................................................ 96
第一节 OpenERP 报表开发的预备知识 ................................................................................................ 96
一、 报表开发工具 ......................................................................................................................... 96
二、 XSL 简介................................................................................................................................. 97
第二节 OpenERP 报表简介 .................................................................................................................... 98
一、 基于 sxw 或 odt 模板的报表.................................................................................................. 98
二、 基于 xsl+xml 模板的报表 ...................................................................................................... 99
第三节 报表中文化解决方法 ............................................................................................................... 100
一、 让报表显示汉字 ................................................................................................................... 100
二、 让报表说中文 ....................................................................................................................... 101
第四节 实作报表 ................................................................................................................................... 101
一、 编写 RML 文件..................................................................................................................... 101
二、 编写报表对象代码及 XML 文件......................................................................................... 102
三、 测试 ....................................................................................................................................... 103
第九章 OpenERP 的权限设置 ...................................................................................................................... 105
第一节 OpenERP 权限机制简介 .......................................................................................................... 105
第二节 组的权限设置方法 ................................................................................................................... 106
第三节 OpenERP 的预设权限组(Group).............................................................................................. 108
第四节 Domain 条件表达式 ................................................................................................................. 109
一、 Domain 条件表达式的应用场合.......................................................................................... 109
二、 Domain 条件表达式写法.......................................................................................................111
第十章 OpenERP 翻译方法 .......................................................................................................................... 112
第一节 资源术语翻译 ........................................................................................................................... 112
第二节 通用术语翻译 ........................................................................................................................... 114
第三节 批量翻译或纠正翻译 ............................................................................................................... 115
第四节 OpenERP 国际化原理浅析 ...................................................................................................... 118
第十一章 OpenERP 模块开发 ...................................................................................................................... 120
第一节 OpenERP 模块结构 .................................................................................................................. 120
一、 安装示例代码 ....................................................................................................................... 120
二、 请假模块结构 ....................................................................................................................... 121
第二节 理解 OpenERP 的代码 ............................................................................................................. 122
一、 对象定义 ............................................................................................................................... 122
二、 视图、动作及菜单定义 ....................................................................................................... 124
三、 工作流和报表定义 ............................................................................................................... 125
四、 权限定义 ............................................................................................................................... 125
第三节 服务端动作(Server Action)....................................................................................................... 125
一、 配置 Server Action ................................................................................................................ 125
二、 配置 OpenERP Mail.............................................................................................................. 126
三、 测试通知 Mail....................................................................................................................... 127
四、 更多 Server Action ................................................................................................................ 128
第十二章 超强的继承功能 ........................................................................................................................... 130
第十三章 基于 XML-RPC 的集成................................................................................................................ 130
OpenERP 应用和开发基础
1
第一章 OpenERP 介绍
OpenERP 是一款基于 Python 语言的开源 ERP 和 CRM 软件。它和 Java 软件一样,是跨平台的,而且,
同时支持 C/S 和 B/S 两种架构形式。在官方标准发布版中有 100 多个模块。涵盖财务管理、采购/销售管理、
库存管理、MRP、CRM、人力资源管理、销售点管理、项目管理等众多功能。在 OpenERP 的开源社区上,
目前有超过 500 个由开源社区贡献的模块,涵盖各个行业的管理解决方案。
本章将先介绍 OpenERP 的历史,其次介绍 OpenERP 的功能概要,而后介绍 OpenERP 的架构和开发
概要,最后介绍 OpenERP 和别的 ERP 软件的比较。
第一节 OpenERP 的历史
OpenERP 由比利时的“比尔x盖茨”Fabien Pinckaers 所创建。Fabien Pinckaers 现年 30 岁,他 13 岁开
始学习编程序,2002 年当他还在 Louvain-la-Neuve 大学土木工程系学习时,创办了 Tiny Sprl 公司。Tiny Sprl
公司总部位于有 150 年历史的比利时城市 Louvain 的近郊,那里有比利时最大的计算机学院,法语鲁文大
学(Catholic)计算机系。下图为 Fabien Pinckaers 的近照,旁边的白色房子即为 Tiny SPRL 公司的总部。
Tiny Sprl 公司的第一个产品就是开发 Tiny ERP,即后来的 OpenERP。OpenERP 最初由 Fabien Pinckaers
一个人开发,现在,截至 2009 年底,Tiny Sprl 公司有 75 名专职开发人员。官方发布的标准功能模块超过
100 个,由开源社区 Open Object Community 提供的功能模块超过 500 个。OpenERP 的功能涵盖财务管理、
采购/销售管理、库存管理、MRP、CRM、人力资源管理、销售点管理、项目管理等众多方面。OpenERP
已经不仅仅是一个 ERP 软件,而是涵盖各个行业的、非常容易定制化的全面管理解决方案。OpenERP 的
核心和所有模块都是开放源代码的,你可以自由使用、修改和发布,只要你也保证开源即可。
现在,截至 2009 年底,OpenERP 的用户群遍及 45 个国家,每天的下载量超过 1000 份。始于 2008
年的金融危机,各公司都开始考虑低成本的管理软件,给 Tiny SPRL 公司极大机遇。2009 年上半年开始,
Tiny SPRL 公司的每个月的盈利以 10%以上的速度增长。2009 年上半年,公司盈利 60 万欧元。2009 年底,
公司获得 300 万欧元风投融资,结合自身资金,公司预计 2010 年投入 400 万欧元扩张规模。商业杂志趋
势(Trends)预估,Tiny Sprl 公司的获利将在 2011 年攀至 1050 万欧元。
中国 OpenERP 社区,从 2007 年开始介绍 OpenERP 到中国,主要论坛在这里:http://www.shine-it.net/
。
目前中国 OpenERP 社区已经完成了 OpenERP 主要模块的中文翻译工作,完成了报表的汉化,翻译了大部
分的用户手册。工作成果参看这里,HornERP 开源项目:http://code.google.com/p/hornerp/
。