Tools Menu
The Tools menu in Banana Accounting gathers advanced functions that help you manage, customize, and optimize your accounting files.
From this menu, you can view information about the open file, expand the available features, create or convert files into other accounting types, merge different files, and set the program’s general options.
For detailed explanations of the commands, click on the links in the menu on the left.
File info
The File info command, activated in the Tools menu, displays the characteristics of a file.
Columns
By activating the Complete view also the Xml columns are displayed, thanks to which, it is possible to retrieve the values automatically when the table is exported.
- Section: the Group name of the values
- ID: the specific and explicit identification of the value
- Description: contains an explanation of the value
- The rows in bold print are the section titles that group the different elements together
- Value: the formatted value
- Section XML: The name of the section in English
- ID XML: the identification in English
- Value Xml: the field contents in Xml format.
The Section XML and the ID Xml identify the value unambiguously.
Create file from external data
Banana Accounting is able to transform data files and convert them into a Banana Accounting file, making it easier to access the content.
For example:
- View CSV file
Banana converts CSV files and displays them in a table.
You only need to drag the CSV file into the Banana Accounting window and the file is converted into a simple table. - View ISO 20022 or MT940 bank statements
The file is converted into a cash book and the operations are displayed as transactions.
Just drag the file into Banana. - Audit file for taxation
The XML file is transformed into a double-entry accounting file, with the related chart of accounts and transactions.
Extensions to create files
File Creator extensions allow you to create file converters for specific data types and give the user the possibility to choose which extension to use.
View ISO 20022 file or MT940
The Banana software allows the user to view and print the contents of ISO20022 - camt. 052, camt. 053 (included version 4), camt. 054 - and MT940 bank statements.
The transactions of the electronic bank statement, with description, amount income or expenses, are being presented in separate columns and can be printed or pasted into Excel.
Open the ISO 20022 or MT940 file
In order to open and see the file :
Download your bank statement in ISO 20022 format
If it is a compressed file, extract the XML file to be displayed with its own utility (p.es. 7zip)S- Install and open Banana Accounting
- Drag the file inside Banana Accounting: Banana immediately shows all entries with text and date, amount and the progressive balance (the file is being opened as "read only")
- The data of the bank statement can then be printed or copied into Excel or other programs.
Additional indications
- The opening balance in the ISO 20022 file is entered into the Accounts table.
- The column width can be adapted with the mouse.
- To align the text of the description on several lines, use the command Format → Calculate all row heights
- To categorize the movements and get statements, enter the appropriate categories in the Categories table and display the Categories column in the Transactions table with the Columns setup command.Or, create a new file with an existing template and categories and accounts already set up, and import the data of the bank statement as explained in the page Import ISO 20022 file.
- In the free Starter Edition mode, files with more than 70 transactions cannot be saved.
More information
For more information with regard to the ISO 20022 Standard, please consult the page Import ISO 20022 file.
View CSV File
When opening, or dragging and dropping a file of the CSV or JCSV type in the Banana window, Banana will automatically create a simple Table type file, resuming the columns and data contained in the CSV table.
Add/Remove functionalities
Banana Accounting Plus allows you to customize and enhance your accounting or productivity file by activating only the features you need. This way, the file remains easy to use, while at the same time it can be adapted to more complex needs.
To open the additional features dialog, go to:
- Tools menu > Add/Remove functionalities and select the desired option.
The available options change depending on the type of file you are using (accounting or productivity). Therefore, there are specific features for:
- Accounting applications - intended for accounting files.
- Productivity applications - intended for productivity files.

For more information, click on the mentioned links.
Documents table
The Documents table allows you to include text documents, images (including logo) or scripts in the accounting file.
It can be added by the user in two different ways:
- From menu Tools > Add functionalities > Add Documents table.
- This is created automatically when the program needs to save documents (e.g. adding the logo or attachments to the Enhanced Statement, Enhanced Statement with groups from the menu Reports > Attachments section).

The Documents table has the following columns:
- Id
The document's name. Id it is free text but should be unique within the table.- Documents starting with "_" are used for particular features of the programme.
- "_budget.js"
You insert your own functions created for the Budget table.
- "_budget.js"
- The dlgmanageaddons Id is used to save the image used as a logo.
- The attachment_ Id it is used for attachments in the enhanced balance sheet.
- Documents starting with "_" are used for particular features of the programme.
- Description
A brief description of the file (optional) - Attachments
Contains the file. By clicking on the cell it is possible to view or modify the contents of the file.
There are these types of possible content- Image (image/png, image/jpg)
- Normal text (text/plain)
- Formatted html text (text/html),
- Markdown-formatted text (text/markdown),
- Programming in javascript (text/javascript)
- Sheet style CSS (text/css).
Once the Documents table has been added, it can no longer be permanently deleted. If the table was added by mistake and you no longer wish to display it, you can remove it from view via the Data > Tables setup menu. Alternatively, if the file has not yet been saved (neither manually nor through autosave) after adding the table, simply close it without saving to cancel the operation.
Adding a new document

To insert a new document in the Documents table
- Add a new row.
- In the Id column write the name of the file .
- In the Description column you can write the desired text.
- In the Attachments column double-click on the cell or select the edit symbol, select the type of document you want to add.
See also:
Markdown Editor
In Banana Accounting Plus, balance sheets attachments can now also be inserted via markdown language, in addition to html. This is very convenient for inserting tables into attachments.
In Banana Accounting Plus this feature is only available with the Advanced plan.

Markdown is a language that allows you to create formatted text using a normal text editor and a syntax that is easy to write and read.
In Banana+ it is possible to use this language in the attachments of the Documents table and the GitHub Flavored Markdown specification is supported.
Documentation published by github.com:
Adding a Markdown document
- Select the Documents table.
- Add a new row.
- In the Id column write a name that identifies the document.
- In the Description column you can write the desired text.
- In the Attachments column double-click on the cell or select the edit symbol, select the Markdown Text type.
Add a balance sheet attachment with markdown text
How to create a table
To create tables in markdown, the content of the columns must be from the vertical slash sign, preceded and followed by a space " | ".
For the column alignment you must create a row with
- Left: simple hyphens (minimum three hyphens).
- Center: hyphens preceded and followed by the colon ":---:".
- Right: hyphens followed by the colon "---:".
# Notes to the Balance (Example)
The financial statements of Example have been prepared in accordance with the International Financial Reporting Standards (IFRS).
## Cash Positions
| Account | Description | Current Year | Previous Year |
| :---: | --- | ---: | ---: |
| 1000 | Cash | 23'000.00 | 17'000.00 |
| 1020 | Bank account| 9'000.00 | 1'000.00 |
| | **Total** | **32'000.00** | **18'000.00** |
## Other Fixed Assets
| Account | Description | Current Year | Previous Year |
| :---: | --- | ---: | ---: |
| 1000 | Machinery | 13'000.00 | 17'000.00 |
| 1020 | Furniture | 5'000.00 | 4'000.00 |
| | **Total** | **18'000.00** | **21'000.00** |

How to create an unordered list
# Create an unordered list
* First item
* Second item
* Third item
* Fourth item
How to create a task list with checkboxes
# Task list with checkboxes in Markdown
- [ ] Item 1
- [X] Item 2
- [X] Item 3
- [ ] Item 4
- [ ] Item 5

How to change the text color
# Change the text color using HTML syntax
This is normal text in black color, <span style="color:blue">and this text is blue!</span>
<span style="color:red">Another text in red color.</span>

How to change color, font and size of a text
# Change the text color, font and size using HTML syntax
<span style="color:green;font-size:20pt;font-family:Times New Roman;">Change color, font and size of a text</span>

How to apply bold format
# Use double asterisks ( **text** ) before and after the text
**This is a text written in bold**
How to apply italic format
# Use single asterisks ( *text* ) before and after the text
*This is a text written in italic*
How to apply bold and italic format
# Use three asterisks ( ***text*** ) before and after the text
***This is a text written in bold and italic***
Features currently not available
These features, although requested by some users, are not available at the moment:
- Add a link in the markdown text
HTML Editor

Adding the ${...} field
The ${...} field allows the user to add dynamic text to the document, for instance an account's balance or a Banana table. The Banana API interface is available at the following web address https://www.banana.ch/doc/en/node/4714
The command can be added manually or through the command Edit - Add script
Printing a blank line (put a space between the quotes)
${' '}
Printing the current balance of account 1020
${Banana.Converter.toLocaleNumberFormat(Banana.document.currentBalance('1020','','').balance);}
Output of the Accounts table, columns: Account, Group, Description, Balance.
${HTML Banana.document.table('Accounts').toHtml(['Account','Group','Description','Balance'],true);}
It is possible to write the javascript code in a separate document and include the script through the command Banana.include.
The scripts can be saved in the Documents table or in a local file.
${Banana.include('documents:myscript1');rtnValue}
${Banana.include('c://temp//myscript16.js');rtnValue}

Adding a page break
The command can be added manually or through the command Edit - Add page break
Text in the first page
${PAGEBREAK}
Text in the second pageTroubleshooting
- When taking text from external sources (Word, Internet pages, ...), use the Edit > Paste as plain text command.
This command avoids problems with HTML formatting, which in some cases prevents correct display. - For the examples on this page, use the Copy link on the top right of each example, do not use CTRL+C (or CMD+C).
- If the ${…} field does not work, check that there is no HTML formatting (such as <span>…</span> elements or other) and possibly remove it from the HTML Source code.
- To remove existing HTML formatting from an entire page:
- copy text to clipboard (CTRL+C)
- go to the HTML Source tab and delete all content
- go to the Page 1 tab and paste the copied text with the Edit > Paste as plain text command.
Embedded Extension
Embedded Extensions are extensions written in JavaScript and saved directly in the Documents table of the accounting file. They work exclusively in that specific file without requiring installation. Once created, they are immediately ready to use.
Add an Embedded Extension
- Open an accounting file in Banana Accounting Plus.
- Ensure the Documents table is enabled:
- Add the extension in the Documents table:
- In the ID column enter a name for the extension.
- In the Description column enter a comment.
- In the Attachments column, attach the JavaScript code with a double click on the cell or select the edit symbol in the top right corner, then select Javascript code and confirm with OK.

- An editor where you can write your javascript code opens.

- When you are finished, confirm with OK, and save the accounting file.
Run the Extension
You have two options to run the embedded extensions:
- From the Documents table, click the run symbol in the Attachments cell containing your code.
- From the Extensions menu, select the extension from those listed.

More information
Documentation for developers:
Add Simple table in the file (from Add functionalities)
You can add one or more simple tables to the same accounting file to include additional information without overloading the accounting data structure. Every time you need to add a simple table:
- From the Tools > Add/Remove functionalities > Add simple table menu
The program adds a table to the existing file with the name you assigned, and it includes the following columns:
- Id – Used to create a list of coded items. Each row is assigned an Id code to identify the item
- Description – Enter text to describe the item
- Notes – Enter text for notes or other information

- Assign a name to the table.
- In our example: Internal notes
- Confirm with OK
The new table is added to the file and is immediately available.
Customize the columns
In the simple table you can customize the columns by displaying other predefined columns and/or adding new ones.
Display other predefined columns:
- From the Data menu > Columns setup
- From the list, select the desired column (e.g. the Link column)
- Click on "Visible"
- Confirm with OK.

Add new columns:
- From the Data menu > Columns setup > Add
- Give a name to the column (e.g. Date)
- Define the column format (e.g. text, date, amount, currency...)

Change the header of a simple table
To change the header of a simple table, go to the simple table:
- Go to the Data menu > Tables setup
- In the dialog, select the simple table you want to change
- In the settings box, change the name
- Confirm with OK.
For more information, visit the page:
Tabella QuickSum (Technical preview)
QuickSum Table è una tabella strutturata, basata su una logica contabile, pensata per la preparazione di capitolati, computi metrici e richieste di offerta all’interno di un ambiente affidabile e controllato.
Vantaggi principali:
- Totali sempre corretti, calcolati automaticamente dal sistema secondo una logica contabile, senza formule manuali.
- Coerenza e tracciabilità dei dati, grazie a una struttura che evita incongruenze e modifiche accidentali.
- Riduzione degli errori, anche in presenza di aggiunte, correzioni o riorganizzazioni delle voci.
- Struttura chiara e stabile, adatta a documenti professionali e allegati contrattuali.
- Utilizzo immediato, simile a un foglio di calcolo, ma con i vantaggi di un sistema contabile.
- Documenti affidabili, pronti per essere condivisi, archiviati o allegati a offerte e contratti.
Technical Preview
La tabella QuickSum è uno strumento ancora in fase di sviluppo e che viene messo a disposizione a un limitato numero di utenti.
Ci sono diverse funzionalità che sono per il momento provvisorie e che subiranno cambiamenti con il tempo.
Per il momento è solo disponibile all'interno della versione Dev Channel.
Funzionamento
La QuickSum Table si usa come una tabella Excel, con colonne per l'identificativo, descrizione, quantità, prezzo e totale, con però i totali in verticale fatti in automatico.
- L'identificatore (ItemId) può essere suddiviso in più livelli tramite i punto ".".
- Gli identificatori devono essere disposti in sequenza ordinata, dal più piccolo al più grande.
- Il programma in automatico fa i totali.
Qui un esempio

Aggiunta della tabella QuickSum
Attualmente la Tabella QuickSum è ancora in fase sperimentale ed è disponibile solo nella versione interna di Banana Contabilità.
Nella applicazioni di produttività viene aggiunta con il comando Menu Strumenti > Aggiungi Funzionalità > Tabella QuickSum
Le colonne
La Tabella QuickSum ha le seguenti colonne di inserimento dati :
- ItemId
L'id che identifica l'elemento- Può assumere diverse forme come spiegato in seguito.
- Deve essere sempre in sequenza crescente. Prima i valori più bassi e poi quelli più alti.
- Per esempio "2.1.1", "T:2.1.1", "V:2.1.1", "V:T:2.1.1"
- Stile
Per assegnare uno stile, per un uso futuro della stampa. - Codice Modifica.
Per quando la tabella è in modalità blocco, indica quale colonne devono essere modificabili.- D: Descrizione modificabile.
- N: Note modificabile.
- Q: Quantità modificabile.
- P: Prezzo unitario modificabile
- I valori indicati fra parentesi quadre e fra parentesi graffe sono inseriti in automatico dal programma e possono essere sovrascritti.
- Descrizione
La descrizione dell'elemento e anche i valori nel caso di sommario.
Se contiene tre punti "..." significa che vi è un valore da completare. - Note
Una colonna di testo per annotazioni. - Quantità
Un importo numerico. - Unità
Indica il tipo di valore indicato.- Un testo libero.
- "%" la quantità sarà considerata come un percento del prezzo.
- Formula Prezzo Unitario
Se presente la formula viene calcolata e il risultato rimpiazzera il valore nella colonna Prezzo. - Prezzo Unitario
Il prezzo che viene usato per calcolare il valore. - Formula inizio
Nel caso che si vuole indicare la formula in due parti. - Formula testo
- Una formula di calcolo in Javascript.
- Se presente viene eseguita e il risultato andrà a sostituire l'Importo calcolato.
- Importo risultato
Importo calcolato dal programma.- Se esiste una formuala il risultato della formula.
Altrimenti - La quantità moltiplicata per il prezzo unitario.
- Se unità "%" il prezzo unitario in percentuale della quantità.
- Se esiste una formuala il risultato della formula.
- Codice1 e Codice2
Delle colonne che servono per indicare che la riga è di un certo tipo.
Per esempio "S" può significare che a queste posizioni viene indicato uno sconto particolare.
Ci sono poi una serie di colonne che servono per i calcoli e il controllo:
- ItemIdCalc
È l'ItemId usato per il calcolo e considera anche le modifiche dovuta all'attivazione delle varianti. - Formula Prezzo Unitario Calc
È la formula di calcolo del prezzo unitario usata per i calcoli, creata partendo dalla formula del prezzo unitario modificata dal programma tenendo conto dell'attivazione delle varianti. - Formula Calc
È la formula di calcolo usata per i calcoli, creata partendo dalla formula inizio e formula modificata dal programma tenendo conto dell'attivazione delle varianti. - Testo Risultato
- È il risultato in formato testo ottenendo eseguendo la Formula Calc.
- Mostra eventuali errori.
- Sommato in
- Indica in che elemento è stato sommato il valore della riga.
- Permette di controllare l'itemId ne caso sia lasciato vuoto o si sia usato una variante.
L'ItemId
Viene inserito nella colonna ItemId ed identifica la riga e l'elemento. Può avere diverse forme
- Identificatore dell'elemento (ItemId)
Può essere composto dai seguenti elementi, separati da duepunti ";"
Per esempio "2.1.1", "T:2.1.1", "V:2.1.1", "V:T:2.1.1"- Il valore "00" è relativo al totale complessivo.
- Si inserisce all'inizio per indicare il testo del progetto.
- Il Subtotale "S:00" mostra la somma fino a quel momento.
- Il Totale "T:00" può essere usato solo come ultima riga di totale.
Oltre non ci possono più essere totali. - Nella formula $S('00') ritorna il totale complessivo di tutte le righe sommate fino a quel momento.
- Gerarchia.
- Dei valori separati da dei punti "." che definiscono l'emento e la struttura.
- Esempio "1", "1.9", "2", "2.1", "2.1.2", "A.1.2"
- La gerarchia è data dalla separazione.
Quindi gli elmenti "2.1" e "2.1.2" apparteranno all'elmento superiore "2". - La gerarchia determina anche la sequenza degli elementi in ordine alfabetico naturale.
L'elemento "1" dovrà precedere il "1.9" e il "2" e via di seguito.
In caso contrario verrà segnalato un errore.
- Prefisso.
- Determina il tipo di elemento.
- "F": riga finale gerarchia.
- Questo elemento è l'ultimo della gerarchia creata.
- Esempio: "2.1", "2.1.1", "2.1.1.1", "2.1.2", "F:2.1" chiude la sequenza e quindi dopo il "F:2.1" non ci potranno più essere elementi "2.1", "2.1.1".
- "S:" riga di subtotale
- Viene indicata la somma di tutti gli elementi che appartengono alla gerarchia.
- Esempio: "S:2.1" riprenderà la somma di tutti gli elmenti "2.1", "2.1.1", "2.1.1.1", "2.1.2"
- "T:" riga di totale
- Viene indicata la somma finale di tutti gli elementi che appartengono alla gerarchia.
- Esempio: "T:2.1" riprenderà la somma di tutti gli elmenti "2.1", "2.1.1", "2.1.1.1", "2.1.2"
- Chiude la sequenza e quindi dopo il "T:2.1" non ci potranno più essere elementi "2.1", "2.1.1".
- "F": riga finale gerarchia.
- Determina il tipo di elemento.
- Variante.
Vedi sezione successiva di spiegazione.- Un codice che identifica la Variante e precede l'ItemId.
- Deve obbligatoriamente iniziare con la lettera "V" ed esere seguito da dei duepunti ":" .
- Il codice della variante deve precedere gli elementi. V
- Esempi variante
- "VA:" "VA:2.1", "VA:2.1.1"
- "VB:" "VB:2.1", "VB:2.1.1"
- Le righe della variante devono essere in sequenza.
- Se si integrano o sostituiscono una riga devono essere anche nella sequenza.
- Il valore "00" è relativo al totale complessivo.
- Comandi "#"
Il valore viene indicato nella colonna Descrizione- Iniziano con il carattere "#"
- Sono usati internamente per indicare delle fuzionalità
- Gli elmenti non vengono sommati.
- "#scenario" permette di specificare nella colonna Descrizione le Varianti da usare in aggiunta o al posto delle posizioni esistenti.
per esempio la descrizione "VA;VB" - "#options" opzioni di calcolo separate da punti e virgola.
- "lock", attiva il blocco della tabella (comando provvisiorio).
- "onerrorcalculate" continua la calcolazione anche se ci sono degli errori.
- "#columnsSum" indica il nomeXml delle colonne da sommare nei contatori accessibili tramite la funzione "$S()".
- Diverse colonne vengono separate da punto e virgola ";".
- Le colonne "Code1;Code2" sono già considerare e non bisogna specificarle.
- Per esempio "Code3;Code4" .
- "#rounding" è il valore minimo in cui l'importo totale riga viene arrotondato.
- Si inderisce nella colonna Descrizione.
- Per esempio "0.05", "0.10", "1"
- Il separatore decimale deve sempre essere il punto "."
- Righe calcolo hash
Sevono a verificare se il documento è cambiato- "#hash-base"
Il programma inserisce nella Descrizione l'hash calcolato sugli elementi che non sono modificabili.
Se si modificano le celle in cui si possono inserire valori anche quando il documento è in modalità blocco, l'hash non cambia. - "#hash-all"
Il programma inserisce nella Descrizione l'hash calcolato su tutti gli elementi del documento.
Quindi qualsiasi valore viene modificato viene modificato anche l'hash.
- "#hash-base"
- Commenti fra []
- Sono elementi che sono inclusi in parentesi quadre
"[]", "[testo]" - Gli elmenti non vengono sommati.
- Sono elementi che sono inclusi in parentesi quadre
- Elementi vuoti
- Viene ripreso l'id che precede e non è stato chiuso.
Logica di calcolo e somme
Nella tabella QuickSumi gli importi vengono calcolati e sommati in automatico.
- Dopo ogni modifica tutta la tabella viene ricalcolata.
- Il programma svuota tutte le colonne calcolate.
- Il programma parte della prima riga e continua fino all'ultima.
Se vi è un errore la calcolazione viene interrotta delle righe successive non viene eseguita. - Descrizione righe di Totale "T:" o sottototale "S:"
- Se la descrizione è vuota o termina con elemento commento (fra parentesi quadre), la descrizione viene messa automaticamente dal programma, facendo seguire al termine "Totale" o "Sottototale" l'intestazione dell'ItemId o se non presente il valore dell'ItemId.
- L'intestazione dell'ItemId è considerata la descrizione usata quando è stato usato per la prima volta l'ItemId.
- Calcolo importo riga.
- Vengono usati u contenuti delle colonne Quantità, Unità e Prezzo unitario
- Se vi sono delle formule queste vengono eseguiti e il risultato rimpiazza il valore.
- Il programma dopo ogni riga somma nel contatori dei diversi elementi strutturati.
- Somma il valore della riga nei diversi elementi che compongono l'ItemId strutturato.
- Se per esempio se l'item è "2.1" il programma andrà a sommare l'importo della riga nei seguenti contatori, accessibili con la formual $S('2.1.1') in:
- 2
- 2:{*}
- 2.1
- 2.1:{}
- Se per esempio se l'item è "2.1.1" il programma andrà a sommare l'importo della riga nei seguenti contatori, accessibili nelle formule con la funzione $S('2.1.1') in:
- 2
- 2:{*}
- 2.1
- 2.1:{*}
- 2.1.1
- 2.1.1:{}
- Il programma somma anche nei contatori relative alle colonne, accessibili nelle formule tramite la funzione $S().
Le colonne formule
Le colonne Formula prezzo unitario e Formula permettono di inserire delle espressioni in linguaggio Javascript.
- Gli importi si indicano nel formato di programmazione e non quello internazionale.
- Non vi sono separatori di migliaia.
- Il separatore di decimali è sempre il punto ".".
- Esempi di numeri "12345.67", "-123.45"
- Si può usare tutta la sintassi del Javascript e anche creare funzioni.
- Si possono usare le funzioni predefinite appositamente per la tabella QuickSum:
- $S('itemId')
- Ritorna la somma, fino a questo punto, del contatore specifico dell'item.
- Per esempio
- $S('2') ritorna la somma di tutti i totali che iniziano con 2
- $S('2.1') ritorna la somma di tutti i totali che iniziano con 2.1
- $S('2.1.1') ritorna la somma di tutti i totali che iniziano con 2.1.1
- $S('00') ritorna la somma di tutto
- Si può usare anche con parentesi graffe
- $S('2:{=}') solo gli elementi che sono esattamente 2, quindi senza i sotto elementi.
- $S('2:{+}') solo gli sottoelementi di 2.
- $S('2') = $S('2:{=}') + $S('2:{+}')
- $C('ColumnNameXml', 'Value')
- Sum values with conte
- ColumnNameXml è il nome in inglese della colonna.
- Value è il possibile contenuto della colonna.
- Ritorna la somma degli importi delle righe fino alla calcolazione precedente alla riga attuale, per tutte le colonne che contengono nella colonna specificata il valore indicato.
- Per esempio con un valore specifico
- "$C('Code1','X')" La somma degli importi delle righe che contengono nella colonna Code1 il valore "X".
- "$C('Code1','Y')" La somma degli importi delle righe che contengono nella colonna Code1 il valore "Y".
- Puoi usare anche un distintivo
- "$C('Code1','{*}')" La somma degli importi delle righe con qualsiasi valore (anche vuoto) nella colonna Code1 .
Corrisponde alla somma totale T00. - "$C('Code1','')" oppure "$C('Code1','{}')" La somma degli importi delle righe con la colonna Code1 vuota..
- "$C('Code1','{<>}')" La somma degli importi delle righe che contengono un valore non vuoto nella colonna Code1.
- "$C('Code1','{*}')" La somma degli importi delle righe con qualsiasi valore (anche vuoto) nella colonna Code1 .
- Valori non ammessi
- Nella colonna che viene usata per inserire dei valori non si possono usare
"{}","{*}","{<>}" - Ai fini dei totali per la funzione $C questi valori sono considerati come vuoti.
- Nella colonna che viene usata per inserire dei valori non si possono usare
- $V() L'elenco delle varianti usate nella calcolo separate da punti e virgole.
- Per esempio "VA;VB"
- $S('itemId')
- Arrotondamento finale.Si può inserire una formula prima della riga finale per calcolare l'arrotondamento al minore.
- Per esempio "Math.floor($S('00'))-$S('00')"
- Si può usare la formula anche in altre posizioni cambiando l'Id.
Varianti
La tabella permette di inserire degli elementi varianti per:
- Includere degli elementi.
Per esempio un'offerta che prevede appunto degli elementi opzionali. - Sostituire degli elementi.
Per esempio per cambiare le specifiche tecniche.
La variante viene indicata nell'ItemId, facendo precederla da un identificatore di variante.
- La sigla della variante deve iniziare obbligatoriamente con "V" ed essere separata da un due punti ":" dall'itemId.
- Per esempio "VA:2.1"; "VB:2.1.1"
- "VA:T:2.1" per indicare la riga di totale.
- Meglio usare sempre una sigla maiuscola.
- L'elenco degli elementi appartenenti alla variante deve seguire quello della gerarchia normale.
- Le Varianti possono essere degli elementi supplementari.
- Le Varianti possono sostituire un elemento già esistente.
- Normalmente le Varianti vengono calcolate a se stante.
L'attivazione di una Variante viene effettuata nel seguente modo:
- Andare sulla riga con ItemId "#scenario"
- Nella colonna Descrizione indicare la sigla della varianti che si vuole attivare.
- Se si vogliono attivare separate da un punto e virgola ";".
- Esempio:
- Inserire "VA" per attivare la variante "VA".
- Inserire "VA;VB" per attivare le varianti "VA" e "VB".
- Il programma attiva la variante selezionata "VA" ed esclude le posizioni che sono sotiute:
- Rimuove la sigla della Variante.
- "VA:2.1" diventa "2.1"
- "VA:T:2.1" diventa "T:2.1"
- Se vi è una posizione uguale principale, aggiunge a questa e a tutti gli elementi figli la sigla della Variante che sostituisce preceduta da X.
- "2.1" diventa "XVA:2.1"
- "T:2.1" diventa "XVA:T:2.1"
- "VA:2.1" diventa "2.1"
- "VA:T:2.1" diventa "T:2.1"
- Rimuove la sigla della Variante.
Modalità blocco per inserimento prezzi
La tabella prevede una modalità di inserimento prezzi, che blocca tutte le celle, eccetto quelle che servono a inserire prezzi e altri valori.
L'idea è che il file venga trasmesso alle imprese e queste possano inserire i loro prezzi e vedano subito i totali, senza però avere la possibilità di modificare altri elementi.
Se è attivata questa modalità il programma:
- Blocca tutte le celle eccetto quelle che sono destinate a inserire prezzi, percentuali o testi.
- Le righe dove devono essere inseriti dei valori sono colorate in giallo.
- Le righe già completate con il valore richiesto nella colonna ModifyCode, sono visualizzate in celeste chiaro.
Sarebbe stato più intuitivo il verde, ma non è facilmente distinguibile da persone daltoniche.
Per attivara la modalità blocco (provvisorio):
- Aggiungere una nuova riga a inizio file
- Nella colonna ItemId inserire il testo #options
- Nella colonna Descrizione inserire il testo lock
Le righe con le celle modificate sono indicate nella colonna "Mod. Code" (ModifyCode), tramite un carattere:
- D: Descrizione modificabile.
- N: Note modificabile.
- Q: Quantità modificabile.
- P: Prezzo unitario modificabile
- U: Unità
- Si possono combinare più codici, ad esempio "QP" (Quantità e Prezzo unitario modificabili).
- Il programma in automatico indica il codice in parentesi graffe "{P}", con la seguente logica.
- Il valore in automatico viene messo solo se la cella è vuota o vi è un valore fra parentesi quadre.
- Se vi è un valore nella colonna Quantità e non c'é formula prezzo viene messo "{P}" .
Colore righe
In modalità blocco le righe vengono colorate in automatico con questa logica.
- In giallo le righe che richiedono un inserimento di valore.
- Se vi è un codice di modifica e la rispettiva colonna è vuota.
- Oppure per la Colonna Descrizione contiene tre puntini "..."
Per esempio "Marca: ..."
- In verde chiaro se i valori sono completati.
Verifica dell’integrità tramite hash
QuickSumTable può calcolare un hash crittografico del contenuto della tabella. L’hash permette di verificare se i dati rilevanti del documento sono stati modificati dopo il calcolo.
L’hash non impedisce la modifica del documento, ma consente di rilevarla confrontando il valore memorizzato con quello ricalcolato.
Tipi di hash
QuickSumTable genera due valori distinti.
- Hash Base
- Id riga #hash-base
- L’Hash Base protegge i dati principali e le celle che non sono configurate come modificabili.
- È utile quando alcune informazioni del documento devono rimanere protette, mentre altre possono essere successivamente completate o modificate senza invalidare questo hash.
- Alcuni valori calcolati o dipendenti da formule possono essere esclusi per evitare che variazioni automatiche influenzino il risultato.
- Hash All
- Id riga #hash-all
- L’Hash All comprende un insieme più esteso di dati, incluse le colonne modificabili, le colonne definite dall’utente e alcuni risultati calcolati.
- È utilizzato per verificare l’integrità complessiva della tabella. Una modifica a uno dei valori inclusi produce un Hash All differente.
Comportamento delle righe e delle colonne
- Le righe completamente vuote non partecipano al calcolo. Di conseguenza, l’inserimento o la rimozione di una riga vuota non modifica l’hash.
- Il numero e la posizione fisica della riga non vengono memorizzati, mentre l’ordine delle righe non vuote rimane significativo.
- Le colonne di sistema sono identificate tramite il loro codice interno. Le colonne definite dall’utente sono identificate tramite il loro nome XML, così il risultato non dipende dall’identificatore numerico assegnato internamente.
- Le colonne vengono ordinate in modo deterministico prima del calcolo.
Informazioni tecniche
- L’algoritmo crittografico utilizzato è **SHA-256**.
- Il formato dell’algoritmo è versionato. La versione corrente è **QS1** e viene memorizzata alla fine dell’hash:
- <digest SHA-256>:QS1
- La versione permette a QuickSumTable di riconoscere le regole utilizzate per il calcolo e di gestire future evoluzioni del formato.
- I testi delle celle vengono:
- convertiti in UTF-8;
- codificati in Base64;
La codifica Base64 evita che il contenuto di una cella possa essere interpretato come un separatore, una nuova colonna o una nuova riga. - inseriti in una rappresentazione testuale strutturata della tabella.
Limitazioni
L’hash rileva le modifiche soltanto se il valore originale viene conservato in modo affidabile. Se una persona può modificare sia la tabella sia l’hash memorizzato, può ricalcolare un nuovo valore coerente con i dati alterati.
Per garantire anche l’autenticità dell’autore del documento è necessaria una firma digitale o un altro sistema basato su chiavi crittografiche.
Stampe
Per stampare i dati della tabella QuickSum, esistono le possibilità seguenti.
Stampa tramite l'Anteprima
Con il comando Anteprima di Stampa è possibile creare una stampa della tabella.
Si possono preparare delle Viste apposite in modo da definire quali colonne includere nella stampa.
Tramite la funzione Filtra righe, nella stampa si possono includere solo le righe desiderate. Ad esempio, se si vogliono avere solo le righe di totale:
- Posizionarsi nell'editor del filtro.
- Inserire
!itemcalc!^t:- Questo comando indica di selezionare solo le righe che nella colonna ItemCal iniziano con "T:".
- Sono le righe delle colonne che sono attivate.
Stampa tramite Estensioni
Con estensioni in Javascript è possibile creare dei report di stampa personalizzati, ad esempio che mostrano i dati desiderati con il riassunto dei diversi totali.
- Estensione QuickSum Stampa Capitolato d'offerta
Permette di creare una stampa del capitolato di offerta mostrando tutte le voci che compongono l'offerta e una pagina riassuntiva con tutti i totali.
Errori
La calcolazione parte dalla prima riga e se il programma trova un errore la riga viene messa in colore rosso e la calcolazione degli importi viene interrotta.
- Con l "#options" "onerrorcalculate", gli errori vengono segnalati, ma la calcolazione viene effettuata comunque, anche se è sbagliata.
- Serve per un controllo.
- Deve essere disattivata per avere dei risultati corretti.
Il programma segnale questi possibili errori:
- Per il momento la gestione degli errori è molto basilare e i codici deggli errori vengono visualizzati nella tabella Info.
- "err_Duplicate"
La riga di totale è gia presente. - "err_IdNotNumeric"
Si è attivata l'opzione che richiede che gli ItemId siano numerici, ma l'ItemId contiene altri caratteri. - "err_OutOfSequence";
- L'ItemId non è nella sequenza numerica/alfabetica corretta.
- "2.1" viene prima del "2"
- Si usa un ItemId di livello uguale o inferiore dopo avere fatto un totale.
- Vi è il "T:2.1"
- Successivamente si usa ancora "2.1" o "2.1.1"
- L'ItemId non è nella sequenza numerica/alfabetica corretta.
- "err_TotalWithoutElements"
- Si è indicata una riga di totale ma non è stato specificato alcun elemento.
- Per esempio vi è il "T:2.1", ma non vi è in precedenza alcun itemId "2.1" o "2.1.1"
- "err_UnitPriceFormulaUndefined"
- Il risultato della formula Prezzo Unitario è indefinito.
- Per esempio quando si usa nel "$S('2.1') ma l'item "2.1" non è mai stato usato.
- "err_UnitPriceFormulaError"
Il testo della formula Prezzo Unitario contiene un errore, per cui il codice Javascript non è valido. - "err_FormulaTextError"
- Il risultato della Formula Inizio e Formula assieme è indefinito.
- Per esempio quando si usa nel "$S('2.1') ma l'item "2.1" non è mai stato usato.
- "err_FormulaTextUndefined";
Il testo della Formula inizio o Fromula contiene un errore, per cui il codice Javascript non è valido. - "err_ParseError"
L'ItemId è in un formato non valido. - "wrn_totalRowWithCalcArguments"
Riga di totale "T:" o sottototale "S:" con elementi di calcolo (quantità, prezzo unitario, formula) che non vengono usati. - "wrn_emptyIdWithCalcArguments"
Non vi è un ItemId ma vi sono elementi di calcolo. - "others error"
Altri errori.
Link tables using the RowId column
In Banana Accounting Plus, you can create links between columns of different tables using the RowId column.
This feature allows you to enrich the main table (e.g. Transactions) with information from other tables, simplifying data management and analysis without complicating the structure.
You can create links between:
- Columns of a simple table (added by the user) and one of Banana's predefined tables (e.g. Accounts, Transactions).
- Columns of two or more simple tables added by the user.
How to add linking columns
To link columns between different tables:
- Go to the table where you want to insert the links.
- From the Tools > Add/Remove Functionalities > Add columns to link tables menu.
- Choose the position (after which column to insert the new columns).
- Confirm with OK.
The command only works if the table to be linked contains the RowId column. Along with the RowId, the Description column is also added (you can hide it if not needed).
Dialogs
Select table → lists the tables with a RowId column that are not yet linked. If the list is empty, there are no linkable tables.
Select column position → shows all columns of the current table and lets you choose where to insert the new columns.
Linking a simple table → predefined table
To link a simple table with one of Banana's predefined tables, such as the Transactions table, follow these steps:
- Open the Banana file
- Create the simple table (e.g. Internal Notes)
- Go to the Transactions table and from the Tools > Add/Remove Functionalities > Add columns to link tables menu
- In the dialog that opens, select the simple table you created (e.g. Internal Notes)
- Choose the position of the columns
- Confirm with OK.
In the Transactions table, Banana automatically adds two columns: Id and Description Id from the simple table, with the headers and contents you created in the two columns (Internal Notes).
For more information, see the detailed example:
Linking two simple tables
You can also create links between two simple tables. For example, linking the "Events" simple table with the "Volunteers" simple table:
Add simple table 1
- Id → where you enter the event code or name.
- Description → description of the event
- Add new columns or rename existing ones (Data > Columns setup)
Add simple table 2
- Id → where you enter the volunteer code or name
- Description → where you enter the volunteer's role.
- Add new columns or rename existing ones (Data > Columns setup)
Create the link
- Go to the table where you want to create the link and from the Tools > Add/Remove Functionalities > Add columns for linking tables menu.
- In the dialog that opens, select the name of the other simple table you created
- Choose after which column to place the columns to be linked
- Confirm with OK.
Banana automatically adds the two linking columns, Id and Description, with the headers and contents you created.
For more information, see the example:
Technical notes on table linking
For correct operation, Banana applies some automatic rules:
- Column names: are created as TableNameId and TableNameDescription.
- Automatic description: automatically filled in when you enter a valid Id.
- Updates: if you change the description in the linked table, it also updates in the Transactions table.
- Manual creation: you can manually add columns with these names, following the naming convention.
- Avoid ambiguity: do not use the Id or Description suffixes for columns that are not intended to be linked.
- Optional Description column: you can hide or delete it if not needed.
Limitations
- You can only link a table if it contains the RowId column.
- A table can only be linked to one other table at a time.
- If nothing appears in the Select table dialog, it means there are no linkable tables available.
Linked tables Volunteers/Events
Associations that organize activities and events often need to coordinate their volunteers. With Banana Accounting Plus, you can create two simple tables linked to each other – Volunteers and Events – to centrally manage who participates, which tasks have been assigned, and the organizational details of each event.
This way, all the information stays within the same accounting file, without the need for separate Excel sheets, giving you a clear, up-to-date, and immediate overview.
In Banana Accounting Plus, you can link simple tables to each other using the RowId column.
How to create the Volunteers and Events tables
- Open the accounting file
- From the menu Tools > Add/Remove Functionalities > Add Simple Table
- Create the simple table Volunteers
- Create the simple table Events.
Structure of the Volunteers table
The table can be customized by adding your own columns and displaying other predefined ones. In this example, the structure created is as follows:
- RowId → unique volunteer code (also serves as the linking key).
- Description → volunteer's full name; automatically appears in other linked tables.
- Email → “Notes” column renamed to “Email”.
- Phone number → column added via Data > Columns setup > Add.

Structure of the Events table
The Events table can include these columns:
- RowId → short code to identify the event (e.g. SPRIFEST).
- Description (DescriptionId) → name of the event (e.g. Spring Festival).
- Date → column added via Data > Organize columns > Add.
- Location → column added via Data > Organize columns > Add.

Creating a link between Volunteers and Events
In this example, the Volunteers columns were linked to the Events table.
- Tools > Add/Remove Functionalities > Add columns to link tables
- In the dialog window, select the Volunteers table.
Banana automatically adds the following columns to the Events table:
- Volunteers Id → volunteer's code.
- Volunteers Description → name of the volunteer (or event manager)
When you enter the volunteer code in the Volunteers column, Banana automatically fills in the volunteer's name in the corresponding column.

Advantages of linking
- Clear overview → you immediately know who is participating in an event.
- Defined roles → assign specific tasks to each volunteer.
- Automatic updates → if you change data in the Volunteers table, Banana updates it in the Events table too.
- Simplified management → no more separate sheets, everything stays in the same file.
- Activity history → keep a record of volunteer participation over time.
This approach is ideal for cultural, sports, or charity associations that want to manage people and events in a simple, organized, and immediate way.
Create file copy
You can activate the command from the Tools menu > Create file copy.

This feature allows you to create a new file, identical to the existing one. You can choose to copy the file with the following options:
- Keep Opening balances. If the option is activated, the opening balances of the copied file will be shown in the new file.
- Keep Transactions. If this option is activated, transactions of the copied file will be shown in the new file.
- Keep Recurring transactions. If this option is activated, the recurring transactions of the copied file will be shown in the new file.
- Keep Budget transactions. If this option is activated, the Budget table transactions of the copied file will be shown in the new file.
This feature is very useful when you want to make test changes and have the confidence that you can go back without losing data.
If none of the options are activated, a new file will be created only showing the same accounting plan.
The new file must be saved with a name; by default, the program suggests the template name.
Save the file with a name of your choice by clicking on File > Save As.
Convert to new file
The command is activated from via Tools > Convert to new file.
In the dialog box that appears, the file type you are working on is selected.
A list of possible choices is also listed:

