Terminal portable sur base d'un PDA sous environnement Android ou iOS

0000002753     -      23/08/2023

Mercator propose une application satellite évoluant sur un terminal portable de type PDA Android et, accessoirement iOS. Cette application, MercatorPda, permet :

  • la saisie des inventaires, transferts dépôts, documents de ventes, documents d'achats, …
  • la gestion de plusieurs jeux de données simultanés (plusieurs ventes, plusieurs inventaires, …)
  • une validation par rapport au catalogue d'articles

     

Les communications de Mercator vers le PDA utilisent un serveur TCP inclus dans l'application évoluant dans le PDA. Il en résulte que : 

  • le PDA doit être connecté au réseau wi-fi lorsque Mercator doit communiquer avec le PDA et doit être "atteignable" depuis le poste sur lequel fonctionne Mercator;
  • le PDA doit disposer d'une adresse IP fixe;
  • l'application dans le PDA doit être active quand Mercator doit communiquer avec le PDA.

En conséquence, il faut prendre en compte le fait que MercatorPda est destiné à fonctionner dans le réseau local de l'entreprise. En effet, MercatorPda s'adresse directement au serveur SQL et il n'est jamais concevable d'ouvrir l'accès à SQL à l'internet public. En d'autres termes, MercatorPda n'est pas une application mobile destinée à être utilisée au travers d'une connexion 3G, par exemple.

Pour pouvoir utiliser cette application, Mercator doit disposer d'un voucher contenant DROID suivi de l'adresse IP fixe du ou des PDA qui seront utilisés.

Par exemple : DROID192.168.1.200+192.168.1.201

 Avant de commander la licence et de débuter l'installation, il faut fixer une adresse IP fixe dans chaque PDA.

Gestion des emplacements : voir aussi cette page.

 

Installation de base de MercatorPda

MercatorPda google play MercatorPda app store

ou sous Android : téléchargement direct de MercatorPda.apk

 

  • Démarrer l'application dans le PDA.
  • Dans Mercator, via "Outils / Options / Autres - Terminal portable" (ID : X_GUN ou X_GUN2 ou X_GUN3), sélectionner "PTDROID".
  • Dans Mercator, via "Outils / Terminal PTDROID / Paramètres", adapter les paramètres souhaités et cliquer sur OK. Cela va produire dans le terminal un fichier MercatorDroid.cfg, placé dans le répertoire personnel de l'application. Le contenu du paramétrage est visible dans l'onglet "Config" de l'application Android.

L'option "SQL Server (pda)" doit normalement être laissée à blanc. En effet, par défaut, Mercator fournit au PDA ses propres paramètres de connexion vers le serveur SQL. Toutefois, si le serveur SQL, vu depuis le PDA, est atteignable par un autre nom, alors on peut compléter cette option. Elle est prise en compte uniquement si elle est non vide.
Exemples d'application :

  • le PDA ne peut résoudre le nom du serveur SQL (Serveur DNS non utilisable). Dans ce cas, on placera dans cette option son adresse IP.
  • le PDA se trouve dans un autre sous-réseau et doit atteindre le serveur SQL par une adresse IP différente.

 

Utilisation de base

MercatorPda permet la saisie de 2 types de données :

  • document : inventaire, transfert dépôt, document de vente ou d'achat.
  • n° de série

Un nouveau jeu de données est initialisé via les boutons "Nouveau" du premier onglet.

Une fois le jeu de données créé, il suffit de saisir les codes articles dans la zone "Code" et de fixer la quantité dans la zone "Quantité". Le bouton "OK" enregistre les données. Dans chacune de ces zones, la pression de la touche "ENTER" (ou Valider) valide la zone et active la zone suivante.

L'onglet "Liste" permet de visualiser les enregistrements en cours. Les boutons permettent de supprimer une ligne ou toutes les lignes de cette liste.

Le PDA travaille en mémoire-vive. Ceci signifie que, pour répercuter les modifications apportées au jeu de données, il faut cliquer sur le bouton "Enregistrer".

Le bouton "Ouvrir" permet d'ouvrir un jeu de données créé précédemment.


Validation des articles

MercatorPda propose 3 modes de validation d'articles :

  • aucune : les codes sont saisis sans aucun contrôle dans la base de données des articles
  • Sqlite (database locale) : les codes encodés sont comparés en temps réel avec une base de données téléchargée dans le PDA.
  • SQL Server : les codes encodés sont comparés avec la base de données SQL Serveur de Mercator. Ceci requiert une liaison wi-fi permanente.

 

