Benvenuto!
Questo è il forum ufficiale dell'Associazione Odoo Italia. Dopo esserti registrato potrai partecipare ponendo domande o rispondendo a quelle esistenti. Non scordarti di compilare il tuo profilo e consultare le linee guida prima di iniziare a scrivere.
ODOO CE v.12.0 (ISO PNLUG) upgrade
Ciao, a gennaio dell'anno scorso ho installato e cominciato usare la vostra distro Odoo CE v12 (ISO PNLUG) ...
ora pero i codici di esenzione non vanno piu bene visto che ne sono stati aggiunti altri e per il forfettario è cambiato.
Esiste una una guida di come fare l upgrade almeno dei moduli ?
EDIT:
Dopo tante prove sono arrivato alla soluzione lascio qua tutti gli step per aggiornare
#fare un backup completo se è una vm
#fare un backup del db dal sito
http://URLODOO.com/web/database/manager
#stoppare il servizio di odoo
sudo service odoo stop
#isntallare pip3
sudo apt update
sudo apt install python3-pip
#per comodità io cancello anche il log del server
rm /var/log/odoo/*
#accedere come user odoo
sudo su -l odoo -s /bin/bash
#aggiroanre openupgrade
pip3 install git+https://github.com/OCA/openupgradelib.git@master
#SALTARE:: aggironare gli oca l10n-italy da git STEP SALTATO
#cd /var/lib/odoo/.local/share/Odoo/addons/12.0/OCA/l10n-italy
#git pull
#aggioranre tutti gli addons
cd /var/lib/odoo/.local/share/Odoo/addons/12.0/custom/
find -maxdepth 1 -type d -exec git --git-dir={}/.git --work-tree=$PWD/{} pull \;
cd /var/lib/odoo/.local/share/Odoo/addons/12.0/OCA/
find -maxdepth 1 -type d -exec git --git-dir={}/.git --work-tree=$PWD/{} pull \;
#verificare i permessi e se mai impostare (in teoria avendo fatto lo switch user ad odoo dovrebbe essere già tutto corretto)
chown odoo:odoo /var/lib/odoo/.local/share/Odoo/addons/12.0/* -R
#aggiornare il db (attenzione sostituire NOMETUODATABASE con il vostro)
cd /usr/bin
./odoo -c /etc/odoo/odoo.conf --limit-time-real 99999 -u all -d NOMETUODATABSE &
#controllare ERRORI e WARNING del log del server odoo
tail /var/log/odoo/odoo-server.log -F
#ASPETTARE!!! fino a che il db non verrà aggiornato
#per temrinare il watch del file file log
CTRT-C
#provare ad aprire odoo nel web, una volta caricato
#termianre il servizio di odoo avviato con l'upgrade del DB
fg
CTR-C
#tornare all'utente con privilegi sudo
exit
#avviare odoo nella maniera standard
sudo service odoo start
#rigenerare assets #(per correggere alcuni errori che avevo nel invio delle email)
Impostazioni >
Attiva la modlità sviluppatore con Assets > Icona del Bug in alto a sx > Rigenera gruppi di assets
Vorrei ringraziare tutti quelli che mi hanno dato dei suggerimenti per arrivare a questo risultato
Ciao,
> Esiste una una guida di come fare l upgrade almeno dei moduli ?
non esiste una guida, quello che devi fare è aggiornare prima il codice e poi il database. Ti riferisci a quelli di https://github.com/OCA/l10n-italy?
Per poterti essere di maggiore aiuto dovrei almeno conoscere il sistema di installazione utilizzato: es. git, pip, ...
Ciao Alex, dopo tutti i vostri consigli sono riuscito ad aggiornare tutti dli addons .. nel primo post ho aggiunto tutto gli step su come fare....
dici che sarebbe possibile inserire tale procedura nella sezione del sito DOC > GUIDE ... credo che non sono l 'unico ad aver scaricato la iso del pnlug e forse sarebbe comoda anche ad altri quella procedura
ciao ho controllato ma non mi sembrano installati con git .. posso cancellari e fare unc lone? ma poi come faccio ad aggiornare il db?
Dovresti poter avviare la tua istanza da linea di comando con:
./odoo-bin -c etc/odoo/odoo.conf -u nome_modulo -d nome_database
con -u all aggiorni tutti i moduli installati nel database.
Se vuoi approfondire puoi fare riferimento a https://www.odoo.com/documentation/12.0/reference/cmdline.html#running-the-server
come immaginavo non è andato tutto a buon fine,
spiego cosa ho fatto.. ..ho controllato meglio e alla fine nella cartella.
/var/lib/odoo/.local/share/Odoo/addons/12.0/OCA/l10n-italy
ho lanciato il comando git pull e mi sembra abbia scaricato gli aggiornamenti dei vari moduli..
per l'aggiornamento al db .. come prima prova ho ricercato il bin come mi avevi detto tu... e lo ho trovato in /usr/bin / ..allora ho lanciato il comando ma mi dava problemi sui permessi visto che lo stavo lanciando come root
allora ho fatto un edit di /etc/init.d/odoo e al termine della funzione start o aggiunto -u all -d NOMEMIODB
ho avviato odoo ma ricevo questo errore che non capisco bene cosa sia... sembra che il db non si sia aggiornato?
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/api.py", line 1049, in get
value = self._data[key][field][record._ids[0]]
KeyError: 1
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/fields.py", line 1032, in __get__
value = record.env.cache.get(record, self)
File "/usr/lib/python3/dist-packages/odoo/api.py", line 1051, in get
raise CacheMiss(record, field)
odoo.exceptions.CacheMiss: ('res.company(1,).name', None)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/qweb.py", line 348, in _compiled_fn
return compiled(self, append, new, options, log)
File "<template>", line 1, in template_website_layout_55
File "<template>", line 2, in body_call_content_54
File "/usr/lib/python3/dist-packages/odoo/fields.py", line 1036, in __get__
self.determine_value(record)
File "/usr/lib/python3/dist-packages/odoo/fields.py", line 1139, in determine_value
record._prefetch_field(self)
File "/usr/lib/python3/dist-packages/odoo/models.py", line 2880, in _prefetch_field
result = records.read([f.name for f in fs], load='_classic_write')
File "/usr/lib/python3/dist-packages/odoo/models.py", line 2818, in read
self._read_from_database(stored, inherited)
File "/usr/lib/python3/dist-packages/odoo/models.py", line 2945, in _read_from_database
cr.execute(query_str, params)
File "/usr/lib/python3/dist-packages/odoo/sql_db.py", line 148, in wrapper
return f(self, *args, **kwargs)
File "/usr/lib/python3/dist-packages/odoo/sql_db.py", line 225, in execute
res = self._obj.execute(query, params)
psycopg2.ProgrammingError: column res_company.max_invoice_in_xml does not exist
LINE 1: ...company"."invoice_is_email" as "invoice_is_email","res_compa...
^
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/api.py", line 1049, in get
value = self._data[key][field][record._ids[0]]
KeyError: 6
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/fields.py", line 1032, in __get__
value = record.env.cache.get(record, self)
File "/usr/lib/python3/dist-packages/odoo/api.py", line 1051, in get
raise CacheMiss(record, field)
odoo.exceptions.CacheMiss: ('res.users(6,).groups_id', None)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/qweb.py", line 374, in get_template
document = options.get('load', self.load)(template, options)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_qweb.py", line 122, in load
template = env['ir.ui.view'].read_template(name)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 1216, in read_template
return self._read_template(self.get_view_id(xml_id))
File "<decorator-gen-33>", line 2, in _read_template
File "/usr/lib/python3/dist-packages/odoo/tools/cache.py", line 86, in lookup
key = key0 + self.key(*args, **kwargs)
File "<string>", line 1, in <lambda>
File "/usr/lib/python3/dist-packages/odoo/fields.py", line 1036, in __get__
self.determine_value(record)
File "/usr/lib/python3/dist-packages/odoo/fields.py", line 1139, in determine_value
record._prefetch_field(self)
File "/usr/lib/python3/dist-packages/odoo/models.py", line 2880, in _prefetch_field
result = records.read([f.name for f in fs], load='_classic_write')
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/res_users.py", line 1235, in read
res = super(UsersView, self).read(other_fields, load=load)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/res_users.py", line 451, in read
return super(Users, self).read(fields=fields, load=load)
File "/usr/lib/python3/dist-packages/odoo/models.py", line 2818, in read
self._read_from_database(stored, inherited)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/res_users.py", line 369, in _read_from_database
super(Users, self)._read_from_database(field_names, inherited_field_names)
File "/usr/lib/python3/dist-packages/odoo/models.py", line 2945, in _read_from_database
cr.execute(query_str, params)
File "/usr/lib/python3/dist-packages/odoo/sql_db.py", line 148, in wrapper
return f(self, *args, **kwargs)
File "/usr/lib/python3/dist-packages/odoo/sql_db.py", line 225, in execute
res = self._obj.execute(query, params)
psycopg2.InternalError: current transaction is aborted, commands ignored until end of transaction block
load could not load template
Template: website.layout
Messaggio di errore:
None
psycopg2.ProgrammingError: column res_company.max_invoice_in_xml does not exist
LINE 1: ...company"."invoice_is_email" as "invoice_is_email","res_compa...
Il campo che non trova è max_invoice_in_xml aggiunto da https://github.com/OCA/l10n-italy/pull/1859
Assicurati che sia presente nel tuo codice. Se non fosse così, all'interno di /var/lib/odoo/.local/share/Odoo/addons/12.0/OCA/l10n-italy puoi utilizzare il seg. comando:git reset --hard origin/12.0
Questo errore riguardante il campo max_invoice_in_xml a me l'ha dato nelle installazioni dove era presente openupgradelib versione 2 invece di versione 3.
Purtroppo openupgradelib su Pypi non è aggiornato e quindi bisogna installarlo con:
pip install git+https://github.com/OCA/openupgradelib.git@master
Il problema è che se si arriva a quel problema le migrations sono già state eseguite e la versione del pacchetto aggiornata, quindi è necessario manualmente sul db fare il downgrade modificando il campo latest_version nella tabella ir_module_module.
O perlomeno questa è la strada che ho trovato io.
Ciao guardando il log del server `ho trovato alcuni errori di openupgrade ma avevo gia eseguito il tuo comando.
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/modules/registry.py", line 86, in new
odoo.modules.load_modules(registry._db, force_demo, status, update_module)
File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 417, in load_modules
force, status, report, loaded_modules, update_module, models_to_check)
File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 313, in load_marked_modules
perform_checks=perform_checks, models_to_check=models_to_check
File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 177, in load_module_graph
migrations.migrate_module(package, 'pre')
File "/usr/lib/python3/dist-packages/odoo/modules/migration.py", line 181, in migrate_module
mod = load_script(pyfile, name)
File "/usr/lib/python3/dist-packages/odoo/modules/migration.py", line 46, in load_script
spec.loader.exec_module(module)
File "<frozen importlib._bootstrap_external>", line 678, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/var/lib/odoo/.local/share/Odoo/addons/12.0/OCA/l10n-italy/l10n_it_ddt/migrations/12.0.1.7.1/pre-migrate.py", line 4, in <module>
from openupgradelib import openupgrade
ModuleNotFoundError: No module named 'openupgradelib'
secondo te cosa è?
ti manca la libreria openupgradelib
TROVATO:
avevo proavto ad eseguire il tuo camando.
pip install git+https://github.com/OCA/openupgradelib.git@master
e avevo ricevuto un errore che mancava pip alloraavevo fatto
apt-install pip
ma cosi facendo installava python 2.7 . Conq eusti commandi ho risolto
sudo apt install python3-pip
pip3 install git+https://github.com/OCA/openupgradelib.git@master
Allora ho provato a vedere e mi sa che era un problema di permessi....
però ora ho questo errore (vedi sotto)
Allora sono andato a cercare questo campo e lo ho trovato nel file : \l10n_it_fatturapa_pec\models\account.py e il file mi sembra uguale uguale a quello che trovo nel repository
allora ho abilitato le funzioni tecniche ..sono andato in Struttura DB > Modelli > account.invoice > e li lo trovo il campo!
:( sto diventando matto ..scusa se faccio così tante domande Alex!
Campo base
Odoo Server Error
aceback (most recent call last): File "/usr/lib/python3/dist-packages/odoo/http.py", line 656, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "/usr/lib/python3/dist-packages/odoo/http.py", line 314, in _handle_exception raise pycompat.reraise(type(exception), exception, sys.exc_info()[2]) File "/usr/lib/python3/dist-packages/odoo/tools/pycompat.py", line 87, in reraise raise value File "/usr/lib/python3/dist-packages/odoo/http.py", line 698, in dispatch result = self._call_function(**self.params) File "/usr/lib/python3/dist-packages/odoo/http.py", line 346, in _call_function return checked_call(self.db, *args, **kwargs) File "/usr/lib/python3/dist-packages/odoo/service/model.py", line 98, in wrapper return f(dbname, *args, **kwargs) File "/usr/lib/python3/dist-packages/odoo/http.py", line 339, in checked_call result = self.endpoint(*a, **kw) File "/usr/lib/python3/dist-packages/odoo/http.py", line 941, in __call__ return self.method(*args, **kw) File "/usr/lib/python3/dist-packages/odoo/http.py", line 519, in response_wrap response = f(*args, **kw) File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/main.py", line 963, in call_kw return self._call_kw(model, method, args, kwargs) File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/main.py", line 955, in _call_kw return call_kw(request.env[model], method, args, kwargs) File "/usr/lib/python3/dist-packages/odoo/api.py", line 755, in call_kw return _call_kw_model(method, model, args, kwargs) File "/usr/lib/python3/dist-packages/odoo/api.py", line 728, in _call_kw_model result = method(recs, *args, **kwargs) File "/usr/lib/python3/dist-packages/odoo/models.py", line 1396, in load_views for [v_id, v_type] in views File "/usr/lib/python3/dist-packages/odoo/models.py", line 1396, in <dictcomp> for [v_id, v_type] in views File "/usr/lib/python3/dist-packages/odoo/addons/account/models/account_invoice.py", line 642, in fields_view_get return super(AccountInvoice, self).fields_view_get(view_id=view_id, view_type=view_type, toolbar=toolbar, submenu=submenu) File "/usr/lib/python3/dist-packages/odoo/addons/mail/models/mail_thread.py", line 409, in fields_view_get res = super(MailThread, self).fields_view_get(view_id=view_id, view_type=view_type, toolbar=toolbar, submenu=submenu) File "/usr/lib/python3/dist-packages/odoo/models.py", line 1482, in fields_view_get xarch, xfields = View.postprocess_and_fields(self._name, etree.fromstring(result['arch']), view_id) File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 1138, in postprocess_and_fields self.raise_view_error(message, view_id) File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 568, in raise_view_error raise ValueError(message) ValueError: Il campo `fatturapa_state` non esiste Contesto errore: Vista `account.invoice.tree.with.onboarding` [view_id: 879, xml_id: account.invoice_tree_with_onboarding, model: account.invoice, parent_id: 878]assieme a molti altrisono andato a vedere se il file fatturapa_tate esisteva e lo ho trovato in : .
Ciao Alex io ho scaricato la iso che viene pubblicizzata qua sul sito con Ubuntu e preinstallato anche odoo... Però non so che metodo abbiamo utilizzato quelli del lun per crearla 😱
Se hai usato l'ultima versione della ISO (v. 0.5.0) i parametri dovrebbero essere questi:
1) file di configurazione: /etc/odoo/odoo.conf
2) come directory per gli addons è stata usata quella standard usata da odoo: /var/lib/odoo/.local/share/Odoo/addons/12.0
In particolare:
Repository OCA: /var/lib/odoo/.local/share/Odoo/addons/12.0/OCA
Repository custom: /var/lib/odoo/.local/share/Odoo/addons/12.0/custom
3) utente utilizzato: odoo
P.S.: i repository vengono gestiti tramite git.
Mi sa che è precedente alla 0.5.. mi conviene aggiornare a quella ? E poi fare un git pull ?
Intanto verifica se i parametri della tua ISO corrispondono a quelli indicati ai punti 1) 2) e 3).
Ciao, ho controllato
1) si
2) quasi, nel config ci sono le specifiche cartelle di ogni modulo
es.
/var/lib/odoo/.local/share/Odoo/addons/12.0/OCA/account-financial-tools,
....
3) si odoo viene lanciato con l'utente odoo (controllato tramite htop)
Ok, hai dovresti avere tutti i parametri necessari che chiedeva Alex.
P.S.: verifica solo se i repo di quella versione non recente della ISO vengono gestiti tramite git. Se così non fosse basta eventualmente eliminare le singole directory dei repository rimpiazzandole poi con un git clone dei vari repo. Non farlo ora però, altrimenti ti aggiorna subito tutti i moduli e non parte più il db.
Allora ho controllato ma io non vedo nessun .git file.....
Scsuate se insito ma allroa come dovrei procedere:.
1) backup virtualmachine
2) ?? cancellare cartalla /var/lib/odoo/.local/share/Odoo/addons/12.0/OCA/l10n-italy,
3) ?? nella cartella OCA fare: git clone git@github.com:OCA/l10n-italy.git
4) ma poi alex diceva anche di aggiornare il db? quello come si fa?
ma poi dovrei aggiroanre anche gli altri moduli? e odoo? eee... ?
scusate della mia ignoranza
Resta informato
Informazioni sulla comunità
Strumenti di richiesta
Statistiche
Richiesta del: 07/01/21, 17:11 |
Vista: 2108 volte |
Ultimo aggiornamento: 14/01/21, 14:35 |
Entra in contatto diretto con la comunità.
Unisciti alla chat Discord.