Ajouter/Supprimer fonction

Banana Comptabilité Plus vous permet de personnaliser et d’enrichir votre fichier de comptabilité ou de productivité en activant uniquement les fonctionnalités dont vous avez besoin. Ainsi, le fichier reste simple à utiliser, tout en pouvant être adapté à des besoins plus complexes.

Pour ouvrir la boîte de dialogue des fonctionnalités supplémentaires, allez dans :

  • Menu Outils > Ajouter/Supprimer des fonctions et sélectionnez l’option souhaitée.

Les options disponibles varient selon le type de fichier que vous utilisez (comptabilité ou productivité). Il existe donc des fonctionnalités spécifiques pour : 

ajouter des fonctionnalités

Pour plus d’informations, cliquez sur les liens mentionnés.

Tableau documents

Le tableau Documents sert à inclure, dans le fichier comptable, des documents de textes, des images (y compris le logo) ou des scripts.

L'utilisateur peut l'ajouter de deux manières différentes :

Tableau Documents

Le tableau Documents contient les colonnes suivantes:

  • Id
    Il s’agit du nom du document. L'id est un texte libre, mais doit être unique dans le tableau.
    • Les documents qui commencent par "_" sont utilisés pour des fonctionnalités particulières du programme.
      • "_budget.js"
        Vous y insérez les fonctions créées pour le tableau Budget.
    • L'id dlgmanageaddons est utilisé pour enregistrer l'image utilisée comme logo.
    • L'id de la pièce jointe est utilisé pour les pièces jointes dans le Bilan formaté.
  • Libellé
    Une brève description du fichier (optionnel)
  • Pièces jointes
    Contient le fichier. En cliquant sur la celle vous pouvez voir ou modifier le contenu du fichier.
    Les types de contenu suivants sont possibles

Une fois le tableau Documents ajouté, il n’est plus possible de le supprimer définitivement. Si le tableau a été ajouté par erreur et que vous ne souhaitez plus l’afficher, vous pouvez le retirer de la vue via le menu Données > Organiser tableaux. Alternativement, si le fichier n’a pas encore été enregistré (ni manuellement ni via l’enregistrement automatique) après l’ajout du tableau, il suffit de le fermer sans enregistrer pour annuler l’opération.

Adding a new document

external editor

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:

 

Editor Markdown

Dans Banana Accounting Plus, les pièces jointes du bilan peuvent désormais aussi être insérées avec le langage markdown, en plus du HTML. Cela est très pratique pour insérer des tableaux dans les pièces jointes.
Dans Banana Accounting Plus, cette fonctionnalité est disponible uniquement avec le plan Advanced.

éditeur Markdown

Markdown est un langage qui permet de créer du texte formaté à l’aide d’un éditeur de texte normal et d’une syntaxe facile à écrire et à lire.

Dans Banana+, il est possible d’utiliser ce langage dans les pièces jointes de la Tableau Documents et la spécification GitHub Flavored Markdown est prise en charge.

Documentation publiée sur github.com :

Ajouter un document Markdown

  • Sélectionnez le Tableau Documents.
  • Ajoutez une nouvelle ligne.
  • Dans la colonne Id, saisissez un nom qui identifie le document.
  • Dans la colonne Description, vous pouvez écrire le texte souhaité.
  • Dans la colonne Pièces jointes, double-cliquez sur la cellule ou sélectionnez le symbole de modification, puis sélectionnez le type de texte Markdown.

Ajouter une pièce jointe au bilan avec du texte markdown

Comment créer un tableau

Pour créer des tableaux en markdown, le contenu des colonnes doit être séparé par le symbole barre verticale, précédé et suivi d’un espace " | ".
Pour l’alignement des colonnes, il faut créer une ligne avec :

  • Gauche : tirets simples (au minimum trois).
  • Centre : tirets précédés et suivis de deux-points ":---:".
  • Droite : tirets suivis de deux-points "---:".
# Notes au bilan (Exemple)
Les états financiers de Exemple ont été préparés conformément aux Normes internationales d'information financière (IFRS).
## Positions de trésorerie
| Compte | Description | Année courante | Année précédente |
| :---: | --- | ---: | ---: |
| 1000 | Caisse | 23'000.00 | 17'000.00 |
| 1020 | Compte bancaire | 9'000.00 | 1'000.00 |
| | **Total** | **32'000.00** | **18'000.00** |
## Autres immobilisations
| Compte | Description | Année courante | Année précédente |
| :---: | --- | ---: | ---: |
| 1000 | Machines | 13'000.00 | 17'000.00 |
| 1020 | Mobilier | 5'000.00 | 4'000.00 |
| | **Total** | **18'000.00** | **21'000.00** |

 

éditeur Markdown

Comment créer une liste non ordonnée

 

# Créer une liste non ordonnée  
* Premier élément
* Deuxième élément
* Troisième élément
* Quatrième élément

 

Comment créer une liste de tâches avec des cases à cocher

 

# Liste de tâches avec cases à cocher en Markdown
- [ ] Élément 1
- [X] Élément 2
- [X] Élément 3
- [ ] Élément 4
- [ ] Élément 5

liste de tâches avec cases à cocher

Comment changer la couleur du texte

# Changer la couleur du texte en utilisant la syntaxe HTML  
Ceci est un texte normal en noir, <span style="color:blue">et ce texte est bleu !</span>  
<span style="color:red">Un autre texte en rouge.</span>

 

couleur du texte

Comment changer la couleur, la police et la taille d’un texte

# Changer la couleur, la police et la taille du texte en utilisant la syntaxe HTML  
<span style="color:green;font-size:20pt;font-family:Times New Roman;">Changer la couleur, la police et la taille d’un texte</span>

style du texte

Comment appliquer le gras

# Utiliser deux astérisques ( **texte** ) avant et après le texte
**Ceci est un texte en gras**

Comment appliquer l’italique

# Utiliser un astérisque ( *texte* ) avant et après le texte
*Ceci est un texte en italique*

Comment appliquer le gras et l’italique

# Utiliser trois astérisques ( ***texte*** ) avant et après le texte
***Ceci est un texte en gras et en italique***

 

 Fonctionnalités actuellement non disponibles

Ces fonctionnalités, bien que demandées par certains utilisateurs, ne sont pas disponibles pour le moment :

  • Ajouter un lien dans le texte markdown

HTML Editor

Html editor, insérer champ

Ajouter le champ ${...}

Il vous permet d'ajouter du texte dynamique dans le document, comme un solde de compte ou un tableau Banana. L'interface API Banana est disponible à la page https://www.banana.ch/doc/en/node/4714
La commande peut être écrite manuellement ou vous pouvez utiliser la commande Edition > Insérer Javascript

Imprimer une ligne (mettre un espace entre les guillemets)

 

${' '}

 

 

Impression du solde courant du compte 1020

 

${Banana.Converter.toLocaleNumberFormat(Banana.document.currentBalance('1020','','').balance);}

 

 

Impression du tableau Comptes, colonnes: Compte, Groupe, Libellé, Solde.

 

${HTML Banana.document.table('Accounts').toHtml(['Account','Group','Description','Balance'],true);}

 

 

Il est possible d'écrire le code Javascript dans un document séparé et d'inclure le script avec la commande Banana.include.
Les scripts peuvent être enregistrés dans le tableau Documents ou dans un fichier local.

 

${Banana.include('documents:myscript1');rtnValue}
${Banana.include('c://temp//myscript16.js');rtnValue}

 

Html editor, tableau Documents

Html editor, résultat page

Ajouter un saut de page

La commande peut être insérée manuellement ou ajoutée avec la commande Edition > Insérer saut de page

 

Texte de la première page
${PAGEBREAK}
Texte de la deuxième page

 

Résolution des problèmes

  • Lorsque vous prenez du texte à partir de sources externes (Word, pages Internet, ...), utilisez la commande Edition > Coller au format texte brut. Cette commande évite les problèmes de formatage HTML, qui empêchent dans certains cas un affichage correct.
  • Pour les exemples de cette page, utilisez le lien Copier en haut à droite de chaque exemple, n'utilisez pas CTRL+C (ou CMD+C).
  • Si le champ ${…} ne fonctionne pas, vérifiez qu'il n'y a pas de formatage HTML (comme des éléments <span>…</span> ou autre) et supprimez-le éventuellement du code source HTML.
  • Pour supprimer le formatage HTML existant d'une page entière :
    • copier le texte dans le presse-papiers (CTRL+C)
    • accédez à  l'onglet Source HTML et supprimez tout le contenu
    • accédez à l'onglet Page 1 et collez le texte copié avec la commande Édition > Coller au format texte brut.

 

L'extension intégrée (Embedded)

Les Extensions intégrées sont des extensions écrites en JavaScript et enregistrées directement dans le tableau Documents du fichier de comptabilité. Elles fonctionnent exclusivement dans ce fichier spécifique sans nécessiter d'installation. Une fois créées, elles sont immédiatement prêtes à être utilisées.

Ajouter une extension intégrée

  1. Ouvrez un fichier comptable dans Banana Comptabilité Plus.
  2. Assurez-vous que le tableau Documents est activé :
  3. Ajoutez l'extension dans le tableau Documents :
    • Dans la colonne ID, saisissez un nom pour l'extension.
    • Dans la colonne Description, saisissez un commentaire.
    • Dans la colonne Pièces jointes, insérez le code JavaScript en double-cliquant sur la cellule ou en sélectionnant le symbole de modification en haut à droite, puis choisissez Code Javascript et confirmez avec OK.

      banana extension intégrée javascript
       
    • Un éditeur s'ouvre, dans lequel vous pouvez écrire le code Javascript.

      banana javascript extension intégrée
       
    • Une fois terminé, confirmez avec OK et enregistrez le fichier de comptabilité.

Exécuter une extension intégrée

Pour exécuter des extensions intégrées, deux options sont disponibles :

  • Depuis le tableau Documents, cliquez sur le symbole d’exécution dans la cellule Pièces jointes contenant le code.
  • Depuis le menu Extensions, sélectionnez l’extension dans la liste proposée.

banana javascript extension intégrée

Informations supplémentaires

Documentation pour développeurs en anglais :

 

 

Ajouter tableau Simple dans le fichier (depuis Ajouter fonctions)

Vous pouvez ajouter un ou plusieurs tableaux simples dans le même fichier de comptabilité pour inclure des informations supplémentaires sans alourdir la structure des données comptables. Chaque fois que vous devez ajouter un tableau simple :

  • Dans le menu Outils > Ajouter/Supprimer des fonctions > Ajouter tableau simple

Le programme ajoute au fichier existant un tableau intitulé selon le nom que vous avez attribué, composé des colonnes suivantes :

  • Id – Sert à créer une liste d’éléments codés. Chaque ligne reçoit un code Id pour identifier l’élément
  • Libellé – Saisir un texte pour la description de l’élément
  • Notes – Saisir un texte pour des annotations ou autres

Tableau simple

  • Attribuez un nom au tableau.
    • Dans notre exemple : Notes internes
    • Confirmez avec OK
      Le nouveau tableau est ajouté au fichier et est immédiatement disponible.

Personnaliser les colonnes

Dans le tableau simple, vous pouvez personnaliser les colonnes en affichant d'autres colonnes prédéfinies et/ou en en ajoutant de nouvelles.

Afficher d'autres colonnes prédéfinies :
  • Depuis le menu Données > Organiser colonnes
    • Dans la liste, sélectionnez la colonne souhaitée (par ex. la colonne Lien)
    • Cliquez sur visible
    • Confirmez avec OK.

Ajouter de nouvelles colonnes :
  • Depuis le menu Données > Organiser colonnes > Ajouter
  • Donnez un nom à la colonne (par ex. Date)
  • Définissez le format de la colonne (par ex. texte, date, montant, devise...)

Modifier l’en-tête d’un tableau simple

Pour modifier l’en-tête d’un tableau simple, vous devez vous positionner dans le tableau simple :

  • Allez dans le menu Données > Organiser tableaux
    • Dans la boîte de dialogue, sélectionnez le tableau simple que vous souhaitez modifier
    • Dans la case des paramètres, modifiez le nom
    • Confirmez avec OK.

Pour plus d’informations, consultez la 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

quicksum table

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à.
  • 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".
    • 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.
    •  
  • 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.

        quicksum table
         
  • Commenti fra []
    • Sono elementi che sono inclusi in parentesi quadre
      "[]", "[testo]"
    • Gli elmenti non vengono sommati.
  • 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.
      • 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. 
    • $V() L'elenco delle varianti usate nella calcolo separate da punti e virgole.
      • Per esempio "VA;VB"
  • 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"
         

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:
    1. convertiti in UTF-8;
    2. 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.
    3. 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.

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"
  • "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.

 

 

Relier des tables avec la colonne IdLigne

Ajouter une colonne de lien

Dans Banana Accounting Plus, vous pouvez créer des liens entre les colonnes de différentes tables en utilisant la colonne IdLigne.

La commande Outils > Ajouter/Supprimer des fonctions > Ajouter des colonnes pour lier les tableaux crée une colonne de lien dans la table actuelle, avec une autre table existante.

La colonne Libellé est ajoutée automatiquement, mais si elle n'est pas nécessaire, elle peut être supprimée ou masquée.

La commande ne fonctionne que si la table à lier contient la colonne "IdLigne".

Dialogue Choisir un tableau

Une liste des tables contenant la colonne "IdLigne", qui ne sont pas liées à une autre table, est affichée.

Si la liste est vide, cela signifie qu'il n'y a aucune table qui peut être liée.

Dialogue Choisir une colonne

Toutes les colonnes de la table sont affichées.

Choisissez la colonne après laquelle (position) vous souhaitez que les colonnes de lien soient ajoutées.

