Funktionen hinzufügen/entfernen
Banana Buchhaltung Plus ermöglicht es Ihnen, Ihre Buchhaltungs- oder Produktivitätsdatei individuell anzupassen und zu erweitern, indem Sie nur die Funktionen aktivieren, die Sie tatsächlich benötigen. Auf diese Weise bleibt die Datei einfach in der Handhabung und kann gleichzeitig an komplexere Anforderungen angepasst werden.
Dialog für zusätzliche Funktionen öffnen – so vorgehen:
- Über das Menü Werkzeuge > Funktionen hinzufügen/entfernen... die gewünschte Funktion auswählen und die Auswahl mit OK bestätigen.
Die verfügbaren Optionen hängen vom jeweiligen Dateityp ab (Buchhaltung oder Produktivität).
Es stehen spezifische Funktionen zur Verfügung für:
- Buchhaltungs-Funktionen - nur bei Buchhaltungsdateien verfügbar
- Funktionen der Produktivitäts-Apps - nur bei Produktivitätsdateien verfügbar

Weitere Informationen finden Sie über die oben angegebenen Links.
Tabelle Dokumente
Die Tabelle Dokumente ermöglicht es, einer Buchhaltungsdatei neue Texte, Abbildungen (einschliesslich Logo) oder JavaScript-Dateien hinzuzufügen.
Sie kann vom Benutzer auf zwei Arten hinzugefügt werden:
- Über Menü Werkzeuge > Funktionen hinzufügen/entfernen... > Dokumente-Tabelle hinzufügen.
- Automatisch, wenn das Programm Dokumente speichern muss (z.B. beim Hinzufügen eines Logos oder von Anhängen zum Formatierten Ausdruck bzw. Formatierten Ausdruck nach Gruppen im Menü Berichte > Registerkarte Anhang).

Die Tabelle Dokumente enthält folgende Spalten:
- ID
Bezeichnung des Dokuments. Die ID ist ein freier Text, der jedoch innerhalb der Tabelle einheitlich sein sollte.- Einige spezielle IDs, die mit einem Unterstrich "_" beginnen, werden vom Programm für bestimmte Funktionen verwendet:
- "_budget.js"
Enthält benutzerdefinierte Funktionen für die Tabelle Budget.
- "_budget.js"
- ID dlgmanageaddons – wird verwendet, um das als Logo gespeicherte Bild zu hinterlegen.
- ID attachment_ – dient dem Speichern von Anhängen in formatierten Ausdrucksberichten (z.B. Bilanzen).
- Einige spezielle IDs, die mit einem Unterstrich "_" beginnen, werden vom Programm für bestimmte Funktionen verwendet:
- Beschreibung
Freitextfeld zur Beschreibung der Datei. - Beilagen
Enthält die eigentliche Datei. Durch Klicken auf die Zelle kann der Inhalt angezeigt oder bearbeitet werden.
Folgende Dateiformate sind möglich:- Bilddateien (image/png, image/jpg)
- Normaler Text (text/plain)
- Formatierter HTML-Text (text/html)
- Formatierter Markdown-Text (text/markdown)
- Javascript-Programme (text/javascript)
- CSS-Stilblätter (text/css)
Sobald die Tabelle Dokumente hinzugefügt wurde, kann sie nicht mehr dauerhaft gelöscht werden. Wurde sie versehentlich eingefügt und soll nicht mehr angezeigt werden, kann sie über das Menü Daten > Tabelleneinstellungen aus der Ansicht entfernt werden. Alternativ gilt: Solange die Datei nach dem Hinzufügen der Tabelle noch nicht gespeichert wurde – weder manuell noch automatisch – genügt es, sie ohne Speichern zu schliessen, um den Vorgang rückgängig zu machen.
Neues Dokument hinzufügen

Um ein neues Dokument in die Tabelle Dokumente einzufügen, gehen Sie wie folgt vor:
- Fügen Sie eine neue Zeile hinzu.
- Geben Sie in der Spalte ID den Dateinamen ein.
- Tragen Sie in der Spalte Beschreibung den gewünschten Text ein.
- In der Spalte Beilagen können Sie durch einen Doppelklick auf die Zelle oder über das Bearbeitungssymbol den Dokumenttyp auswählen, den Sie hinzufügen möchten.
Sehen Sie auch:
Markdown-Editor
In Banana Buchhaltung Plus können Anhänge zur Bilanz nun sowohl in Markdown-Sprache als auch in HTML-Sprache eingefügt werden. Dies ist besonders praktisch, wenn Tabellen in Anhängen dargestellt werden sollen.
Die Funktion ist in Banana Buchhaltung Plus nur im Advanced-Plan verfügbar. Im Professional-Plan und im Free-Plan steht der Advanced-Plan lediglich im Demo-Modus (bis 70 Buchungszeilen) zur Verfügung → Wechseln Sie jetzt zum Advanced-Plan, um die volle Funktionalität zu nutzen.

Markdown ist eine Sprache, mit der formatierter Text mit einem gewöhnlichen Texteditor (Textverarbeitungsprogramm) und einer leicht zu lesenden Syntax erstellt werden kann.
In Banana Buchhaltung Plus ist es möglich, diese Sprache in den Anhängen der Dokumente-Tabelle zu verwenden. Dabei werden die Anforderungen von GitHub Flavored Markdown unterstützt.
Weitere Informationen finden Sie in der auf github.com veröffentlichten Dokumentation:
Hinzufügen eines Markdown-Dokuments
- Wählen Sie die Tabelle Dokumente aus.
- Fügen Sie eine neue Zeile hinzu.
- Geben Sie in der Spalte ID einen Namen ein, der das Dokument kennzeichnet.
- Tragen Sie in der Spalte Beschreibung den gewünschten Text ein.
- Führen Sie in der Spalte Beilagen einen Doppelklick auf die Zelle aus oder wählen Sie das Bearbeitungssymbol.
- Wählen Sie als Textart Markdown.
So können Sie eine Beilage mit Markdown-Text zum Bilanzausdruck hinzufügen.
Beispiel für die Markdown-Syntax zur Erstellung einer Tabelle
Wenn Sie Tabellen in Markdown-Sprache erstellen möchten, müssen die Inhalte der Spalten durch senkrechte Striche getrennt werden. Dabei steht jeweils ein Leerzeichen " | " vor und nach dem senkrechten Strich.
Für die Spaltenausrichtung wird eine Trennzeile eingefügt:
- Links: mindestens drei Bindestriche "---".
- Mitte: Bindestriche mit Doppelpunkt davor und danach ":---:".
- Rechts: Bindestriche mit Doppelpunkt am Ende "---:"
# 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** |

Nicht verfügbare Funktionen
Die folgenden, von Benutzern angefragten Funktionen sind derzeit nicht verfügbar:
- Einfügen eines Links in Markdown-Text
Vollständige Liste der derzeit nicht verfügbaren Funktionen
HTML-Editor

Das Feld ${...} einfügen
Dieses Feld ermöglicht es, dynamischen Text in ein Dokument einzufügen, zum Beispiel den Saldo eines Kontos oder eine Tabelle aus Banana. Die Banana API-Schnittstelle ist auf unserer Homepage verfügbar.
Der Befehl kann entweder manuell oder über den Menübefehl Bearbeiten > Skript einfügen hinzugefügt werden.
Um eine Leerzeile zu drucken, setzen Sie ein Leerzeichen zwischen die Anführungszeichen.
${' '}
Saldo des Kontos 1020 drucken
${Banana.Converter.toLocaleNumberFormat(Banana.document.currentBalance('1020','','').balance);}
Die Tabelle Konten mit den Spalten Konto, Gruppe, Beschreibung und Saldo ausdrucken.
${HTML Banana.document.table('Accounts').toHtml(['Account','Group','Description','Balance'],true);}
Es ist möglich, den JavaScript-Code in einem separaten Dokument zu schreiben und mithilfe des Befehls Banana Include auf dieses Skript zu verweisen.
Die Skripte können entweder in der Tabelle Dokumente oder als lokale Datei gespeichert werden.
${Banana.include('documents:myscript1');rtnValue}
${Banana.include('c://temp//myscript16.js');rtnValue}


Seitenumbruch einfügen
Text auf der ersten Seite
${PAGEBREAK}
Text auf der zweiten Seite
Problemlösung
- Wenn Sie Text aus externen Quellen (z.B. Word, Internetseiten usw.) übernehmen, verwenden Sie den Befehl Bearbeiten > Als unformatierten Text einfügen.
Dadurch werden Probleme mit HTML-Formatierungen vermieden, die in manchen Fällen die korrekte Anzeige verhindern können. - Für die Beispiele auf dieser Seite benutzen Sie bitte den Link Kopieren oben rechts in jedem Beispiel.
Verwenden Sie nicht die Tastenkombination STRG+C (bzw. CMD+C auf Mac). - Wenn das Feld ${…} nicht funktioniert, überprüfen Sie, ob keine HTML-Formatierungen vorhanden sind (z.B. <span>…</span>-Elemente oder andere). Entfernen Sie diese gegebenenfalls aus dem HTML-Quellcode.
- HTML-Formatierungen von einer gesamten Seite entfernen:
- Text in die Zwischenablage kopieren (STRG+C).
- Zur Registerkarte HTML-Quelle wechseln und den gesamten Inhalt löschen.
- Zur Registerkarte Seite 1 (Page 1) wechseln und den kopierten Text mit dem Befehl Bearbeiten > Als unformatierten Text einfügen einfügen.
Integrierte Erweiterung (Embedded)
Die integrierten Erweiterung auch eingebettete Erweiterung genannt (Embedded Extensions) sind Erweiterungen, die in JavaScript geschrieben und direkt in der Tabelle Dokumente der Buchhaltungsdatei gespeichert werden. Sie funktionieren ausschliesslich innerhalb dieser spezifischen Datei, ohne dass eine Installation erforderlich ist.
Sobald sie erstellt wurden, sind sie sofort einsatzbereit.
Eine Embedded-Erweiterung hinzufügen
- Öffnen Sie eine Buchhaltungsdatei in Banana Buchhaltung Plus.
- Stellen Sie sicher, dass die Tabelle Dokumente aktiviert ist:
- Dies erfolgt mittels Menübefehl Werkzeuge > Funktionen hinzufügen/entfernen... > Dokumente-Tabelle hinzufügen.
- Fügen Sie die Embedded-Erweiterung in der Tabelle Dokumente hinzu:
- In der Spalte ID geben Sie einen Namen für die Erweiterung ein.
- In der Spalte Beschreibung fügen Sie einen Kommentar hinzu.
- In der Spalte Beilagen tragen Sie den JavaScript-Code ein, indem Sie entweder einen Doppelklick auf die Zelle erteilen oder oben rechts auf das Bearbeitungssymbol klicken. Wählen Sie JavaScript-Code und bestätigen Sie mit OK.

- Es öffnet sich ein Editor, in dem Sie den JavaScript-Code eingeben können.

- Nach dem Eingeben des Codes bestätigen Sie mit OK und speichern Sie die Buchhaltungsdatei.
Eine Embedded-Erweiterung ausführen
Zum Ausführen einer integrierten/eingebetteten Erweiterung stehen Ihnen zwei Optionen zur Verfügung:
- In der Tabelle Dokumente – Klicken Sie auf das Ausführungssymbol in der Zelle Beilagen, die den JavaScript-Code enthält.
- Über das Menü Erweiterungen – Wählen Sie die gewünschte Erweiterung aus der Liste der verfügbaren Erweiterungen aus.

Weiterführende Informationen
Entwicklerdokumentation (auf Englisch):
Einfache Tabelle in der Buchhaltungsdatei hinzufügen (über Funktionen hinzufügen/entfernen)
Sie können eine oder mehrere einfache Tabellen in derselben Buchhaltungsdatei hinzufügen, um zusätzliche Informationen zu erfassen, ohne die Hauptstruktur zu überladen.
Immer wenn Sie eine einfache Tabelle hinzufügen möchten:
- Zeilen-ID (RowId) – dient zur Erstellung einer Liste codierter Elemente. Jeder Zeile wird ein eindeutiger ID-Code zugewiesen, um das Element zu identifizieren.
- Beschreibung – hier können Sie einen Text zur Beschreibung des Elements eingeben.
- Anmerkungen – hier können Sie Notizen oder weitere Informationen eintragen.

