我也是OpenERP和Python的新手 . 我有 OpenERP 6.0.4
我使用 python 2.7 修改了 account 文件夹中的 invoice.py 文件(我刚刚编辑并保存了文件,我没有编译任何东西) .
我所做的更改是如何计算总金额,我需要总金额总计加0.3欧元 .
然后我重新启动OpenERP服务器,我也去了admnisitration> modules>设置 account module 进行升级,然后应用升级 .
然后我开始了一张新发票,并没有反映出这些变化 .
出于测试目的,由于我正确编码,我修改了将鼠标悬停在发票界面中的"Residual"上时显示的帮助消息,方法是将invoice.py中的行从 help="Remaining amount due."
修改为 help="This is just for testing."
我重新启动了服务器并升级了模块,甚至没有反映出这种变化 .
我甚至创建了一个新的数据库,但仍未显示修改 .
我错过了什么吗?甚至可以编辑核心模块吗?这有什么解决方法吗?
最终解决方案:卸载并重新安装服务器解决了问题 .
3 回答
最可能的原因是正在使用的
addons
目录与您正在编辑的目录不同 . 您可以确定是否更改了addons
目录的名称,并且可以毫无问题地重新启动服务器 . 您还可以尝试将--addons-path
参数设置为server start命令 .如果/当您确认正在处理正确的文件时,请尝试在视图上进行小的文本更改,因为这些更改在模块升级后立即可见,而不需要重新启动服务器 . 例如,尝试更改
account\partner_view.xml
上的某些string
属性 .稍微偏离主题,但很重要:您应该直接在源代码中修改核心模块 . 正确的方法是在您自己的模块中扩展核心类,这取决于核心模块 .
从您的评论中,您似乎想要为发票添加设定的税额 . 看看http://doc.openerp.com/v6.1/book/3/3_7/invoicing.html#tax-management - openerp已经满足了这个需求,然后你不需要破解应该是你的最后手段的源代码:)