38
非常开源博客(www.veryopen.org 作者:王良明 邮件:[email protected] OpenERP 6.1 实施手册

OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:[email protected] 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

OpenERP 6.1

实施手册

Page 2: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

目录 §1.1 初始化 .............................................................................................................. 5

§1.1.1 安装—Windows 平台 ............................................................................ 5 §1.1.2 安装—Linux 平台 ................................................................................. 7 §1.1.3 设置公司信息....................................................................................... 9 §1.1.4 设定默认用户偏好.............................................................................. 10 §1.1.5 新建用户组 ........................................................................................ 12 §1.1.6 新建用户............................................................................................ 13 §1.1.7 会计—调整会计科目 .......................................................................... 15 §1.1.8 会计—调整账簿 ................................................................................. 16 §1.1.9 会计—设置公司的银行科目................................................................ 18 §1.1.10 会计—设置税种 ............................................................................... 19 §1.1.11 会计—付款条件 ............................................................................... 19 §1.1.12 会计—币种设置 ............................................................................... 20 §1.1.13 会计—科目起初余额 ........................................................................ 20 §1.1.14 仓库—库位设置 ............................................................................... 21 §1.1.15 仓库—仓库设置 ............................................................................... 23 §1.1.16 销售—杂项 ...................................................................................... 23 §1.1.17 销售—导入合作伙伴数据 ................................................................. 24 §1.1.18 仓库—产品类型 ............................................................................... 25 §1.1.19 仓库—计量单位 ............................................................................... 27 §1.1.20 仓库—新建产品 ............................................................................... 28 §1.1.21 仓库—导入产品 ............................................................................... 30 §1.1.22 仓库—初始产品存量 ........................................................................ 31 §1.1.23 生产—工艺路线 ............................................................................... 32 §1.1.24 生产—属性 ...................................................................................... 32 §1.1.25 生产—BOM ..................................................................................... 33 §1.1.26 生产—导入 BOM.............................................................................. 35 §1.1.27 杂项 ................................................................................................. 36

Page 3: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

Page 4: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

众所周知,ERP 是三分技术,七分实施,可见任何一个 ERP,实施是关键。对 OpenERP 6.1,

经过两个月的测试,加上本人以前多年的 ERP 实施经验,总算圆满完成了业务操作前的全部

工作,包括安装、汉化、BUG 修改、初始化以及数据导入等,也就是只要你参照本手册,您

就能把系统带入到业务发射点位置。至于具体的业务操作,我正在撰写《OpenERP 业务操作

手册》,敬请各位关注本人博客:www.veryopen.org,一旦完成,我会及时发布在我的博客

上,谢谢!

本文档可以随便传播和使用,但是必须保留以下信息:

作者:王良明

手机:13670055530

博客:www.veryopen.org

邮箱:[email protected],[email protected]

网站:www.weisuan.com

QQ:183407563

Page 5: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

§1.1 初始化

§1.1.1 安装—Windows平台

1、环境要求:

硬件:X86 机器 + 6GB CPU + 4GB 内容 + 500GB 硬盘

软件:Windows 2003/Windows 2008/Windows XP SP3

2、安装:

1)、从 http://www.openerp.com/downloads 下载最新版本

openerp-allinone-setup-6.1-1.exe,这个包含 PostgreSQL、Server 和 Web Client;

2)、运行下载的安装包,一路点击 next 直至安装完毕。

(1)、默认安装在 C:\Program Files\OpenERP 6.1-1 下。一些重要的目录和文件介绍:

PostgreSQL ----数据库安装目录;

server ----服务器的目录。目录下的 openerp-server.conf 是最重要的配置文件。

service ----存放启停 OpenERP 服务的目录,里面的 start.bat 就是重启 OpenERP

Server 服务,stop.bat 停止服务;

install.txt ----记录了 PostgreSQL 数据库的监听端口、用户名和密码,最好删除它

以防泄密。默认安装的内容如下所示:

INSTDIR C:\Program Files\OpenERP 6.1-1

Hostname localhost

Port 5432

Username openpg

Password openpgpwd

