由于未经过原作者允许转载,如有冒犯,请联系删文。
目的:方便自己学习odoo系统开发
正文:
0. 前言
Odoo(OpenERP)作为一款优秀的开源ERP软件,开发历史已有10年之久。随着系统的发展成熟,已有越来越多的公司借助Odoo管理日常业务的方方面面。本文以一个贸易公司为例,讲述Odoo中最常用的进销存(采购、销售、仓库)模块的使用,对会计模块的简单操作亦有涉及。我们假定的业务场景如下:
苏州世纪圆融贸易有限公司,从乐扣乐扣日用品(苏州)有限公司采购乐扣乐扣拉杆箱,并销售给苏州美尚邻里超市。
1. 系统初始化
1.1建库及初始化设置
1.1.1 创建数据库
进入数据库管理页面,从左侧菜单选择新建:
图1.1 新建数据库
Tips: 进入数据库管理页面有几种方式,如从Odoo登录页面点击Manage Databases,或在浏览器中直接输入数据库管理页面URL (http://localhost:8069/web/database/manager);而对于新搭建的server,输入http://localhost:8069后则会自动重定向到数据库管理页面。
在新建数据库页面,输入主控密码(即Odoo数据库管理员密码,默认为admin)、新数据库名称、新库中admin用户的密码,此处不装入演示数据,默认语言选择简体中文。输入完毕后,点击新建数据库。数据库创建成功后会以admin用户自动登录,界面如下:
图1.2 新库初始界面
1.1.2 设置管理员及公司
(1) 设置管理员用户
点击菜单 [用户->用户],然后在列表视图点击打开管理员(即Administrator)用户,点击编辑,在访问权限中勾选技术特性,勾选创建联系人,在首选项中选择时区为Asia/Shanghai,然后点击保存。
勾选技术特性并保存后,刷新页面,在页面左侧会看到更多的菜单项,如下图所示:
图1.3 勾选技术特性后的管理员菜单
(2) 设置公司信息
点击菜单 [公司->公司],然后点击打开Your Company,点击编辑,将公司名称改为“苏州世纪圆融贸易有限公司”,在一般信息中填入地址、电话、传真等信息,添加银行账户;在设置中将会计币别改为CNY,然后点击保存。
Tips: 应该提前设置好公司名称和会计币别,因为在安装会计、销售、采购、仓库等模块时,有一些初始化设置基于默认的公司名Your Company和默认的币别EUR,如果安装好模块后再修改的话,要更改的地方会有很多。
我们还可以对公司作更多的设置:
①设置公司Logo
点击下图箭头所指的位置上传公司的Logo,
图1.4 设置公司Logo
②设置本位币
对国内的公司而言,除了将会计币别设为CNY外,还应将其设置为本位币(本位币的汇率为1)。设置方法为:在公司信息编辑页面,点击设置选项卡中币别右侧的箭头,在弹出窗口中将汇率设置为1保存后,然后勾选基本并保存。
Tips:在Ubuntu环境下新建数据库时,如果默认语言设为简体中文,则默认的时间格式为%I:%M:%S%p,更改汇率时会有错误信息提示日期无效。解决方法为,点击菜单 [设置->翻译->语言],再点击打开简体中文,点击编辑,将时间格式改为%H:%M:%S(如有必要,此时也可将日期格式改为%Y/%m/%d以符合中文习惯),更改后,注销再重新登录,再次更改汇率即可。
③设置中文报表字体
在报表的结构选项卡中先点击重新加载字体以加载本地字体,如下图所示,
图1.5 加载字体
加载完成后,在字体下拉列表中选择DejaVu Sans,然后点击保存。
1.2 安装必要的模块
点击菜单 [模块->本地模块],找到会计与财务(account_accountant)模块,点击安装,
图1.6 安装会计与财务模块
安装过程中,设置会计数据时,注意将会计科目表设为“中国会计科目表”,科目一览表模板设为“中国会计科目表(财会[2006]3号《企业会计准则》)”,其余选项保持默认设置即可。然后依次安装销售管理(sale)模块、仓库管理(stock)模块、采购管理(purchase)模块。
图1.7 安装销售、仓库、采购模块
Tips: 模块安装完毕后,可能会有部分菜单仍显示为英文,此时需要加载中文翻译。点击菜单 [设置->翻译->加载翻译],在弹出窗口中语言设为简体中文,并勾选覆盖现有术语,点击加载。加载完成后,翻译仍未生效,这是因为界面显示仍使用服务器之前的缓存。要刷新缓存,有两种方法,一是重启服务器;二是更改当前登录用户的首选项,将语言改为English,再改回简体中文即可。
1.3 全局设置
点击菜单 [设置->设置->销售],在开发票流程中勾选“基于销售订单行生成发票”;在客户特性中勾选“允许不同的发货和开票地址”;在产品特性中勾选“允许使用不同的计量单位”。
点击菜单 [设置->设置->仓库],在会计中勾选“存货变动自动生成会计分录”;在物流中勾选实时生成采购单。
点击菜单 [会计->设置->税->税],依次打开“增值税17%进项税”和“增值税17%销项税”,在税定义中勾选“含税价”。
点击菜单 [设置->技术->序号与标识符->序列],找到Sales Order并打开,设置数字位数为5。
1.4 基础数据准备
1.4.1 检查会计科目
在安装会计与财务模块时,我们已将会计科目表设为“中国会计科目表”,它包含了适用于国内企业大多数情况的会计科目。点击菜单 [会计->设置->科目->科目],确保下述这些科目都已存在,以供本案例使用:
表1.1 会计科目
Tips: 安装中国会计科目表时默认的会计科目长度为4,实际应用时科目长度可能不够用,需要手工新建会计科目。注意,只能选择视图作为上级科目;如新建科目时若想选择1122作为上级科目,则需要先把1122的内部类型更改为“视图”。
1.4.2 用户与权限
初学Odoo时为快速上手,可使用管理员用户做所有操作。但是为了更好的理解进销存及用户的角色,这里我们针对每个模块设1个用户。点击菜单 [设置->用户->用户],新建如下用户:
表1.2 用户与角色
分角色操作需要新增如下两组权限。产品的路线中勾选MTO时,销售人员确认订单需要第1组权限;会计核准供应商发票时需要第2组权限。点击菜单 [设置->技术->安全设定->访问控制列表],新建如下记录:
图1.8 访问控制列表
1.4.3 新建客户和供应商
(1) 新建客户
销售人员李逍遥登录系统,点击菜单 [销售->销售->客户],点击新建,输入客户名称“苏州美尚邻里超市”,勾选“是一个公司”,输入地址、电话等信息,在联系人一栏点击新建,输入联系人名称张三,地址类型设为发票,然后点击保存并关闭;在销售与采购选项卡一栏,默认已勾选客户,点击保存。
图1.9 新建客户
Tips: 联系人的地址类型包括:默认、发货、发票、联系人、其他。默认,指当没有其他地址时使用的地址;发票,指系统生成发票时使用的地址;发货,指系统生成发货单时使用的地址;联系人,指与客户方联系时的接头人。
(2) 新建供应商
采购人员宁采臣登录系统,点击菜单 [采购->采购->供应商],点击新建,输入供应商名称“乐扣乐扣日用品(苏州)有限公司”,勾选“是一个公司”,输入地址、电话等信息,在联系人一栏点击新建,输入联系人名称李四,地址类型设为联系人,然后点击保存并关闭;在销售与采购选项卡一栏,默认已勾选供应商,点击保存。
图1.10 新建供应商
1.4.4 新建产品分类
管理员登陆系统,点击菜单 [仓库->设置->产品->产品分类],点击新建,新建产品分类“拉杆箱”,上级类别设为“全部/可销售”,收入科目设为6001、费用科目设为1401、入库科目设为1402、出库科目设为6401、库存核算科目设为1406。
Tips: 科目信息可在产品中也可在产品分类中设置,且前者的优先级大于后者,本案例在产品分类中设置。
Tips: Odoo中产品分类默认由管理员管理,仓库主管、销售经理、采购经理默认都看不到产品分类菜单,若想操作产品分类需添加相应菜单。
1.4.5 新建产品
仓管员仓老师登录系统,点击菜单 [仓库->设置->计量单位],点击新建,新建拉杆箱的计量单位“只”:
图1.11 新建计量单位
点击菜单 [仓库->产品->产品],点击新建,输入产品名称“乐扣乐扣拉杆箱”,勾选“可销售”、“可采购”,上传产品图片。
在信息选项卡,产品类型设为“库存商品”,计量单位设为“只”,销售价格设为300;
在补货选项卡,成本价设为180,路线设为“Buy”(本案例中不勾选“Make To Order”),将乐扣乐扣日用品(苏州)有限公司添加为该产品的供应商;
在会计选项卡,内部分类设为“全部/可销售/拉杆箱”, 库存核算设为“实时(自动进行)”。
图1.12 新建产品
1.4.6 新建再订货规则
仓管员在产品的表单视图中点击再订货规则,然后点击新建,设置采购的最小数量为10,点击保存。
图1.13 新建再订货规则
2. 进销存实务
2.1 销售产品
李逍遥接到客户苏州美尚邻里超市购买10只乐扣乐扣拉杆箱的请求后,登录系统,点击菜单 [销售->销售->报价单],点击新建,将客户设为“苏州美尚邻里超市”,在订单明细选项卡点击添加一个项目,产品设为“乐扣乐扣拉杆箱”,数量设为10,此时会提示没足够的库存,这是因为仓库中并没有存货(如果产品的路线已勾选Make To Order的话,则没有此提示),关闭此提示,其余信息保留默认设置,然后点击保存。
图2.1 销售报价单
将报价单发给客户(可通过系统发送,也可打印为PDF后另行通过邮件发送),客户确认报价单后,点击确认订单,此时报价单转化成销售订单,系统会自动生成发货单,同时销售订单状态变为待开票。
点击查看发货单,可以看到发货单状态为“待出库方确认”,点击检查可用,发货单仍停留在此状态,表明库存不足。
点击生成发票,在弹出窗口选择“为整个销售订单开票”,然后点击创建和查看发票,此时生成内部发票,状态为“草稿”。生成的内部发票,会计人员可以通过菜单 [会计->客户->客户发票]来查询。
至此,销售前期工作完成,接下来需要采购产品入库再安排送货。
2.2 采购补货
此处使用由系统生成询价单的方式,当然也可由采购人员手工创建询价单。
我们在先前的步骤中已设置了产品的再订货规则,库管员登录系统,点击菜单 [仓库->计划->运行排程],点击运行排程,系统会根据再订货规则和销售订单及库存情况自动生成采购询价单。
Tips: 在系统中设置好MRP计划的循环周期,系统会定期运行MRP生成采购询价单,我们这里采用手工运行排程的方式生成询价单。
采购人员宁采臣登录系统,点击菜单 [采购->采购->询价单],可看到已生成的采购询价单,点击打开,
图2.2 采购询价单
Tips: 产品中路线未勾选MTO时,要运行排程才能生成询价单(已在设置中勾选实时生成采购单,为何没有生效?),采购数量会考虑最小库存规则,本案例中生成的采购订单行数量为20只;勾选MTO时,采购数量不考虑最小库存规则,采购订单行数量为10只。
供应商确认询价单信息后,宁采臣点击确认订单,此时询价单转换成采购单,系统会自动生成入库单和内部发票,同时销售订单状态变为“采购单被确认”。
点击入库,可以看到入库单状态为“准备移动”。
点击收到的发票,可以看到发票的状态为“草稿”。生成的内部发票,会计人员可以通过菜单 [会计->供应商->供应商发票]来查询。
至此,采购前期工作完成,等待仓库收货。
2.3 产品入库
乐扣乐扣日用品(苏州)有限公司将货物送到仓库后,仓老师登录系统,点击菜单 [仓库->操作->全部操作],
图2.3 操作类型
点击上图箭头所示的位置,接着打开入库单,
图2.4 入库单
点击移动,在弹出框中确认货物信息后,点击应用,此时入库完成,入库单状态变为“已移动”。
入库单确认后,系统会自动生成会计分录,此时蔡文姬登录系统,点击菜单 [会计->会计分录->会计分录],可看到已生成的会计分录。
图2.5 入库会计分录
点击过账,将会计凭证过账。
Tips: 系统自动生成会计分录是基于我们之前所做的两个设置:(1)在仓库中,勾选了“存货变动自动生成会计分录”(2)在产品中,设置了库存核算为“实时(自动进行)”。
2.4 付款处理
蔡文姬收到乐扣乐扣日用品(苏州)有限公司开具的实际发票后,需要与系统中之前生成的供应商发票草稿进行核对。点击菜单 [会计->供应商->供应商发票],打开发票,点击记账,核准发票。
图2.6 核准供应商发票
发票核准后,系统会自动生成会计分录,状态为“已记账”。
图2.7 采购发票会计分录
公司同意付款后,蔡文姬在供应商发票中点击付款,在弹出的支付窗口中选择实际的付款方式(现金或银行分录),本案例选为“银行分录”,然后点击登记付款。
图2.8 付款
付款后,系统会自动生成会计分录,点击过账,将会计凭证过账。
图2.9 付款会计分录
至此,供应商付款完毕,采购过程结束。
2.5 产品出库
采购的拉杆箱入库后,仓老师点击出库单上的检查可用,因为已有充足的库存,此时出库单状态会变为“准备移动”。
图2.10 检查出库单
准备好送货后,点击移动,在弹出框中确认信息后,点击应用,此时出库完成,出库单状态变为“已移动”。
出库单确认后,系统会自动生成会计分录,此时蔡文姬登录系统,点击菜单 [会计->会计分录->会计分录],可看到已生成的会计分录,点击过账,将会计凭证过账。
2.6 收款处理
仓库人员送货后,蔡文姬点击菜单 [会计->客户->客户发票],打开发票,点击记账,核准发票。发票核准后,系统会自动生成会计分录,状态为“已记账”。
蔡文姬收到客户货款后,在客户发票点击登记付款,选择实际的付款方式,然后点击登记付款,系统会自动生成会计分录,点击过账,将会计凭证过账。
至此,客户收款完毕,销售过程结束。
3. 结语
为了让初学者快速了解Odoo,本文对采购、销售、仓库、会计模块的介绍仅是泛泛而谈,以图管窥之效。
实际上,Odoo的功能远比文中提到的复杂、强大,企业的实际应用场景也灵活多变。如何最大限度的借助Odoo规范化业务流程,如何基于Odoo进行二次开发以满足企业非标流程,才是实施Odoo的着力点和方向。
4. 参考资料
[1]OpenERP实施记录http://www.cnblogs.com/eastson/archive/2013/06/10/3121314.html
[2]Odoo8.0初始化设置http://shine-it.net/index.php?topic=16538.msg28681