Migration from 4.8 to 5.0

Should

  • [MANUAL] Before update, set an accounting category to all products which have accounts and taxes defined (see issue3805).

  • [SQL] After update execute the following query DELETE from ir_model_data where model = 'account.journal.type'

  • [MANUAL] After update, synchronize records from Administration > Models > Models > Data

  • [MANUAL] After update, you should create the WriteOff Methods and Payment Methods to override the cash journals used for invoice payments and writeoff journals used for writeoff reconciliation. (see issue7450)

  • [SQL] Remove old user:

    DELETE FROM "ir_model_data" WHERE model = 'res.user' AND "fs_id" = 'user_process_sale' AND module = 'sale';
    DELETE FROM "ir_model_data" WHERE model = 'res.user' AND "fs_id" = 'user_process_purchase' AND module = 'purchase';
    

:arrow_forward: Migration from 5.0 to 5.2

Errors like “ERROR trytond.convert Could not delete id: 10 of model res.user”
should be ignored: see Issue 7771: Users can not be deleted for logging purpose - Tryton issue tracker
The user has been inactivated (you can check it with a SQL query)

  • Some data cannot be synchronized with this message: You are not allowed to modify this reccord.
  • Some others are not synchronized it would seem because of the order of values eg:
    Value: [["account", 71], ["credit_note_account", 760], ["description", "5.5% VAT"], ["group", 1], ["invoice_account", 760], ["name "," VAT Sale of goods 5.5% "], [" rate ", {" __ class __ ":" Decimal "," decimal ":" 0.055 "}], [" type "," percentage "]]
    Values on File System: [["account", 71], ["credit_note_account", 760], ["description", "5.5% VAT"], ["group", 1], ["invoice_account", 760], ["name "," VAT Sale of goods 5.5% "], [" rate ", {" decimal ":" 0.055 "," __ class __ ":" Decimal "}], [" type "," percentage "]]

What should be done in these cases?

It has been improved by Data synchronised always out of sync (#7950) · Issues · Tryton / Tryton · GitLab

They should not be a problem.

They can be definitely ignored for now.

Is there no way to synchronise multiple records at a time?
Seems a PITA to spend so much time to do so one at a time,
especially since it [still] needs two clicks instead of only one.

You can select multiple records and launch the action.

< ctrl >-A, action only gives me ‘translate view’

Although now (after hundred of clicks) I tried to select just a couple and I indeed see synchronise.

Problem with number of records?

For example if I filter with ‘Module: country Désynchronisé: True’, select all the records, only ‘translate view’ is possible.

Now I’ve still around 56 records out of sync, mostly like 2cadz

But a couple of other problems too, like currency currency.currency ars gives

ERROR:tryton.common.common:Traceback (most recent call last):
  File "/trytond/wsgi.py", line 73, in dispatch_request
    return endpoint(request, **request.view_args)
  File "/trytond/protocols/dispatcher.py", line 46, in rpc
    request, database_name, *request.rpc_params)
  File "/trytond/wsgi.py", line 44, in auth_required
    return wrapped(*args, **kwargs)
  File "/trytond/protocols/wrappers.py", line 122, in wrapper
    return func(request, pool, *args, **kwargs)
  File "/trytond/protocols/dispatcher.py", line 176, in _dispatch
    result = rpc.result(meth(*c_args, **c_kwargs))
  File "/trytond/model/modelview.py", line 665, in wrapper
    return func(cls, records, *args, **kwargs)
  File "/trytond/ir/model.py", line 1217, in sync
    Model.write(*values_to_write)
  File "/trytond/model/modelsql.py", line 147, in wrapper
    return func(cls, *args, **kwargs)
  File "/trytond/model/modelsql.py", line 956, in write
    field = cls._fields[fname]
KeyError: 'mon_decimal_point'

'mon_decimal_point'

or account_asset account.journal.type journal_type_asset

===================ERROR:tryton.common.common:Traceback (most recent call last):
  File "/trytond/wsgi.py", line 73, in dispatch_request
    return endpoint(request, **request.view_args)
  File "/trytond/protocols/dispatcher.py", line 46, in rpc
    request, database_name, *request.rpc_params)
  File "/trytond/wsgi.py", line 44, in auth_required
    return wrapped(*args, **kwargs)
  File "/trytond/protocols/wrappers.py", line 122, in wrapper
    return func(request, pool, *args, **kwargs)
  File "/trytond/protocols/dispatcher.py", line 176, in _dispatch
    result = rpc.result(meth(*c_args, **c_kwargs))
  File "/trytond/model/modelview.py", line 665, in wrapper
    return func(cls, records, *args, **kwargs)
  File "/trytond/ir/model.py", line 1205, in sync
    Model = pool.get(data.model)
  File "/trytond/pool.py", line 177, in get
    return self._pool[self.database_name][type][name]
KeyError: 'account.journal.type'

'account.journal.type'