Logica di calcolo del preventivo

Documentación •
En este artículo

La base per tutte le elaborazioni contabili e di preventivo è il giornale di calcolo. Per preparare Bilancio, Conto Economico, Schede conti, Rendiconti IVA, il programma crea una struttura dati  interna che viene chiamata giornale di calcolo. I movimenti sono accessibili tramite l'API contabile con la funzione Journal().

La logica per creare il giornale di calcolo è la seguente:

  • Viene creata partendo dai dati inseriti dall'utente.
  • Per ogni movimento finanziario, compresi anche i saldi di apertura, vi è una riga, dove gli elementi principali sono:
    • Origine
      Indica se l'operazione è relativa alla contabilità (corrente) o alla pianificazione (preventivo).
    • Tipo operazione
      Saldo d'apertura, movimento, riporto, compensazione fattura.
    • Data (la data di competenza).
    • Descrizione.
    • Conto.
    • Tipo Conto.
      Indica se si tratta di un conto normale o di un centro di costo o profitto.
    • Importo (moneta base della contabilità).
      I valori in positivo indicano un aumento (dare), mentre quelli negativi una diminuzione (avere).
    • Importo in moneta del conto.
    • Altre colonne:
      • Tutte quelle che sono presenti nella tabella Registrazioni.
      • Diverse altre che servono per i calcoli.

Il giornale di calcolo viene svuotato tutte le volte che viene effettuato il ricalcolo e poi sono aggiunte:

  • Le righe dei movimenti correnti (relativi alla contabilità effettiva).
  • Le righe dei movimenti di preventivo.

Per i calcoli delle previsioni, il programma utilizza sempre il motore di calcolo basato sulla partita doppia. I risultati e la reportistica che si ottengono sono quindi molto simili tra le varie tipologie di contabilità.

Le righe dei valori correnti (effettivo)

Le righe per i valori correnti sono aggiunte al giornale temporaneo partendo dai seguenti dati:

  • Saldi iniziali contenuti nella tabella Conti
    Per ogni conto con un saldo, viene creata una riga.
    • Data - è la data dell'inizio della contabilità.
    • Conto - è il conto.
    • L'importo - è il saldo d'apertura.
  • Movimenti contabili, provenienti dalla tabella registrazioni.
    Se il movimento ha più conti, conto dare, conto avere, conto IVA, centro di costo, viene generata una riga per ogni conto con il relativo importo in positivo o negativo.

Le righe dei valori di preventivo

Le righe per i valori di preventivo sono aggiunte al giornale temporaneo partendo dai:

  • Saldi iniziali contenuti nella tabella Conti
    Come per i valori contabili, per ogni conto con un saldo, viene creata una riga di preventivo.
  • Movimenti di pianificazione (con la tabella Preventivo)
    Come per la contabilità, per ogni movimento sul conto, vengono create delle righe, partendo dalla tabella Preventivo.
    • Quelli statici, con tutti i valori impostati.
    • Movimenti ripetuti:
      • Per tutto il periodo di proiezione definito, sulla base del codice di ripetizione, il programma crea dei duplicati delle righe di preventivo e imposta la data.
      • Il programma genera le righe ripetute in base al contenuto delle colonne Data inizio, Data fine e Ripetizione.
      • Se il periodo di proiezione è l'anno solare e a gennaio vi è la registrazione dell'affitto con ripetizione mensile, il programma crea dei duplicati per gli 11 mesi successivi.
      • Se la registrazione è al 31 gennaio, per i mesi che non hanno 31 giorni, il giorno sarà l'ultimo del mese.
      • Se la prima registrazione è al 28 di marzo e il codice di ripetizione è indicato come fine mese, nei mesi successivi, il giorno sarà quello dell'ultimo del mese.
    • Come per i movimenti contabili, se sulla riga di preventivo ci sono più conti, viene generata una riga per ogni conto.
  • Movimenti partendo dal Budget annuale (se manca la tabella Preventivo)
    Se manca la tabella Preventivo, le righe di preventivo sono create partendo dal contenuto della colonna Budget della tabella Conti e Categorie:
    • Vengono calcolati i mesi che ci sono nel periodo contabile.
    • Viene creata una riga per ogni mese.
    • L'importo contenuto nella colonna Budget viene diviso per il numero di mesi.
    • Se vi è una differenza d'arrotondamento, viene creata una riga supplementare per il mese finale.

Terminata la creazione, le righe sono ordinate in ordine crescente.

Calcolo della colonna Importo

Una volta creato il giornale di calcolo viene ricalcolato il contenuto della colonna importo di tutte le righe di preventivo, che contengono una formula, una quantità o un prezzo unitario.