Einer Tabelle einen Namen zuweisen
- Weisen Sie der Tabelle einen Namen zu.
- In unserem Beispiel: Interne Notizen/Anmerkungen
- Bestätigen Sie mit OK.
Die neue Tabelle wird zur Datei hinzugefügt und steht sofort zur Verfügung.
Spalten anpassen
In einer einfachen Tabelle können Sie die Spalten individuell anpassen, indem Sie weitere vordefinierte Spalten einblenden und/oder neue hinzufügen.
Vordefinierte Spalten einblenden
- Wählen Sie im Menü Daten > Spalten einrichten.
- Wählen Sie in der Liste die gewünschte Spalte aus (z.B. die Spalte DokLink (Link/Verknüpfung)).
- Klicken Sie auf Sichtbar.
- Bestätigen Sie mit OK.

Neue Spalten hinzufügen
Gehen Sie dazu wie folgt vor:
- Wählen Sie im Menü Daten > Spalten einrichten > Hinzufügen.
- Geben Sie der Spalte einen Namen (z.B. Datum).
- Definieren Sie das Spaltenformat (z.B. Text, Datum, Betrag, Währung usw.).

Kopfzeile einer einfachen Tabelle ändern
Um die Kopfzeile (Überschrift) einer einfachen Tabelle zu ändern, gehen Sie wie folgt vor:
- Öffnen Sie die gewünschte einfache Tabelle.
- Wählen Sie im Menü Daten > Tabelleneinstellungen.
- Wählen Sie im Dialogfenster die einfache Tabelle aus, die Sie ändern möchten.
- Geben Sie im Einstellungsfeld den neuen Namen ein (im rechten Bereich).
- Bestätigen Sie mit OK.
Weitere Informationen finden Sie auf der Seite:
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.
Tabellen über die Spalte Zeilen-ID (RowId) verknüpfen
In Banana Buchhaltung Plus können Sie Verknüpfungen zwischen Spalten verschiedener Tabellen über die Spalte Zeilen-ID (RowId) herstellen.
Diese Funktion ermöglicht es Ihnen, eine Haupttabelle (z.B. Buchungen) mit Informationen aus anderen Tabellen anzureichern – so wird die Datenverwaltung und -analyse vereinfacht, ohne dabei die Hauptstruktur zu überladen.
Sie können Verknüpfungen erstellen zwischen:
- Spalten einer einfachen Tabelle (vom Benutzer hinzugefügt) und einer der vordefinierten Tabellen von Banana (z.B. Konten, Buchungen).
- Spalten von zwei oder mehr einfachen Tabellen, die vom Benutzer hinzugefügt wurden.
Spalte für die Verknüpfung hinzufügen
Um Spalten zwischen verschiedenen Tabellen zu verknüpfen:
- Öffnen Sie die Datei, in der Sie die Verknüpfungen einfügen möchten.
- Wählen Sie im Menü Werkzeuge > Funktionen hinzufügen/entfernen... > Spalten für die Verknüpfung von Tabellen hinzufügen.
- Wählen Sie die Position aus (nach welcher Spalte die neuen Spalten eingefügt werden sollen).
- Bestätigen Sie mit OK.
Der Befehl funktioniert nur, wenn die zu verknüpfende Tabelle die Spalte Zeilen-ID (RowId) enthält. Zusätzlich wird auch die Spalte Beschreibung eingefügt (diese kann bei Bedarf ausgeblendet werden).
Dialogfenster 'Wert auswählen'
Tabelle mit ID → Es wird eine Liste der Tabellen angezeigt, die die Spalte Zeilen-ID (RowId) enthalten und noch nicht mit einer anderen Tabelle verknüpft sind. Ist die Auswahlliste leer, bedeutet dies, dass keine geeignete Tabelle für eine Verknüpfung vorhanden ist.
Nach Spalte einfügen (Spaltenposition) → Es werden alle Spalten der aktuellen Tabelle angezeigt. Wählen Sie die Spalte aus, nach der die zu verknüpfenden Spalten eingefügt werden sollen.
Verknüpfung von einer einfachen Tabelle → vordefinierte Tabelle
Um eine einfache Tabelle mit einer der vordefinierten Tabellen von Banana Buchhaltung zu verknüpfen, z.B. der Tabelle 'Buchungen', gehen Sie wie folgt vor:
- Öffnen Sie die Banana-Buchhaltungsdatei, in der die neue Tabelle hinzugefügt werden soll.
- Erstellen Sie eine einfache Tabelle (z.B. mit dem Namen "Interne Notizen/Anmerkungen").
- Fügen Sie in die Tabelle Buchungen mittels Menübefehl Werkzeuge > Funktionen hinzufügen/entfernen... > Spalten für die Verknüpfung von Tabellen hinzufügen ein.
- Im Dialogfenster, das sich öffnet, wählen Sie einfache Tabelle aus, die Sie erstellt haben (z.B. "Interne Notizen/Anmerkungen").
- Wählen Sie die Position der neuen Spalte.
- Bestätigen Sie mit OK.
In der Tabelle Buchungen fügt Banana automatisch zwei Spalten hinzu: Zeilen-ID und Beschreibung-ID der einfachen Tabelle – mit den Überschriften und Inhalten, die Sie in den beiden Spalten (z.B. "Interne Notizen/Anmerkungen") definiert haben.
Detaillierte Informationen finden Sie auf der Seite:
Verknüpfung von zwei einfachen Tabellen
Sie können auch Verknüpfungen zwischen zwei einfachen Tabellen erstellen. Zum Beispiel: die einfache Tabelle "Veranstaltungen" mit der Tabelle "Freiwilligenarbeit" verknüpfen. So vorgehen:
Einfache Tabelle 1 hinzufügen (z.B. "Veranstaltungen")
- Spalte ID → Hier wird der Ereigniscode oder -name eingegeben
- Spalte Beschreibung → Beschreibung der Veranstaltung angeben.
- Neue Spalten hinzufügen oder bestehende umbenennen (Daten > Spalten einrichten)
Einfache Tabelle 2 hinzufügen (z.B. "Freiwilligenarbeit")
- Spalte ID → Hier wird der Code oder Name des Freiwilligen eingegeben
- Spalte Beschreibung → Rolle des Freiwilligen angeben.
- Neue Spalten hinzufügen oder bestehende umbenennen (Daten > Spalten einrichten)
Verknüpfung erstellen
- Begeben Sie sich in die Tabelle, in der Sie die Verknüpfung erstellen möchten, und wählen Sie im Menü Werkzeuge > Funktionen hinzufügen/entfernen > Spalten zum Verknüpfen von Tabellen hinzufügen.
- Im Dialogfenster, das sich öffnet, wählen Sie andere einfache Tabelle aus, die Sie erstellt haben.
- Wählen Sie die Position der neuen Spalte.
- Bestätigen Sie mit OK.
Das Banana-Programm fügt automatisch die neuen Spalten für die Verknüpfungen hinzu: ID und Beschreibung, mit den von Ihnen definierten Spaltenüberschriften und Inhalten.
Detaillierte Informationen finden Sie auf der Seite:
Technische Hinweise zur Verknüpfung von Tabellen
Für einen korrekten Betrieb wendet Banana einige automatische Regeln an:
- Spaltennamen: werden als TabellennameId und TabellennameBeschreibung erstellt.
- Automatische Beschreibung: wird automatisch ausgefüllt, wenn Sie eine gültige ID eingeben.
- Aktualisierungen: wenn Sie die Beschreibung in der verknüpften Tabelle ändern, wird sie auch in der Tabelle "Buchungen" aktualisiert.
- Manuelle Erstellung: Sie können manuell Spalten mit diesen Namen hinzufügen, indem Sie die Namenskonvention befolgen.
- Mehrdeutigkeit vermeiden: Verwenden Sie die Suffixe "ID" oder "Description" nicht für Spalten, die nicht verknüpft werden sollen.
- Optionale Beschreibungsspalte: Sie können diese ausblenden oder löschen, wenn sie nicht benötigt wird.
Einschränkungen
- Eine Tabelle kann nur verknüpft werden, wenn sie die Spalte RowId enthält.
- Eine Tabelle kann jeweils nur mit einer anderen Tabelle verknüpft werden.
- Wenn im Dialogfeld Tabelle auswählen nichts erscheint, bedeutet dies, dass keine verknüpfbaren Tabellen verfügbar sind.
Verknüpfte Tabellen Freiwillige/Veranstaltungen
Vereine, die Aktivitäten und Veranstaltungen/Events organisieren, müssen häufig ihre Freiwilligen koordinieren. Mit Banana Buchhaltung Plus können Sie zwei einfache Tabellen erstellen, die miteinander verknüpft sind – Freiwillige und Veranstaltungen –, um zentral zu verwalten, wer teilnimmt, welche Aufgaben zugeteilt wurden und welche organisatorischen Details zu jeder Veranstaltung gehören.
So bleiben alle Informationen innerhalb derselben Buchhaltungsdatei, ohne dass separate Excel-Dateien erforderlich sind. Dadurch erhalten Sie einen klaren, stets aktuellen und sofort verfügbaren Überblick.
In Banana Buchhaltung Plus können Sie einfache Tabellen über die Spalte Zeilen-ID (RowId) miteinander verknüpfen.
Tabellen 'Freiwillige' und 'Veranstaltungen' erstellen
- Öffnen Sie die Buchhaltungsdatei.
- Wählen Sie im Menü Werkzeuge > Funktionen hinzufügen/entfernen > Einfache Tabelle hinzufügen.
- Erstellen Sie die einfache Tabelle Freiwillige.
- Erstellen Sie die einfache Tabelle Veranstaltungen.
Struktur der Tabelle 'Freiwillige'
Die Tabelle kann individuell angepasst werden, indem Sie eigene Spalten hinzufügen oder weitere vordefinierte Spalten einblenden. Im folgenden Beispiel wurde die Struktur wie folgt erstellt:
- Zeilen-ID (RowId) → eindeutiger Freiwilligen-Code (dient gleichzeitig als Verknüpfungsschlüssel).
- Beschreibung → Vor- und Nachname des Freiwilligen; erscheint automatisch in anderen verknüpften Tabellen.
- E-Mail → Spalte "Anmerkungen" wurde in E-Mail umbenannt.
- Telefonnummer → Spalte über den Menübefehl Daten > Spalten einrichten > Schaltfläche Hinzufügen ergänzt.

Struktur der Tabelle 'Veranstaltungen'
Die Tabelle Veranstaltungen kann unter anderem folgende Spalten enthalten:
- Zeilen-ID (RowId) → Kürzel zur Identifikation der Veranstaltung (z.B. FRÜHFEST).
- Beschreibung (DescriptionId) → Name der Veranstaltung (z.B. Frühlingsfest).
- Datum (Date) → Spalte über den Menübefehl Daten > Spalten einrichten > Schaltfläche Hinzufügen ergänzt.
- Ort (Location) → Spalte über den Menübefehl Daten > Spalten einrichten > Schaltfläche Hinzufügen ergänzt.

Verknüpfung zwischen den Tabellen 'Freiwillige' und 'Veranstaltungen' erstellen
In diesem Beispiel werden die Spalten der Tabelle Freiwillige mit der Tabelle Veranstaltungen verknüpft.
Gehen Sie dazu wie folgt vor:
- Wählen Sie im Menü Werkzeuge > Funktionen hinzufügen/entfernen > Spalten für die Verknüpfung von Tabellen hinzufügen.
- Wählen Sie im Dialogfenster die Tabelle Freiwillige aus.
Daraufhin fügt Banana Buchhaltung automatisch folgende Spalten in der Tabelle Veranstaltungen hinzu:
- Freiwillige-ID (Volunteers Id) → Code des Freiwilligen.
- Freiwillige-Beschreibung (Volunteers Description) → Name des Freiwilligen (oder der verantwortlichen Person für die Veranstaltung).
Wenn Sie in der Spalte Freiwillige-ID den Code des Freiwilligen eintragen, ergänzt Banana automatisch den Namen des Freiwilligen in der entsprechenden Spalte.

Vorteile der Verknüpfung
- Klarer Überblick → Sie sehen sofort, wer an einer Veranstaltung teilnimmt.
- Definierte Rollen → Weisen Sie jedem Freiwilligen konkrete Aufgaben zu.
- Automatische Aktualisierung → Änderungen in der Tabelle 'Freiwillige' werden automatisch auch in der Tabelle 'Veranstaltungen' übernommen.
- Vereinfachte Verwaltung → keine separaten Dateien mehr, alle Daten bleiben in derselben Datei.
- Aktivitätsverlauf → behalten Sie den Überblick über die Teilnahme der Freiwilligen im Laufe der Zeit.
Dieser Ansatz ist ideal für Kultur-, Sport- oder gemeinnützige Vereine, die Personen und Veranstaltungen auf einfache, organisierte und sofort zugängliche Weise verwalten möchten.