IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Ajouter un champs dans une base de données hf sans besoin d'un package d'installation


Sujet :

WinDev

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 86
    Points : 45
    Points
    45
    Par défaut Ajouter un champs dans une base de données hf sans besoin d'un package d'installation
    Bonjour,
    Est-il possible d'ajouter un champ dans un fichier de base de données hf sans passer par un installateur , le faire depuis le code de l'exécutable , afin de facilité une mise à jour .
    les nouvelles disposition légal dans la facturation impose un champ d'adresse de facturation et de livraison à compter du 10/2019 , donc et il possible par programmation directement dans l'exécutable de modifier le fichier 'entete_facture' avec un nouveau champ ??? sans avoir besoin que les utilisateurs téléchargent un nouveau package d'installation ??
    merci de vos réponses et conseilles ...

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 411
    Points : 434
    Points
    434
    Par défaut
    Je ne vois pas l'intérêt, mais :

    https://doc.pcsoft.fr/fr-FR/?2028074

    wdinst.exe

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 86
    Points : 45
    Points
    45
    Par défaut
    l'intérêt est énorme puisque mes clients font des mises à jour exclusivement de l'exécutable (numéroté comme 3.45 etc ..) qui fait 20mo à la place de l'installateur du logiciel complet qui fait 100mo et plus
    donc je veux justement me passer de wdinst.exe ....
    en gros rajouter un champs telephone2 dans le fichier client
    client.telephone existant en 3.45
    client.telephone2 , champs à créer avec l'exécutable 3.46 .

  4. #4
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Bonjour,

    Tu peux utiliser hmodifiestructure(). Par contre, il te faut gérer l'accès au logiciel lors de la mise à jour du fichier concerné. Il ne faut pas que 2 utilisateurs lancent le traitement de màj "en même temps".
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 411
    Points : 434
    Points
    434
    Par défaut
    https://doc.pcsoft.fr/fr-FR/?3044270 peut-être ?

    Si tu modifie ta structure de base, tu ne pourras pas utiliser le nouveau champ, donc je ne vois toujours pas l'intérêt

  6. #6
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    @alaclef
    Je comprends ton raisonnement, mais tu peux utiliser un patch ou exe sans programme d'installation.
    Principe de fonctionnement : Tu lances ton appli, cette appli lance un prg de màj qui va regarder s'il y a qqchose à télécharger. Si c'est le cas, elle arrête l'appli, télécharge le(s) patch(s) et/ou l'exe. Puis, finalement, puis lance l'exe.

    L'intérêt est que l'utilisateur n'a aucune manip à faire. Tout est automatique.
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 411
    Points : 434
    Points
    434
    Par défaut
    Oui bien sûr il faut utiliser la maj par patch.
    Mais à moins d'une connexion par modem 56K, cela fait beaucoup de choses pour éviter une maj automatique des données (ce n'est que mon avis )

  8. #8
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    De mémoire, la màj automatique n'empêche pas l'accès concurrent à la base. Si un poste A lance la màj (un fichier de plus d'1 million d'enregistrements), et qu'un deuxième poste lance cette même màj, au mieux, l'accès au fichier sera verrouillé, au pire, un crash dudit fichier... Et les utilisateurs qui râlent parce que ça plante...
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  9. #9
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 86
    Points : 45
    Points
    45
    Par défaut
    Bonjour,
    Mon but étant de continuer avec ma façon de travailler , mon exécutable démarre de temps en temps mon exécutable de mise à jour , télécharge l'exécutable etc ... , cela fonctionne très très très bien , les ressources sont limités sur mon serveur (j'ai 3/4000 utilisateur) avec Maj gratuite , j'ai pas envie d'augmenter mes coûts pour ceci , mais bon la question n'étant pas la , le hmodifiestructure() , j'ai pas vraiment su l'utiliser en tout cas , comme il n'y a pas de liaison sur ce que je rajoute cela devrait fonctionner ? si quelqu'un à un exemple sous le coude

  10. #10
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Ce que l'ont fait chez nous :
    - création d'un fichier "marqueur", fbloque() sur ce fichier.
    - Liste des fichiers (avec hlistefichier()
    - Pour chaque fichier : quand exception dans HCréationSiInexistant() faire ... SI HErreur(hErrEnCours) = 70016 ALORS ... ajout dans un tableau. L'erreur 70016 correspond à une différence d'analyse.
    - Parcours du tableau et pour chaque élément, hmodifiestructure().
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  11. #11
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 86
    Points : 45
    Points
    45
    Par défaut
    je vais essayer de faire ceci sans rien péter .... lol

  12. #12
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Si tu fais ça sur une base isolé, ça ne risque rien... ou presque

    Sérieusement; il faut juste penser à créer une fenêtre pour faire cette màj. Cela permet de mettre au moins une jauge (pilotée par hmodifiestructure). L'utilisateur est content de voir que ça travaille...
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  13. #13
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 807
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 807
    Points : 5 263
    Points
    5 263
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par frenchsting Voir le message
    L'utilisateur est content de voir que ça travaille...
    Et il a une bonne excuse pour ne pas travailler ...
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

  14. #14
    Candidat au Club
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Octobre 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Octobre 2019
    Messages : 1
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par styck007 Voir le message
    Bonjour,
    Est-il possible d'ajouter un champ dans un fichier de base de données hf sans passer par un installateur , le faire depuis le code de l'exécutable , afin de facilité une mise à jour .
    les nouvelles disposition légal dans la facturation impose un champ d'adresse de facturation et de livraison à compter du 10/2019 , donc et il possible par programmation directement dans l'exécutable de modifier le fichier 'entete_facture' avec un nouveau champ ??? sans avoir besoin que les utilisateurs téléchargent un nouveau package d'installation ??
    merci de vos réponses et conseilles ...
    tu peut utiliser wdmodfic en ligne de commande. faut juste lui passer les infos /WDD=ton fichierwdd et /DIR= ton dossier fichier
    et j'utilise aussi -nobackup (on est pas des fillettes) et -noprogress (histoire de faire propre)

  15. #15
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Citation Envoyé par Voroltinquo Voir le message
    Et il a une bonne excuse pour ne pas travailler ...
    Le patron râle et l'employé est heureux.

    @patounet13 : on avait utilisé wdmodfic (qd on était jeunes) mais on avait eu des soucis lors des changements de version de Windev, si je me souviens bien. Autre inconvénient, ça oblige à lancer une appli tierce avec le risque l'uae d'avoir qui te saute à la tronche.
    +1 à toi pour le "sans filet".
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  16. #16
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 86
    Points : 45
    Points
    45
    Par défaut
    @frenchsting
    cela fonctionne impeccable , blocage du fichier de licence pour éviter que 2 le fassent en même temps et :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    quand exception dans HCréationSiInexistant() faire ... SI HErreur(hErrEnCours) = 70016 ALORS hmodifiestructure()
    pas photo , c'est efficace ... , c'est nickel
    merci tout plein ...

Discussions similaires

  1. Editer des champs dans une base de données
    Par sleh12 dans le forum Débuter
    Réponses: 5
    Dernier message: 22/11/2008, 09h02
  2. Tester un champ dans une base de données
    Par Bebete dans le forum Langage SQL
    Réponses: 4
    Dernier message: 16/05/2008, 09h30
  3. Ajouter des éléments dans une base de données Access
    Par bidule123456 dans le forum ASP
    Réponses: 74
    Dernier message: 07/09/2007, 14h00
  4. position du champs dans une base de donnée
    Par eric205 dans le forum Bases de données
    Réponses: 2
    Dernier message: 04/04/2005, 09h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo