Questo sito utilizza cookie per le proprie funzionalità e per inviarti pubblicità e servizi in linea con le tue preferenze. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsenti all’uso dei cookie.

Accedendo al link http://www.odoo-italia.org/index.php/home/cookie-policy puoi leggere in dettaglio le modalità di trattamento dei cookie da parte dell'Associazione Odoo Italia.

Benvenuto, Ospite
Nome utente: Password: Ricordami
Ricordati di inserire la versioni di Odoo per cui poni la domanda

ARGOMENTO: Rifatturazione Spese / Contabilita' Analitica

Rifatturazione Spese / Contabilita' Analitica 2 Anni 11 Mesi fa #23661

  • cyrax
  • Avatar di cyrax
  • Offline
  • Fresh Boarder
  • Messaggi: 4
  • Karma: 0
Salve,

sto cercando di strutturarmi con odoo 8 per una impresa di assistenza informatica,
e ho dei problemi sulla rifatturazione ai clienti delle spese che i dipendenti
registrano sul modulo hr_expense.

il mio scenario e' questo:
- ho dei contratti attivi con dei miei clienti, che prevedono in particolare la possibilita' di rifatturare
le spese sostenute (quindi rimborso kilometrico e fatture dei pasti dei dipendenti)
(esempoi diciamo che c'e' un solo contratto AA1)

- un mio dipendente fa nota spese mensilmente su odoo, ogni spesa riporta la data precisa del giorno in cui
e' stata fatta e una descrizione. Ogni spesa e' associata al conto analitico corretto.
Quindi esempio:

10/1/2016 Viaggio Viaggi presso vostra filiale X, Conto analitico AA1 10 euro
15/1/2016 Viaggio Viaggio verso vostra filiale Y, Conto analitico AA1 20 euro

- quando il 31/1/2016 approvo la nota spese, odoo mi crea un unica registrazoine contabile, datata il 31/1/2016
(tralascio le imposte per semplicita').

- nella contabilita' analitica ora mi trovo come righe da rifatturare le due spese del dipedente
Pero' se creo la fattura mi crea un unica riga con il totale 30 euro e con data 31/1/2016. (e con
una descrizione che contiene la concatenazione delle righe di spese).

A me piacerebbe avere in fattura il dettaglio di tutte le spese rifatturate, in particolare senza perdere
la data e l'importo delle singole voci.

---
Ho provato a vedere un po' il codice, credo che in sostanza dovrei modificare il file dentro hr_expense
che crea le righe delle account_move ... ma mi sembra un po' troppo complicato come prima modifica
al codice e sono un po' scoraggiato :)

Qualcuno ha qualche consiglio su come raggiungere o avvicinarmi a cio' che mi serve ?
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Rifatturazione Spese / Contabilita' Analitica 2 Anni 11 Mesi fa #23665

  • enlightx
  • Avatar di enlightx
  • Online
  • Platinum Boarder
  • Messaggi: 6064
  • Ringraziamenti ricevuti 638
  • Karma: 85
Ciao,
ti rimando a questo thread siccome missà che si sta parlando della stessa cosa :-)

www.odoo-italia.org/index.php/kunena/19-...attura%3Fstart=6#23664
Davide Corio
Odoo Solution Architect
email: Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo.
web: www.davidecorio.com
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Rifatturazione Spese / Contabilita' Analitica 2 Anni 10 Mesi fa #23695

  • cyrax
  • Avatar di cyrax
  • Offline
  • Fresh Boarder
  • Messaggi: 4
  • Karma: 0
intanto grazie per la risposta.

Si diciamo che il problema apparentemente protrebbe essere risolto con un report custom..
ma la questione di fondo e' un po' diversa.

Il processo e' questo:
l'impiegato crea un hr.expense_line, che ha la data corretta della spesa e un conto analitico associato