Risoluzione delle formule in Javascript:

  • Creazione interprete Javascript
    Tutte le volte che viene creato il giornale di calcolo, viene anche creato un'istanza di un'interprete Javascript, specifica per la risoluzione delle formule di Preventivo.
  • Inizializzazione interprete Javascript
    L'interprete Javascript viene inizializzato eseguendo degli script.
    • Gli script predefiniti di Banana Contabilità.
    • Il contenuto del file _budget.js eventualmente presente nella tabella Documenti.
      In questo modo l'utente può inizializzare delle variabili o creare delle proprie funzioni di calcolo.
  • Risoluzione delle formule
    • Le formule contenute nelle righe del giornale temporaneo sono risolte una dopo l'altra nella sequenza progressiva di data.
    • Lo stato dell'interprete Javascript è mantenuto dopo ogni operazione, pertanto la formula può fare riferimento a variabili definite in una riga con una data precedente.
    • Le formule contenute nelle righe di ripetizione sono anche eseguite in ordine di data, per cui il risultato varia a seconda di quando viene eseguita.

La sequenza di calcolo è la seguente:

  • Le righe di preventivo sono elaborate in ordine di data (se hanno la medesima data nell'ordine d'immissione).
  • Viene calcolato l'importo della registrazione, con questa priorità:
    • Se c'è una formula, risolvendola.
    • Se è presente la quantità e il prezzo, moltiplicandoli.
    • Altrimenti, viene mantenuto il valore contenuto nella colonna importo.
  • Per la contabilità multi-moneta viene prima eseguita la formula importo in moneta e poi la formula importo in moneta base.
    Se non vi è una formula importo in moneta base, il programma riprende il cambio storico e calcola il controvalore in moneta base.
  • Per la contabilità con IVA viene ricalcolata l'IVA in base all'importo della registrazione.
  • Le righe elaborate in precedenza servono per i calcoli delle righe successive:
    • Il saldo dei conti, alla data della riga di preventivo, comprende solo gli importi elaborati in precedenza.
    • Se in una registrazione di febbraio si usa una formula per il calcolo del saldo per tutto l'anno, si ha comunque solo il saldo fino a febbraio. 

Calcolo colonna Totale tabella Preventivo

La colonna Totale viene calcolata in automatico e contiene l'importo totale di preventivo per il periodo contabile indicato nelle proprietà del file (data inizio e fine contabilità).

  • Se è un'operazione unica, il Totale è uguale all'importo.
  • Se è un'operazione ricorrente, il Totale è la somma degli importi di tutte le ripetizioni che rientrano nel periodo della contabilità.
  • La colonna Totale è vuota se la data è precedente o va oltre il periodo della contabilità. 

Calcolo del valore corrente, previsione e confronto

Un volta generato il Giornale di calcolo, questo viene usato per calcolare il bilancio e tutte le altre elaborazioni necessarie per la contabilità.

Per i periodi definiti nel report il programma calcola:

  • Il valore corrente (basato sulle Registrazioni).
  • I valori di Preventivo.

Per i dati correnti e quelli di preventivo sono calcolati i seguenti valori:

  • Saldo all'inizio del periodo.
  • Movimento Dare.
  • Movimento Avere.
  • Movimento Totale.
  • Saldo alla fine del periodo (Inizio + Movimento).

Sono poi calcolati anche i confronti fra Corrente e Preventivo:

  • Variazione assoluta (Preventivo - Corrente).
  • Variazione in percentuale.

Ricalcolo automatico e manuale

I valori di preventivo sono ricalcolati automaticamente:

  • Se c'è una modifica nella tabella Preventivo.
  • Se viene modificata la data di inizio o di fine della contabilità.
  • Se viene modificata la tabella Conti.
  • Quando si richiede un report ed è stata modificata la tabella Registrazioni.

Dopo ogni ricalcolo il programma aggiorna in automatico:

  • La colonna Preventivo nella tabella Conti e Categorie.
  • La colonna Totale nella tabella Preventivo.

Se si modifica la tabella IVA o il file _budget.js o altri file Javascript che si usano nel calcolo delle formule, si deve effettuare un ricalcolo manualmente (Comando Ricontrolla e ricalcola contabilità).

La velocità di calcolo è dipendente dai seguenti elementi:

  • Numero di conti e gruppi nella tabella Conti e Categorie
  • Numero di righe inserite nella tabella Preventivo.
  • Numero di righe con ripetizione.
  • Presenza di formule.
  • Periodo di pianificazione impostato. Più lungo è il periodo, maggiore sarà il numero di righe di ripetizione.

Ricalcolo Manuale

Se il calcolo richiede diverso tempo, può risultare difficile inserire dati nella tabella Preventivo. Si può passare al ricalcolo manuale inserendo il visto all'opzione Ricalcolare i totali manualmente, menu File → Proprietà file → sezione Opzioni.
Per avere i valori aggiornati si dovrà quindi usare il comando Ricalcola Totali.

I valori di scostamento

Rappresentano la differenza fra i valori di preventivo e quelli effettivi o consuntivi.
Nei report vi è la colonna del confronto che mostra lo scostamento. 

Valori di proiezioni misti (a partire da una certa data)

Il valore a una certa data futura è calcolato nel modo seguente:

  • Fino alla data d'inizio, indicata sulla base dei valori correnti.
  • A partire dalla data indicata sui valori di preventivo.

I valori delle proiezioni miste sono disponibili solo tramite gli script e il web server.

How can we help you better?

Let us know what topic we should expand or add to make this page more useful.

Send us your feedback

Share this article: Twitter | Facebook | LinkedIn | Email