This command converts an existing file (which will not be modified) into another one with different characteristics:
- Change language
- Change the rounding
- Change the file type. For example:
- Pass from an accounting without VAT to one with VAT
- Pass from a Double-entry accounting to a Multi-currency accounting
This is similar to creating a new blank file and then transfer the data manually .
The existing file characteristics can be consulted by executing the Tools > File Info command
Creation and data transfer
The Tools → Convert to new file command:
- Creates a new file of the specified type with the predefined columns setup
- Transfers the data into the new file, proceeding with the necessary conversions
- Saves and indicates the name of the new file.
When converting a file with more options into one with fewer options, part of the data will be lost during conversion. If, for example, an accounting file with VAT/Sales tax is converted into an accounting file without VAT/Sales tax, all data in the VAT columns will be lost during conversion.
Conversion from a Double-entry accounting to a Multi-currency accounting file
- The currency symbol that is to become the basic currency must be specified in File and accounting properties
- Choose the Multi-currency accounting as destination
- The program creates a Multi-currency accounting, recovering the existing data:
- The Transactions table includes the columns for managing the Multi-currency accounting, as the base currency and a 1.0000 exchange rate
- The existing accounts in the Accounts table are being completed with the base currency symbol
- You must add the predefined accounts for exchange rate profit & loss.
- You must indicate the predefined accounts for exchange rate profit & loss in the File and accounting properties.
- The Exchange rate table will be empty; it is therefore necessary to add the currencies and exchange rates used in the transactions
- In the Accounts table, the accounts in foreign currency have to be added.
In order to change the currency of an accounting file, refer to the File Properties of the File and accounting properties.
Conversion from an accounting without VAT to one with VAT
- Choose the desired type of accounting with VAT as the destination
- The program creates an accounting with the VAT columns, recovering the existing data:
- Add the VAT accounts into the Chart of Accounts
- The File properties regarding the VAT need to be completed, and the default account on which the VAT must be recorded needs to be indicated
- Via Actions > Importa to accounting > VAT codes the applicable rates present in the VAT Codes table can be used.
Outline to create new file
For further details refer to:

Related documents:
The Merge file command in Banana Accounting+
The possibility of merging accounting files together is very useful; it allows, for example, to merge the accounting files of different branches of the same company, or to absorb the accounts of dislocated activities in the accounting file of the parent company, both for associations and businesses.
In Banana Accounting Plus this feature is only available with the Advanced plan. Explore all the Advanced plan features. Switch now to the Advanced plan!
The command is activated vie Tools → Merge File.
It is possible to merge two files, but they have to belong to the same application (for example two double-entry accounting files). It is not possible to merge files belonging to different applications (for example one double-entry accounting file and one income & expense file).
In order to successfully merge two files, it is crucial that they contain the same accounts numbers. Proceed as follows:
- Open the file which will contain the data of both files.
- Select the Tools → Merge File command.
- Select the path and the name of the file to be merged.
- Confirm the merge operation.
- If the files are not identical, even though they belong to the same application, (for example, accounting with VAT/Sales tax and accounting without VAT/Sales tax), a message will appear warning against probable data loss.
Program options
The program options are activated via the Tools → Program menu options and contain technical choices for the accounting document.

In the following pages you will find more detailed information.
General
The interface options are activated via Tools → Program Options → Interface.

Program options
Language
It is the language used by the program. You can change this setting if you want to use a language other than the default or if the default is not available.
Font type
You can choose the font.
% Zoom
If you want the data in the tables to be displayed in a different size, just adjust the Zoom percentage.
- The zoom percentage can also be changed with the zoom tool at the bottom right of the status line.
- The purpose of the zoom is to adapt the table content to the window size.
For the text size of menus, dialogues and icons, the operating system settings are used, but can also be adapted by the user.
Line spacing
In this field you can specify the row height of the various tables in the program.
Show negative numbers in red
Negative numbers and amounts are displayed in red in the tables.
Startup
Check for updates
Direct link the www.banana.ch website to the update download page.
Display start page
The news information home page is displayed.
Show recently used files
Recently opened files are displayed.
Start Web Server
Is used to access Banana Accounting data from external programs.
For more information see Integrated Webserver
Editor
The Editor options are activated from the menu Tools → Program Options → Editor.

Behavior
Edit table with single click
- If the function is activated, a single click on the selected cell is sufficient to introduce change.
- If the function is activated, a single click on the cell already selected is sufficient to change.
Autocomplete text (Smart fill)
By activating this option, the program automatically selects the first draft text in the drop down list and automatically fills it in the row where you are.
Add up during selection
By activating this option, the program will add up the selected amounts. Deactivate this function if this instantaneous addition slows certain operations down. One can select non-adjacent amounts by holding down the Ctrl key while selecting individual cells with the left mouse button.
On Enter go to the next row
By activating this option, the cursor will place itself on the next row when pressing the Enter key.
Input
Maximum number of undo operations
Insert the maximum number of undo operations when using the command from the menu Edit → Undo Operation (you undo one operation at a time).
Smart fill rows limit
When inserting data, the program reads the data that has already been entered and tries to suggest how to complete an entry. In cases where there are many rows, this function could slow down the process.
The user can define a limit for the number of rows, above which the smart fill will not be used. If there is no value entered or zero, smart fill will always be used.
File handling
The File Management options are activated via Tools → Program Options → File Handling tab.

Saving documents
This section contains the following options for saving documents.
Saving automatically when closing the documents
If this option is enabled, the data will be saved each time the file is closed.
Save autorecover information
The option allows automatic saving of the file with frequency (in minutes) to be indicated. The program saves the data in a document called autobackup + filename. If the program or computer crashes, you can recover the data by opening this file and saving it as from the File menu.
Create backup copy
When saving to disk with the same name, the pre-existing version of the file is renamed with the BAK extension.
Refer to the Save page for further information.
Files extension
Extension of files considered secure
This option defines the file types (eg: "pfd", "jpg", ...) and the url schemes (eg: "http:", "x-devonthink-item:", ...) that allow to open with a double click in the DocLink column of the Transactions table. Therefore, it prevents you from opening unsafe files or schemes. Extensions must be inserted without the period '.' initial, while the schemes must be inserted with a double dot ':' at the end.
Restore defaults
If certain settings have been changed, program will restore the default settings when clicking on this button.
Advanced
The Advanced options are activated Tools > Program Options > Advanced.

Enable TrueType Fonts
If this option is enabled when printing PDF files, the font selected in the Interface tab is used, otherwise a native font type of PDF files is used (Helvetica or Times New Roman). This option must be disabled if the texts in the generated PDF files are unreadable.
System info
Open the System info dialogue.