il manager a fine mese registra la nota spese, crea quindi una
account_move line che ha conto analitico corretto ma DATA errata (quella dell'approvazione)

poi in fatturazione la account_move line diventa una riga di fattura
che ha ancora la data sbagliata.

--
Questo crea un bel casino se si vuole fare un report delle spese sostenute per un conto analitico (e avere
la data corretta).

Se facessi un report a partire dalle account_move lines filtrando per il conto analitico avrei
le date sbagliate.

Se partissi dalle hr_expense_line avrei le date giuste, pero' non e' un grande approccio..
perderei tutte le altre spese legate al conto analitico.

---
Boh.. forse farei prima a cambiare il modulo hr_expense in modo che quando la
nota spese viene approvata non crei un solo account_move con la data di registrazione
della nota spese, ma tanti account_move, uno per ogni singola expense_line e con la data giusta.
Tutto sommato credo che sarebbe giusto cosi'.

Non so se sono riuscito a spiegare bene il mio problema.

Se si, hai qualche suggerimento sull'approccio da seguire :) ?
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Rifatturazione Spese / Contabilita' Analitica 2 Anni 10 Mesi fa #23696

  • enlightx
  • Avatar di enlightx
  • Online
  • Platinum Boarder
  • Messaggi: 6064
  • Ringraziamenti ricevuti 638
  • Karma: 85
Quello che generalmente si fa è allegare l'elenco delle righe analitiche che hanno generato la fattura.
le registrazioni contabili sono spesso raggruppate e quindi non sono abbastanza "analitiche".

in serata dovrei riuscire a terminare l'howto che stavo scrivendo e vi posto il link qui.
spero sia di aiuto.
Davide Corio
Odoo Solution Architect
email: Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo.
web: www.davidecorio.com
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Rifatturazione Spese / Contabilita' Analitica 2 Anni 10 Mesi fa #23724

  • cyrax
  • Avatar di cyrax
  • Offline
  • Fresh Boarder
  • Messaggi: 4
  • Karma: 0
quello che mi proponi puo' essere una parte della soluzione, ma il mio problema e' ancora prima.

Il mio problema e' che le righe analitiche create dal modulo spese non tengono la data corretta.
Tutte le righe analitiche prendono la data di approvazione della nota spese e perdono la data della spesa stessa.

--
Sto provando a modificare il file hr_expense.py per fargliele creare con la data giusta.. ma da neofita mi sembra
tutto un po' ingarbugliato.

Da quel che capisco.. il modulo hr_expense crea delle account_move_line (da cui si generano in automatico anche le account_analyitic_line se e' definito un conto analitico).

--
Se arrivo in fondo a risolvere questa cosa dopo provero' a installare e modificare la bozza di modulo che hai girato sull'altro thread.

Intanto, di nuovo grazie
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Rifatturazione Spese / Contabilita' Analitica 2 Anni 10 Mesi fa #23725

  • cyrax
  • Avatar di cyrax
  • Offline
  • Fresh Boarder
  • Messaggi: 4
  • Karma: 0
WIN :) pero' che fatica.

Lascio due righe per i posteri (e anche magari per avere qualche consiglio se sto facendo le cose in modo corretto visto che e' la mia prima modifica)

Ho dovuto modificare il fire hr_expense.py in due punti,

Nella funzione move_line_get_item ho cambiato il return aggiungendo anche il campo "data", prendendolo dalla riga date_value della expense_line. Il return diventa quindi:
return {
            'type':'src',
            'name': line.name.split('\n')[0][:64],
            'price_unit':line.unit_amount,
            'quantity':line.unit_quantity,
            'price':line.total_amount,
            'account_id':acc.id,
            'product_id':line.product_id.id,
            'uos_id':line.uom_id.id,
            'account_analytic_id':line.analytic_account.id,
            'date':line.date_value, # RIGA AGGIUNTA
        }

E poi ho cambiato la funzione line_convert, che e' quella che viene usata per ogni entry dell'array di prima, e che crea
effettivamente l'array che viene usato per creare le account_move_line .
Questo era proprio il punto in cui piazzava il campo "date" uguale per tutte le righe.
def line_get_convert(self, cr, uid, x, part, date, context=None):
        partner_id  = self.pool.get('res.partner')._find_accounting_partner(part).id
        return {
            'date_maturity': x.get('date_maturity', False),
            'partner_id': partner_id,
            'name': x['name'][:64],
            'date': x.get('date',date),  ## RIGA CAMBIATA. PRENDE DATE SE SETTATO IN X.
            'debit': x['price']>0 and x['price'],
            'credit': x['price']<0 and -x['price'],
            'account_id': x['account_id'],
            'analytic_lines': x.get('analytic_lines', False),
            'amount_currency': x['price']>0 and abs(x.get('amount_currency', False)) or -abs(x.get('amount_currency', False)),
            'currency_id': x.get('currency_id', False),
            'tax_code_id': x.get('tax_code_id', False),
            'tax_amount': x.get('tax_amount', False),
            'ref': x.get('ref', False),
            'quantity': x.get('quantity',1.00),
            'product_id': x.get('product_id', False),
            'product_uom_id': x.get('uos_id', False),
            'analytic_account_id': x.get('account_analytic_id', False),
        }
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.
Tempo creazione pagina: 0.138 secondi

Odoo Italia Associazione - C.F: 94200470485 - Sede: Viale dei Cadorna, 83 - Firenze - Italy

Protected by R Antispam