Uninstall.exe ----卸载 OpenERP 的程序

server/openerp-server.conf 中一些重要配置项:

db_password =openpgpwd ---数据库用户密码

xmlrpcs_port = 8071 ---服务器端口

xmlrpc_port = 8069 ----web 服务端口,浏览器访问的端口

log_level = info ---日志类型

深圳微算技术

www.weisuan.com

Page 6: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

logfile = C:\Program Files\OpenERP 6.1-1\server\openerp-server.log ---日

志文件

admin_passwd = admin ---管理员密码

db_host =localhost ---PostgreSQL 数据库服务器 ip

db_maxconn = 64 ---数据库并发连接数

netrpc_port = 8070

db_port =5432

(2)、在系统里默认配置了两个自启动服务:openerp-server-6.1 和 PostgreSQL For

OpenERP。如果是生产环境,建议不要改动,但如果是测试环境,建议把这两个服务改为非

自动启动,要用时手工启动。运行命令 services.msc,然后在里面把服务修改为“手动”;

(3)、监听的 web 端口为 8069,本机登陆 http://localhost:8069/

3)、手工启停数据库和 OpenERP Server 服务:

(1)、关闭:在 windows 2003 或 windows XP 下直接双击 C:\Program Files\OpenERP

6.1-1\service\stop.bat 关闭 Server 服务,然后再“开始-->所有程序-->PostgreSQL

8.3-->Stop service”关闭数据库;对于 win7 或 windows 2008,右击 C:\Program

Files\OpenERP 6.1-1\service\stop.bat 后“以管理员身份运行”,以关闭 Server 服务,

然后点击“开始-->所有程序-->PostgreSQL 8.3”,然后右击 Stop service 并以管理员身

份运行它,以关闭数据库;

(2)、启动:对于 windows 2003 或 windows XP,点击“开始-->所有程序-->PostgreSQL

8.3-->Start service”启动数据库,然后双击 C:\Program Files\OpenERP

6.1-1\service\start.bat 启动 Server 服务;对于 win7 或 windows 2008,点击“开始-->

所有程序-->PostgreSQL 8.3”,然后右击 Start service 并以管理员身份运行它,以启动

数据库,然后右击 C:\Program Files\OpenERP 6.1-1\service\start.bat 后“以管理员身

份运行”,以启动 Server 服务;

3、数据库操作:

点击“开始-->所有程序-->PostgreSQL 8.3-->pgAdmin III”打开数据库图形管理界面,

然后双击 PostgreSQL For OpenERP 出现如下的密码(默认是 openpgpwd)输入窗口:

深圳微算技术

www.weisuan.com

Page 7: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

§1.1.2 安装—Linux平台

Ubuntu 10.04 32 位桌面版+OpnERP 6.1.1

1、准备环境:

sudo apt-get install denyhosts

sudo apt-get update

sudo apt-get dist-upgrade

sudo adduser --system --home=/opt/openerp --group openerp

sudo passwd openerp

sudo su - openerp -s /bin/bash

sudo apt-get install postgresql

sudo su - postgres -c "createuser --createdb --username postgres

--no-createrole --no-superuser --pwprompt openerp"

sudo apt-get install python-dateutil python-feedparser python-gdata

python-ldap python-libxslt1 python-lxml python-mako python-openid python-psycopg2

python-pybabel python-pychart python-pydot python-pyparsing python-reportlab

python-simplejson python-tz python-vatnumber python-vobject python-webdav

python-xlwt python-yaml python-zsi

#ubuntu 10.04 提供的 python-werkzeug 版本太低了,导致启动 OpenERP 服务的时候出

现严重问题,所以采用下面方法安装高版本:

sudo apt-get install python-pip

sudo pip install werkzeug

深圳微算技术

www.weisuan.com

Page 8: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

2、安装 OpenERP 6.1.1

cd /tmp

wget http://nightly.openerp.com/6.1/releases/openerp-6.1-1.tar.gz

sudo su - openerp -s /bin/bash

tar -zxf /tmp/openerp-6.1-1.tar.gz

cp -a openerp-6.1-1 server

sudo cp /opt/openerp/server/install/openerp-server.conf /etc/

sudo chown openerp: /etc/openerp-server.conf

sudo chmod 640 /etc/openerp-server.conf

sudo vim /etc/openerp-server.conf

[options]

; This is the password that allows database operations:

; admin_passwd = admin

db_host = False

db_port = False

db_user = openerp

db_password = 123456

logfile = /var/log/openerp/openerp-server.log

sudo mkdir /var/log/openerp

sudo chown openerp:root /var/log/openerp

3、启动服务并测试

sudo su - openerp -s /bin/bash -c /opt/openerp/server/openerp-server

浏览网址 http://<ip>:8069/,应该能看到登陆界面了。

4、做服务启动脚本

把下述内容保存到/etc/init.d/openerp-server 中或直接下载

<<openerp-server>>

sudo chmod 755 /etc/init.d/openerp-server

sudo chown root: /etc/init.d/openerp-server

sudo update-rc.d openerp-server defaults

深圳微算技术

www.weisuan.com

Page 9: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

参考

http://www.theopensourcerer.com/2012/02/22/how-to-install-openerp-6-1-on-ubuntu

-10-04-lts/

§1.1.3 设置公司信息

在继续安装其他模块前先要正确设置好自己公司的信息,因为其他模块安装时会使用这

些信息(比如财务模块)。

操作路径:设置》公司》公司,修改默认的“Your Company”

主要完成:公司名称、联系方式、地址、报表页眉和页脚以及业务来往结算币种、公司

logo 等。公司银行账户、国家、省份先暂不设置,等安装完了全部模块后再来设置,国别和

省份包含在中国的会计科目模块中。

深圳微算技术

www.weisuan.com

Page 10: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

§1.1.4 设定默认用户偏好

新建用户时就会使用设定的默认用户偏好。

操作路径:设置》屏幕中部的“设定默认用户偏好”

主要是设置时区、语言和操作界面,扩展的界面会增加更多的功能菜单,但是这些功能

菜单不是经常用到的,也可以选择“简化界面”,对于业务简单的中小企业的操作员,简化

界面比较合适。

在继续做下面的初始化前需要把所有用到的模块安装,比如对于有“进、销、存、财务、

生产”业务的公司,需要安装的模块如下:

深圳微算技术

www.weisuan.com

Page 11: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

依赖的模块是随其他模块自动安装的。

深圳微算技术

www.weisuan.com

Page 12: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

§1.1.5 新建用户组

OpenERP 是根据用户组来授权的,在同一个用户组里的用户具备相同的权限。系统默

认的用户组差不多够了,不过我们自己可以调整和添加。

操作路径:设置》用户》用户组

注意用户组“易用性 / Technical Features”代表还处于技术开发阶段,属于这个组的菜

单项会被隐藏起来。对于 OpenERP 的菜单,如果一些很少用到的菜单项,可以添加到这个

组。

“用户”页:

深圳微算技术

www.weisuan.com

Page 13: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

“菜单”页:

按菜单授权,比较粗放,更细粒的权限控制在“访问权限”页里。

§1.1.6 新建用户

这里的用户主要指公司内部的需要操作 OpenERP 的员工账号,这些账号是用来登录

ERP 的。

操作路径:设置》用户》用户

“用户”页:

深圳微算技术

www.weisuan.com

Page 14: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

左侧的“首选项”就是上面做的“设置用户偏好”部分的内容。“动作”就是设定用户

登录后显示的菜单和执行的默认动作。

“访问权限”页:

访问权限也就是把该用户归属于哪些用户组。

深圳微算技术

www.weisuan.com

Page 15: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

§1.1.7 会计—调整会计科目

会计科目是会计记账的基础,需要遵循中国的会计准则,安装完会计模块后会自动导入

中国的会计科目表,但是导入的会计科目存在一些问题,需要手工调整:所有一级科目内部

类型全改为“试图”(view),开设的账簿对应各个子科目。

1、 把全部科目的编号后面的 0 去掉,一级科目内部类型改为“视图”去掉,统一采用

下面的 SQL 语句修改:

update account_account set code=rtrim(code,'0') where code!='0' and code not like 'X%'

update account_acount set type='view' where level=1 and code not like 'X%'

2、 在需要开设账簿的业务科目,需要创建相应的子科目,如:

100201 农业银行存款 资产类

100202 中国银行存款 资产类

100203 工商银行存款 资产类

100101 现金 资产类

112201 应收账款 应收款 资产类

140101 材料采购 资产类

140201 在途物资 资产类

140601 库存商品 资产类

140701 发出商品 资产类

220201 应付账款 应付款 负债类

600101 主营业务收入 损益类

690101 以前年度损益调整 损益类

如增加科目“100203 工商银行存款”。

操作路径:会计》设置》财务会计》科目》科目表

如下图所示: 深圳微算技术

www.weisuan.com

Page 16: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

增加应收账款:

3、 把不用的科目删除,不过即使不删除,也不会影响什么。

§1.1.8 会计—调整账簿

账簿是凭证记账的基础。默认系统中存在一些基本账簿,但是由于科目内部类型经过调

整(参考上面内容),所以这些账簿归属的科目需要修改。

操作路径:会计》设置》财务会计》账簿》账簿

如修改库存商品账簿:

深圳微算技术

www.weisuan.com

Page 17: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

默认的借贷方科目由原来的“1406 库存商品”改为“140601 库存商品”,其他参数保

持不变。

其他账簿做类似修改。

新建工商银行存款账簿:

注意类型是“银行和支票”,所有的银行类账簿都是这个类型,现金类账簿为“现金“类

型,其他的账簿不能为这两种类型。属于“银行和支票”及“现金”类的账簿会出现在支付

方式选择列表中(比如支付供应商发票视图上)。

深圳微算技术

www.weisuan.com

Page 18: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

注意:为了体现应付应收账款的账龄,为每个存在应收应付款项的公司开设单独的账簿

并归属到单独的子科目是一个不错的注意。比如“XXX 公司”存在很多应收账款,那么可

以在“1122”下添加子科目“1122021 XXX 公司应收账款”,然后在此子科目上开设账簿,

最后就可以在这个账簿上登记全部的应收账款了。

§1.1.9 会计—设置公司的银行科目

这里设置的银行科目只是录入公司的银行账号开户信息。

操作路径:会计》设置》财务会计》科目》设置银行科目

点击“新建”:

注意,在上图中的“银行”后面的打开目录的图标,然后选择“新建”,出现下面界面,

在这里新建一个银行“中国银行”:

深圳微算技术

www.weisuan.com

Page 19: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

§1.1.10 会计—设置税种

如增值税、消费税、教育附加等不同税种。OpenERP 允许定义税种和税额的计算方法以

及定义税种对应的财务科目。

操作路径:会计》设置》财务会计》税》税

在这里创建的税相当于明细账簿,只不过归属到相应的子税科目而已:

视图上要注意的地方有“税类型”(税计算方法)、“金额”(税类型百分比,小数)、

“发票税科目”、“退税科目”。

§1.1.11 会计—付款条件

如订单生效日 30 日后所在月份的月末付款,OpenERP 支持诸如这样的付款条件设置。

此处设置的付款条件可以设置到产品和订单上,这样,到了订单的付款日,系统会自动提醒

出纳注意收款。

操作路径:会计》设置》其他》付款条件

深圳微算技术

www.weisuan.com

Page 20: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

§1.1.12 会计—币种设置

操作路径:会计》设置》其他》币种

在这里设置币种、汇率,默认都是对欧元的汇率。如人民币设置如下:

汇率都是针对欧元的,可以设置多个汇率,“当前汇率”显示时间最近的哪个汇率。货

币符号位置设置人民币符号“¥”出现在金额前还是后,如出现在金额前,¥100.00,出现

在金额后就是 100.00¥。

§1.1.13 会计—科目起初余额

在“账簿的开张分录”账簿上手工记一笔多借多贷凭证,只要有余额的叶子科目都要记,

要么出现在借方,要么出现在贷方,借贷方式相等的。

操作路径:会计》账簿分录》手工凭证账簿

