🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
![](https://box.kancloud.cn/d50f345e655ccfd2e515664ffa7572d9_369x164.png) OdooERP应用与开发案例教程 (试读版) 开源智造咨询有限公司 **著** 开源助力·智造未来 ![](https://box.kancloud.cn/d17433bcb8992c88989b26b7ba0b991f_709x564.gif) 2019 · 开源智造咨询有限公司出版 ![](https://box.kancloud.cn/cb1781f8792a107cf6dbee9b3bf62505_278x124.png) 版权声明 © 2019 版权所有 开源智造咨询有限公司 本书是由开源智造咨询有限公司专家团队合力原创编著书籍。开源智造咨询有 限公司保留一切权利。未经开源智造咨询有限公司允许下不得改变其中任何 文字内容,不得已以任何形式(包括各种格式的文档)复制和转载及翻印本书。 未经开源智造咨询有限公司授权的任何转载、复制、赢利行为 则是侵犯版权的行为。开源智造咨询有限公司将保留一切法律追责及权益保护。 本 书 目 录 <a class="calibre6">1 Odoo:企业信息化免费金矿 7</a> <a class="calibre6">1.1 Odoo概述 7</a> <a class="calibre6">1.1.1 Odoo是什么 7</a> <a class="calibre6">1.1.2 Fabien Pinckaers小传 8</a> <a class="calibre6">1.1.3 Odoo值多少钱 10</a> <a class="calibre6">1.1.4 Odoo企业应用简介 12</a> <a class="calibre6">1.1.5 社区版和企业版 15</a> <a class="calibre6">1.1.6 第三方应用市场 17</a> <a class="calibre6">1.2 PostgreSQL概述 18</a> <a class="calibre6">1.2.1 PostgreSQL历史 18</a> <a class="calibre6">1.2.2 PostgreSQL特性 19</a> <a class="calibre6">1.2.3 PostgreSQL用户 20</a> <a class="calibre6">1.3 Odoo用户案例 23</a> <a class="calibre6">1.3.1 Odoo用户概要 23</a> <a class="calibre6">1.3.2 法国邮政(La Poste)案例 24</a> <a class="calibre6">1.3.3 法国达能案例 25</a> <a class="calibre6">1.3.4 丰田案例 26</a> <a class="calibre6">1.4 Odoo助中国企业创新 32</a> <a class="calibre6">1.4.1 企业信息化概要 32</a> <a class="calibre6">1.4.2 小型企业 34</a> <a class="calibre6">1.4.2.1 小企业如何信息化 34</a> <a class="calibre6">1.4.2.2 小企业Odoo案例 35</a> <a class="calibre6">1.4.3 中型企业 36</a> <a class="calibre6">1.4.3.1 中型企业如何信息化 36</a> <a class="calibre6">1.4.3.2 中型企业Odoo案例 37</a> <a class="calibre6">1.4.4 大型企业 39</a> <a class="calibre6">1.4.5 Odoo部署方式 40</a> <a class="calibre6">2 进销存入门案例 42</a> <a class="calibre6">2.1 案例背景 42</a> <a class="calibre6">2.1.1 三喜贸易业务概况 42</a> <a class="calibre6">2.1.2 三喜贸易ERP系统上线工作规划 42</a> <a class="calibre6">2.2 基础数据初始化 43</a> <a class="calibre6">2.2.1 采购和销售 43</a> <a class="calibre6">2.2.2 产品及库存 45</a> <a class="calibre6">2.2.3 会计 47</a> <a class="calibre6">2.3 基础业务操作 50</a> <a class="calibre6">2.3.1 采购 50</a> <a class="calibre6">2.3.2 销售 53</a> <a class="calibre6">2.3.3 业务报表 57</a> <a class="calibre6">2.3.4 出纳 58</a> <a class="calibre6">2.3.5 会计 60</a> <a class="calibre6">2.3.6 财务报表 63</a> <a class="calibre6">2.4 更多高级功能 66</a> <a class="calibre6">2.4.1 异常情况处理 67</a> <a class="calibre6">2.4.2 复杂SKU管理 68</a> <a class="calibre6">2.4.3 价格管理 68</a> <a class="calibre6">2.4.4 多仓多库管理 69</a> <a class="calibre6">2.4.5 仓库条码管理 70</a> <a class="calibre6">2.4.6 销售到款认领 71</a> <a class="calibre6">2.4.7 多公司关联交易 71</a> <a class="calibre6">3 Odoo平台通用功能 72</a> <a class="calibre6">3.1 应用安装 72</a> <a class="calibre6">3.2 视图 72</a> <a class="calibre6">3.3 搜索 74</a> <a class="calibre6">3.4 修改密码 75</a> <a class="calibre6">3.5 开发者模式 76</a> <a class="calibre6">3.6 界面翻译 79</a> <a class="calibre6">3.7 分析报表 81</a> <a class="calibre6">3.8 数据批量导入导出 82</a> <a class="calibre6">3.9 权限控制 83</a> <a class="calibre6">4 开发入门案例 85</a> <a class="calibre6">4.1 案例背景 85</a> <a class="calibre6">4.1.1 文赢国际贸易业务需求 85</a> <a class="calibre6">4.1.2 文赢需求实现方案 86</a> <a class="calibre6">4.2 开发方法 88</a> <a class="calibre6">4.2.1 增加港口表单 88</a> <a class="calibre6">4.2.2 SO增加港口字段 91</a> <a class="calibre6">4.2.3 服务器动作更新SO单号 95</a> <a class="calibre6">4.2.4 SO新建时候自动修改单号 98</a> <a class="calibre6">4.2.5 修改SO打印格式 99</a> [5 仓库条码操作案例 102](#id_Toc7872686) [5.1 案例背景 102](#id_Toc7872687) [5.1.1 极安网络业务需求 102](#id_Toc7872688) [5.1.2 极安网络WMS上线工作规划 103](#id_Toc7872689) [5.2 基础数据准备 104](#id_Toc7872690) [5.2.1 安装条码模块 104](#id_Toc7872691) <a class="calibre6">5.2.2 货位及商品条码 105</a> <a class="calibre6">5.2.3 准备测试条码 107</a> <a class="calibre6">5.3 基本业务流程测试 109</a> <a class="calibre6">5.3.1 入库作业流程 109</a> <a class="calibre6">5.3.2 出库作业流程 116</a> [6 生产加工入门案例 119](#id_Toc7872697) [6.1 案例背景 119](#id_Toc7872698) [6.1.1 西工机械业务需求 119](#id_Toc7872699) [6.1.2 西工机械ERP上线工作规划 121](#id_Toc7872700) [6.2 生产基础数据初始化 122](#id_Toc7872701) [6.2.1 模块安装及开关设置 122](#id_Toc7872702) <a class="calibre6">6.2.2 车间及生产路线 124</a> <a class="calibre6">6.2.3 供应商及产品 126</a> <a class="calibre6">6.2.4 物料清单及安全库存 129</a> <a class="calibre6">6.3 基本生产业务测试 131</a> <a class="calibre6">6.3.1 安全库存及采购补货 131</a> <a class="calibre6">6.3.2 焊接生产单 132</a> <a class="calibre6">6.3.3 部件生产单 134</a> <a class="calibre6">6.3.4 零件采购及成品生产单 136</a> [6.4 更多高级功能 138](#id_Toc7872711) [6.4.1 外协加工 138](#id_Toc7872712) [6.4.2 BoM版本及工程变更管理 138](#id_Toc7872713) [6.4.3 BoM替代料 138](#id_Toc7872714) [6.4.4 生产质检 139](#id_Toc7872715) [6.4.5 生产设备连接(智能制造) 140](#id_Toc7872716) [6.4.6 生产成本核算 141](#id_Toc7872717) 本书为试读版,上述目录为完整版目录,请点击链接免费获取完整版: <http://www.oscg.cn/-9-1> ,或致电开源智造专家支持电话: 400-900-4680 1 **Odoo:企业信息化免费金矿** 1.1 **Odoo概述** 1.1.1 **Odoo是什么** Odoo,以前叫OpenERP,是比利时Odoo S.A.公司开发的一个企业应用软件套件,开源套件包括一个企业应用快速开发平台,以及几千个Odoo及第三方开发的企业应用模块。Odoo适用于各种规模的企业应用。 Odoo功能模块涵盖了各方面的企业应用:CRM、订单处理(销售订单和采购订单)、电子商务、MRP、财务、库存、门店零售、项目管理等等。 Odoo是完全的模块化结构,初始安装时候,系统没有加载任何应用模块,而后可以根据需要安装对应的功能模块。 Odoo是世界上安装数量最多,用户数量最多的企业ERP系统。Odoo全球有800多个合作伙伴,为100多个国家,200多万使用者提供技术服务。中国有30多家合作公司,为几千家应用Odoo的企业提供技术服务。 Odoo在世界上获得过很多大奖,包括Info World杂志的“Bossies (Best of Open Source Software awards) 世界最佳开源软件大奖”,“Deloitte Technology Fast50 Benelux”德勤快公司50佳等。 Odoo登录后,首页画面(企业版): ![](https://box.kancloud.cn/6e19000e3c15fc57957854d89d2f60bc_1285x833.jpeg) 手机登录后的首页显示画面: ![](https://box.kancloud.cn/ebef7f49ae8178309b518fdcfcbd9b9e_571x1033.png) 1.1.2 **![](https://box.kancloud.cn/648b1df65f001819e86e72e925805594_465x699.jpeg)Fabien Pinckaers小传** Odoo的创始人是比利时的怪才Fabien Pinckaers。Fabien 13岁时就对商业和技术产生了浓厚的兴趣,他开发并销售了他的第一份商用管理软件:"Les Taxix Verts"。 在法国Louvain-la-Neuve大学学习计算机期间,Fabien完成了很多项目,其中包括 Auction-in-Europe, Openstuff, TinyERP (后来名为OpenERP,后来又改为 Odoo)。 Auction-in-Europe 仅仅用了两年就成为比利时艺术市场的领导者,每月销售15000份艺术作品,高于同期eBay的艺术作品销量。 Openstuff 很快成为当时欧洲Linux商店的领导者,Openstuff网站销售T恤、海报等商品。Fabien运营这个网站到2007年。 Fabien最大的成就是始于2002年3月的TinyERP,TinyERP后来成长为OpenERP。OpenERP发展到8.0,超越ERP软件,增加了很多企业互联网功能后,又更名为Odoo。2002年,Fabien成立了自己的TinyERP公司。 年少轻狂的Fabien创办TinyERP时候,树立了一个梦想,他要用开源软件改变商业世界。Fabien立志用3年时间淘汰那个770亿美元市值的巨无霸公司SAP。为了梦想成真,Fabien每周工作7天,每天工作13个小时。 但是现实与梦想有着遥远的距离,三年过去了,2005年,SAP没打败,Fabien却被达能的总裁们质问:“为什么我们要付几百万来买你这个小(Tiny)软件?”怪才Fabien第一次感觉,面对商业世界,自己是多么渺小。那一年,Fabien将TinyERP更名为OpenERP。 然而,梦想依旧,Fabien仍然没有任何节假日地工作,朋友疏远了,女朋友跑了。Fabien带着公司开发了数以百计的OpenERP模块,开源社区开始成长起来。2010年,Fabien 31岁时候,公司终于发展为一家在三大洲拥有100多名员工的高技术企业。Fabien终于不再需要为月末员工的工资发愁了(Fabien曾为此挣扎努力了4年)。 Fabien这个100多名员工的公司叫卖着OpenERP服务,解决了温饱问题。但是,Fabien意识到,直接服务于终端客户分散了打造精品的资源和精力,OpenERP这个产品强大却又漏洞百出! Fabien要转变商业模式!Fabien希望将服务型公司转变为软件发布公司,投入更多的精力和资源于产品研发。Fabien改变了商业模式:不再为客户直接提供服务,转而建设一个强大的合作伙伴体系和提供维护服务支持。 这个模式需要很多的钱,2010年Fabien设法筹募了300万欧元的资金。投资人包括欧洲最大的风险资本Sofinnova Partners,法国唯一在10年中达到10亿欧元市值的lliad公司的老板Xavier。后来比利时政府也给了无偿资金资助。又在2014年的时候,得到XAnge (法国),SRIW (比利时), Sofinnova (法国) 三家机构联合投资1000万美元。 转变商业模式,有了资金的资助,Fabien聚焦于产品研发,OpenERP的功能迅速增加和改善。2014年,OpenERP发布8.0的时候,产品已经不再局限于企业内部管理,而是增加了很多互联网功能,向着打通企业内部、外部,上游、下游的全网级产品方向突进。那一年,Fabien意识到,仅仅做一个ERP产品是不可能打败比OpenERP大了30岁的对手SAP,因而转型向企业互联网应用方向突破,OpenERP又改名为Odoo。 为什么叫Odoo,据说Fabien调查了一下,伟大的互联网公司的名字中都有很多O,如Yahoo,Google,Facebook,因此取了三个O的名字Odoo,希望这个名字能够带领Odoo成为一个新的伟大互联网公司! 随后,Odoo每年发布一个新版本,2015年发布9.0,2016年发布10.0,2017年发布11.0 。现在Odoo的合作伙伴遍布100多个国家,拥有300多万使用者。Fabien的目标是:提供易用的、经济的、企业全套商务解决方案,帮助企业集中精力发展业务,而不需要在管理上浪费太多精力! 2009年6月的Trend Tendances杂志将Fabien称为 "比利时的新比尔·盖茨"。Fabien创建的Odoo获得了很多商业的、技术的以及创新领域的奖项,包括: "Insead Innogator Price of the Year 2011" "Trends Gazelle BW 2013" "Deloitte Fast 50 2012" "Bossie Award 2012" 1.1.3 **Odoo值多少钱** 如果自己企业搭建一个类似Odoo那样的企业应用平台,并基于这个平台开发各种应用系统,大概要花多少钱呢? 软件投入的评估,最简单的评估方法是COCOMO模型,COCOMO基于软件的代码行数估算投入成本。 Odoo最早在2005年以开源软件的形式发布。2005年到现在,发展了十几年,经过了10多个版本的迭代,几千名开发人员共享了程序代码。除了Odoo官方发布的版本,还有很多其他人和组织开发了一万多个功能模块。这些组织中最著名的是Odoo社区联盟(Odoo Community Association,OCA)。 Odoo的代码约73万行,大约相当于197人年(一个软件技术人员一年的工作量),1970万美元的投入。 OCA的代码约130万行,大约相当于281人年,1684万(OCA年薪低一点)美元投入。 下面是基于网站[www.openhub.net](http://www.openhub.net) 的详细评估数据。网站[www.openhub.net](http://www.openhub.net) 专门评估各种开源软件的代码行数、活跃程度、软件价值。下图是来自该网站的Odoo代码行数统计。 ![](https://box.kancloud.cn/db88fec6c2a42524866186fea9b383a5_1425x253.png) 总的代码行数是 733,676,代码行数最多的是JavaScript,271,352行,其次是XML,254,326行,第三位的是Python,168,060行。 基于COCOMO模型的简单估算,Odoo官方发布的版本,73万行代码相当于197人年(一个软件技术人员一年的工作量)的投入。按欧洲IT技术人员年薪10万美元估算,大约相当于1973万美元的研发 投入。 ![](https://box.kancloud.cn/11448dca06579ad02efff5e75363ab97_668x398.png) 以OCA为代表的第三方开发的功能模块代码行数如下: ![](https://box.kancloud.cn/89656ee35b3cd51e1fd11199195959a5_1423x287.png) 总的代码行数大约130万行,相当于281人年(一个软件技术人员一年的工作量)的投入。OCA开发的代码技术含量低一些,按年薪6万美元估算,大约相当于1684万美元的研发 投入。 ![](https://box.kancloud.cn/904996df08cd89b31eb82a859a1dcd12_670x401.png) 1.1.4 **Odoo企业应用简介** Odoo开发了很多企业应用模块,涵盖企业网站、销售、财务、运营、生产制造、HR、市场营销等方面应用。 ![](https://box.kancloud.cn/61bbf7c9a8f5a12cd9025fb152f523f2_1039x266.png) - **网站生成器**:可视化的企业网页编辑器,提供了很多网页模板,可以拖拉制作企业网站; - **电子商务**:在企业网站上开设网上商店,典型应用场景是,让经销商在企业网站上下单订货; - **博文**:企业网站上搭建新闻报道频道,用于发布企业新闻 - **论坛**:在企业网站上搭建论坛,用于企业内部或企业合作伙伴发帖提问或讨论 - **幻灯片**:在企业网站上发布宣传文档(PDF)、宣传海报(PNG等图档格式)、视频等各种资料。资料文档可以设定企业内部、合作伙伴、公众公开等不同权限。 - **在线客服**:企业网站上增加在线客服功能,即浏览网站的人可以留言,后台客服人员可以在线回复。 - **Appointments**:会议预约,管理客户拜访或网络会议的时间及参与人员,系统会自动邮件提醒相关人员安排参会。 ![](https://box.kancloud.cn/9e60de23355372013f96f848298b879a_1155x175.png) - **CRM客户关系**:客户关系管理模块,管理业务员,销售线索、客户商机、销售漏斗; - **POS**:门店零售收银管理 - **销售**:销售订单管理,包括订单审核、订单发货、订单开票 - **订阅**:服务订购管理,例如按年或按月交费的维护服务管理,管理内容包括:哪个客户,什么时候到期,购买了什么服务。 ![](https://box.kancloud.cn/a2aab2c722d271c4358f347a75828074_875x170.png) - **会计**:财务总账管理,包括会计账簿凭证、会计凭证、会计报表 - **发票**:销售开票、采购收票,应收账款、应付账款管理 - **开支**:费用报销管理,包括在线提交报销单、报销审批、报销付款、报销做账 ![](https://box.kancloud.cn/bfc1eea7a9e37be4b5defba42bb6f137_1063x268.png) - **库存**:仓库管理,包括多仓库多库位规划,入库、出库、调拨、盘点等仓库操作,库存查询,物流追踪等功能; - **工时单**:Timesheet,类似于员工日报。技术服务类企业,通过工时单核算服务成本。 - **项目**:项目管理,包括项目、任务、子任务跟踪管理 - **采购**:采购订单管理,包括订单审核,采购入库,采购开票 - **帮助台**:服务工单管理,包括工单分配、工单状态、工单服务评价管理。 ![](https://box.kancloud.cn/bb05e676c9e8e982390f91a259949e70_1083x163.png) - **MRP**:物料清单BoM,缺料计算,MRP运算,生产订单管理 - **PLM**:产品生命周期管理,主要包括工程变更单ECO管理,BoM版本管理, - **设备**:生产设备维修保养管理 - **质量**:产品质量管理,可以在入库、出库等物流操作节点定义质检点,质检点上,系统会强制要求质检人员确认。 ![](https://box.kancloud.cn/c75a0a63456b2c2d70497032c06182a2_1054x269.png) - **招聘**:人员岗位、人员招聘流程管理 - **员工**:员工档案、劳动合同管理 - **车队**:公司车辆租借、油卡管理 - **休假**:员工年假、请休假管理 - **评价**:员工绩效考核管理 ![](https://box.kancloud.cn/54c0c08357827cfd2c04d380bcde7139_1061x167.png) - **Marketing Automation**:自动化市场营销,例如,可以设定自动化规则,订单额累计满100万的经销商升级为银牌,或者设定规则,自动筛选本月生日的顾客,发送生日促销邮件。 - **电邮营销**:设定邮件模板,群发邮件 - **活动**:市场活动管理,包括活动申请、审核、活动在线报名、活动样品管理。 - **调研**:市场在线调查,可以自定义调查表单,在线提交调查表 ![](https://box.kancloud.cn/abb23bc6e79bc82c5f68734e7e73899f_515x162.png) - **讨论**:注册用户之间即时聊天,例如,围绕报价单的在线讨论,讨论过程系统会自动关联到该报价单 - **电子签呈**:在线手写签名的小功能 1.1.5 **社区版和企业版** - 社区版和企业版都由比利时的Odoo公司(<https://www.odoo.com/> )出品 - 社区版完全开源免费,12.0免安装版(下载解压即可测试,含源代码)下载链接:<http://cdn.oscg.cn/portal/article/index/id/94.html> - 企业版在社区版的基础上,增加了几十个应用模块。12.0版免费在线试用:<http://demo.saas.oscg.cn/> - Odoo官方对企业版提供Bug修正,版本升级等技术服务 - 企业版按模块和人员收费,每用户每年收费1500元左右(根据模块数多寡,人数多寡,费用上下浮动)。企业版公开报价参考: [https://www.odoo.com/pricing#pl=68&num\_users=1&hosting=odoo\_sh&implementation\_service=self&pack=25&force\_country=CN&integrating\_partner\_id=0&price\_by=yearly](https://www.odoo.com/pricing) ![](https://box.kancloud.cn/9518507b99d635f1c82d8f62a6872c74_877x602.png) 社区版标准应用 32个,内置模块289个,企业版标准应用45个,内置模块 491个 社区版应用及模块: ![](https://box.kancloud.cn/37544fc53e1813441f8ebc9a8d9e2f51_1345x627.png) ![](https://box.kancloud.cn/dde126beb842f15f5b6414b9558033fc_1124x598.png) 企业版应用及模块: ![](https://box.kancloud.cn/f1a29829ea781a4678c333ab0719ae49_1349x580.png) ![](https://box.kancloud.cn/6d17165e33211bb3b8c57d9b402ef3f9_553x268.png) 1.1.6 **第三方应用市场** Odoo作为开源软件,世界范围形成了一个活跃的开源社区。开源社区技术人员5000多名,热心爱好者10多万名,技术服务商有1000多家。应用企业遍布100多个国家,300多万使用用户。 Odoo官方、开源社区、技术服务商、Odoo用户等发展了一个世界最大的企业应用市场:<https://www.odoo.com/apps/> 。应用市场模块数量近2万个,功能范围覆盖各个行业,各个业务领域。应用市场每月新增模块数量300多个,应用范围持续快速增长。 ![](https://box.kancloud.cn/c5927736589292ce335be5ca9715ebe0_1232x627.png) 1.2 **PostgreSQL概述** PostgreSQL是Odoo支持的数据库。PostgreSQL是起源于大学的一个历史很长的开源数据库系统。包括美国航天局NASA、德国证券交易中心、中国的平安、腾讯的微信支付、阿里巴巴的阿里云都在用PostgreSQL数据库。 1.2.1 **PostgreSQL历史** 上世纪70年代Edgar F. Codd博士研究关系型数据库理论时候,实际开发了一个数据库产品Ingres。Ingres名字是“Interactive Graphics Retrieval System”的缩写。后来的Sybase、微软的SQL Server也是基于这个Ingres数据库开发的产品。 1985年,加利福尼亚大学伯克利分校的Michael Stonebraker博士等人继承数据库Ingres,发布了Postgres数据库,这就是PostgreSQL的起源。1989年,Postgres 1.0在研究机构小范围内发布。1994年,Postgres发布了4.2版,随后,Postgres作为大学数据库研究项目终止了。 当时的Postgres数据库的查询语言不是SQL,是Postgres独有的。当时参与人员的感觉是“Postgres的引擎非常好,但没有方向盘,就像是用操作杆驾驶的汽车一样非常难操作”,也就是说Postgres的查询语言太难用了。因此,伯克利分校的研究生们用SQL替换了Postgres的查询语言,发布了Postgres95 。 虽然替换成SQL了,Postgres95(相当于Postgres版本5.0)在性能和可靠性方便还有待改善,另外开发人员太少也是个问题。因此,1996年,参考FreeBSD的做法,Postgres开发者分成了Core和Committer两种角色推进。 1995年,脱离大学研究项目,发布了Postgres95,而后,Postgres社区发起了命名的讨论,是用Postgres95,Postgres96呢,还是别的名字?最后决定,因为是在Postgres的基础上增加了SQL,因而用PostgreSQL的名字。版本也改成了5.0,6.0的版本号。 1996年,改名为PostgreSQL后一个月,1997年1月,发布了PostgreSQL 6.0。6.5版则增加了MVCC(MultiVersion Concurrency Control),性能大幅提高,同时增加了日文、中文等多字节字符的支持。 2000年前后出现了几个PostgreSQL服务的企业。最初诞生的是“PostgreSQL Inc”,该公司虽然在1997年设立了社区网站,但商业上却没有成功,慢慢地消失了。2000年“Great Bridge Inc”公司诞生了,该公司目标是做“数据库领域的红帽子”,同年入选了“25 Coolest Global Companies”,但也没多久就消失了。2004年诞生了EnterpriseDB公司,该公司一直持续到现在。该公司依托PostgreSQL开发者一起,面向企业提供PostgreSQL技术支持服务。 PostgreSQL的分支很多,基于PostgreSQL的衍生品也很多。SRA OSS的“PowerGres”,“富士通的Enterprise PostgreSQL”广为人知。其他的如数据仓库产品“Netezza”(被IBM收购),并行处理产品“Greenplum”,亚马逊Web Service之一的数据库服务“Redshift”,集群数据库“StormDB”,流数据库“TelegraphCQ”及其商业版“Truviso”(被思科收购),国内的阿里云PostgreSQL数据库服务等,都是基于PostgreSQL开发的。 1.2.2 **PostgreSQL特性** PostgreSQL是一个功能强大的开源数据库系统。经过长达20年以上的积极开发和不断改进,PostgreSQL已在可靠性、稳定性、数据一致性等获得了业内极高的声誉。目前PostgreSQL可以运行在所有主流操作系统上,包括Linux、Unix(AIX、BSD、HP-UX、SGI IRIX、Mac OS X、Solaris和Tru64)和Windows。PostgreSQL是完全的事务安全性数据库,完整地支持外键、联合、视图、触发器和存储过程(并支持多种语言开发存储过程)。它支持了大多数的SQL:2008标准的数据类型,包括整型、数值值、布尔型、字节型、字符型、日期型、时间间隔型和时间型,它也支持存储二进制的大对像,包括图片、声音和视频。PostgreSQL对很多高级开发语言有原生的编程接口,如C/C++、Java、.Net、Perl、Python、Ruby、Tcl 和ODBC以及其他语言等,也包含各种文档。 作为一种企业级数据库,PostgreSQL以它所具有的各种高级功能而自豪,像多版本并发控制(MVCC)、按时间点恢复(PITR)、表空间、异步复制、嵌套事务、在线热备、复杂查询的规划和优化以及为容错而进行的预写日志等。它支持国际字符集、多字节编码并支持使用当地语言进行排序、大小写处理和格式化等操作。它也在所能管理的大数据量和所允许的大用户量并发访问时间具有完全的高伸缩性。目前已有很多PostgreSQL的系统在实际生产环境下管理着超过4TB的数据。一些PostgreSQL系统的极限值如下表所列: ![](https://box.kancloud.cn/d864c4ad8bd3cd86d1f3c5f3c700318b_287x296.png)极限值: 最大单个数据库大小 不限 最大数据单表大小 32 TB 单条记录最大 1.6 TB 单字段最大允许 1 GB 单表允许最大记录数 不限 单表最大字段数 250 - 1600 (取决于字段类型) 单表最大索引数 不限 由于PostgreSQL的优异性能,它已赢得最终用户和业内的多次大奖,包括Linux新媒体(Linux New Media)的最佳数据库奖和5次Linux期刊编辑选出的最佳数据库奖。 1.2.3 **PostgreSQL用户** PostgreSQL的知名用户包括Skype、NTT、Salesforce的Heroku云数据库平台、Etsy等大型企业。PostgreSQL在日本数据库市场有超过60%的市场占有率,大量的制造业、游戏行业、企业ERP系统都采用了PostgreSQL。 2010年以来,随着中国互联网的迅速崛起, PostgreSQL在国内迅速发展,受到越来越多的企业尤其是互联网企业重视。据公开报导,腾讯、阿里、中国平安、苏宁、去哪儿网、斯凯网络等企业都在大规模应用PostgreSQL。尤其是腾讯,基于PostgreSQL架构了TDW(Tencent Distributed Warehouse腾讯分布式数据仓库)平台,存储腾讯海量核心业务数据。 TDW(Tencent Distributed Warehouse):腾讯分布式数据仓库,是腾讯公司海量数据处理平台的核心部件,承载着腾讯公司各业务群产品数据(如互联网增值、SNS、网游、电商等)的储存和处理工作。目前,TDW支持百PB级数据的离线存储和计算,为业务提供海量、高效、稳定的大数据平台支持和决策支持。 ![](https://box.kancloud.cn/359e2a6e7811f9f57d55374447d334c4_1059x537.png) 据2017年PostgreSQL技术大会腾讯大数据工程师的发言,腾讯TDW数据仓库集群超过100台服务器,超过100T(1T = 1000G)的数据量。 苏宁Citus系统案例。苏宁Citus是一个大数据分析系统,业务场景大致是,每5分钟从多个业务系统抽取业务数据到Citus数据库,每次要更新Citus中10张明细表,大约更新30万条数据记录。Citus中保留最近若干天的数据,数据总量大约3000万条记录。Citus数据库每5分钟分析抽取一次数据,形成30多张不同用途的业务报表。 Citus原来是基于IBM的DB2数据库构建的,如下图所示,DB2已经不堪重负,尤其是大促时候。而且,预计一年后数据量将增长到10倍,也就是每5分钟要更新300万条数据,Citus数据量将达到3亿条数据记录。 ![](https://box.kancloud.cn/cb5e9b93268879a551214b71549156db_1341x747.png) 苏宁Citus技术团队调查研究之后,决定用PostgreSQL替换IBM DB2数据库。替换后的压力测试表明,系统实际性能表现超过设计目标50%以上。上线运行半年以来,效果相当稳定。苏宁的案例表明,PostgreSQL性能表现远优于IBM的DB2! ![](https://box.kancloud.cn/5186f7ba400bacc5c218a9cc770a9ed6_1332x746.png) 1.3 **Odoo用户案例** 1.3.1 **Odoo用户概要** 关于Odoo全球的用户,我们来看一些数据: - Odoo目前全球有300万使用者 - Odoo系统上每天新创建的数据库超过1000个 - Odoo和Word、Excel、PowerPoint一样,是法国学士学位的必修课程 - Odoo在世界各地有800多个官方认证的合作伙伴,其中中国有20多个 - Odoo的翻译语言包覆盖100多个国家和地区 - Odoo开源社区有1800多名活跃的技术开发人员 - Odoo的应用商店有一万多个App模块,还在以每个月300多个的速度新增 Odoo全球知名的用户,包括法国邮政,法国达能,欧洲丰田,中国联想(欧洲),中兴通讯(德国)等大公司。 ![](https://box.kancloud.cn/cbf593ee7f99e11be5c690aff1727d73_1180x896.png) 1.3.2 **法国邮政(La Poste)案例** ![](https://box.kancloud.cn/cbc42f457f1319b24dc36699e6074fd8_844x520.png) La Poste是法国当地最大的邮政业务服务商,有30万名员工,1.7万个营业网点。业务包括邮政储蓄,邮件收发,快递,零售卖场。La Poste也是欧洲第二大的邮政公司。 ![](https://box.kancloud.cn/594f33c724c7d585ebed27328268efc6_275x232.png) La Poste 的四大业务板块 • 邮件收发: Le Courrier • 货运快递:Le Colis-Express • 邮政储蓄:La Banque Postale • 零售卖场:La Poste Retail Outlets 【业务需求】 替换集团内部员工帮助台(helpdesk),包括从微软的MS Access数据迁移到Odoo系统 【解决方案】 基于Odoo标准的客户服务工单(CRM Helpdesk)模块定制一个内部员工帮助台系统。Odoo标准的服务工单模块包括工单处理升级机制、工作流管理工具等。 定制化模块: 1\) 扩展Odoo标准对象表单,满足法国邮政众多实体和员工的组织结构; 2\) 优化视图改善用户界面,优化数据库索引提高响应速度; 3\) 扩展标准的CRM模块,定制专用的视图和工单升级处理机制; 4\) 定制Access到Odoo的复杂数据升级工具 ![](https://box.kancloud.cn/bacc8af6affb52fa1ccdb4348e5e9b6a_948x335.png) 1.3.3 **法国达能案例** 达能的案例首先发表在2011年9月份的法国“商业技术”杂志,作者是达能集团的IT主管。原文是法文的,本文从原文的英文版摘编中翻译而来。 ![](https://box.kancloud.cn/4a0a2b0fec685445ed5e8584baca2f14_100x49.png)SAP作为大型集团通用和完整的后端业务处理平台是非常合适的,但对于大集团众多的分支机构,他们需要快速实施,灵活扩展,更易使用的系统。为了解决集团大型ERP和集团分支机构需求的矛盾,达能集团选择Odoo作为众多分支机构的业务操作平台。 ![](https://box.kancloud.cn/4e4b4bd6f464d5edc107b94939690e8d_619x523.png)达能是传统的SAP用户,过去10年,达能在SAP上投入了大量预算。但事实证明,SAP不适合小型分支机构的要求。SAP系统,即使非常小的配置修改都是一件非常复杂的事情。达能选择Odoo作为SAP系统的补充方案的优点是:Odoo是一个轻量级的技术平台,其次可以充分利用开源社区的技术资源。 达能首先在哥伦比亚分支机构推行Odoo应用,哥伦比亚采取了开发和实施并行推进的敏捷方法推进,效果非常好。这个敏捷方法得以实施的基础是,Odoo软件修改非常快速,可以做到每周发布新版本;其次,用在线看板做开发管理,看板列出用户需求和完成进度,用户和开发人员组成的项目小组可以在项目Wiki上快速查看项目需求、开发、完成情况等信息。 哥伦比亚的经验证明在一个相对较小的范围,Odoo实施是非常快速和成功的。哥伦比亚的成功,让达能大胆地在澳大利亚推行包括生产制造模块的大范围实施。 达能的IT团队对Odoo的实施过程进行了一些反馈分析。他们指出基于Odoo的敏捷方法的灵活性,对用户接受度有非常积极的影响。事实上,实施过程中,用户需求得到即时反馈和即时培训。 现在达能在定义一些准则,评估哪些地方什么时候可以更多地替换为Odoo系统。他们考虑在所有小型运营实体推进Odoo,再逐步集成到SAP。 1.3.4 **丰田案例** ![](https://box.kancloud.cn/d71fd800b2e4fc13636649efd703abcb_64x64.jpeg) \[ 作者 \] 查理恩 · 路易斯 [![](https://box.kancloud.cn/d75235a5d95d079545f7099ed42539b0_602x254.png)](http://www.toyota-forklifts.fr/)丰田(法国)物流车辆工贸公司,用了短短6个月时间,便成功地导入、实施了Odoo开源ERP系统。之所以能在如此短的时间内创造这一ERP项目实施奇迹,主要得益于丰田(法国)公司,与Odoo的官方合作伙伴—斯麦里开源系统管理咨询有限公司(Smile Open Source Solutions)之间,开展了卓有成效地合作。为深入探究Odoo ERP 系统对管理提升和效率改善所起的促进作用,我们从比利时出发,奔赴丰田(法国)物流车辆工贸公司,现场采访了信息部经理,克莱尔·康泰特(Cyril Cottet)先生。 问:康泰特先生,请首先简要介绍一下贵公司好吗? 答: 好的。 我们丰田(法国) 物流车辆工贸公司,是丰田众多产供销一体化公司中的一员,隶属于丰田物流车辆集团,而该集团的母公司,是位列世界500强的丰田汽车集团。丰田(法国)公司的主营业务分为部分:一部分是在欧洲市场内,制造和销售各种叉车;另一块业务,也是我们最为擅长的,就是制造和销售带有”动平衡调节芯片”的柴、汽油卡车。同时,我们也在日本、中国、美国的工厂,采购一些卡车,然后将这些卡车运到欧洲,进行销售。在有些情况下,我们也会依据客户的一些特殊需要,在我们的法国工厂里,为客人预定的卡车进行改装,满足客户的定制化要求。 问:在咨询公司成功导入Odoo之前,贵公司面临的最大挑战有哪些,Odoo解决方案是如何满足贵公司特殊需求的? 答:你说的一点不错,在引入Odoo之前,我们确实度过了一段地狱般的岁月。但现在,由于 我们拥有了Odoo, 那些让人发疯的难题都已经得到了解决!(大笑) ![](https://box.kancloud.cn/d00d358d979589913e9be1b0dc9a1dd4_662x858.png) 近几年,丰田物流车辆集团,对内部进行了几次较大的组织架构调整。为的是对现有的销售流程进行再造,以便使遍布全欧洲的分销商,能够更好、更快地向欧洲的3个产销中心顺畅下单、并获得良好的物流发货服务。目前,丰田物流车辆公司在欧洲有3个产销中心,1个就设在这儿的法国公司,另外2个分别设在瑞典和意大利。 面对日渐火爆的“卡车大规模个性化定制”这一市场发展趋势,我们专门自行开发了一款服务这一新型业务的软件系统,分别在欧洲的3个中心使用。因为在市场上,客户定制卡车的销量,已占到总销量的40%。但很快麻烦也就来了,问题出在我们意大利的工厂。整个意大利工厂,在表面业务红红火火的背后,出现了严重的问题,就是这家工厂各环节的管理流程与这个系统无法协同,普遍存在“两张皮”现象,例如: 无法顺畅地下单,下了单也无法将信息知会到关联部门;已下的订单,不是工厂没有安排生产,就是采购部没有在国外采购,甚至在国外采购好的卡车,也不能在合同的交货期内组织发运、交货、开票、收款。 虽然问题多多,但时至今日,我们自行开发的这款“卡车大规模个性化定制软件系统”,仍然在使用。面对这一现状,我们曾考虑可否能换掉这个系统,也就是说,探讨“选用一个新系统、来全部撤下旧系统”的可能性。 于是,我们开始在软件市场上进行了寻找、了解、比较,一番“做功课”之后,我们逐渐搞明白了,我们面临的问题是“二选一”,就是:要么是公司自行开发一个新系统,来代替自行开发的老系统;要么就从市场上购买一套新系统,来彻底取代老系统。 我们以前没用过ERP, 也就是说,我们对ERP系统,相当缺乏了解,这需要我们对这一未知领域,要进行了解和探索。由于欧洲物流车辆市场的竞争几近白热化,我们不能进行风险太大的投资。我们只能考虑在短期就能获得回报的投资。经过对ERP供应商接触后,我们发现,市场上已有的几个较大ERP品牌公司的已有产品,无法满足我们的要求。在这种情况下,我们倾向于追求一个尽可能经济实惠的解决方案:要么自己开发一套系统、要么购买一套成本较低的ERP系统。幸运的是,我们最终在市场上发现了Odoo开源ERP系统,它们的产品、价格、服务,与我们的需求高度吻合! ![](https://box.kancloud.cn/145fde19b93def9d5029f09e11b905bf_990x1005.png)了解到OdooERP后,影响我们做出决策的最后一个因素,是ERP实施所化时间的长短。面对公司原有软件不能满足公司发展的紧迫需要,我们欧洲集团的管理层已达成共识,务必要在2015年4月-6月间,成功导入新的ERP系统。当我们回过头来,重新评估前面谈到的两个方案(自己开发、或全部购买)时,我们仍无法确定哪个方案会更好。因为,根据当时已接触到的ERP供应商、咨询公司的有关信息,我们分析,即使在5月底勉强完成系统,仍会存在大量的风险和问题。到最后,一家名为斯麦里的管理咨询有限公司,从众多咨询公司中脱颖而出;这家公司,作为Odoo的官方合作伙伴和经销商,向我们清晰展示了ERP方案,针对我们业务现状,给出了切合实际的整体解决方案,并表示,如果能在2014年9月双方签约,那么在2015年3月底前,由斯麦里(Smile)管理咨询有限公司负责实施,完全有把握将成熟的系统部署到我们公司的“数据中心”上。 这样,经过多方比较和分析,我们最终签约、选定“斯麦里(Smile)管理咨询有限公司”,作为我们实施Odoo ERP的咨询公司。 在2014年9月到次年3月间的6个月里,我们和咨询公司一起,做了大量的系统集成、部署等工作,各项工作快速推进。 Cyril Cottet丰田(法国)公司 IT经理 问:那您能介绍一下最终交付的解决方案吗? 答:哦,是这样的!最后上线的系统,远远超出了销售模块的范围。当然喽,我们现在的订单已全在Odoo ERP销售模块里下了。销售订单下达后,我们接下来要关心的,就是要确保已下单的车辆,能够按期采购到,这样就触发了库存管理模块(WMS)。 之后,进销存模块,便启动了货品的采购流程。采购模块内有2路流程被触发,根据事先设定的订单分发的逻辑安排,一种可能是,我们采购的车辆,会在欧洲本土进行制造,这样的话,进销存模块会把订单导入“Odoo制造”模块,由它来驱动工厂制造、装配;另一种情况是,有些车辆,需要向日本、美国、中国的工厂进行跨国采购,这样的话,订单就自动被导入“Odoo 采购”模块了。 后来,我们还追加购买了“Odoo 财务”模块,因为我们需要在Odoo系统里,直接开出发票,以便向客户结算货款。 ![](https://box.kancloud.cn/409638743f7cb2f378084b45326302d3_1876x933.png) ![](https://box.kancloud.cn/e041a6980fe0265082646b94329db1e8_833x539.png)为了将原有那款软件充分利用起来,我们自行开发,将原有软件集成到Odoo ERP系统中。要知道,我们以前虽然自行开发了不少程序,但在这之前,我们对Odoo却一无所知。这是一个能激发潜能、而且引人入胜的工作。至今天,我们已经拥有了一套集成的、可自动运行的系统解决方案:自从导入Odoo ERP系统后,从下单到发货、开票收款的整个流程中,公司的财务系统、装运发货系统、工厂制造系统(法国的、或是日本的)已全部实现协同,这真正实现了业务、财务的一体化,企业管理水平和效益得到了极大提升。完成这么复杂的ERP系统导入、集成工作,只花费了短短几个月,咨询公司的工作效率,实在是太高了!![](https://box.kancloud.cn/8d21e0c93f615aa631d4c6d6a02ef37d_1815x903.png) 问:那请问,Odoo 开源ERP系统如何促进了贵公司业务的开展呢? 答:这套OdooERP系统,是在今年5月18日正式上线的,而现在刚到8月份,所以用精准的数据来评估这套系统对业务改善的贡献,还为时尚早。 但毫无疑问的是,这必将大大节省我们IT系统的运维费用;因为我们知道,以前我们使用的是“闭门造车”自行开发的系统,而现在我们拥有的OdooERP,是Odoo公司官方发布、并获得业界广泛赞誉的管理信息系统。此外,我们相信Odoo公司,在将来新发布的版本中,会集成更多、更好的功能模块,而且集成开发本身也会变得越来越简便、容易,这将为我们的用户创造更多的价值,而这正是我们孜孜以求的! 促使我们选择OdooERP系统的一个关键因素,是Odoo系统实施所需的时间较短。试想,如果没有在市场上发现Odoo,而选择了其他品牌的ERP系统,我真的不能保证能在集团要求那么短的时间内,能够确保系统成功上线。 选定Odoo的咨询公司“思麦里”后,该公司不仅帮助我从忙于救火、晕头转向的状态中解放出来,而且帮助我的日常管理工作,向着越来越顺、越来越有秩序的方向发展,这使我非常有信心,在3月底前完成ERP系统的导入、实施工作。对我来说,这是送给我的最好礼物! 只用了短短数月时间,就将如此庞大、复杂的整体解决方案,顺利实现上线,真实奇迹!但我们真的做到了,而且没有出现任何问题!(大笑) 问:最后,请您描述一下贵公司最看重Odoo 开源ERP系统的哪些优势呢? Odoo ERP 系统运行到今天,使我们更加深刻认识到,Odoo系统带给我们的最大优势,就是Odoo ERP 系统的开源性,这使它变成了一个可扩展性极强的平台。基于这个优势,今后,我们公司可以随着业务的不断发展,来不断扩展我们的信息系统。将来,我们有可能用Odoo的现有模块,来彻底替换我们那些老旧的自行开发的模块。到那时,我将彻底告别那些让我头疼不已的老款软件,你知道,我是多么期待那一天早日到来呀!(大笑) 如果选择的ERP系统,能进一步挖掘我们已有资产的潜能,那对我们来说,实在是太好了!在我们IT部门,最好的资产就是人材!在法国公司,我们拥有软件开发、IT技能最好的工程师。眼下,我们尚不能用一个商业化的投融资模块、来替换原有的投融资模块,因为这会导致基于挖掘原有模块中已存储的数据而产生的附件价值信息将损失殆尽。因此,最好的办法,就是通过培训我们的工程师,让他们在Odoo ERP开源平台上,不断开发公司业务需要的新功能模块,来不断提升ERP系统的价值。在已有的ERP多个品牌中,只有Odoo ERP系统,拥有这个得天独厚的开源优势,这对我最重要,也是我最看重的! 最后,作为个人用户,我认为,Odoo ERP系统,他的交互界面都非常人性化,对这一点,公司上下赞赏不已!,面向未来,随着公司的发展,将会有越来越多的功能模块集成到Odoo ERP中,系统功能也将会大大扩展,到那时,公司将能够看到,这套Odoo ERP系统给公司带来的价值,也会越来越多、越来越大! 1.4 **Odoo助中国企业创新** 1.4.1 **企业信息化概要** 下图来自陈启申老师的著作《ERP从内部集成起步》,这个图描绘了一个较为完善的企业信息化全貌,包括了企业内部信息化和上下游集成信息化。 - MRP/MRPII:制造资源计划,生产、仓库、采购、销售、财务等企业内部信息化; - DRP:分销资源计划,销售预测、分销渠道、库存管理的信息化; - CRM:客户关系管理,终端消费者、经销商、代理商、维修服务商,和客户相关的所有主体管理的信息化; - SCM:供应链管理,供应商、采购、物流、仓库、生产,打通内部和供应商的产品供应全流程管理的信息化; - B2C电商:直接销售到终端客户的网络下单商城或者手机下单的微商城; - B2B经销商订货:针对经销商、代理商、批发商的网络订货商城; - B2B网上采购:针对供应商的网络集中采购平台。 ![](https://box.kancloud.cn/f90e2c6920d32c454f2adb27aed85a92_910x629.png) 企业不是一日发展壮大的,企业的业务模式是逐步成熟的,内部的部门建制是逐步完善的,下游的经销网络或客户群体是逐步发展的,上游的供应网络是逐步开发的。相应地,各个业务板块的信息化系统,随着业务发展,逐步建设而成。 企业在成长过程中,通常要经历几次大的阵痛转型,每一次阵痛过后,企业跃上一个更高平台。企业信息化的建设过程,通常也需要几次阵痛整合,每一次整合过后,企业信息化上升到一个更完善的平台,支撑企业未来若干年发展。经过若干次阵痛整合,最后形成企业完善、高效的信息化系统,支撑企业战略实现。 不同发展阶段,企业有不同的特点和战略取向,相应的,企业信息化重点也不一样。 - 小型企业:年销售额几百万到几千万的企业,外部业务不稳定,企业受外部环境影响很大。内部部门建制不完善,管理不规范。这一阶段的企业,战略上重点在于放权,自由作战。信息化以局部信息化和信息集中存储为目标,局部信息化支撑企业自由发展,集中存储帮助企业累积信息资源。 - 中型企业:年销售额几亿到十几亿,企业业务基本稳定,部门建制齐全。战略上,这一阶段的企业重点在于从分散走向集中,从自由走向规范。这一阶段,信息化重点在于整合前一阶段形成的局部信息化系统,追求规范化和集成化。规范化是集成化的前提,内部集成化帮助企业提高部门协作效率,上下游集成化帮助企业在整个供应链中占据优势地位。 - 大型企业:年销售额几十亿以上,企业形成了多个业务板块,有一些成熟稳定的业务,也有一些正在开发的业务。组织架构上,集团控制,各业务板块独立发展。战略上,企业更多的是从财务层面集中控制,业务上放权自由发展。由于企业庞大,业务板块多,各板块成熟程度不一,信息化上,集团财务系统实现集中控制,集团信息部制定统一的技术要求和接口要求,各业务板块自由选择信息系统。 1.4.2 **小型企业** 1.4.2.1 **小企业如何信息化** 小型企业,年销售额几百万到几千万,没有IT专业人才。外部环境,小企业往往在市场夹缝中生存,受市场波动影响很大,没有自己稳定成熟的商业模式。内部环境,缺乏人才,没有完善的部门建制,人员流动大。企业信息化建设以局部信息化为主,由各个业务主管自主选择适合自己的信息系统,支撑各业务部门自由成长。 ![](https://box.kancloud.cn/f315b61ce348abd2be62bd0f615a834d_625x325.png)这一阶段的企业,信息化有两个目的,其一是,信息集中存储,持续累积信息资产。例如销售部门实施客户关系管理系统(CRM),客户信息,销售信息都集中存储于CRM系统。业务员流失,业务员开发的客户,客户商机和成交历史不会流失,常年累月,形成公司客户资产。 其二是,局部信息化,保持信息系统灵活性。外部环境的变化,企业业务模式调整,信息系统不会成为羁绊。如果信息系统大而全,业务模块过于一体化,集成化,信息系统反而不能适应业务变化。 Odoo有一万多个业务模块,可以适应企业各种业务需求。小型企业局部信息化的时候,各个业务部门可以选用Odoo的不同模块,例如CRM模块,库存和采购模块,财务模块,生产模块,HR模块,电商模块等。信息化初期,为了降低信息化难度,甚至可以架构多套Odoo系统,每个部门一套Odoo专用系统。各部门独立,上线容易,见效快。 ![](https://box.kancloud.cn/d2602d848c7a8e99042fdc0e0c513426_1517x601.png) 局部信息化系统都架构于Odoo平台,好处是,统一的操作界面,统一的数据平台。系统推广期间减少基础数据维护,降低人员培训成本。其次,Odoo是一个开源软件,无论架构多少套,无论使用多少功能模块,无论多少人使用,软件本身都是免费的。第三,公司发展壮大了,需要从分散走向集中,从自由走向规范的时候,统一的平台,系统整合难度小,整合成本低。 1.4.2.2 **小企业Odoo案例** ![](https://box.kancloud.cn/4841f00f98c55a71c6d46811c84aeb0a_1000x399.png)LEMAN EASTERN是法国公司LEMAN Group的中国分公司,LEMAN Group专业制造五金工具,主要产品为切割/研磨砂轮等。LEMAN EASTERN的业务模式是,客户下单购买Leman的产品,LEMAN EASTERN一方面仓库备货主营产品,一方面向中国其他供应商购买辅材,一并交付客户。从销售订单(SO)到采购订单(PO),主营商品是典型的备货销售模式(MTS, Make to Stock),辅材是典型的MTO(Make to Order)模式。 LEMAN EASTERN开办第一年就实施了Odoo系统。利用Odoo系统,仅一名销售后勤,服务了6名销售业务员,其中还有两名法国业务员。系统上线两年以来,管理着300多个客户,100多个供应商,处理了800多个销售订单,3000多个采购订单。 ![](https://box.kancloud.cn/9b2d41b797f9412aa3052426e4b8ae7c_729x451.jpeg)佛山澳卡斯生产家电、电子产品等小电器的小型环形变压器。工厂产品有100多款,仓库常备物料有3000多种。澳卡斯花了几个月时间,在没有请技术公司协助的情况下,自己实施了Odoo的采购和库存模块。大概一年以后,请了技术公司培训和支持,升级Odoo系统,实施了采购、库存、生产和财务模块。 澳卡斯的Odoo系统上线使用5年以来,支持了设计主管、物料员、生产主管、采购主管、仓管员、财务主管等核心岗位工作。系统中管理着8000个物料,1000多个成品和半成品BoM表。累计处理了4000多个生产订单,10000多个采购订单。5年以来累积的业务数据,系统数据库2.5 G左右。 1.4.3 **中型企业** 1.4.3.1 **中型企业如何信息化** 中型企业年销售额从几亿到十几亿。经过初期的艰苦创业,小企业逐渐找到自己的核心市场定位,规模越做越大,人员和部门越来越多,业务模式越来越清晰稳定。在这个过程中,企业往往已经形成了若干个局部信息化系统,企业建立了IT部门,有了专职IT人员。 中型企业形成了自己的市场定位,基本解决了外部市场问题。但由于前期的自由快速发展,各业务部门各自为政,部门间协调成本越来越高,内耗越来越严重,跑冒滴漏开始出现。中型企业需要集成化整合,包括内部整合以提高效率,上下游整合以提高产业链的话语权。 中型企业需要一个统一的信息化平台,解决前期局部信息化系统形成的信息孤岛问题。需要一个集成化系统,帮助企业统一指挥,形成高效低内耗的市场竞争优势。 陈启申老师在著作《ERP从内部集成起步》中,非常强调企业内部集成。企业内部集成,主要指信息流、资金流、物流的集成。市场信息、客户需求信息,这是信息流的来源,这个信息从企业前端,经过分解变换,一直流到企业后端。信息流从前端流向后端,形成企业内部的指挥系统,伴随指令的执行,原料进来,生产加工,成品流向市场,形成从企业后端到前端的物流。物流流向市场,市场买单,资金流从市场流入,根据各部门物流中形成的成本预算,资金流再补充到各部门,促进再生产能力,形成良性循环。 ![](https://box.kancloud.cn/602b86ed8bc7c34a9ecf604cb1500a6a_857x382.png) ![](https://box.kancloud.cn/7ba40a206825f17ba3facad098274794_1418x1128.png)信息流推动物流,物流推动资金流,三流合一,企业才能高效运转。如何推动三流合一呢,核心是需要一套集成化的信息平台。市场信息进入信息化平台,信息化平台分解信息到各个部门,各部门按指令完成工作。各部门工作中产生的物流信息和成本信息进入信息化平台。随着物流的推进,业务部门启动资金回款工作,资金进入信息化平台,根据成本预算信息,信息化平台将自己分配到各业务部门。 信息流、物流、资金流,三流合一。具体到细节,每个企业都有很多行业化、个性化的需求,每个企业都不一样。Odoo作为中型企业信息化核心平台,有几个好处,其一是,Odoo有很多CRM、库存、生产、财务等一万多个标准化模块,企业信息化的很多共通基础已经具备,不需要再开发。其二,Odoo是一个世界范围被验证过的,成熟的、快速的企业信息化开发平台,基于这个平台可以高效开发企业的个性化需求。其三,Odoo系统的伸缩性极强,可以单机部署快速满足小企业需求,也可以集群部署适应大用户大数据需求。其四,开源软件,可以应企业业务变化按需修改,没有License限制。 1.4.3.2 **中型企业Odoo案例** ![](https://box.kancloud.cn/06405351ca385af23a566e8005037d5d_144x81.png)深圳五谷磨房食品集团,是一家行业领先的天然营养食品公司。五谷磨房在全国300多个城市设立了近4000家品牌直营专柜。五谷磨房在湖北建有14万平米的无菌加工配送基地,在广西建有淮山生产加工基地。五谷磨房快速成长,曾获评中国最具投资价值企业50强、最具成长潜力企业20强、创新成长企业50强、中国成长企业百强等诸多荣誉。 五谷磨房选用了Odoo作为信息化基干平台。在实施Odoo之前,五谷磨房有大小十多个系统,数据打架,错误频出,数据无法整合。实施Odoo之后,废掉了其他系统,都整合到了Odoo系统。包括4000多个专柜的配送及零售管理系统,工厂生产管理系统,总部营销物资采购及配送系统,财务核算系统等。4000个超市专柜,开发了手机App,营业员通过手机App输入销售订单到Odoo后端系统。Odoo后端系统根据销量信息安排配货,根据销量预测安排生产。生产部根据排产计划安排生产和采购。市场部根据促销计划安排市场活动,采购活动物资。财务部每个月从系统拉销售毛利表,计算各业务部门绩效。 ![](https://box.kancloud.cn/49eea3b281da3f4c2f2e9e846525560e_1236x594.jpeg) 五谷磨房Odoo系统运行三年多,目前数据库已经超过50G,最大的一个表,记录数量超过2亿条。 西域作为国内专业MRO自营电商,通过EDI对接整合上游厂家实时库存数据,通过Punch-out接口对接客户ERP,实现客户非生产物料的电商化采购,提升供应链货期, 确保正品行货、降低采购成本、保障服务质量。通过在线系统对接金融机构,实现了应收款在线保理,目前有多家大型基金已是西域股东。 ![](https://box.kancloud.cn/8574f74d91bf54ef711c66201682285d_1012x549.png) ![](https://box.kancloud.cn/381628bd6a4e42ef06e357573ae1c02e_976x416.png)西域是一家非常创新的工业品电商公司。在产业链中,它需要对接上下游系统。在内部,它需要管理订单销售到采购的复杂供应流程,条码化高效仓库物流,工业品多方式的开票及回款管理,不同板块业务员绩效管理,等等。 西域创新的业务模式,高速的业务发展,西域信息化平台特点是,客户多,供应商多,产品多,账期多,接口多。Odoo开源开放的特点,非常适合西域打通上下游产业;Odoo极强的伸缩性,非常适合西域业务高速增长;Odoo丰富的进销存功能模块,有助于西域快速构建内部管理平台。 西域2016年开始实施Odoo系统,经过一年多的开发实施,实现了内部的订单处理、条码化的上下架仓库管理、开票及应收账款管理、存货成本核算、绩效考核,外部的大客户ERP订单接口对接、银行支付网关对接、金税三期税票接口对接、金融机构供应链信用信息对接。 1.4.4 **大型企业** 大型企业规模大,业务多,IT系统异常复杂。下图是联想高级副总裁王晓岩在联想“技术大会”上发布的联想的IT架构图。 大型企业的骨干IT系统一般基于久经验证的大型企业软件架构,如联想,后端骨干业务系统基于SAP ECC架构,前端骨干系统基于SAP CRM架构。围绕骨干系统,有很多小系统,以及自己研发的系统,如联想IT架构图上的蓝色部分。以LOIS为例,LOIS是一个连接PLM(产品生命周期管理)系统和前端CRM系统的小系统。LOIS从PLM抽取数据,形成销售需要的产品数据抛给CRM。 ![](https://box.kancloud.cn/afb155be1843f9be2327336c2cb3d85f_1140x576.png) 出于成本考虑,以及灵活性、扩展性等考虑,大型企业集团本部用SAP等大型软件架构,区域公司的信息系统更多地会选择一些其他系统架构。如前面法国达能的案例,达能选择Odoo架构各个分支机构的管理系统,通过和SAP的接口,集成到集团信息系统。实际上,联想欧洲事业部的销售计划系统也是基于Odoo架构的。还有中兴通讯德国公司的集中采购管理系统也是基于Odoo开发的。 Odoo是一个全网级企业信息系统快速开发平台,可以做后端业务系统,如MRP、仓储采购等,也可以做前端业务系统,如CRM、电商网站等。大企业的复杂IT架构中,分支机构的ERP系统、前端电商系统、上游的供应商系统、内部的多系统间连接器,这些都可以考虑基于Odoo架构。 Odoo作为开源软件,没有License限制,大企业内部可以架构多套Odoo系统。统一的系统,技术一致,接口打通,数据容易共享。应用操作一致,内部推行容易,人员适应成本低。 1.4.5 **Odoo部署方式** Odoo个人学习和快速入门,最方便的部署方法是,直接上Odoo官网下载Windows版的All in One安装包,一路点击“下一步”就可以完成安装。默认情况下,浏览器打开本机地址8069端口即可方法Odoo。 小企业生产用,最简单的部署方法是,买一台阿里云或腾讯云,选用Ubuntu操作系统。Odoo官网下载Ubuntu安装包,直接安装。阿里云4核CPU,8G内存的服务器,可以支持30个用户流畅使用。 中型企业应用,用户数多,数据量大。初期可以考虑8核CPU,16G内存的Linux服务器两台,一台跑Odoo,一台跑PostgreSQL数据库服务器。这个配置可以支持至少300个用户流畅使用。以后,随着信息化平台应用的深入,功能模块增多,数据量增大,用户越来越多,可以部署多台服务器集群系统。Odoo和PostgreSQL都支持集群部署方式。 下图来自Haibin Zhou发表在领英上的“Odoo集群/负载均衡”部署方案。前端通过Nginx实现负载均衡,中间应用层部署多台Odoo服务器。Session会话连接等信息保存于Odoo间共享的Redis数据库。 ![](https://box.kancloud.cn/76e27fc4277809dd753e76f44e0e76a4_810x503.png) 2 **进销存入门案例** 2.1 **案例背景** 2.1.1 **三喜贸易业务概况** 上海三喜贸易有限公司,享有A型商品的中国独家代理权。三喜贸易的基本业务是,批量采购A型商品,再批发给下级经销商。三喜公司从2018年12月份开始实施Odoo系统,2019年一月一日正式上线Odoo ERP系统。上海三喜贸易有限公司2019年1月份的业务情况如下: 1) 2018年底盘点 A型商品库存2000件,会计估算成本价格 100元/件 2) 2018年底,财务各个科目余额如下: a) 银行存款 50万元 b) 江苏福盛贸易有限公司应收账款 5万元 c) 库存商品 20万元 d) 玛特实业(上海)有限公司应付账款5万元 e) 实收资本 50万元 f) 未分配利润 20万元 3) 1月4日, 向玛特实业(上海)有限公司采购A型商品1000件,含税单价110元,税率16%。仓库1月8日收到货,同日收到发票,账期:开票月的次月1日起30天 4) 1月10日,向温州宝沃贸易有限公司销售A型商品1500件,含税单价150,税率16%。1月11日发货,发票随货一起寄出,账期:发货后30天 5) 1月15日,网银收到江苏福盛贸易有限公司 5万元 6) 1月16日,向玛特实业(上海)有限公司网银支付 5万元 7) 1月21日,向杭州平盛贸易有限公司销售A型商品1000件,含税单价155,税率16%。1月21日发货,发票随货一起寄出,账期:发货后30天 8) 2019年开始,借助Odoo ERP系统,会计人员希望改用先进先出成本计算方法 2.1.2 **三喜贸易ERP系统上线工作规划** 上海三喜贸易公司ERP上线,需要完成基础数据初始化、基本业务流程测试两项工作。具体工作说明如下: 基础数据初始化工作: 1) 修改公司档案:公司名称、电话、地址、网站、邮箱、币种(如果启用多币种的话)等;公司名称“上海三喜贸易有限公司” 2) 创建供应商档案:创建供应商玛特实业(上海)有限公司,档案信息包括名称、地址、联系电话、联系人等 3) 创建客户档案:创建客户温州宝沃贸易有限公司、江苏福盛贸易有限公司、杭州平盛贸易有限公司。档案信息包括名称、地址、联系电话、联系人等 4) 创建产品分类:产品分类名随便取,本例创建“可销售”类别。分类上设置产品销售、采购、入库、出库自动会计凭证相关的会计科目,产品的成本核算方法 5) 创建产品档案:创建一个产品“A型商品”,成本价格100,销售价格150。档案信息包括:名称、编码、初始成本价格、公开销售价格、分类、描述、默认供应商等 6) 期初库存盘点:A型商品期初库存2000件 7) 创建付款条款:一个是采购付款,开票日次月起30天,一个是销售收款,开票日30天。 8) 期初科目余额的会计凭证 基础业务操作测试: 1) 采购订单、采购入库、采购发票(应付账款) 2) 销售订单、销售发货、销售发票(应收账款) 3) 销售收款单 4) 采购付款单 5) 业务报表分析 6) 存货核算:系统自动产生采购入库、销售出库的会计凭证 7) 会计报表:查看系统的利润表、资产负债表、现金流量表 案例在线试用平台:<http://demo.saas.oscg.cn/> 。试用账号开通申请:<http://www.oscg.cn/-9-1> 。或者致电专家客服电话 400-900-4680 。 2.2 **基础数据初始化** 2.2.1 **采购和销售** 进入“参数设置”模块,修改上海三喜贸易有限公司自身档案信息,如下: ![](https://box.kancloud.cn/9c83777882d278cd1fd2c3f45db6c90d_1286x589.png) 进入“采购”模块,导入供应商档案资料。本案例只有一个供应商,我们采用手工录入方式导入供应商档案资料。实际情况,供应商较多(超过100家),可以通过Excel整理好数据,批量导入系统。 ![](https://box.kancloud.cn/987acdfdeec7a521beeb60764801c404_1275x638.png) 这里删减10页,请点击链接免费获取完整版: <http://www.oscg.cn/-9-1> ,或致电开源智造专家支持电话: 400-900-4680 至此,基础数据初始化工作完成,同学们可以停下来喝一杯咖啡,休息休息再继续。 实际工作中,基础数据初始化是一件非常不容易的工作,往往要耗时几周甚至几个月。有时候第一遍数据整理完以后,还会发现大量数据错误,不得已还要推翻再来一遍。 2.3 **基础业务操作** 2.3.1 **采购** 采购订单处理工作步骤如下: 1) 采购员录入采购询价单 2) 和供应商沟通,采购产品、数量、价格确认后,系统中确认询价单,变为采购订单 3) 系统自动推送采购入库单到仓库 4) 供应商送货到仓库,仓库调出入库单,确认收货,系统库存增加 5) 采购员收到供应商发票,采购订单上点击“创建账单”,创建供应商账单 6) 财务复核供应商账单和收到的供应商发票,无误后,系统中“验证”供应商账单,系统自动产生应付账款会计凭证。 进入采购模块,录入询价单,如下。注意单据日期和计划日期选择1月份的日期。 ![](https://box.kancloud.cn/7cf04e63756c9ef53e8c1de4ebcc9073_1283x643.png) 订单录入后,核对无误,点击“确认订单”按钮,系统自动产生采购入库单。采购订单右上角显示收货单数量,点击可以直接跳转到入库单,完成入库。 实际工作中,采购可以跳转到入库单上查看入库情况,但财务没有权限入库(只能看,不能操作)。 ![](https://box.kancloud.cn/e40817b7061cd99cbf4d0586567c8fa6_1343x461.png) 这里删减15页,请点击链接免费获取完整版: <http://www.oscg.cn/-9-1> ,或致电开源智造专家支持电话: 400-900-4680 2.3.2 **财务报表** 会计报表。会计模块,报告中,有各种财务报表,包括三大会计报表:利润表、资产负债表、现金流量表,以及账龄表等。 利润表。2019年1月份,上海三喜贸易有限公司毛利74,786.32元。 ![](https://box.kancloud.cn/4058f1edca97bdaa7dd99b5906544ac0_1255x630.png) 资产负债表。 ![](https://box.kancloud.cn/901b83c37320712021672757c330fbb7_1172x650.png) 为了系统正确出示现金流量表,需要在现金流量相关会计分录上指定现金流量项目,如下图所示: ![](https://box.kancloud.cn/9a343b65a22f6613c1684173b2c72bdb_1357x341.png) ![](https://box.kancloud.cn/8e10b4dc87d888724b35a5145d7fa3ae_919x579.png) 正确指定现金流量项目后,系统出示的现金流量表: ![](https://box.kancloud.cn/4728cb994dbe41e3a89ad850d6f1ec1f_1236x624.png) 应收账款表: ![](https://box.kancloud.cn/2a321fba3a5e620eaa2428588bb12280_1243x567.png) 2.4 **更多高级功能** 上面作为基础案例,聚焦在基本业务操作层面,现实工作中,实际业务有各种情况。每种情况如何处理,ERP上线过程中需要充分考虑好各种可能的业务情况,对每一种情况做出业务操作说明。 这里删减5页,请点击链接免费获取完整版: <http://www.oscg.cn/-9-1> ,或致电开源智造专家支持电话: 400-900-4680 3 **Odoo平台通用功能** 3.1 **应用安装** 如果是下载的社区版12.0免安装版(<http://cdn.oscg.cn/portal/article/index/id/94.html> ),解压运行,创建数据库,进入应用,安装应用模块。 如果是在线试用平台(<http://www.oscg.cn/> ),获得试用邀请后,登录系统,进入应用,安装应用模块。 第一次,通常选择进销存三个模块:采购管理、销售管理、库存管理。 ![](https://box.kancloud.cn/b66c39cba7511a0490a9584c63b2a674_1342x634.png) 完成Odoo安装以后,先熟悉一下Odoo的用户界面和基本操作。 3.2 **视图** Odoo 12.0社区版操作界面如下图所示: ![](https://box.kancloud.cn/9d4a7f71a089b5de0046d829320e47f6_1366x429.png) 最上面是模块的功能菜单,左上角方块点击后,下拉列出各个已安装的功能模块,中间部分是当前所选菜单的视图。本例是销售订单的视图。Odoo中视图有多种类型,典型的类型有:列表、表单、看板、日历、图表、甘特图。本例显示的是销售订单的列表视图。下图是表单视图(数据的创建、编辑、保存、删除): ![](https://box.kancloud.cn/a88a4b8e8ddc830138d382cbffe5d483_1232x593.png) 下图是分客户展现销售金额的销售分析图表视图: ![](https://box.kancloud.cn/150045334079d5ea3114f20e5c17f185_1359x569.png) 3.3 **搜索** 在Odoo系统的任何一个列表画面上,右上角都有一个搜索框。点击该框,下拉出来的搜索窗口如下: ![](https://box.kancloud.cn/cf76f470ec392eab8c42079fe38c66f3_1146x296.png) ![](https://box.kancloud.cn/c7218db4bdd616512b9e977924cf589e_1143x431.png) - **过滤器**:这是系统预定义的一些搜索条件,如本例中输入了“1”,对应的搜索条件是:可按“销售订单”、“客户”、“销售员”、“销售渠道”、“分析账户”、“产品”等来搜索。 - **筛选:**允许你按照“报价单”、“报价单送出”、“销售”、“活动”等条件筛选,同时也可以增加自定义筛选。 - **分组**:勾选之后,系统会按勾选的字段分组显示表单数据。 - **收藏**:允许将您当前的搜索条件保存下来,作为一个新的预定义条件。 3.4 **修改密码** 1) 点击右上角的“首选项” ![](https://box.kancloud.cn/bc04ecfda1fc57635ef8e65eeba4df14_169x193.png) 2) 在弹出的窗口上点击“更改密码”修改密码 在此窗口上,也可以修改显示语言,以及自己的时区。 ![](https://box.kancloud.cn/a449dddec3b30e1763331c4f6bcd0fad_973x572.png) 3.5 **开发者模式** Odoo有开发者模式,在开发者模式下面,可以查看一些技术信息,做一些技术设置。 激活开发者模式: ![](https://box.kancloud.cn/c99ff619721abe65f3f974b00c8c0767_1351x451.png) 查看技术信息: ![](https://box.kancloud.cn/25a8fbd8097ec00ae7fda492ddda5fc6_1912x739.png) 本例中,显示“付款条款”这个字段,数据库中的字段名为:payment\_term\_id,对应的数据表为:sale.order,该字段外键关联(many2one类型)到表:account.payment.term。 有了这些信息,清楚显示了界面表单的数据和数据库的对应关系。系统维护时候,这些信息帮助数据库查询,或者修改数据库数据。技术开发时候,这些信息有助于理解系统的表结构关系。 开发者功能简介: ![](https://box.kancloud.cn/ef64101541dfd84594541ef25e4e88d0_652x757.png) 例如“设默认”,点击可以设置表单默认值。如本例,当客户是China Export时候,新建销售订单SO时候,销售员字段默认为Administrator,该默认值仅适用于当前用户。 ![](https://box.kancloud.cn/4fcfe48b452f510a6a567ea9f56d0f69_1053x476.png) 3.6 **界面翻译** Odoo的多语言支持功能要点如下: 1) 可以加载任意多种语言包,每个用户都可以设定自己的显示语言。例如国外用户登录系统,界面是英文,国内用户登录系统,界面是中文。 2) 字段显示标签自动按当前用户的语言显示; 3) 某些字段值,如产品名称,支持多种语言,这种字段值也自动按当前用户语言显示; 4) 打印单据的语言,如报价单,按客户语言打印。例如,国外客户,客户语言设定的是英语,则该客户的报价单打印出来是英语。国内客户,设定中文,则打印出来是中文。 用户语言设定。 ![](https://box.kancloud.cn/5d16c28565231c725f82a9a863d9e749_1293x628.png) 字段标签翻译。 ![](https://box.kancloud.cn/26659e96d9c155500d6b69236418267f_1413x435.png) 字段值翻译。 ![](https://box.kancloud.cn/f287eab158d4d60f8fc50dfc824da418_953x430.png) 打印单据的语言指定。 ![](https://box.kancloud.cn/0bc8cdeadef869fce2d2bf454e57e99b_894x438.png) 3.7 **分析报表** Odoo提供了商业智能(BI)功能,可以多维度分析数据,如下例是客户发票数据分析。 ![](https://box.kancloud.cn/b9f2e7b954b4394b0ba467ec4c8e53c8_1573x455.png) 下图是岗位工作台示例。可以按岗位组织该岗位感兴趣的图表、快捷功能。 ![](https://box.kancloud.cn/e8a696799c485541c9747de6b0c5adab_1562x838.png) 3.8 **数据批量导入导出** Odoo中,任何数据都可以批量导入,或者批量导出。如下图以联系人为例。 ![](https://box.kancloud.cn/e87c262afb0cf559ef3696a536fbe08c_1021x443.png) 3.9 **权限控制** 谁可以看见什么数据,谁可以操作什么按钮,Odoo通过设置操作人员权限的方式实现控制。Odoo 权限控制的核心是权限组,对每个权限组,可以设置权限组的 **菜单、视图、权限规则、记录规则**。 ![](https://box.kancloud.cn/1c258686e81e543dcdbef615917dd9de_711x359.png) **菜单**表示,该权限组可以访问哪些菜单。如果指定某权限组可以访问某父菜单,那么,系统会根据该权限组可访问的模型(权限规则中定义)自动计算,哪些子菜单可以显示。计算规则是,如果没有为该子菜单指定任何权限组,且该权限组对该子菜单关联的对象有至少读的权限,那么,系统会自动显示该菜单。如果不希望系统自动显示某子菜单,只要把该子菜单加入系统自带的“Useability / No One”权限组,该菜单就不会被显示了。“Useability / No One”通常用来隐藏某些菜单,通常不会指定任何用户属于“Useability / No One”权限组。 **权限规则**表示,该权限组可以访问哪些模型(数据表),以及拥有读、写、删、建中的哪个权限。如下图中表示,“用户:仅自己的文档”这个权限组对“销售订单”有读、写、创建权限,但没有删除权限。 ![](https://box.kancloud.cn/5f54e4caea8ea844b930f16caef1a27a_1139x313.png) **记录规则** 表示,该权限组可以访问模型(数据表)中的哪些记录,以及拥有读、写、删、建中的哪个权限。记录规则指定的权限,是对该模型的数据表里的所有记录拥有该权限。记录规则指定,只对该模型的数据表里的某些记录(通过定义过滤条件 Domain 指定)拥有某些(读、写、删、建)权限。 ![](https://box.kancloud.cn/441efffb576bfac73b62b229ed5cf72f_1030x313.png) 如上图表示,“用户:仅自己的文档”这个权限组,只能操作自己的销售订单。过滤条件 \['|',('user\_id','=',user.id),('user\_id','=',False)\] ,此条件表示,订单上的业务员是自己,或者没有业务员。也就是,没有业务员的订单,或者业务员是自己的订单,可以增删改查。 **字段权限控制**,Odoo还可以指定,某字段只能供某权限组看见。典型例子是,销售人员不能看见产品成本数据,只有财务和采购可以看见成本数据。权限规则和记录规则表示,权限组可以访问哪些模型,以及模型里的哪些记录。而字段权限指定,权限组能看见记录里的哪个字段。如下例在视图上指定,只有group\_product\_variant权限组才能看到产品的 variants(变体)字段。 <field name="variants" groups="product.group\_product\_variant"/> 4 **开发入门案例** 4.1 **案例背景** 4.1.1 **文赢国际贸易业务需求** 上海文赢国际贸易有限公司是做皮革材料外贸的,文赢试用Odoo以后,发现Odoo CRM、销售订单处理、采购订单处理、物流发货等功能流程非常符合公司业务需要。尤其是Odoo平台自带的多语言、多币种、灵活的权限分组,CRM中销售漏斗的新客户开拓,订单处理中的客户邮件集成,供应链中的按单采购(MTO),物流中的供应商直发等功能特色,文赢特别喜欢。 但如果要实际落地应用,还存在一些细节问题需要完善。摘取部分待完善点如下: 1) 销售订单上需要增加出发港、目的港两个字段,字段为下拉框形式,可以让业务员选择预配好的港口; 2) 订单打印格式调整。外贸行业需要系统导出典型的单据,如形式发票PI、商业发票CI、装箱单PL等单据。Odoo自带有报价单/销售单的打印功能,可以打印出PDF或Excel格式文件。但打印的格式文件需要改成公司的单据格式; 3) SO订单单号格式需要调整。Odoo默认的SO单号格式是“SO + 流水号”,外贸行业惯例,希望改成格式“SO + 客户编码 + 年月日 + 流水号”。 ![](https://box.kancloud.cn/fde988c38b5adc8b7574a1e48a10ea18_1333x528.png) 案例在线开发试用平台:<http://demo.saas.oscg.cn/> 。试用账号开通申请:<http://www.oscg.cn/-9-1> 。或者致电开源智造专家支持电话 400-900-4680 。 4.1.2 **文赢需求实现方案** **出发港、目的港实现方案**: 1) 增加一个港口表单,用于维护港口(增删改查)。港口表单两个字段:港口名称和港口代码。港口名称必须可以翻译(不同国家的客户需要不同语言显示)。 2) 销售模块配置菜单下面增加“港口”菜单,如下图 ![](https://box.kancloud.cn/ee98ba40ae81b46933efd95676dd9d88_539x264.png) 3) 销售订单SO表单上增加出发港、目的港两个字段,字段类型为 Many2one到港口表单 这里删减3页,请点击链接免费获取完整版: <http://www.oscg.cn/-9-1> ,或致电开源智造专家支持电话: 400-900-4680 4.2 **开发方法** 4.2.1 **增加港口表单** 操作步骤: 1) 开启开发者模式 2) 创建模型“港口( x\_port )”,添加两个字段:Name ( x\_name ),Code ( x\_code ) 3) 配置模型“港口( x\_port )”的访问权限:普通用户都可以看见,销售主管可以创建和删除 4) 添加菜单“港口”到销售/配置下面 创建模型“港口”,如下图: ![](https://box.kancloud.cn/81f6419e277982a8a02f3f513609656f_1270x533.png) 这里删减15页,请点击链接免费获取完整版: <http://www.oscg.cn/-9-1> ,或致电开源智造专家支持电话: 400-900-4680 5 **仓库条码操作案例** 5.1 **案例背景** 各位读者同学,本案例假定读者已经完成了进销存案例练习。在进行本案例学习之前,请先完成之前的进销存入门案例,否则可能有些操作步骤会看不懂。 5.1.1 **极安网络业务需求** 上海极安网络科技有限公司通过网络渠道,主要是微商,研发和销售弹力素系列产品。出于产品防伪防串货,以及卫生安全方面需要,极安网络希望实现每一盒产品从出厂到经销商,到消费者都可以全程追溯。极安网络仓库物流业务如下: 1. 弹力素外包装上每一盒都印刷了唯一防伪码,每个盒子的防伪码都不一样; 2. 外协车间生产好产品以后,打包成箱,弹力素一箱24盒。此处要求记录每一箱包含的24个防伪码(建立箱号和盒子的关系); 3. 车间打包成箱的弹力素发货到极安仓库,极安仓库按箱收货。此处希望实现扫描箱码收货; 4. 经销商销售发货。收到经销商订单(微信小程序下单)后,仓库按先进先出原则拣货。销售出库都是整箱出货,不会拆箱。此处希望实现系统按先进先出原则提示出哪个箱号,以及该箱号放在哪个位置,方便仓库人员拣货。仓库出库要求扫描箱号出库。 ![](https://box.kancloud.cn/bdd85cf697bfd1ecf29a647467a39295_600x401.jpeg) 5.1.2 **极安网络WMS上线工作规划** 极安网络WMS系统上线工作,有基础数据准备和基本业务测试两项工作; **基础数据准备**: 1. 硬件准备,需要一个USB接口扫描枪,连接电脑,用于车间扫码打包;一个安卓系统的手持扫描枪,用于仓库扫码上架下架;条码标签打印机,用于箱码打印,货位码打印; 2. 安装条码模块,库存模块开启包裹管理和批次管理功能; 3. 商品条码,为了对商品进行条码管理,商品基础档案上必须录入商品条码; 4. 货架管理,为了出货时候,系统自动提示哪箱货在哪个位置,需要对货架上的每个货位编码,并打印货位条码贴于货位上; 5. 仓库作业流程规划。 - 入库作业:两步入库,第一步车间扫描防伪码,装箱,打印箱码,贴箱码,出库发往极安仓库。第二步,极安仓库收到货位,扫描箱码,扫描货位码,完成入库及货位上架。 - 出库作业: 两步出库,第一步,系统按先进先出原则推荐出库箱号,拣货员按系统推荐的位置,从货位上搬下箱子,扫描箱码,扫描货位码,拣货下架。第二步,货运公司运货出库。 **基本业务流程测试**: 1. 车间扫防伪码打包 2. 仓库扫箱码上架 3. 仓库扫箱码拣货下架 4. 仓库销售出库 5.2 **基础数据准备** 5.2.1 **安装条码模块** ![](https://box.kancloud.cn/40cd086b4db8582fd8f912084387ba09_872x355.png) 库存模块开启包裹管理和批次管理功能(勾选后注意点击“保存”): ![](https://box.kancloud.cn/08ee32f42539a4cd2d37570df449bccc_1028x708.png) 这里删减15页,请点击链接免费获取完整版: <http://www.oscg.cn/-9-1> ,或致电开源智造专家支持电话: 400-900-4680 6 **生产加工入门案例** 6.1 **案例背景** 各位读者同学,本案例假定读者已经完成了进销存案例练习。在进行本案例学习之前,请先完成之前的进销存入门案例,否则可能有些操作步骤会看不懂。 6.1.1 **西工机械业务需求** 上海西工机械有限公司为上海工程机械厂等厂家配套生产箱体部件。如下图是TRD-D工法机组配套的预埋箱体零件结构。 ![](https://box.kancloud.cn/1fe54b390e70ec2805a3ad20b73872ce_908x424.png) 西工机械生产业务是,向宝钢三厂采购Q235A钢板,按工程机械厂提供的图纸,裁切成箱体钢板、角铁等,再焊接成箱体。Q235A钢板: ![](https://box.kancloud.cn/a9d2170b37e91c09eba76f63e6c97af8_336x297.png) TRD-D工法机: ![](https://box.kancloud.cn/9bd5e4c325fce7f4600ff6b5e8f23cb6_494x547.png) 作为入门体验案例,下面以西工机械为原型,抽其业务关键,简化一些细枝末节,拟定下述练习案例: 1. 西工机械为客户配套生产“成品A”,成品A由“零件B”及“部件C”构成,部件C由“原料D”(钢板)加工而成; 2. 西工机械向“宝钢八厂”采购零件B,向宝钢三厂采购原料D; 3. 西工机械有“裁切车间”和“焊接车间”两个生产车间。接到客户订单,裁切车间按客户图纸裁切钢板,裁切好的钢板送到焊接车间,焊接车间加工出箱体成品,交付客户; 4. 西工机械原料D是通用料,会提前备一些库存。零件B是专用件,一般有订单时候再去采购,采购到货周期为3天; 6.1.2 **西工机械ERP上线工作规划** 西工机械的ERP生产系统上线工作,有基础数据准备和基本业务测试两项工作; **基础数据准备**: 1. 安装生产模块,配置生产经理权限 2. 库存模块设置中,启用“多单位”、“多仓库”和“路线”功能 3. 创建两个车间仓:“焊接车间”、“裁切车间” 4. 创建两个生产路线:“焊接生产”、“裁切生产”,其中焊接生产的补货仓库为“焊接车间”,原料库位和成品库位都是“焊接车间”。裁切生产的补货仓库为“裁切车间”,原料库位为“裁切车间”,成品库位为“焊接车间”。 1. 创建两个供应商“宝钢三厂”、“宝钢八厂” 2. 创建产品:“成品A”、“零件B”、“部件C”、“原料D”,其中: a) 成品A的补货路线勾选“按单生产”、“焊接生产” b) 零件B的供应商为“宝钢八厂”,采购提前期3天 c) 部件C的补货路线勾选“按单生产”、“裁切生产” d) 原料D的默认单位为“公斤KG”,供应商为“宝钢三厂” 1. 为“成品A”设置物料清单(BoM表),一个成品A由一个零件B和一个部件C构成; 2. 为“部件C” 设置物料清单(BoM表),一个部件C由100 KG 原料D构成; 3. 为“原料D”设置安全库存。创建再订货规则:产品为“原料D“,仓库为“裁切车间”,最小数量为 50000,最大数量为 100000 。 **基本业务测试**: 1. 进入库存模块,“运行调度器”。系统检查 原料D 低于安全库存,自动产生草稿状态采购单; 2. 进入采购模块,确认系统产生的采购单,完成采购入库。原料D的库存变为100000 KG; 3. 进入生产模块,创建生产单MO,生产“成品A”100件,保存。系统自动产生“零件B”100件的采购单,“部件C”100件的生产单MO; 4. 裁切车间发料10000 KG,完成“部件C”生产入库; 5. 进入采购模块,完成零件B采购确认及采购入库; 6. 焊接车间完成零件B、部件C发料,完成成品A生产入库。 6.2 **生产基础数据初始化** 6.2.1 **模块安装及开关设置** 1. 进入在线试用平台:<http://demo.saas.oscg.cn/> 2. 选择ERP标准版,创建试用环境 3. 安装“制造”模块 4. 设置生产经理权限 5. 进入库存模块,开启“多单位”、路线及多仓库 创建在线试用环境: ![](https://box.kancloud.cn/955faffde99d6abf3555a576680ac5ad_1044x462.png) 安装“制造”模块: ![](https://box.kancloud.cn/10567e8947bac4c1deaabb5e16369cfc_1191x619.png) 设置制造经理权限(注意点击左上角“保存”,再返回首页): ![](https://box.kancloud.cn/798eb0a5f9a66f679b80b595dfee2555_697x521.png) 刷新后,新出现 制造 模块: ![](https://box.kancloud.cn/441582a0675a7c2a51b8cfc8dccbe644_865x321.png) 开启“多单位”、“多仓库”功能(注意点击左上角“保存”): ![](https://box.kancloud.cn/15401038fd2128e2af7824bd27b2df2c_847x627.png) 这里删减15页,请点击链接免费获取完整版: <http://www.oscg.cn/-9-1> ,或致电开源智造专家支持电话: 400-900-4680 6.3 **更多高级功能** 6.3.1 **外协加工** 上面例子中,如果把裁切车间看成是外协厂,则生产投料相当于是给外协厂发料,生产入库相当于外协加工好的部件,仓库验收入库。 外协费用结算。除了外协发料和入库,系统还会自动生成外协加工的采购单,用于外协费用结算。 6.3.2 **BoM版本及工程变更管理** 系统有PLM模块,用于工程变更单(ECO)及BoM版本管理。 ![](https://box.kancloud.cn/39a4025b424f7c80e4f2e1587d5d3175_1285x501.png) 6.3.3 **BoM替代料** BoM定义时候,支持替代料定义,如下图所示。 ![](https://box.kancloud.cn/5d6c2ec0f900dc4de2669edd13e09f10_979x494.png) 6.3.4 **生产质检** 系统有质量控制模块,可以定义质量控制点,质量控制点作用于 入库单、出库单、生产工单等作业单据上。例如,可以在采购入库单上设置抽样检查的质量控制点,则采购入库时候,入库人员必须先完成抽样检查,才允许入库。 当质量控制点质检失败,可以发起质量报警单,用于跟踪质量事故的原因分析,及解决过程。 质量控制点: ![](https://box.kancloud.cn/97e988bd5746f7314ead06b23a2fe5e0_1240x603.png) 6.3.5 **生产设备连接(智能制造)** Odoo系统通过IoT Box连接工作中心上的各种设备,如摄像机、测试仪器、扫码设备等。例如,测试仪器测试完毕,通过IoT Box自动通知ERP系统,ERP系统收到通知,通过IoT Box获取测试仪器详细测试数据,记录到测试工单。 ![](https://box.kancloud.cn/ffad77cbe9e8f1007b5928f5074b6263_652x324.png) ![](https://box.kancloud.cn/7504caeb30d3ce09f1b43bd5b1afc5f1_804x422.png) ![](https://box.kancloud.cn/589ac2fc20c581d608ca0f8830708b5e_957x579.png) 6.3.6 **生产成本核算** 生产成本核算是一个复杂问题。系统基于生产订单MO完成生产成本核算,根据产成品的成本计算方法不同,核算方法不同,如下: - 标准成本法:产成品的入库成本价格直接取自产品上的成本价格 - 移动平均及先进先出法:产成品的入库成本计算公式是如下: a) 产成品入库价格 =(MO原料Stock Move的总值 + 生产工时总额)/ MO上产成品的数量 b) 产成品入库总值 =(MO原料Stock Move的总值 + 生产工时总额 c) 生产工时总额 = MO的Work Order的工时 \* 工时单价 d) 工时单价在Work Order的Work Center上设置 - 全月平均法:MO的原料Stock Move总值,加上工时、制造费用,除以产成品总数,得到入库成本价格