Logica di calcolo del preventivo

Documentation •
In this article

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().

Creazione del giornale di calcolo

Per elaborare contabilità e previsioni, Banana Contabilità crea automaticamente un giornale di calcolo interno basato sui dati inseriti dall’utente.

Nel giornale di calcolo viene generata una riga per ogni movimento finanziario, compresi anche i saldi di apertura. Ogni riga contiene le principali informazioni necessarie ai calcoli contabili e previsionali, tra cui:

  • origine del movimento, per distinguere i dati contabili correnti dai movimenti di preventivo
  • tipo di operazione, come saldo iniziale, registrazione, riporto o compensazione
  • data di competenza
  • descrizione
  • conto contabile
  • tipo di conto, ad esempio conto normale, centro di costo o centro di profitto
  • importo in moneta base
  • importo in moneta del conto
  • eventuali colonne aggiuntive presenti nella tabella Registrazioni.

Gli importi positivi rappresentano movimenti in Dare, mentre quelli negativi rappresentano movimenti in Avere.

Il giornale di calcolo viene ricreato automaticamente a ogni ricalcolo. Durante questo processo il programma:

  • elimina il giornale temporaneo precedente
  • genera le righe relative alla contabilità effettiva
  • genera le righe relative ai movimenti previsionali
  • esegue tutti i calcoli necessari per report e stampe.

Per le elaborazioni previsionali, Banana Contabilità utilizza sempre un motore di calcolo basato sulla partita doppia. Questo permette di ottenere risultati e report coerenti tra le diverse tipologie di contabilità, comprese:

  • contabilità in partita doppia
  • contabilità Entrate e Uscite
  • contabilità multi-moneta.

Generazione dei valori correnti (effettivi)

Per calcolare i valori correnti, Banana Contabilità aggiunge automaticamente al giornale di calcolo le righe relative alla contabilità effettiva.

I valori correnti vengono generati utilizzando:

  • i saldi iniziali presenti nella tabella Conti
  • le registrazioni contabili inserite nella tabella Registrazioni.

Saldi iniziali

Per ogni conto che contiene un saldo iniziale, il programma crea automaticamente una riga nel giornale di calcolo con:

  • la data di apertura della contabilità
  • il conto contabile
  • l’importo del saldo iniziale.

Queste righe rappresentano la situazione iniziale della contabilità e costituiscono la base per tutti i calcoli successivi.

Movimenti contabili

Successivamente il programma aggiunge le righe generate dalle registrazioni contabili effettive.

Ogni registrazione può produrre più righe nel giornale di calcolo, ad esempio per:

  • conto Dare
  • conto Avere
  • conto IVA
  • centri di costo
  • centri di profitto
  • segmenti.

Per ogni conto interessato viene generata una riga con il relativo importo:

  • positivo per i movimenti in Dare
  • negativo per i movimenti in Avere.

Questo metodo permette al programma di elaborare in modo uniforme:

  • saldi
  • movimenti
  • bilanci
  • report
  • confronti con il preventivo.

Generazione dei valori di preventivo

Per elaborare i valori previsionali, Banana Contabilità crea automaticamente le righe di preventivo all’interno del giornale di calcolo.

Le righe di preventivo vengono generate utilizzando:

  • i saldi iniziali presenti nella tabella Conti
  • i movimenti inseriti nella tabella Preventivo
  • oppure i valori della colonna Preventivo della tabella Conti e Categorie, se la tabella Preventivo non è presente.

Saldi iniziali

Come per i valori correnti della contabilità, anche per il preventivo il programma utilizza i saldi iniziali presenti nella tabella Conti.

Per ogni conto con un saldo iniziale viene generata automaticamente una riga di preventivo che rappresenta la situazione iniziale della pianificazione finanziaria.

Movimenti di pianificazione

Quando viene utilizzata la tabella Preventivo, il programma genera automaticamente le righe di previsione partendo dai movimenti inseriti nella pianificazione.

Il funzionamento è analogo a quello della contabilità: per ogni registrazione vengono create le relative righe nel giornale di calcolo.

Possono essere elaborati:

  • movimenti statici con importi definiti manualmente
  • movimenti con formule di calcolo
  • movimenti basati su quantità e prezzi
  • movimenti ripetitivi.

Come per le registrazioni contabili, se una riga di preventivo coinvolge più conti, il programma genera automaticamente una riga separata per ogni conto interessato.

Movimenti ripetitivi

Per le operazioni ricorrenti, Banana Contabilità permette di utilizzare i movimenti ripetitivi nella tabella Preventivo.

Sulla base del codice di ripetizione, il programma crea automaticamente le registrazioni future per tutto il periodo di proiezione definito.

Le ripetizioni vengono generate utilizzando:

  • la data iniziale
  • la data finale
  • il codice di ripetizione.

Ad esempio, se nel mese di gennaio viene registrato un affitto con ripetizione mensile, il programma crea automaticamente le registrazioni per gli undici mesi successivi.

