Marrant tout de même.
Il y a peu, j’ai testé 4D v11 SQL, en essayant de vous montrer ses qualités.
Je concluais en trouvant un peu dommage qu’aucun programme de base de données un peu bon marché et simple n’existait sur nos machines, depuis l’abandon de la version du pauvre de 4D, et celle d’AppleWorks.
Il se trouve que depuis peu de temps, une solution assez étonnante existe, qu’elle est signée FileMaker inc, qui nous sort Bento, qui, vous allez le voir, vaut le détour, surtout quand on sait que ce logiciel ne coûte que 49 $
Bento, c’est quoi?
Bento est une base de données personnelles, complètement paramétrable bien sûr, qui vous permet de classer tout ce que vous auriez à classer, sans la moindre difficulté… pourvu que vous restiez dans le simple.
Vous n’ouvrez pas une base Bento, vous ouvrez Bento, et vous choisissez immédiatement à gauche quelle librairie, quelle base si vous préférez, vous désirez afficher, mais voyez plutôt.
L’interface de Bento
D’abord, il faut que vous sachiez que Bento est fait pour Leopard. Si vous n’avez pas encore fait le pas vers ce nouveau système, vous ne pourrez pas installer ce programme étonnant.
Je précise que Bento va être disponible prochainement en français, mais que je ne dispose pour ce test que de la version anglaise.
Je précise aussi que j’emploie dans cet article les vocables “Base” et “Librairie” ou “Library”. Ils désignent la même chose, soit un ensemble de fiches bien précis. Vous aurez par exemple une base concernant les numéros de série de vos programmes, une autre sur les CD bien rangés dans votre étagère Ikea.
Il faudra voir comment le Bento traduira le terme “Library” employé dans la version française.
L’interface de Bento est monofenêtre, et se présente comme ceci:
- La zone des enregistrements (fiches), en plein centre avec ses outils de création, de suppression, ainsi que la roue des actions (b)
- La zone des librairies et des collections, avec les mêmes outils qui y sont dédiés (a)
- La zone des champs disponibles pour la librairie en cours avec ses outils©
- La zone de recherche d’enregistrements
- Le bouton permettant de passer en mode “édition du formulaire” au mode “Utilisation”
- La zone du choix du formulaire qui vous permet également de passer du mode “formulaire détaillé” au mode “liste”
AddressBook et iCal en direct
Bento vous offre par défaut trois bases en relation directe avec leurs pendants sur notre système, soit la base “AddressBook” et deux bases “iCal”, tâches et événements.
Attention: toute modification sur les champs communs entre la base “Carnet de Bento et celle du carnet d’adresses de MacOSX sera effective sur les deux. Par contre, si vous créez un champ dans le carnet d’adresse propre à votre base, rien ne sera reporté sur le carnet d’OSX.
Idem pour les deux bases en relation avec iCal.
Mais bien évidemment, vous allez vouloir créer vos propres bases, ou librairies dans le jargon de Bento (en tout cas dans sa version anglaise, il faudra voir comment ces librairies s’appelleront dans la version française à venir).
Vous ne pourrez bien évidemment pas dupliquer ces bases (il faudra si vous désirez classer plusieurs choses différentes sur elles créer plusieurs formulaires), mais vous pouvez bien évidemment en créer d’autres.
La création d’une librairie: simple, mais avec certaines limites
Lors de la création d’une base, Bento vous offre le choix entre 24 modèles configurables, qui touchent les domaines de l’éducation, de la vente, et les données personnelles.
Ces modèles sont assez élégants, à la mode iWork, si vous voyez ce que je veux dire.
Une fois le modèle choisi, vous pouvez le modifier pour le personnaliser, en:
- ajoutant des champs
- modifiant l’ordre des champs
- ajoutant des zones de texte
- ajoutant des séparateurs
La barre d’outils en mode “édition de formulaire”
Des thèmes sont également de la partie via cette barre.
Il est à noter que la disposition des éléments est assez problématique sur Bento.
Ainsi, il n’est pas possible d’ajouter des zones de texte sur plusieurs lignes (je ne parle pas des champs textes qui eux sont multilignes, mais de blocs de textes apparaissant sur chaque fiche). La zone ne peut être fixée en largeur, elle s’adapte de toute manière dans cette dimension.
Agaçant.
De même, si les objets peuvent être réordonnés, ils ne peuvent pas être placés n’importe où sur le modèle. Une sorte de magnétisation (comme lorsque vous placez des éléments dans le dock) impose l’endroit voulu.
Ici, le déplacement du champ “Status” n’est possible qu’à l’endroit marqué d’une barre horizontale noire. Elle peut bien entendu également aller ailleurs, mais à un autre endroit forcé par Bento, plus ou moins dans la région désirée. Impossible de déplacer au pixel près, ou même aux dix pixels près, quel dommage!
C’est pratique pour aligner, mais ennuyeux dans bien des cas, par exemple pour placer une adresse pour une lettre par exemple, même si Bento ne semble pas très bien préparé pour cette tâche.
Simplicité, d’accord, mais souplesse, on aimerait bien également y avoir droit aussi.
Les différents types de champs
Lorsque vous ajoutez un champ à Bento, il peut être choisi dans les types suivants:
Les types de base, notez le champ “Choice”, qui va créer un menu déroulant sur lequel il sera possible de faire des recherches bien sûr, le champ Checkbox, le champ “List File”, le champ “Related Record Lists” dont je vais parler plus bas.
Juste pour avoir une idée de ce que donnent ces champs spéciaux:
Dans la liste de fichiers, vous glissez en mode “Utilisation” un fichier depuis le bureau et Bento crée automatiquement un alias. Très bien fait tout ça. De même, un champ “Média” pourra afficher des films, des sons, des photos.
Comme je l’ai dit plus haut, je reviendrai plus bas sur les “Related Records Lists”, très utiles et qui nous permettent des trucs incroyables.
Je continue avec les types de fichiers:
Les champs de type temps (date, heure), durée, devise, calcul, “étoile de notation (rating)”, jusqu’à dix étoiles et j’en passe.
Les champs de type calcul permettent de calculer des textes, des nombres, des dates, un peu comme dans Filemaker. Vous voyez toujours en temps réel une prévisualisation de ce que vous écrivez comme formule, en bas à droite (4 dans la figure suivante)
La liste des champs sur lesquels vont porter les calculs (1), les opérateurs, valeurs et constantes (2), la zone des formules (3).
Je n’ai pas trouvé comment entrer un retour de chariot dans les formules, ce qui permettrait de fusionner des champs pour créer des adresses complètes calculées, quel dommage. Si quelqu’un a une idée, c’est avec plaisir que je modifierai ce paragraphe, je vous attends en commentaires.
Une base de données relationnelle? Pas vraiment, mais un peu…
L’important dans une base de données, c’est d’éviter les redondances.
Un contact par exemple ne devrait être inscrit réellement qu’à un endroit, dans une table. Si j’en ai besoins ailleurs (par exemple dans une table “factures”, je fais en fait appel à ma base de “Contacts”. Toute modification dans ma base Contacts sera reportée automatiquement dans ma base “Factures”, à moins que je l’empêche.
Cela garantit une homogénéité indispensable des données.
Alors, Bento est-il relationnel?
En fait pas vraiment.
Par exemple, il est impossible (ou alors je n’ai pas compris comment) d’appeler un contact de votre carnet d’adresses dans des champs définis dans votre table “factures”.
C’est tout de même embêtant.
Cela dit, on peut appeler des données de n’importe quelle base vers n’importe laquelle, mais dans un champ de type “Related Records Lists”.
Ainsi, je crée une librairie toute simple nommée “Produits”, avec trois champs:
- le libellé du produit
- son prix unitaire
- (je suis obligé de le faire, malheureusement) une quantité.
- le prix total (je sais, je devrais le mettre dans la base suivante, mais j’explique plus bas pourquoi je le fais ici), prix total calculé tout bêtement en faisant “Prix unitaire * quantité). Ne m’énervez pas avec la TVA, ce n’est pas ici que je la calcule.
Je crée une base “Factures”, avec comme champs différentes choses dont le nom et l’adresse du contact (que je ne peux pas appeler directement depuis le carnet d’adresses, pour les entrer sous forme d’adresse, je le rappelle).
Dans l’un des formulaires de cette base “factures”, en mode édition de formulaire, depuis la zone de gauche des librairies, je glisse l’icône de la base produits vers la zone des enregistrements.
Miracle, une liste apparaît alors. Je double-clique sur elle pour l’appeler “Produits commandés” (voir figure précédente).
Je choisis à droite quels champs vont apparaître dans cette liste, appartenant à la base “Produits”
Passons en mode utilisation, nous voyons:
- Je peux maintenant, dans la base “Factures”, voir la liste des enregistrements de “Produits” en cliquant sur le petit bouton (1) et sélectionner ceux qui m’intéressent
- Je peux ajouter un enregistrement depuis “Factures” dans “Produits” à l’aide du bouton (2)
- Je peux supprimer l’enregistrement sélectionné dans mon champ “Produits commandés”, donc depuis “Factures”, ce qui aura pour effet de le supprimer également dans la base “Produits” à l’aide du bouton (3).
D’une certaine manière donc, ces deux bases “Factures” et “Produits” sont liées.
Cela dit, tout va très bien dès que je n’entre que je ne modifie pas les quantités pour chaque produit.
Si dans la fiche 1, j’entre 1 disque dur à 200 francs, puis dans la fiche 2, j’appelle le même produit, et que je lui entre 4 comme quantité, cela semblera fonctionner, sauf que dans la fiche 1, la quantité sera passée également à 4! Pas très pratique donc pour faire des factures, à moins de créer plusieurs fiches pour chaque produit, avec différentes quantités.
C’est un peu du bricolage, je suis d’accord.
Pourquoi ne pas avoir entré les quantités dans un champ de la base “Factures” tout simplement, idem avec le prix total pour chaque ligne? Parce qu’il m’est impossible d’associer un champ à une ligne et une seule d’un champ listant une base liée.
Raison pour laquelle je continuerai à utiliser 4D pour ce genre de choses, mais je trouve que malgré tout, cette imbrication d’une base dans l’autre montre bien le potentiel de Bento.
Pour terminer sur ce sujet, je peux sans problème créer un champ “Total prix HT” en effectuant des calculs sur l’ensemble des enregistrements choisis dans la fiche active de Factures>
Je peux ensuite calculer le prix de la TVA (à 7.6 % chez nous, eh oui, désolé) et l’additionner au prix HT pour obtenir le prix TTC.
Cela dit, encore une fois, pour créer une facture imprimable, cela ne va pas être simple. On peut peut-être jouer sur le nombre de colonnes d’un formulaire, utiliser les séparateurs, mais nous sommes ici également dans le domaine du bricolage.
Il aurait été tellement plus simple de pouvoir disposer nos blocs, nos champs, directement là où nous le souhaitons, sans que le programme essaie de tout faire pour nous!
J’ajouterai enfin que cette imbrication des bases peut être fort utile si l’on désire par exemple lister des contacts de votre carnet d’adresses dans un enregistrement.
Des rapports rapides, mais trop légers
Dans une base de données, le mode liste est important pour que l’on puisse voir tous nos enregistrements d’un coup d’œil.
Dans Bento, il se limite en fait à cette fonction, et nous présente le minimum, soit:
- le bouton pour passer en mode “Table”
- la zone des enregistrements
- la barre des titres des champs, dont l’ordre peut être changé par simple glisser, comme c’est si souvent le cas sur les interfaces de nos produits sur OSX
- la zone qui nous permettra d’afficher ou non certains champs
- d’une zone de recherche
En cliquant sur la petite flèche à gauche de la zone de recherche, vous avez accès aux fonctions de recherche avancée, bien pensée, et assez traditionnelle.
Si vous voulez voir des fonctions statistiques, c’est possible, mais il faut activer la rangée des synthèses (flèche 1 figure suivante) à l’aide du bouton dédié (2)…
… ou à l’aide du menu suivant:
Les fonctions sont les suivantes pour chaque colonne:
Les collections
Avant d’en venir à la conclusion, je me dois de vous présenter encore les notions de “collections” présentées par Bento.
Une collection est un extrait d’enregistrements d’une base. Une sorte de sous-base si vous préférez.
Dans la base de l’AddressBook, un groupe de contact est automatiquement ajouté en tant que collection.
Mais vous pouvez aussi, dans n’importe quelle base, glisser un certain nombre d’enregistrements vers la zone des librairies, pour créer une collection contenant ces enregistrements.
Mieux! Vous pouvez créer des collections intelligentes, correspondant à certains critères, comme dans le Finder ou dans Mail.
Très bien tout ça.
Diverses petites choses
Les données de Bento sont enregistrées dans un seul fichier, dans le dossier Bento situé dans le dossier Application Support du dossier Bibliothèque de l’utilisateur.
Il ne faudra pas oublier de sauvegarder ce dossier si vous effectuez un passage vers une autre machine manuellement, sans passer par l’assistant Apple.
Un backup est proposé, le programme pouvant vous le rappeler périodiquement.
Lorsque vous créez un champ de type texte dans une base, la saisie est ensuite, en mode “Utilisation”, simplifiée puisque le programme vous propose automatiquement de compléter les données avec ce qui a déjà été entré.
Dernière chose avant la conclusion: Bento n’a pas de langage de script. On peut le regretter, mais n’oublions pas que nous sommes dans une base de données qui a pour vocation de donner à Monsieur tout le monde la possibilité de classer des données, sans se prendre la tête.
Si vous voulez de la programmation, son grand frère FileMaker est là pour ça ou alors passez sur 4D v11 SQL que j’ai testé ici.
En conclusion
Bento ne coûte vraiment pas cher: 49 $.
Il est innovant.
Enthousiasmant même au premier abord.
Les développeurs de FileMaker ont vraiment fait du neuf au niveau de la base de données, j’en suis encore tout sur le derrière.
Il sera, nous l’avons vu, fort utile pour classer vos données personnelles (c’est son but), de manière très simple, intuitive.
Mais en l’état de l’avancement du programme, ne lui demandez pas trop non plus.
Comme souvent avec Apple (oui bon, FileMaker, mais ils sont un peu liés), nous avons un produit génial, mais à qui il manque le petit quelque chose qui fait que finalement, on ne peut pas vraiment l’utiliser dès qu’on veut un truc un poil au-dessus du minimum.
Mais encore une fois, pour une base simple, le logiciel sera très utile. C’est juste qu’avec toute cette puissance que l’on sent derrière, on est un peu énervé de voir que certaines choses de base, comme placer un bloc, un champ là où on le veut, créer un bloc de texte sur plusieurs lignes, eh bien ce n’est tout simplement pas possible.
Allez, vous allez dire que je veux le beurre et l’argent du beurre, la puissance et la simplicité.
Dans le cas précis, il suffisait (ou il suffit, le programme va certainement changer) de laisser un peu plus de liberté à l’utilisateur, et tout ira très bien.
Dernière chose, je me demande bien pourquoi Bento n’est pas intégré à iWorks… Un poil plus souple au niveau mise en page, il s’y serait fort bien intégré, et la suite aurait été complète.
Quant à moi, je n’ai pas encore trouvé exactement à quoi va me servir Bento, mais je sais que tôt ou tard, je serai très content de l’avoir pour créer une petite base de données toute simple.
Dernière chose: Bento… Pourquoi Bento? Peut-être à cause de ça?



















