Loading

随笔分类 -  OpenERP 二次开发

摘要:在 tree 的后边添加自定义css 列:“my_class"然后在对应的css文件中,添加样式:保存,重新刷新页面即可。 阅读全文
posted @ 2014-03-26 19:42 青岛欧姆网络科技 阅读(807) 评论(0) 推荐(0) 编辑
摘要:Report Designer 模块在生成新报表的时候是有BUG的不建议直接使用,不过我们也可以通过该插件再写简单的代码来实现新添加报表,插件安装成功后我们可以按照下列方法来添加报表OpenERP 简单报表开发指南1.模块基本元素shineit_account_demo-init.py-openerp.py- report.xml- report.pyinit.py本例子我们并不需要引入python文件,不过作为模块,__init__.py还是需要创建。openerp.py{'name': 'Shineit Report Demo','version&# 阅读全文
posted @ 2014-03-26 09:09 青岛欧姆网络科技 阅读(937) 评论(4) 推荐(0) 编辑
摘要:整个代码中比较关键的地方是如何统计出不同库位的产品数量。 阅读全文
posted @ 2014-03-25 15:13 青岛欧姆网络科技 阅读(321) 评论(0) 推荐(0) 编辑
摘要:1. workflow: 默认是这种类型,如果你需要创建工作流类型的button使用这个2. object: 调用function的类型,如果你需要调用py文件中同名的方法,使用该类型。3.action: 如果你需要使用wizard,使用该类型。 阅读全文
posted @ 2014-03-18 08:56 青岛欧姆网络科技 阅读(450) 评论(0) 推荐(0) 编辑
摘要:解决方法:find / -name supervisor.sockunlink /name/supervisor.sock2.www-data 用户是干什么用的3.如何通过supervisor启动openerp 编辑/etc/supervisor/supervisord.conf 添加如下代码可以在网页端访问supervisor服务 [inet_http_server] port =127.0.0.1:9001 username=admin password = 123456[program:openerp];oe启动脚本command=python /var/www/openerp/open 阅读全文
posted @ 2014-03-13 09:26 青岛欧姆网络科技 阅读(8745) 评论(0) 推荐(0) 编辑
摘要:例:context.get('variant',False)意思是如果context中不包括variant 就返回False. 阅读全文
posted @ 2014-03-10 15:48 青岛欧姆网络科技 阅读(534) 评论(0) 推荐(0) 编辑
摘要:1 import logging 2 from openerp.osv import orm 3 4 _logger = logging.getLogger(__name__) 5 6 7 class project_task_work(orm.Model): 8 _inherit = 'project.task.work' 9 10 def create(self, cr, uid, vals, context=None):11 _logger.debug('Create a %s with vals %s', self._name, vals)12 ... 阅读全文
posted @ 2014-03-10 15:34 青岛欧姆网络科技 阅读(240) 评论(0) 推荐(0) 编辑
摘要:最初的思路是利用sql_constraints 来限制重复的供应商名称,但后来想到在OE中供应商、客户乃至员工都隶属于Partner,sql_constrainst实际上是通过限制partner来限制供应商的,这样的后果就是同时也限定住了客户,如果恰好有客户跟供应商重名,这就不太好办了,所以,改变思路,利用constraints来限制。 阅读全文
posted @ 2014-03-07 18:10 青岛欧姆网络科技 阅读(291) 评论(0) 推荐(0) 编辑
摘要:OE中的对象关系一共分四种,one2one,one2many,many2one,many2many.他们的意思分别是一对一,一对多,多对一以及多对多。我们新建一个模块来测试这四种类型1.one2one (many2one)的类型:one2one的类型在OE5.0版本以后就不推荐使用了,使用many2one代替了。fields.many2one(关联对象Name, 字段显示名, ... )。可选参数有:ondelete,可选值为"cascade"和"null",缺省值为"null",表示one端的record被删除后,many端的rec 阅读全文
posted @ 2014-03-05 10:20 青岛欧姆网络科技 阅读(434) 评论(0) 推荐(0) 编辑
摘要:实际操作中特别容易点错而新建了重复的单位,通过下边的方法可以将“search more”和 “create and edit”干掉在新继承product.product的模块中,修改xml文件这样就实现了我的目的。 阅读全文
posted @ 2014-03-04 11:12 青岛欧姆网络科技 阅读(315) 评论(0) 推荐(0) 编辑
摘要:可能的原因有两个,一个是你没有更新模块列表,第二个可能是你原有的列已经有重复的数据。(unique限制为例。) 阅读全文
posted @ 2014-03-02 09:43 青岛欧姆网络科技 阅读(201) 评论(0) 推荐(0) 编辑
摘要:解决方案也就是删除掉不用的数据库,OE会提示当前有N个Session不让Drop数据库。对于Postgres 9.1 版本,在pgAdmin中查询以下语句:SELECT pg_terminate_backend(pg_stat_activity.procpid)FROM pg_stat_activityWHERE pg_stat_activity.datname = 'TARGET_DB' AND procpid pg_backend_pid();对于 9.2+版本:SELECT pg_terminate_backend(pg_stat_activity.pid)FROM pg 阅读全文
posted @ 2014-03-01 21:09 青岛欧姆网络科技 阅读(507) 评论(0) 推荐(0) 编辑
摘要:自己新的的模块在本地运行OK,上传到服务器后,导致所有用户登录不了,并报“ProgrammingError: column “” does not exist”不存在的错误。错误原因,自定义模块发生改变,在res.partner表中添加了列,因为没有更新模块还没有将模块更新到数据库中。因为此时已经登录不了OE,所以无法更新模块,重启OE服务无效。解决方案:采用OE命令手动更新所有模块,在终端中输入一下命令:openerp-server -c configfile -u all报错1:“error: [Errno 98] 地址已在使用“,解决方案:OE服务启用,停掉OE服务即可。报错2:“Ope 阅读全文
posted @ 2014-02-27 16:45 青岛欧姆网络科技 阅读(609) 评论(0) 推荐(0) 编辑
摘要:公司最近在导入开业物品资料,根据同事的需求,需要在供应商资料中添加QQ号一项,根据前段时间自己摸索的经验,准备自己尝试通过继承完成这一需求。模块名定义为rainsoft_partner创建__init__.py,__openerp__.py,rainsoft_partner.py rainsoft_partner_view.xml文件__init__.py和__openerp__.py略过不谈,下面是rainsoft_partner.py的代码: 1 #-*- coding:utf-8 -*- 2 from openerp.osv import fields,osv 3 4 class ra. 阅读全文
posted @ 2014-02-26 15:05 青岛欧姆网络科技 阅读(1182) 评论(0) 推荐(0) 编辑
摘要:问题的前提是你写的模块本身没有问题,我自己碰到的情况是在本机运行可以,但是上传到服务器上以后却无论怎么重启服务都找不到模块。问题的根源在上传的文件权限设置不对:假设自定义模块为rainsoft_partner,现在通过ssh上传到服务器,在路径/usr/lib/pymodules/python-2.7/openerp/addons/rainsoft_partner通过 ls -l 命令查看,结果显示所有文件权限为 -rw-------,通过命令 sudo chmod 644 修改文件权限为 -rw-r--r--,重启openerp服务,发现模块已找到。成功。 阅读全文
posted @ 2014-02-26 14:51 青岛欧姆网络科技 阅读(1067) 评论(0) 推荐(0) 编辑
摘要:问题记录1: No modules named 'xx'原因: __init__.py 文件命名错误!问题记录2:XMLSyntaxError: Attribute name redefined原因:说明文件中有重复定义的属性问题记录3:The model "res.partner.address" specifies an unexisting parent class "res.partner.address" You may need to add a dependency on the parent class' modu 阅读全文
posted @ 2014-02-17 20:06 青岛欧姆网络科技 阅读(608) 评论(0) 推荐(0) 编辑
摘要:安装好OPENERP后,使用 ps -aux|grep openerp从输出的内容可以得到OPENERP的安装信息,/usr/bin/python /usr/bin/openerp-server --config=/etc/openerp/openerp-server.conf --logfile=/var/log/openerp/openerp-server.log其中包含python的安装目录,openerp的安装目录,配置文件所在目录和日志文件所在目录。打开openerp的配置文件(openerp-server.conf),可以看到相关的配置参数 1 [options] 2 ; Th.. 阅读全文
posted @ 2014-02-15 10:04 青岛欧姆网络科技 阅读(1739) 评论(0) 推荐(0) 编辑