Téléchargement de la database locale

La database locale est au format Sqlite. Elle est créée à partir de Mercator en tenant compte de l'éventuel filtre sur le fichier "Articles". Ceci se fait via "Outils / Terminal Codes-Barres / Télécharger Catalogue". Les articles en sommeil ne sont pas insérés dans la database locale.

La base de données Sqlite est matérialisée par le fichier MercatorDroid.sqlite et est automatiquement téléchargée vers le PDA, dans le répertoire personnel de l'application.

Le téléchargement peut être répété via le menu "Outils / Terminal Codes-Barres / Télécharger Catalogue".

Liaison à SQL Server

La validation on line sur la database de Mercator est possible si le PDA est en permanence connecté au wifi :

La liaison avec SQL Server ne requiert aucun paramétrage particulier. En effet, Mercator complète le fichier MercatorDroid.cfg avec toutes les options de connectivité au serveur Sql. Cette solution présente les avantages suivants, par rapport à la database locale :

  • pas de téléchargement de la database
  • aucune nécessité de mise à jour de cette database
  • aucune limite en terme de taille de catalogue
  • performances de recherche meilleures, surtout lorsque le catalogue devient de taille importante.

 

Remarque : lors de la recherche d'un article dans la base de données SQL, si la connexion au serveur SQL échoue, alors MercatorPda propose d'utiliser la base de données locale (jusqu'au prochain redémarrage de l'application).

Types de recherche lors de la validation

L'onglet "Config" de MercatorPda permet de sélectionner le mode de recherche :

  • Recherche directe (par défaut) : recherche de l'égalité de la chaîne de caractères saisie dans "Code" avec les champs S_ID, S_CLE1, S_CLE2, S_CLE3 ou REF_FOU.
  • Recherche indirecte : recherche des enregistrements où S_MODELE, S_ID, S_CLE1, S_CLE2, S_CLE3 ou REF_FOU commencent par la chaîne de caractères saisie dans "Code"
  • Recherche occurrence : recherche des enregistrements où S_MODELE, S_ID, S_CLE1, S_CLE2, S_CLE3 ou REF_FOU contiennent la chaîne de caractères saisie dans "Code"

Pour les recherches "Indirecte" et "Occurrence", si plusieurs enregistrements sont trouvés, une grille est présentée à l'utilisateur et permet la sélection de la ligne adéquate.


Récupération des données dans Mercator

Avant de récupérer les données dans Mercator, il faut, sur le Pda, cliquer sur le bouton "Enregistrer". Ensuite, dans Mercator, cliquer dans le document de destination sur le bouton présentant un lecteur de codes-barres.

Mercator se met en communication avec le PDA. Si plusieurs jeux de données sont disponibles, Mercator propose une liste de sélection.

Une fois un jeu de données importé dans Mercator, Mercator propose de le supprimer.

(Les jeux de données ont pour extension MXML et se trouvent dans le répertoire personnel l'application, ou dans un de ses sous-répertoires (si spécifié dans le paramétrage). Ils peuvent être supprimés via le menu "Outils / Terminal PTDROID / Supprimer Fichier".

 

Considérations concernant la lecture des codes-barres

MercatorPda est destiné à être utilisé sur des terminaux dédiés, équipé d'un lecteur de code-barres spécifique. Il a été conçu pour ce type de matériel.

Mercator ne peut garantir la compatibilité avec tous les terminaux Android disponibles sur le marché. Il est donc nécessaire d'effectuer des tests de compatibilité avant l'acquisition du hardware. La fourniture de ce programme par Mercator ne sous-entend aucun caractère universel de cette compatibilité. Le programme ne sera donc pas adapté afin de permettre son fonctionnement sur du matériel autre que celui qui a été testé durant notre développement.

A cette heure, nous savons que MercatorPda fonctionne sur les produits suivants :

  • CipherLab RS30

L'onglet "Config" permet d'utiliser l'appareil photo comme lecteur de code-barres. Cette fonctionnalité est mise à disposition "as is" et n'a pas la prétention d'offrir les mêmes performances qu'un réel scanner de codes-barres. La facilité du scanning, et notamment le temps qu'il requiert, varie en fonction de la qualité de l'appareil photo du mobile, de la lisibilité du code-barres et de la luminosité.

Utilisation simultanée de plusieurs PDA

Mercator est capable de gérer plusieurs PDA. Pour ce faire, Mercator utilise l'adresse IP du PDA. Chaque PDA est ainsi identifié par Mercator de façon unique.

Chaque fois que Mercator doit communiquer avec un PDA, il devra savoir avec quel PDA on souhaite communiquer. Si le voucher de Mercator ne contient qu'une seule adresse IP, alors Mercator communiquera directement avec cet appareil. Dans le cas contraire, une liste des adresses IP disponibles sera présentée à l'utilisateur. Il est possible d'éviter l'affichage de cette liste en plaçant un customizer BarcodeTerm, qui répondra à l’événement BeforeSelectIp. Dans l'exemple ci-dessous, nous montrant comment choisir l'adresse IP en fonction d'une variable d'environnement IpPda.

Zoom
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Windows.Forms;
using MercatorApi;
using MercatorUi;
using MercatorExtensions;
using MercatorUi.BarcodeTerm;

namespace BarcodeTerm
{
    public class Customizer : MercatorUi.ICustomizers.IBarcodeTermCreated, MercatorUi.ICustomizers.IBarcodeTermClosed
    {
        public void BarcodeTermCreated(MercatorUi.BarcodeTerm.BarcodeTerm barcodeTerm)
        {
            if (barcodeTerm is BarcodeTermPTDROID)
                ((BarcodeTermPTDROID)barcodeTerm).BeforeSelectIp += BeforeSelectIp;
        }

        public void BarcodeTermClosed(MercatorUi.BarcodeTerm.BarcodeTerm barcodeTerm)
        {
            if (barcodeTerm is BarcodeTermPTDROID)
                ((BarcodeTermPTDROID)barcodeTerm).BeforeSelectIp -= BeforeSelectIp;
        }

        private void BeforeSelectIp(object sender, BarcodeTermPTDROID.BeforeSelectIpEventArgs e)
        {
            System.Net.IPAddress ip;
            string envIpPda = Environment.GetEnvironmentVariable("IpPda");
            if (!string.IsNullOrWhiteSpace(envIpPda) && System.Net.IPAddress.TryParse(envIpPda, out ip))
                e.IpToSelect = ip;
        }
    }
}

.

Plus d'informations concernant l'intégration avec la gestion des emplacements sur cette page.

Nouvelles fonctionnalités dans MercatorPda liées à la version 10.4 de Mercator

MercatorPda montre les gammes (tailles & couleurs), tant dans la liste de sélection des articles que dans l'écran principal de l'application :

    

Par ailleurs, MercatorPda peut afficher certains champs de la table STOCK dans la liste des articles déjà scannés (second onglet). Ceci doit être paramétré dans Mercator via ces cases à cocher :

Le résultat dans l'application sur le terminal est le suivant :

Il faut noter que seuls les champs réellement complétés dans les fiches articles sont affichés. Les cases à cocher doivent être fixées avant le scanning des articles.


Depuis la version 2.2.5

Cette version offre la possibilité de déterminer une quantité par défaut fixe ou une colonne de la table STOCK qui sera utilisée comme quantité par défaut. Le choix d’une colonne permet, par exemple, de placer en tant que quantité par défaut le conditionnement à la vente ou à l’achat.

pda_qdef_f

La sélection d’une colonne comme valeur par défaut requiert que le mode de validation d’articles soit « SQL Server ».

Règles de confidentialités

MercatorPda ne collecte aucune donnée personnelle de l'utilisateur.

MercatorPda requiert un accès à l'appareil photo du mobile, uniquement pour effectuer une lecture et une reconnaissance de code-barres. Cet accès est optionnel. Il ne permet pas de prendre des photographies ou d'accéder aux images stockées sur le mobile.

En utilisant MercatorPda, l'utilisateur reconnaît avoir accepté la licence d'utilisation de Mercator, qui s'applique intégralement à MercatorPda. Dans Mercator, le contenu de cette convention est disponible dans le menu "Fenêtre / A Propos de Mercator", bouton "Licence".

Ces règles de confidentialité peuvent être modifiées à tout instant et sans préavis. Nous suggérons aux utilisateurs de MercatorPda de consulter régulièrement cette page afin d'être tenu au courant d'éventuelles modifications.