Technique

Escarcelle est une application composées de deux parties : la caisse et la gestion. Si vous êtes curieux sur les techniques utilisées, cette page tente de vous apporter plus de précisions.

La caisse

C’est un logiciel qu’il faut télécharger et exécuter sur un poste Windows*. La caisse permet de scanner les codes clients, les codes barres, établir un ticket de vente, et enregistrer toutes ces informations sur le serveur Internet.

*Il est possible d’exécuter la caisse sur des postes Mac ou Linux en utilisant des logiciels tiers - Visionnez notre vidéo tuto à ce sujet .

Fonctionnement de la caisse

Lors de son exécution, la caisse contacte le serveur pour savoir si une mise à jour existe. Si oui, elle la télécharge et la lance. Sinon, elle lance la caisse existante. La caisse récupère, depuis le serveur, les données budgets, produits et utilisateurs, et les sauvegarde sur le poste. Si elle n’y arrive pas (problème de connexion), elle utilise les données existantes.

Lors des ventes, la caisse enregistre les tickets dans des fichiers sur le poste. La caisse se connecte au serveur pour envoyer les tickets. Si elle y arrive, elle supprime le ticket du poste. Sinon, elle retente toutes les 10 secondes.

Pour se connecter au serveur escarcelle.net (adresse IP 87.98.162.146), la caisse utilise les connexions HTTP (port 80) et HTTPS (port 443). Pour les épiceries concernées par des dispositifs réseaux de type pare-feu ou proxy, il est nécessaire d’autoriser les postes utilisant la caisse à se connecter sur ces 2 ports vers le serveur escarcelle.net.

Détails des fichiers présents sur le poste

  • Un exécutable de mise à jour de la caisse, qui est librement placé par l’utilisateur au moment de l’installation, mais généralement sur le bureau de l’utilisateur.
  • L’exécutable de la caisse se trouve dans le dossier personnel de l’utilisateur. L’emplacement exact dépend de la version de Windows utilisée. Par exemple, sous Win7, il se trouvera dans C:\Users\IDENTIFIANT\AppData\Local\Escarcelle où IDENTIFIANT correspond à l’identifiant de l’utilisateur.
  • A cet emplacement, se trouvent également des fichiers de données cryptées contenant les informations nécessaires pour le bon fonctionnement de la caisse (budgets clients, produits et utilisateurs de la caisse).
  • Les tickets de ventes sont, temporairement, dans le dossier “Ventes” sous le même emplacement que précédemment, en attente d’être envoyés au serveur.

Sous le capot

Le code source de la caisse représente 8 fichiers écrit dans le langage Rebol, totalisant un peu moins de 5000 lignes de code pour moins de 100 Ko (non compressé). C’est grâce au très haut niveau d’abstraction du langage Rebol que l’on arrive à atteindre une telle compacité.

La gestion

La gestion est une application Web. C’est-à-dire qu’elle est exécutée sur nos serveurs Internet et qu’il vous faut un navigateur Web pour y accéder. Elle est compatible avec tous les navigateurs récents, et fonctionne donc sous PC, Mac, Linux, Tablette, …

Fonctionnement de la gestion

La gestion permet tout d’abord de gérer les utilisateurs de l’épicerie : le responsable, les gestionnaires de stock et les hôtes de caisse. Elle permet de créer ces utilisateurs et de leur donner les niveaux d’autorisations nécessaires.

Elle permet ensuite d’enregistrer toutes les informations produits, fournisseurs et stock. Pour démarrer rapidement, il est possible d’activer le catalogue générique, avec tous les produits habituellement en vente dans une épicerie sociale et solidaire, correctement répartis dans les bonnes catégories. Un système de commande en ligne, et d’envoi de bon de commande, permet de réapprovisionner les stocks, de gérer les livraisons, et de tracer tous les mouvements.

La gestion permet également d’enregistrer les informations bénéficiaires, notamment sur le budget alloué par mois et les tarifs spéciaux. Le code client obtenu sert ensuite à la caisse pour reconnaître le bénéficiaire et lui appliquer d’éventuels tarifs spécifiques.

Enfin, la gestion fournit des outils pour restituer toutes les données générées : tableau des ventes, état des stocks,  rapports standards et outils de statistiques paramétrables

Sous le capot

La gestion fonctionne sur des serveurs Linux (les puristes préfèrent le terme GNU/Linux ) avec un serveur de base de données Open Source MySQL . La base de données est répliquée en temps réel sur un deuxième serveur, grâce à la technologie de réplication de MySQL.

Le serveur d’application Cheyenne est une solution Open Source, créée par Softinnov. Cheyenne permet d’écrire toutes les règles métiers en Rebol, tout en assurant des performances suffisantes.