1. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

DEMANDE Application avec mode Hors ligne

Discussion dans 'Windev Mobile' créé par dohmien, Juin 18, 2018.

  1. dohmien

    dohmien Member

    Inscrit:
    Juin 14, 2018
    Messages:
    85
    J'aime reçus:
    34
    Bonjour à tous,

    Je me demandais si quelqu'un avait déjà fait une application avec une Base HFSQL utilisable en ligne et hors ligne. Sans utiliser la réplication ?

    Je le fais avec une de mes applications mais c'est vraiment compliqué a gérer les déconnexions etc .. Et voulais savoir si ma méthode était viable ou s'il y en avait une autre !

    En gros dans mon projet j'ai par exemple pour le fichier utilisateur (version C/S) le même fichier qui s'appelle utilisateur_local (version HFSQL Classic).
    Je me suis fait une procédure qui check si j'arrive a accéder au serveur HFSQL et si non propose a l'utilisateur de basculer sur le mode Hors ligne (dans tout mes traitements j'ai un test pour savoir si on lance la requête sur le fichier utilisateur ou utilisateur_local).

    Le mode hors ligne est lui mis à jour manuellement par l'utilisateur via une procédure qui drop la base locale et fait une copie ligne par ligne de chaque fichiers.
    Là ou ça deviens compliqué c'est avec l'itinérance et les changements de connexion à répétition 3G/4G/H+/offline.

    Si ça interesse quelqu'un je pourrais mettre a dispo ma méthode, même si je pense qu'elle est loin d'être idéale !
     
    Tags:
    raheek_makhtoom et aminej76 aiment ça.
  2. popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,948
    J'aime reçus:
    1,569
    Tu peut proposer le téléchargement de maj.
    par ws, copie de fichiers fic, ZIP, textes etc...
     
    rafik19 et dohmien aiment ça.
  3. rafik19

    rafik19 Member

    Inscrit:
    Jan 1, 2018
    Messages:
    35
    J'aime reçus:
    14
    tu peut aussi proposer une solution hybride
    si il y a pas de connexion HFCS alors
    HFSQL Classic en local
    sinon
    des que connexion réplication suivie du mode CS
     
    dohmien apprécie ceci.
  4. dohmien

    dohmien Member

    Inscrit:
    Juin 14, 2018
    Messages:
    85
    J'aime reçus:
    34
    C'est vrai mais la réplication impose un serveur web dédié et une licence si je ne me trompe pas ?

    Ce qui m'embête dans la copie de fichier ou réplication c'est de retrouver le fichier utilisateur sur les terminaux. Mon fichier utilisateur ne contient pas certaines données sensibles comme les adresses mail, mdp/hash. Je ne connais pas très bien la réplication, est-ce possible de choisir quel donnée on synchronise ?
     
  5. da-slow

    da-slow New Member

    Inscrit:
    Avr 23, 2018
    Messages:
    3
    J'aime reçus:
    2
    Replication windev :
    J'avais mis en place la réplication...Il faut faire une installation (à partir d'un exe qui se trouve dans les dossiers windev) sur ton serveur.
    J'ai regretté ce choix, car lors des coupures 3g, j'avais des lignes d'enregistrements incomplètes, et des pertes de données mobiles. Je précise que j'étais en windev, windev mobile 20. ça a peut être évolué depuis. (si tu le test, faut le faire en profondeur et assez longtemps, car les problèmes viennent pas tout de suite)
    Et oui, on peut choisir quel fichier synchronisé, mais ça gère pas à la rubrique.

    Transfert de données en Mode FTP :
    Du coup, dans l'empressement (client pas content ahah) , j'ai opté pour le transfert de fichiers xml dans un zip par FTP.
    Quand tu télécharge depuis ton appli, et que tu stock dans fRepExe, il me semble que l'utilisateur de l'application ne peut pas accéder à ce dossier (du moins, moi j'avais testé avec un smatphorne n'ayant subi aucune modification particulière). Mais bon, j'suis pas sur que le transfert ftp, soit très très sécure.
     
    aminej76 et joker aiment ça.
  6. mistersoft

    mistersoft Active Member
    MEMBRE WX

    Inscrit:
    Jan 1, 2018
    Messages:
    129
    J'aime reçus:
    128

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    C'est vrai mais la réplication impose un serveur web dédié et une licence si je ne me trompe pas ?
    Cliquez pour agrandir...
    Pourquoi un serveur web dédié, je comprend pas ?? une licence ??

    il faut juste un serveur de base de données. Par contre "OUI", il te faut une adresse IP fixe. Tu ouvres tes ports pour la réplication et c'est tout (Pare-feu, routeur etc...).
    Tu met en place ta réplication vers le serveur ou dans les deux sens, Optionnelle ou juste si tu as besoin que certains fichiers de répliquent sur ton smartphone (Parfois nous n'avons pas besoins de tous les fichiers sur un smartphone)

    A mon avis :
    - Travailler toujours en mode Hors connexion sur un smartphone.

    Puis : Connexion uniquement :
    - Au premier démarrage de l'application -> Réplication.
    - Faire des réplications ponctuelles toutes les heures (par Ex), au choix selon l'importance de donner/récupérer en temps réel ou non les infos.

    Plusieurs choix à réfléchir :

    1/ Démarrage --> Connexion --> Réplication --> Déconnexion --> Exploitation Locale --> Enregistrement --> Connexion --> Réplication --> Déconnexion ... etc ...
    2/ Démarrage --> Connexion --> Réplication --> Déconnexion --> Exploitation Locale --> Fermeture App --> Connexion --> Réplication --> Déconnexion
    3/ Démarrage --> Connexion --> Réplication --> Déconnexion --> Exploitation Locale --> Ponctuellement (Manuellement) --> Connexion --> Réplication --> Déconnexion ... etc ...

    Dans tous les cas cités, bien sur, configurer ta réplication pour qu'elle se fasse totale ou partielle, dans un seul sens ou dans tous les sens.

    J'espère t'avoir aidé.

    Bon développement.
     
    rafik19 et joker aiment ça.
  • elhacene

    elhacene Active Member
    MEMBRE WX

    Inscrit:
    Jan 14, 2018
    Messages:
    299
    J'aime reçus:
    150

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    pour le risque de coupure mieux utiliser les transaction (htransaction), et pour toi

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    bin et si tu ajoute un champs coche dans t es table 1 pour existe déja en local et C/S et 0 non
    comme sa tu peut faire un filtre sur ceux qui =0 et donc tu na que a parcourir un nombre limité et mettre ajours les base des deux coté local et serveur mais utilise les htrasaction pour que windev execute tous les action a la fin ou il les annule toute si il y a une coupure . a toi de voir maintenant pour développer cette idée
     
    rafik19 apprécie ceci.
  • mistersoft

    mistersoft Active Member
    MEMBRE WX

    Inscrit:
    Jan 1, 2018
    Messages:
    129
    J'aime reçus:
    128

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    pour le risque de coupure mieux utiliser les transaction (htransaction), et pour toi

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    bin et si tu ajoute un champs coche dans t es table 1 pour existe déja en local et C/S et 0 non
    Cliquez pour agrandir...
    Envisageable, uniquement pour les nouveaux enregistrements.
    Qu'est ce qu'on fait quand on est à plusieurs ???? Qu'est ce qu'on fait quand on fait des modifs ??? Et quand on supprime ????

    Par contre, la combinaison Réplication/Transaction, c'est le summum. (Faut quand même pas oublier les performances qui vont dégringoler)

    Je te remercie

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    .
     
    elhacene et rafik19 aiment ça.
  • da-slow

    da-slow New Member

    Inscrit:
    Avr 23, 2018
    Messages:
    3
    J'aime reçus:
    2

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Envisageable, uniquement pour les nouveaux enregistrements.
    Qu'est ce qu'on fait quand on est à plusieurs ???? Qu'est ce qu'on fait quand on fait des modifs ??? Et quand on supprime ????

    Par contre, la combinaison Réplication/Transaction, c'est le summum. (Faut quand même pas oublier les performances qui vont dégringoler)

    Je te remercie

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    .
    Cliquez pour agrandir...

    Quand j'avais fait ce système, les performances se portaient bien, mais j'avoue que c'était seulement pour 4 utilisateurs mouahaha.

    Je l'avais fait pour l'ajout, la modification et la suppression aussi.

    Technique
    Modification :
    - FTP -> Mobile : Suppression de mes tables mobile qui va concerner la réception zip ; Réception du zip XML sur mobile : "Ajout en mode ID forcé"
    - FTP <- Mobile : Envoi du pack Zip. Dans ma base de données mobile, est précisé l'action effectuée sur le mobile (modif, ajout, suppression). Je n'envoie que les données avec "action_mobile" <> 0 (0 = rien n'a été fait)
    - Serveur <- FTP : récupération du pack Zip et checking de sa validité (le zip peut être corrompu, si ça se passe mal, on fait un retour xml comme quoi la synch a échouée) +archive des zip + insertion des données en fonction de action_mobile.
    - Serveur -> FTP : recréation d'un nouveau zip

    La rubrique "action_mobile", "date_ajout", "date_modif"... sont stockés dans un fichier libre, qui sert de centraliseur. (pour pas avoir a mettre action_mobile dans chaque fichier).

    Et puis, quand tu fais ton truc toi même, tu peux faire une jauge plus parlante.
     
  • dohmien

    dohmien Member

    Inscrit:
    Juin 14, 2018
    Messages:
    85
    J'aime reçus:
    34
    merci pour toutes vos informations je vais revoir tout ca avec les transactions je pense. mais je garde quand même la réplication dans un coin de ma tête. quand tu parle de port a ouvrir c'est que c'est pas le même que pour le serveur de bdd ?
     
  • Partager cette page

    Chargement...