Ludo
Bonjour à tous,
N'ayant pas trouvé de réponse probante ou parfaitement adaptée, je me permet d'ouvrir ce nouveau sujet qui, comme son nom l'indique, est basée sur la Mobilité mais qui peut également concerner les gens qui utilisent plusieurs postes avec une même base de donnée. l'idée est la suivante :
- Travailler en local avec une base de donnée Gestan sur un serveur ou disque sécurisé (au bureau par exemple). Pour diverses raison, nous aurions besoin de "promener "avec Gestan et donc avoir une version de cette Data sur le disque d'un ordi portable par exemple, on pourrait ajouter des choses dans Gestan à l'extérieur (modification d'un devis directement chez le client, ajout d'une fiche d'intervention, création de facture pour les gens équipée de petite imprimante portable, saisir directement des temps passé sur site, sur chantier, dans un projet, des tâches et j'en passe, tout ce qu'on peut faire sur Gestan peut avoir une utilité à "l'extérieur" quelque soit le métier, enfin, il me semble :prof: )
> Quand est-ce que ça peut poser problème ???
1) Quand on rentre au bureau il faut pouvoir synchroniser la data présente sur le serveur avec celle qui est présente dans l'ordi portable (synchro intelligente et sans erreur puisqu'on travaille directement sur la Data de travail qui n'est pas forcément sauvegardé au moment de la synchro, ça peut donc être un poil dangereux...)
2) Considérons que cette synchro se fait sans anicroche, c'est cool. Mais il y a un autre paramètre à prendre en ligne de compte : durant notre absence du bureau, d'autres utilisateurs Gestan ont bossé un peu (moins que quand on est là, c'est certain :blabla: ), ce qui signifie que la synchro devra se faire dans les 2 sens mais là ou je pense que ça posera problème, c'est que si lors d'un déplacement, je créé une facture et qu'un collaborateur en fait de même au bureau, au moment de la synchro, ne risque t-il pas d'y avoir un conflit d'ID ???
Ce qui m'amène à quelques question à l'attention de la team mais aussi des utilisateurs :
- Faites-vous cet usage de Gestan, si oui comment, si vous ne le faites pas, en avez-vous le besoin et est-ce que les cas de figures évoqués ci-dessus vous paraissent être suffisant ou voyez-vous d'autres usages en mobilité, d'autres risques de mauvaise synchro...
- Est-ce qu'une solution (simple et fiable) permet de le faire, j'ai bien pensé à des soft de synchro incrémentale mais je ne suis pas certain qu'elle gère les conflits générées par des ID identiques à contenus différents
- Si une telle solution n'existe pas, serait-il possible d'en implémenter une (simplement) dans Gestan ? J'ai pensé à ajouter une option au moment de l'installation (utilisation mixte : Data fixe et mobile), ce qui nous inviterait à renseigner une Data "maître" et une autre "local" sur le support mobile (ordi portable, tablette ou autre). Gestan ferait simplement la vérif au démarrage, en cas d'absence de la maître (déconnexion du serveur), il travaillerait à partir de la local. Il créerait des ID provisoires. Une fois rentré au bureau et l'appareil mobile connecté au réseau, nouveau démarrage de Gestan, vérification de Gestan, présence de la base maître, comparaison avec la base local et synchro du tout avec affectation d'ID définitifs au nouvelles pièces créées en mobilité.
Le mode de fonctionnement tiendrait compte de la date de modif', la plus récente étant celle à conserver.
En ce qui me concerne, j'ai souvent le besoin de mobilité et aujourd'hui, je n'ai pas cette possibilité et s'il faut le faire de manière "non-fiable" ou avec des bidouilles qui prennent un temps fou, je capitule, d'où l'idée d'une implémentation en natif dans Gestan.
Mes besoins les plus récurrents sont : L'intervention, remplir la fiche d'intervention sur site client (d'ailleurs il faudra aussi aborder le sujet de l'utilisation sur tablette de manière a pouvoir faire signer le client numériquement, au stylet, et sauvegarder le bon d'intervention avec la signature mais c'est un autre sujet...). Créer ou modifier un devis directement chez le client en fonction des options qu'il choisit, éditer voir imprimer une facture (avec une imprimante portative), renseigner des temps consommés sur une opération, ajouter des tâches, saisir des infos sur un projet lors d'une réunion de chantier... Bref, de nouveaux horizons s'offrent à Gestan...
Je vous invite par ailleurs, pour ceux que ça intéresse, à consulter les offres de tablette Windoz qui ne pullulent pas mais qui ne manquent pas d'intérêt, mon choix s'oriente vers la EEE Slate de chez ASUS mais chacun jugera en fonction de ses besoin (un laptop comme on dit ailleurs pourra également faire l'affaire).
N'hésitez pas à alimenter ce sujet avec vos remarques, idées, besoins et surtout, M l'Admin, après les produits composés bien sûr, est-ce que c'est une idée qui vous séduit ? (Pour en avoir discuter avec un ami développeur, qui est spécialisé base de donnée, le principe serait simple à mettre en oeuvre, c'est lui qui m'a soufflé l'idée des ID provisoires et autres...
eric_le_belge
Ce sujet a déjà été discuté maintes fois, il existe 2 possibilités concrètes à votre problème. :prof:
1) Gestan client sur votre pc, vos données sur un serveur. Vous vous connectez en VPN depuis n'importe où, et zou, ça fonctionne. Inconvénient: faut de la bande passante en sortie depuis votre serveur, et c'est souvent là que cela bloque.
2) Gestan Cloud.
La synchro n'est pas possible à mettre en place, il existe un nombre infini de cas, et le risque d'erreur est beaucoup trop élevé. Il existe bien des aventuriers qui emportent avec eux une copie de leur DB sur clé USB, mais si plusieurs personnes travaillent avec le même gestan, c'est suicidaire.
Ludo
[quote="ansaro"]Ce sujet a déjà été discuté maintes fois, il existe 2 possibilités concrètes à votre problème. :prof:
1) Gestan client sur votre pc, vos données sur un serveur. Vous vous connectez en VPN depuis n'importe où, et zou, ça fonctionne. Inconvénient: faut de la bande passante en sortie depuis votre serveur, et c'est souvent là que cela bloque.
2) Gestan Cloud.
La synchro n'est pas possible à mettre en place, il existe un nombre infini de cas, et le risque d'erreur est beaucoup trop élevé. Il existe bien des aventuriers qui emportent avec eux une copie de leur DB sur clé USB, mais si plusieurs personnes travaillent avec le même gestan, c'est suicidaire.[/quote]
Je sais que le problème a été évoqué à plusieurs reprises mais jamais dans ces terme, avec cet optique et surtout, avec l'idée d'une solution native et donc fiable.
1) les données sur un serveur, c'est notre cas, ce dernier autorise le VPN, avec un débit important, tout ce qui va bien, le problème, ça vous oblige, là ou vous allez, d'avoir une connexion wifi ou de prendre un abonnement 3G (sans avoir la garantie d'être bien couvert là où vous vous rendez). Donc, ça n'est pas ce que j'évoquais comme solution : Le monsieur tout le monde, non informaticien qui ne veut (peut) pas s'embêter avec des paramétrages compliqué des connexions de la nasa... Il lance Gestan, il bosse comme au bureau, ça roule, une fois au bureau, son ordi est sur le réseau, la synchro se fait. Très rapide car toujours en local, pas de soucis de connexion, pas de prise de tête...
2) Le cloud présente les mêmes problèmes qu'évoqués ci-dessus concernant la connexion au réseau là ou vous allez. 2ème point, justifié ou non, il y a encore des irréductibles (une majorité d'ailleurs) qui prônent le local (avec une gestion propre de leurs sauvegardes) même si le cloud computing est séduisant par certains aspects.
Ma demande vise à éviter les méthodes d'aventurier que vous évoquez justement. En revanche, je ne peux pas croire une seule seconde que la "synchro" n'est pas possible, d'autres softs, travaillant sur des bases de données bien plus lourdes et complexes (SQL, Oracle...) le font parfaitement. On parle bien d'informatique ??? Soulever un immeuble de 12 étages à mains nues, ça c'est impossible !!!
Je ne suis pas développeur mais j'en connais et tous me disent qu'il n'y a rien de sorcier, on a des solutions multiples : le poste mobile après vérif qu'il n'est pas connecté "range" toutes les modifs dans un "buffer", ou il créé des ID provisoires qui seront fonctions de l'état de la base maître à l'instant T au moment de la synchro...
J'invite tout un chacun à réfléchir au potentiel de cette solution et des possibilités qu'elle offre, elle ne vient pas concurrencer le cloud, elle vient en complément d'une solution locale pour ceux qui souhaitent y rester et surtout, elle pourrait venir en complément du cloud et permettre de continuer à bosser en cas de perte de connexion, une sauvegarde en local d'une base parfaitement synchronisée avec le cloud.
Ludo
Voici un petit exemple de ce que permet Windev, même si ça ne colle pas parfaitement à ce qu'on a dit plus haut, c'est très très proche :
http://www.pcsoft.fr/windevppc/wd8ppc_basedonnees.htm
eric_le_belge
Windev Mobile c'est l'environnement de dev pour les..mobiles, pas les pc :prof:
eric_le_belge
Accessoirement, si cela existait pour windev 'classique' (ce dont je ne suis pas sur, mais je ne suis pas développeur), cela impliquerait une réécriture de gestan pour utiliser l'application en mode client-serveur avec Hyperfile en serveur sur un pc distinct... Un peu plus que quelques lignes de codes :roll:
Ludo
[quote="ansaro"]Windev Mobile c'est l'environnement de dev pour les..mobiles, pas les pc :prof:[/quote]
C'est pour ça que je disais que ça ne colle pas parfaitement (niveau matériel), sinon, le principe c'est celui là, je n'invente rien.
[quote="ansaro"]Accessoirement, si cela existait pour windev 'classique' (ce dont je ne suis pas sur, mais je ne suis pas développeur), cela impliquerait une réécriture de gestan pour utiliser l'application en mode client-serveur avec Hyperfile en serveur sur un pc distinct... Un peu plus que quelques lignes de codes :roll:[/quote]
Après discussion d'une bonne demie heure avec un ami développeur (et pas des moindres, je ne vais pas commencer à énumérer son CV mais tout ça pour dire que je ne parle pas d'un "guignol"), il me dit que, connaissant mal windev, il suppose que la fonction doit exister en natif soit via intégration d'une "brique" existante (voyez comme on en revient au bâtiment), j'imagine qu'il doit s'agir d'une sorte de plugin...
Soit, si ça n'existe pas, il suffirait de créer la fonction, selon lui, rien de compliqué ni de très long à développer, la subtilité réside dans le fait de faire détruire des ID (aïdi :D ) par Gestan. En clair, et toujours selon lui, il faut :
- Lors de l'installation avoir une option qui permettrait de dire que le matériel sur lequel on l'installe est amené à être mobile ou non, si non RAS (rien à faire de plus qu'actuellement), si oui, lui donner en plus de l'emplacement de la DATA existante, un emplacement local (dans la machine même) pour l'emplacement "bis".
- Une fois ceci fait, au 1er lancement, Gestan va créer un doublon de la DATA maître (en provenance du serveur par exemple), vers son disque local (emplacement désigné précédemment).
- Il faudrait ajouter un "Check" au démarrage de Gestan qui serait installé avec cette option : Qui va se connecter par défaut à la DATA "maître", comparer la DATA "esclave" et effectuer la synchro (la date de modif' la plus récente étant prise en référence), au cas ou un ID Facture existe en plus dans la DATA maître, il est ajouté à la DATA "escalve" et c'est valable pour tout le reste.
- Cas de figure ou on emmène l'appareil mobile (avec sa DATA esclave intégrée), qu'on ajoute des éléments (par exemple une facture qui portera l'ID 125), lors du retour au bureau, si une autre facture a été créé par un autre utilisateur (ID 125 également), c'est la DATA maître qui prends le dessus et celle de l'appareil mobile est considérée comme "ID PROVISOIRE", un nouvel ID sera alors créé pour la facture de la DATA esclave (ID 126), ce qui revient à modifier l'ID existant, chose pas forcément terrible selon mon ami développeur, pour des raison obscurs, lui, il ferait une duplication avec nouvel ID et destruction de l'ID esclave, en cas de conflit...
Enfin, c'est du code tout ça et pour l'utilisateur, c'est transparent...
Selon lui, mais c'est vrai qu'il est hors norme, ça ne représente vraiment pas beaucoup de boulot. Il me dit que beaucoup de bases de données ont, dans leur gestionnaire des fonctions toutes faites qui permettent de le faire, il m'a parlé de MySQL et de PHPmyAdmin, mais là ça commençait à devenir chinois pour moi...
Toujours est-il que j'ai eu l'occasion de tester un soft développé sous windev qui fait exactement ça, il a même été optimisé pour une utilisation tablette : BATAPPLI
J'aimerais bien avoir le point de vue de M.l'Admin également là dessus, je suis sûr qu'il va nous trouver une solution magique et facile à mettre en oeuvre :blabla: .
Gestan gagnerait beaucoup à être utilisé en mobilité...
Gestan
Bon, s'il faut que l'admin donne son point de vue..... :|
Il serait possible de doter Gestan de fonctionnalités de réplication de bases, un peu comme celles souhaitées par Ludo.
:prof: Il en existe deux sortes :
- la réplication monodirectionnelle : une base maître met à jour toutes les bases esclaves, ou inversement
- la réplication bidirectionnelle.
La gestion des conflits peut être effectuée selon 3 modes :
- Les données présentes dans la base de données abonnée sont prioritaires lors de la réplication.
- Les données présentes dans la base de données maître sont prioritaires lors de la réplication.
- Les données les plus récentes sont prioritaires(les données les plus récentes sont évaluées par rapport à l'heure sur le poste abonné).
Cela peut en effet être mis en place d'une manière relativement simple grâce à Windev, au prix d'une certaine complexité, tout de même, et d'un certain contrôle nécessaire (il ne faut pas se gourrer dans le sens des réplication, par exemple)
Si cela intéresse beaucoup de gens, nous pouvons y réfléchir...........
Ludo
Voilà un discours constructif que j'aime lire :D
Ce que je pense, d'une manière générale, mais ça n'est que mon point de vue et celui de mon ami dév. C'est qu'une option au moment de l'installation sur l'appareil mobile permet "d'activer" le mode, ce qui permet de ne pas alourdir en fonctions les installations traditionnelles chez les gens qui n'utilisent pas la fonction (encore une fois, c'est mon point de vue mais je ne suis pas développeur).
D'une manière générale, je pense que la base maître sera la "référence" à un détail près (cas de figure évoqué plus haut) :
- Si je pars en intervention et que je créé une fiche d'intervention + facture directement chez le client (en mode hors ligne donc), et qu'un collaborateur à créé une facture au bureau dans le même temps, nous aurons 2 factures avec le même ID mais il ne faut pas pour autant que lors de mon retour au bureau, au moment de la synchro, ma facture soit écrasée avec celle créée par mon collaborateur...
Toujours sans être dév et donc au risque de dire de grosses bétises, je pense que :
- Puisqu'une entrée dans une table (celle des factures pour l'exemple) possède inévitablement un ID
- Puisqu'il risque d'être compliqué de modifier cet ID (ou pas, après peut-être que windev le permet)
- Une fonction bien sentie (toute faite dans windev ou à l'ancienne avec des lignes de code) permettrait de définir, pour tout ce qui est créé "hors ligne" que les ID sont "provisoires" jusqu'à la prochaine synchro (j'imagine que ça ajouterait un champs dans chacune des tables, ce dernier dirait si ID consolidé ou non).
- Je pense aussi, pour faire plus simple, qu'on pourrait "interdire" certains accès en mode "hors ligne" pour éviter de foutre le bazar, du coup, on pourrait se concentrer sur les tables : contact, intervention, devis, commandes, factures, fournisseurs... ça limiterait les champs d'action dans un 1er temps (faut ménager l'Admin qui n'est plus si jeune :blabla: )
J'essaie de proposer des solutions avec mon modeste (ridicule) niveau dans le domaine, par contre, les besoins, je les connais et je suis convaincu que ça pourra séduire du monde.
Quoi qu'il en soit, je suis prêt à participer au développement de cette fonction (Cahier des charges, retour de tests et financièrement également).
A votre dispo
Ludo
Des nouvelles du front suite à une nouvelle conversation avec mon ami dév. qui a eu, il me semble, une bonne idée pour alléger la mise en place et la manip', sait-on jamais, si ça peut aider :
- Mettre en place une "double data" sur l'appareil mobile : une qui serait une réplique parfaite de la data maître, une qui serait vide et servirait à stocker les modif' en attente de synchro. L'idée étant qu'au moment de la re-synchro après un déplacement, Gestan n'ait pas à "scanner" toute la data à la recherche des entrées modifiées mais qu'il ne traite que celles qui se trouvent dans la data "vide", celles qui ont été modifiées ou créées hors ligne.
- Il m'indique également que ça devrait passer par une destruction d'ID si une nouvelle facture a été créée hors ligne mais que dans le même temps, un autre utilisateur en a créé une au bureau, au moment de la synchro, il y aurait 2 ID identiques, c'est la Data maître qui "aurait raison", la facture créée hors ligne serait dupliquée dans la data maître avec un nouvel ID et son originale détruite.
- Il m'a indiqué également que lui, fonctionnerait avec mise à jour des champs et non de l'entrée complète, ce qui fait que si par exemple, un utilisateur modifie le nom du destinataire d'une facture au bureau et qu'un autre utilisateur modifie le montant, les 2 modif' pourrait "cohabiter" lors de la synchro. En revanche, en cas de modification d'un même champs en 2 endroits différents, c'est la date de modif la plus récente qui aurait le dernier mot (scénario extrêmement difficile à reproduire dans la réalité mais bon...)
Maintenant, il faut savoir qu'il est développeur à l'ancienne, il bouffe de la ligne de code du matin au soir, windev a, visiblement, des fonctions toutes faites pour ça et ce sera peut-être encore plus simple à mettre en place... :D
evam
Bonjour,
merci pour cette idée. Je me pose la question entre une version entreprise & une version cloud. Très concrètement, prise de commande chez un client, pas de couverture réseau, éviter une resaisie quand on rentre au bureau. Cette synchronisation serait vraiment un plus car notre objectif c'est d'être sur le terrain, de prendre des commandes & de passer le moins de temps en administratif.
Tenez nous informés, même si "ce n'est pas que qq lignes de code" et donc pas pour tout de suite...
Gestan
alors un petit scoop : pour la version 14, nous prévoyons une possibilité de réplication des bases.
le schéma serait le suivant :
- le siège envoie la base la première fois aux commerciaux de terrain (ou ils viennent au siège pour la charger)
- le soir, les commerciaux [qui ont pris des commandes] envoient les données de synchronisation au siège
- le lendemain matin, ils reçoivent du siège de nouvelles données de synchronisation, comprenant l'ensemble des modifications apportées par le siège + toutes les modifications du terrain
- et ça recommence pareil le lendemain.
Ludo
Si c'est ça, c'est énorme, je prends plutôt 2 fois qu'une.
Et hop, au moins 2 licences de plus dans la besace d'ICS pour équiper des tablettes mobiles (Windows 8 arrive et va faire très fort, avec en prime la rétro-comatibilité WinXP, 7even et même Vista qui pue)...
Il est prévu que ça marche pour toutes les pièces ? Parce que j'envisage une utilisation "Intervention" également.
Sinon, comment est-il prévu que ça fonctionne, le programme va comparer les 2 bases et dupliquer les nouvelles entrées ? Il n'y aura pas de conflit d'ID ?
Gestan
On a pas encore tout défriché....
Gestan
voui, c'est pas facile, tout ça !...
Ludo
C'est clair, on a eu une longue réflexion sur le sujet lors de développement de mon appli' maison.
J'ai pas mal d'idées et solutions sous le coude qui doivent pouvoir être transposée dans Windev. Si je peux aider, c'est avec grand plaisir. :D
yax44
Bonjour,
Je déterre le sujet: l'idée de la réplication de base proposée par l'Admin est-elle toujours d'actualité ?
Merci.
Gestan
oui, mais c'est franchement pas pour tout de suite :cry: :cry: :cry:
Ludo
Bonjour,
Un nouveau déterrage de post (on fêtera bientôt ses 5ans :blabla: )
A compter de septembre, l'évolution d'une société étant ce qu'elle est, il me sera quasi indispensable de travailler hors ligne.
Mon problème étant toujours le même : J'ai une assistante au bureau qui travaille également et j'ai des saisies (temps passé) qui sont faites également par mes gars à leur retour de chantier.
J'ai récemment lu un article traitant du sujet sur Windev et il était indiqué que c'est une fonction native qui peut être "mise en place en quelques minutes"
Je m'adresse donc à mon ami viticulteur et accessoirement développeur en chef, Etienne, peux-tu jeter juste un petit coup d'oeil et voir si c'est jouable sans trop de bouleversement de ton planning que je sais déjà très chargé :wink:
Merci par avance
Gestan
En attendant, on a testé la réplication, et ça le fait pas vraiment, la gestion des identifiants est vraiment galère.
Mais ce qui existe, c'est Gestan Cloud, et Gestan Mobile, si les clients, actions, inter, suffisent. :wink: