红联Linux门户
Linux帮助

升级OpenERP 6.0.x的数据库到OpenERP 6.1

发布时间:2014-11-24 09:41:43来源:linux网站作者:kaiyuanlvzhou

原文地址:http://www.openerp.com/forum/topic30414.html
请谨慎操作,尚未验证。


I'm in the process of doing a test-migration of a 6.0.2 database across to 6.1rc1. I'm a complete newcomer to OpenERP, having only started developing on it about a fortnight ago, so this is something of a baptism of fire.

What follows are some notes that got something up and running on my local instance so I could explore OpenERP 6.1. It may or may not work for you, and of course, there is no warranty whatsoever.


1. Fix up the 'serioalization_field_id' KeyError bug:
ALTER TABLE ir_model_fields ADD column serialization_field_id int references ir_model_fields on delete cascade;

Reference:
https://bugs.launchpad.net/openobject-server/+bug/908069


2. Drop some modules temporarily:

You might find you get duplicate certificate errors out of SQL; these were the specific offenders I came across, your list may be different. I am not certain that deleting them is the right answer here, but it at least gets past the blockage.

DELETE FROM ir_module_module WHERE certificate='00899858104035139949';
DELETE FROM ir_module_module WHERE certificate='001056784984222247309';
DELETE FROM ir_module_module WHERE certificate='001278773815818292125';


3. Add new columns to ir_module_module:

ALTER TABLE ir_module_module ADD COLUMN "sequence" integer;
ALTER TABLE ir_module_module ALTER COLUMN "sequence" SET DEFAULT 100;
ALTER TABLE ir_module_module ADD COLUMN complexity character varying(32);
ALTER TABLE ir_module_module ADD COLUMN icon character varying(128);
ALTER TABLE ir_module_module ADD COLUMN application boolean;
ALTER TABLE ir_module_module ALTER COLUMN application SET DEFAULT false;


4. Add new columns to res_company:

These I think are part of account_voucher, but I found I could not do anything until I manually added them.

ALTER TABLE res_company ADD COLUMN expense_currency_exchange_account_id integer;
COMMENT ON COLUMN res_company.expense_currency_exchange_account_id IS 'Expense Currency Rate';
ALTER TABLE res_company ADD COLUMN income_currency_exchange_account_id integer;
COMMENT ON COLUMN res_company.income_currency_exchange_account_id IS 'Income Currency Rate';


5. Update all modules

openerp-server --db_host=localhost --log-level=debug -r openerp -d development --update=all

Finger's crossed, you should at least be able to log in and do things. I find that much of the data survived, and now it's a matter of getting views and custom modules going.