Se una registrazione è impostata al 31 del mese, nei mesi che non dispongono di 31 giorni il programma utilizza automaticamente l’ultimo giorno disponibile del mese.

Allo stesso modo, se una registrazione è definita come operazione di fine mese, le date successive vengono adattate automaticamente all’ultimo giorno di ciascun mese.

I movimenti ripetitivi possono inoltre contenere:

  • formule di calcolo
  • quantità
  • prezzi unitari
  • centri di costo
  • segmenti
  • codici IVA.

Questo sistema permette di creare pianificazioni dettagliate e aggiornabili automaticamente nel tempo.

Preventivo annuale senza tabella Preventivo

Se la tabella Preventivo non viene utilizzata, Banana Contabilità genera automaticamente le righe previsionali partendo dai valori presenti nella colonna Preventivo della tabella Conti e Categorie.

In questo caso:

  • il programma calcola automaticamente il numero di mesi del periodo contabile
  • crea una riga di preventivo per ogni mese
  • suddivide il valore annuale nei vari periodi.

Eventuali differenze dovute agli arrotondamenti vengono corrette automaticamente nell’ultimo periodo.

Al termine della generazione, tutte le righe di preventivo vengono ordinate cronologicamente per consentire il corretto calcolo dei report e delle elaborazioni previsionali.

Calcolo della colonna Importo

Una volta creato il giornale di calcolo, Banana Contabilità ricalcola automaticamente il contenuto della colonna Importo per tutte le righe di preventivo che utilizzano:

  • formule di calcolo
  • quantità
  • prezzi unitari.

Questo permette di ottenere valori previsionali dinamici e aggiornati automaticamente in base ai dati della pianificazione.

Risoluzione delle formule in Javascript

Per elaborare le formule di preventivo, Banana Contabilità utilizza un interprete Javascript integrato.

Ogni volta che viene creato il giornale di calcolo, il programma crea automaticamente una nuova istanza dell’interprete Javascript dedicata ai calcoli previsionali.

Inizializzazione dell’interprete

Prima di eseguire le formule, l’interprete Javascript viene inizializzato caricando:

  • gli script predefiniti di Banana Contabilità
  • il contenuto del file _budget.js, se presente nella tabella Documenti.

Questo permette di:

  • inizializzare variabili personalizzate
  • creare funzioni di calcolo specifiche
  • definire automatismi personalizzati per la pianificazione.

Sequenza di elaborazione delle formule

Le formule presenti nelle righe di preventivo vengono elaborate progressivamente in ordine di data.

Se più registrazioni hanno la stessa data, il programma utilizza l’ordine di inserimento delle registrazioni.

Durante il calcolo:

  • lo stato dell’interprete Javascript viene mantenuto attivo
  • le formule possono utilizzare valori e variabili calcolati nelle righe precedenti
  • le formule delle registrazioni ripetitive vengono elaborate in ordine cronologico.

Questo significa che il risultato di una formula può variare in base al momento in cui viene eseguita nella sequenza temporale della pianificazione.

Priorità di calcolo dell’importo

Per ogni registrazione di preventivo, il programma calcola l’importo seguendo questa priorità:

  • formula di calcolo
  • quantità × prezzo unitario
  • valore manuale della colonna Importo.

Se è presente una formula, il programma utilizza il risultato della formula.
Se non è presente una formula ma sono definiti quantità e prezzo, il programma calcola automaticamente l’importo moltiplicando i due valori.
In tutti gli altri casi viene mantenuto l’importo inserito manualmente.

Gestione multi-moneta e IVA

Nelle contabilità multi-moneta:

  • viene prima calcolato l’importo nella moneta del conto
  • successivamente viene calcolato il controvalore in moneta base.

Se non è presente una formula specifica per la moneta base, Banana Contabilità utilizza automaticamente il cambio storico per calcolare il controvalore.

Nelle registrazioni con IVA, il programma ricalcola automaticamente l’imposta sulla base dell’importo definitivo della registrazione.

Calcoli progressivi nel tempo

Le formule vengono elaborate in modo progressivo lungo la sequenza temporale della pianificazione.

Questo significa che ogni registrazione può utilizzare:

  • saldi
  • valori
  • risultati

calcolati fino a quel momento.

Ad esempio, se in una registrazione di febbraio viene utilizzata una formula che legge il saldo di un conto, il programma considererà solamente i movimenti elaborati fino a febbraio e non quelli dei mesi successivi.

Questo approccio permette di ottenere simulazioni finanziarie realistiche e coerenti con l’evoluzione temporale della pianificazione.

Calcolo colonna Totale tabella Preventivo

La colonna Totale della tabella Preventivo viene calcolata automaticamente dal programma e indica l’importo complessivo del movimento previsionale riferito al periodo contabile impostato nelle proprietà del file.

  • Se si tratta di un’operazione unica, il valore della colonna Totale corrisponde all’importo della registrazione.
  • Se invece si tratta di un’operazione ricorrente, il Totale corrisponde alla somma di tutte le ripetizioni che rientrano nel periodo contabile.
  • La colonna Totale rimane vuota quando la data del movimento è precedente o successiva al periodo contabile definito nel file.

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 ogni periodo definito nel report, il programma calcola automaticamente:

  • i valori correnti, basati sulle registrazioni contabili effettive
  • i valori di preventivo, basati sui movimenti previsionali.

Valori calcolati

Sia per i dati correnti sia per quelli previsionali, il programma determina automaticamente:

  • saldo iniziale del periodo
  • movimenti Dare
  • movimenti Avere
  • movimento totale del periodo
  • saldo finale del periodo.

Il saldo finale viene calcolato sommando il saldo iniziale ai movimenti del periodo.

Confronto tra preventivo e consuntivo

Banana Contabilità calcola automaticamente anche gli scostamenti tra valori effettivi e valori previsionali.

Nei report di confronto vengono visualizzati:

  • la variazione assoluta, ottenuta dalla differenza tra Preventivo e Corrente
  • la variazione percentuale.

Questo sistema permette di analizzare facilmente:

  • il raggiungimento degli obiettivi
  • gli scostamenti rispetto alle previsioni
  • l’evoluzione economica e finanziaria dell’attività
  • eventuali differenze tra liquidità prevista e liquidità effettiva.

Valori di scostamento

I valori di scostamento rappresentano la differenza tra i dati previsionali e i valori effettivi della contabilità. Banana Contabilità calcola automaticamente questi confronti utilizzando:

  • i valori correnti, derivati dalle registrazioni contabili effettive
  • i valori di preventivo, derivati dalla pianificazione finanziaria.

Nei report e nelle stampe è possibile visualizzare apposite colonne di confronto che mostrano:

  • la differenza assoluta tra preventivo e consuntivo
  • la variazione percentuale.

Gli scostamenti permettono di:

  • verificare il raggiungimento degli obiettivi
  • individuare differenze tra valori previsti ed effettivi
  • analizzare variazioni di costi, ricavi e liquidità
  • monitorare l’evoluzione finanziaria dell’attività nel tempo.

Proiezioni miste

Banana Contabilità permette anche di creare proiezioni miste, combinando:

  • dati contabili effettivi
  • dati previsionali.

In questo tipo di elaborazione:

  • fino a una determinata data vengono utilizzati i valori correnti della contabilità
  • dalla data indicata in avanti vengono utilizzati i valori previsionali.

Questo approccio consente di ottenere simulazioni finanziarie aggiornate che integrano:

  • risultati già registrati
  • previsioni future
  • evoluzione stimata della liquidità e della situazione patrimoniale.

Le proiezioni miste sono disponibili tramite:

  • script
  • Web Server
  • API di Banana Contabilità.

Ricalcolo automatico e manuale

Banana Contabilità ricalcola automaticamente i valori previsionali ogni volta che vengono modificati dati che influenzano la pianificazione.

Il ricalcolo automatico viene eseguito, ad esempio:

  • quando si modifica la tabella Preventivo
  • quando si cambia la data di inizio o di fine della contabilità
  • quando si modifica la tabella Conti
  • quando vengono aggiornate le registrazioni contabili e si richiede un report o una stampa.

Dopo ogni ricalcolo il programma aggiorna automaticamente:

  • la colonna Preventivo nelle tabelle Conti e Categorie
  • la colonna Totale nella tabella Preventivo
  • i report previsionali
  • i confronti tra preventivo e consuntivo.

Ricalcolo delle formule Javascript

Se vengono modificati elementi utilizzati nelle formule di calcolo, il ricalcolo deve essere eseguito manualmente. Questo vale, ad esempio, quando si modificano:

  • la tabella IVA
  • il file _budget.js
  • altri file Javascript utilizzati nelle formule previsionali.

In questi casi è necessario utilizzare il comando: Ricontrolla e ricalcola contabilità.

Prestazioni e velocità di calcolo

La velocità del ricalcolo dipende da diversi fattori, tra cui:

  • numero di conti e gruppi presenti nella tabella Conti
  • numero di righe nella tabella Preventivo
  • numero di movimenti ripetitivi
  • presenza di formule di calcolo
  • durata del periodo di pianificazione.

Più lungo è il periodo di previsione, maggiore sarà il numero di registrazioni generate automaticamente dal programma.

Ricalcolo manuale

Nelle pianificazioni molto estese o complesse, il ricalcolo automatico continuo può rallentare l’inserimento dei dati nella tabella Preventivo.

In questi casi è possibile attivare il ricalcolo manuale tramite: File > Proprietà file > Opzioni > Ricalcolare i totali manualmente.

Quando questa opzione è attiva, i valori previsionali vengono aggiornati solo utilizzando il comando: Ricalcola Totali.

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