Pour créer un lien entre une colonne d'un tableaux et un autre, procédez comme suit :

  • Ouvrez le fichier où vous souhaitez ajouter le tableau.
  • Ajoutez la nouvelle tableau "par exemple, Projets".
    • Dans la colonne Id de la table ajoutée (Projets), saisissez le code du projet et dans la colonne Description, saisissez la description du projet.
  • Dans la table Ecritures, liez les colonnes de tableau ajoutée (Projets) :
    • Depuis le menu Outils > Ajouter/Supprimer des fonctions > Ajouter des colonnes pour lier les tableaux.
      Dans la boîte de dialogue qui s'ouvre, vous pouvez choisir la position de la colonne.
    • Confirmez en cliquant sur le bouton OK.
    • De nouvelles colonnes de lien sont ajoutées et affichées, en commençant par le nom de tableaux.
      • ProjetsId où le code correspondant à la colonne RowId est saisi.
      • ProjetsDescription (colonne protégée) où la description correspondant au code saisi est affichée.
    • Lorsque le contenu de la tableau Projets est modifié en saisissant l'Id dans l'autre table, le texte de la description sera automatiquement récupéré.
  • Si les descriptions dans le tableau ajoutée (Projets) sont modifiées, pour récupérer automatiquement les nouveaux textes, refaites un recalcul ou fermez et rouvrez le fichier.

Le programme lie automatiquement les colonnes qui commencent par le même nomXml d'un tableau et sont suivies de "Id" ou "Libellé".

  • Les colonnes de lien peuvent être créées ou ajoutées manuellement en leur attribuant des noms spécifiques.
  • Ne pas utiliser ces noms pour les colonnes qui ne doivent pas être liées.

 

Tables liées Bénévoles/Événements

Les associations qui organisent des activités et des événements ont souvent besoin de coordonner leurs bénévoles. Avec Banana Comptabilité Plus, vous pouvez créer deux tableaux simples liés entre eux – Bénévoles et Événements – pour gérer de manière centralisée qui participe, quelles tâches ont été attribuées et les détails organisationnels de chaque événement.

De cette façon, toutes les informations restent dans le même fichier de comptabilité, sans avoir besoin de feuilles Excel séparées, avec l’avantage d’avoir toujours une vision claire, à jour et immédiate.

Dans Banana Comptabilité Plus, vous pouvez lier des tableaux simples entre eux grâce à la colonne IdLigne.

Comment créer les tableaux Bénévoles et Événements

  • Ouvrez le fichier de comptabilité
  • Dans le menu Outils > Ajouter/Supprimer des fonctions > Ajouter tableau simple
    • Créez le tableau simple Bénévoles
    • Créez le tableau simple Événements.

Structure du tableau Bénévoles

Le tableau peut être personnalisé en ajoutant des colonnes personnalisées et en affichant d'autres colonnes prédéfinies. Dans cet exemple, la structure créée est la suivante :

  • IdLigne → code unique du bénévole (sert également de clé de liaison).
  • Libellé → nom et prénom du bénévole ; apparaît automatiquement dans les autres tableaux liés.
  • Email → colonne “Notes” renommée en “Email”.
  • Numéro de téléphone → colonne ajoutée via Données > Organiser colonnes > Ajouter.

Structure du tableau Événements

Le tableau Événements peut inclure les colonnes suivantes :

  • IdLigne → abréviation pour identifier l’événement (ex. SPRIFEST).
  • Libellé (DescriptionId) → nom de l’événement (ex. Fête du printemps).
  • Date → colonne ajoutée via Données > Disposer les colonnes > Ajouter.
  • Lieu → colonne ajoutée via Données > Disposer les colonnes > Ajouter.

Créer un lien entre Bénévoles et Événements

Dans cet exemple, les colonnes des bénévoles ont été liées au tableau Événements.

  • Outils > Ajouter/Supprimer des fonctions > Ajouter des colonnes pour lier les tableaux
  • Dans la fenêtre de dialogue, sélectionnez le tableau Bénévoles.

Banana ajoute automatiquement au tableau Événements les colonnes suivantes :

  • Bénévoles (Volunteers Id) → code du bénévole.
  • Libellé bénévoles (Volunteers Description) → nom du bénévole (ou responsable de l’événement)

Lorsque vous insérez le code d’un bénévole dans la colonne Bénévoles, Banana remplit automatiquement le nom du bénévole dans la colonne correspondante.

Avantages de la liaison

  • Vue claire → vous savez immédiatement qui participe à un événement.
  • Rôles définis → vous assignez des tâches spécifiques à chaque bénévole.
  • Mises à jour automatiques → si vous modifiez les données dans le tableau Bénévoles, Banana les met également à jour dans les Événements.
  • Gestion simplifiée → plus besoin de feuilles séparées, tout reste dans le même fichier.
  • Historique des activités → vous conservez une trace de la participation des bénévoles dans le temps.

Cette approche est idéale pour les associations culturelles, sportives ou caritatives qui souhaitent gérer les personnes et les événements de manière simple, ordonnée et immédiate.