深圳微算技术

www.weisuan.com

Page 21: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

§1.1.14 仓库—库位设置

OpenERP 采用复式库位管理方法,类似于会计的复式记账法,商品的移动都会产生两

条记录。

一个公司包含若干个仓库,一个仓库包含三部分:入库库位、储物库位和出库库位,如

下图所示:

仓库的组成

入库时物品出现进入入库库位,在这里执行质检、数量核查、交接等,然后正式进入储

物库位存放,出库时物品先放到出库库位,在这里完成清点数量、核查品质、交接等事项。

不过一个仓库的三个类型的库位可以定义到相同的实际库位。

OpenERP 中存在三种类型的库位:物理库位、合作伙伴库位和虚拟库位。合作伙伴库

储物库位 (物品最终的存放场所)

入库库位

出库库位 深

圳微算技术

www.weisuan.com

Page 22: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

位包含客户库位和供应商库位,虚拟库位包含盘点库位、生产库位、需求库位等,而物理库

位可以藏剑创建任意多个,是实际用于储藏物品的库位。不属于任何仓库的库位可以储藏物

品,但是其数量不会出现在产品的列表视图上,即物品的在手数量和可供数量不包括这部分

数量,这就是许多人遇到的问题:出入库后为什么产品的数量没有变化。

操作路径:仓库》设置》仓库管理》库位

现有库位列表:

新建“物料库”库位:

深圳微算技术

www.weisuan.com

Page 23: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

§1.1.15 仓库—仓库设置

新建“物料仓库”

操作菜单:仓库》设置》仓库管理》仓库

注意:“物料仓库”的入库库位、出库库位和储物库位都指向“物料库”库位。

§1.1.16 销售—杂项

1、新建销售团队

操作路径:销售》设置》销售团队

再新建华北区、华东区等销售团队。

2、新建业务伙伴分类

操作路径:销售》设置》通讯录》业务伙伴分类

深圳微算技术

www.weisuan.com

Page 24: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

§1.1.17 销售—导入合作伙伴数据

OpenERP 提供的导入菜单不方便(也许搞熟悉了,导入也很简单),合作伙伴数据涉及

五 个 表 : res_partner 、 res_partner_location 、 res_partner_contact 、 res_partner_bank 和

res_partner_address,通过 res_partner_address.partner_id 、 res_partner_address.contact_id 、

res_partner_address.location_id 字段四个表关联在一起。

首先用户需要按照下表格式整理现有数据:

注意:

1)、一个公司可以对应多个联系人,同一个公司的联系人必须放在一起,且第二个及以

深圳微算技术

www.weisuan.com

Page 25: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

后的联系人公司信息可以不输。

2)、公司的营业执照号、组织机构代码证、国税号及开票地址、地税号等可以放在公司

的备注栏(comment),中间不能出现回车换行,如:

营业执照号:1111111;组织机构代码证:2222222;国税号:333333, 开票地址:XXX;

地税号:4444444

数据整理完之后保存为 csv 文件,分隔符采用“`”,csv 文件的编码必须是 utf-8(可以

用记事本转换)。导入脚本:import_partner.py

,一个整理后的实例:

深圳微算技`````````广州物贸公

在 Excel 2010 中打开 utf-8 编码的 csv 文件的方法:启动 Excel“数据”菜单“自文

本”定位到 csv 文件并打开:

注意选择文件原始格式为“65001 : Unicode (UTF-8)”,点击下一步后分隔符选择“其他”,

并输入`(反撇号,就是键盘 Tab 键上方的那个键)。

运行导入脚本“import_partner.py <csv 文件名>”,如果数据整理符合要求,客户数据

就会正确导入。

§1.1.18 仓库—产品类型

产品是业务流转的基础,正确初始化产品及相关信息对于 OpenERP 能否正常运转至关

重要,在笔者近两个月的测试中,由于产品信息设置不对导致走了很多弯路。

深圳微算技术

www.weisuan.com

Page 26: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

由于一个公司的产品类型不是很多,可以采用手工输入方式。产品类型为一树型结构。

操作路径:仓库》设置》产品》产品分类

如下图所示:

叶子节点的产品类型,其分类类型为“常规”,其他节点的产品类型都为“视图”,用于

汇总。产品一般不直接归属于“视图”类型的产品分类,比如我们创建一个新产品“产品 A”,

它不能属于“所有产品/产成品”,因为“所有产品/产成品”是“视图”类型。对于不需要

实时盘点的产品类型,创建比较简单:

“会计库存属性”的几个参数不用管,这几个参数是启用实时盘点的功能时要用到的。

但如果要开启实时库存盘点,设置的参数就比较多: 深圳微算技术

www.weisuan.com

Page 27: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

知识小贴士:只有开启了实时盘点的产品在出入库时才会产品会计凭证,在产品表单视

图上的“会计”页上选择“实时(自动进行)”的盘点估值时表示开启实时盘点。

“入库科目”和“出库科目”两个会计参数也可以在产品表单、库位表单上设置。如果

产品表单、库位表单上都设置了,当发生库存移动时,系统计算规则是,先找库位的设置,

没有则再找产品上的设置,如果还没有则最后找产品类型上的设置,如果都没有设置则报错。

§1.1.19 仓库—计量单位

计量单位类型无非就是:单件、重量、工作时间、长度或距离,在操作路径“仓库》设

置》产品》计量单位》计量单位类型”中维护。

稍微要注意的是计量单位的设置。

操作路径:仓库》设置》产品》计量单位》计量单位

对于每一类计量单位,都有一个参考的计量单位,比如重量的参考计量单位是“kg”(千

克),其他的计量单位乘以比例等于参考单位,如 1kg=1 克*1000。

新建计量单位:

深圳微算技术

www.weisuan.com

Page 28: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

§1.1.20 仓库—新建产品

附属在产品上的参数比较多,总的来说包括:产品信息、产品补货方法、最小库存规则、

库存属性、供应商、包装物、会计属性、纳税参数。对于一些难以理解而又重要的参数下面

一一讲解。

操作路径:仓库》产品》产品

1、 产品需求属性:

(1)、产品类型:

可库产品:完全库存管理——出库、入库、内部调拨、存量上下线警报等;

消耗品:半库存管理——出库、入库,但数量不控制,视之为取之不竭,如螺丝钉等低

值易耗品;

服务:不做库存管理,如咨询服务;

(2)、获得方式:

按库存生产:但库存数量低于下限时启动供应(自动生成生产订单或采购订单);

按订单生产:一有订单就启动供应(自动生成生产订单或采购订单),且供应的数量就

是订单的数量;

(3)、供应方式:

生产:当需要供应时自动产生生产订单;

购买:当需要供应时自动产生采购订单;

深圳微算技术

www.weisuan.com

Page 29: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

由于一个产品的补货业务(如采购和生产)启动包括自动和手工,产品的“获得方式”

和“供应方式”属性只影响自动补货行为,如一个产品尽管定义为“可库产品|按订单生产|

购买”属性,但是在没有订单时我们也可以手工产生采购单或生产单,从而增加该产品的库

存。

产品需求属性最常见的有下面的组合:

“可库产品|按库存生产|生产”:当库存低于下限时自动产生生产订单,生产的数量就是

库存上限,前提是此产品已经定义好了 BoM、工艺路线和库存上下限;

“可库产品|按库存生产|购买”:当库存低于下限时自动产生采购订单,采购的数量就是

库存上限,前提是此产品已经定义好了供应商和库存上下限;

“可库产品|按订单生产|生产”:当有订单时自动产生生产订单,生产的数量就是订单的

数量,前提是此产品已经定义好了 BoM 和工艺路线;

“可库产品|按订单生产|购买”:当有订单时自动产生采购订单,采购的数量就是订单的

数量,前提是此产品已经定义好了供应商;

注意正确设置每一种组合的前提条件,否则会出现各种错误。

2、 最小库存规则(在“需求与货位”页):

一种产品可以存放在多个仓库的多个库位中,针对每一个库位都可以定义相应的最小库

存规则——数量的上下限。

在这里设立的库存规则,在“仓库》设置》自动生成需求单》最小库存规则”列表视图

中看不到(不知为何?),但在“仓库》设置》自动生成需求单》最小库存规则”中建立的

库存规则,在产品的表单视图上又看得到。

3、 产品供应商:

深圳微算技术

www.weisuan.com

Page 30: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

一个产品可以对应多个供应商(那自动产生采购单时如何选择供应商呢?)。

4、 会计属性:

由于“入库科目”和“出库科目”只有在产品开启实时盘点时才有作用,对于盘点估值

为“定期(手动进行)”的产品,可以不用管它们。“收益科目”和“费用科目”已经在产品

类型上设置,所以这里也可以不用管。重点要注意的是“盘点估值”,这是决定产品是实时

盘点还是手工盘点。

§1.1.21 仓库—导入产品

产品导入与客户导入一样,比较复杂,涉及多个表。还是采用脚本来导入比较方便。首

先按下列格式整理产品数据:

深圳微算技术

www.weisuan.com

Page 31: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

然后输出为 utf-8 编码、以 `分割字段的 csv 文件,样例参考

电视机-II功放管`tup,采用脚本

import_product.py 导入数据库:

./import_product.py <csv 文件>

导入脚本:import_product.py

§1.1.22 仓库—初始产品存量

产品导入时并没有导入库存数量,OpenERP 中并没有一个表的一个字段专门存放产品

的库存数量,而是通过临时统计产品的移动记录来计算库存,这是复式库存管理的特点,也

是一大优势。那么产品的初始库存数量到底如何设置呢,做一次盘点即可,即把产品从虚拟

的盘点库存移动到物理库存。

操作路径:仓库》盘点控制》实物盘点表,然后点击“新建”

对于全部的库存数量不为零的产品都要新建一条记录,放在什么库位,数量多少一并输

入,最后点击“盘点确认”即可。

深圳微算技术

www.weisuan.com

Page 32: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

§1.1.23 生产—工艺路线

对于中小企业,对生产工序管理不是特别重要,一般只定义一个“生产”工序即可。

操作路径:生产》设置》主物料表》工艺路线

新建“生产”工序,并为之新建一个“生产车间”的工作中心。

通过工作中心可以计算生产时发生的格外费用,如人工费、工具损耗等。

§1.1.24 生产—属性

属性只是一些名字而已,类似于 Linux 下的环境变量,通过给同一个产品的不同 BOM

附加不同的属性,这样销售员就能针对不同的客户,在下订单时指定属性来选择生产时具体

采用哪个 BOM。属性可以分组管理。

1、 建立属性组。

操作路径:生产》设置》主物料表》属性组

深圳微算技术

www.weisuan.com

Page 33: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

2、 新建属性。

新建高档产品属性:

新建低档产品属性:

§1.1.25 生产—BOM

OpenERP 的 BOM 表允许为多级树型结构,如下图所示:

深圳微算技术

www.weisuan.com

Page 34: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

上图中,电脑由二级 BOM 组成,一级 BOM 中的“主机”本身还是一个 BOM,称为

套件。OpenERP 中的 BOM 具备空间和时间上的特性,即同一个产品允许存在多个 BOM,

这些 BOM 通过起止有效期来划分时间域,比如同样一个产品,在本月和下月启用的 BOM

不一样,那么就可以建立两个 BOM,并指定不同的有效起止日期即可。另外即使有效期相

同的同一产品的多个 BOM,还可以通过附加一些属性参数来划分空间域。比如同样的产品,

销售给大客户的,物料质量要求更高,相反,销售给小客户的,物料质量较低,从而价格低,

此时可以定义属性:高档产品、中档产品和低档产品,面向大客户的产品 BOM 附加“高档

产品”属性,面向小客户的 BOM 附加“低档产品”属性。

操作路径:生产》主数据》物料清单:新建

(1)、给产品 13 制定 BOM:

(2)定义版本号:

(3)指定 BOM 有效期并附加属性:

深圳微算技术

www.weisuan.com

Page 35: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

§1.1.26 生产—导入BOM

先按如下格式整理现有的 BOM 数据:

然后输出为UTF-8的 csv文件。导入BOM数据涉及两个表mrp_bom和mrp_bom_revision。

采用导入脚本 import_bom.py 导入。

深圳微算技术

www.weisuan.com

Page 36: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

§1.1.27 杂项

一、解决 OpenERP6.1 的登录主页的英文问题

从这里(http://www.veryopen.org/wp-content/uploads/base.xml)下载 bse。Xml 并覆

盖 server/openerp/addons/web/static/src/xml/base.xml 即可(老的文件要删掉,不能改

名)。在 Ubuntu 10.04 LTS 中此文件在

/usr/share/pyshared/openerp/addons/web/static/src/xml/中。

二、OpenERP6.1新安装的模块中英文混杂如何解决

新安装 OpenERP 6.1 后会出现部分菜单项显示英文,处理如下:

设置--->翻译--->载入一个官方翻译,然后选取“中文简体”进行导入。导入后要重新

启动数据库、OpenERP 服务,然后重新登录才能正常显示中文。

三、OpenER 6.1 报表中文乱码解决办法

随着 OpenERP V6.1 的推出,广大 CJK 编码用户还是遇到了以下字体的问题,报表的中

文字体成了框框,这个字体问题可以通过安装 oecn_base_font 来解决。

1)、从这里(http://www.veryopen.org/wp-content/uploads/oecn_base_fonts.zip)

下载oecn_base_fonts.zip,解压后把其中的目录拷贝到openerp/addons目录,如果是Linux,

还要拷贝到/usr/lib/pymodules/python2.6/openerp/addons 目录中。

2)、登陆到 OpenERP,点击“设置》模块》更新模块列表”,然后点击“更新”按钮。

3)、再点击“设置》模块》模块”,点击“清除”按钮,然后搜索 oecn_base_fonts,

并安装它。

4)、再点击“设置”,然后点击屏幕中下部的“Configure Fonts Mapping for pdf reports”:

做如上图所示的字体替换,然后点击“Apply”。

配置完了,可以检查系统全局参数(设置》自定义》底层对象》系统全局参数)

深圳微算技术

www.weisuan.com

Page 37: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

5)、注销,然后重启服务,再登录,然后点击“会计》报表》正式报表》资产负载表”,

然后点击“打印”按钮,会产生一个 pdf 文件,里面的中文显示正常了:

四、屏蔽不需要的功能菜单

把相应的菜单授权给“易用性 / Technical Features(Usability / Technical

Features)”组即可,撤权则恢复功能菜单。

五、设置产品价格的小数位数

设置》自定义》小数精度,修改“Purchase Price”的小数位 3

六、Bug 修复

1、执行“会计》客户|供应商|银行和现金》账簿明细”报错:

File "C:\Program Files (x86)\OpenERP 6.1-1\server\.\openerp\sql_db.py", line

212, in execute

DataError: invalid input syntax for integer: "04/2012"

把文件“C:\Program Files\OpenERP

6.1-1\server\openerp\addons\account\account_move_line.py”的下面一行:

cr.execute('SELECT code FROM account_period WHERE id = %s',

(context['period_id'], ))

改为:

cr.execute('SELECT code FROM account_period WHERE code = %s',

(context['period_id'], ))

2、在修改用户组权限时报错:AttributeError: 'NoneType' object has no attribute

'is_transient',这是系统 bug,需要修改程序 OpenERP

6.1-1\server\openerp\addons\base\ir\ir_model.py,找到‘res[model.id] =

深圳微算技术

www.weisuan.com

Page 38: OpenERP 6.1 实施手册 · 2012-05-02 · 非常开源博客() 作者:王良明 邮件:wlm@veryopen.org 众所周知,ERP是三分技术,七分实施,可见任何一个ERP,实施是关键。对OpenERP

非常开源博客(www.veryopen.org) 作者:王良明 邮件:[email protected]

self.pool.get(model.model).is_transient()’,把它替换为‘res[model.id] =

self.pool.get(model.model) and self.pool.get(model.model).is_transient() or

False’,然后重启服务。

深圳微算技术

www.weisuan.com