Forum

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.

0

Odoo 11, calcolo sbagliato!!! Vedi immagine

Avatar
Denis Gottardello

Come da immagine si vede un importo docuto pari ad 80,61 € che invece dovrebbero essere 0. facendo i calcoli a mano sembra che odoo abbia toppato di brutto.

Fatta una figuraccia con il cliente, avreste un'idea di cosa sia successo e di come sistemare?

http://www.denisgottardello.it/odoo11.png


Avatar
Abbandona
7 Risposte
0
Avatar
Luigi Di Naro
Migliore risposta

Residual e Total sono campi calcolati e storicizzati su DB.

https://github.com/odoo/odoo/blob/12.0/addons/account/models/account_invoice.py#L371

Evidentemente qualcosa è andato storto durante il calcolo, evento raro ma non impossibile, ed il campo sul db non è stato aggiornato e non verificandosi ulteriori eventi che forzano il ricalcolo l'ORM continua a prendere il valore dal db seppur errato.

L'evento che lo abbia scatenato credo sia abbastanza difficile da simulare, in ogni caso è una eventualita' che puo' accadere ... lato codice risolvi re-invocando il metodo di calcolo, da db con aggiornamento del valore sulla tabella. Il problema credo sia noto ma non di facile soluzione o quasi impossibile soluzione. Se per qualche motivo il dato non riesce ad essere finalizzato sul db l'ORM non ha modo di capire se quello che legge dalla tabelle e' reale o "passato", dovrebbe rifare il calcolo invalidando il vantaggio dello store=True ed introducendo problemi non banali in termini di prestazioni. 

Tutto questo per dire, nei rari casi in cui capita .... lo gestisci, c'e' poco da fare.

Avatar
Abbandona
0
Avatar
Denis Gottardello
Migliore risposta

Una volta annullati i pagamenti ho dovuto apportare modifiche alle tabelle account_invoice ed account_move_line.

Non ho idea di come replicare il problema. Speriamo non capiti ancora.

Avatar
Abbandona
0
Avatar
Sergio Corato
Migliore risposta

Dovresti indicare i passi precisi per riprodurre il problema, inoltre sarebbe da fare su una issue in github e non qui.

Avatar
Abbandona
0
Avatar
Denis Gottardello
Migliore risposta

L'importo dovuto è un valore salvato da qualche parte oppure è calcolato a run time?

Avatar
Abbandona
0
Avatar
Denis Gottardello
Migliore risposta

L'importo dovuto è un valore salvato da qualche parte oppure è calcolato a run time?

Avatar
Abbandona
0
Avatar
Sergio Corato
Migliore risposta

Non mi è chiara la risposta, i test li faranno gli sviluppatori che vogliono verificare il problema, su delle installazioni di prova.

Per aprire una issue su github è sufficiente andare qui e cliccare su 'New issue' scrivendo là quello che avresti scritto qui.

Avatar
Abbandona
0
Avatar
Denis Gottardello
Migliore risposta

Purtroppo non saprei come, e comunque si tratta del gestionale ufficiale dove non si può sperimentare.

Sto caricando i pagamenti da un paio di anni e questa è la prima volta che trovo un errore del genere.

Che tabelle posso controllare per vedere di sistemare il problema? Me le puoi indicare?

Avatar
Abbandona