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 :

Liste des fichiers HFSQL Classiques et Clients/Serveur


Sujet :

WinDev

  1. #1
    Membre éclairé
    Homme Profil pro
    Informaticien en retraite ...
    Inscrit en
    Janvier 2008
    Messages
    496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Informaticien en retraite ...
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2008
    Messages : 496
    Par défaut Liste des fichiers HFSQL Classiques et Clients/Serveur
    Bonjour
    J'ai un projet de test pour apprendre a manipuler dans une même analyse des fichiers HFSQL classiques et Clients/Serveur
    J'ai défini deux connexions et peut ainsi traiter l'un ou l'autre
    Mais au départ je veux les créer s'ils n'existe pas
    J'avais la fonction , après avoir appelé la connexion :
    Mais je me suis aperçu que je crée Tous les fichiers, et sur le serveur je retrouvais les fichiers classiques
    Il faut donc que je précise le nom du fichier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HCréation("Nom fichier")
    J'ai donc mit dans une table le nom des fichiers classiques, et dans une autre table le nom des fichiers clients serveurs
    Et je fait un boucle de lecture sur la table adéquat pour la création des fichier

    Mais cette table je l'ai faite en "dur", c'est à dire que j'ai codé le nom de chaque fichier
    Car si j'utilise la liste des fichiers de l'analyse, j'obtiens a la fois les classiques et les clients/serveur

    Existe t il un moyen, une fonction, qui donne la liste de fichiers classique OU la liste des Clients/Serveurs ?

    Cordialement
    SC

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

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 974
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    une solution est de créer 1 package (groupe de fichiers, perso-dossier, c'est la même chose.) e.g. PACK_Classic, PACK_CS regroupant tes tables selon leur type.
    En fonction de la connexion choisie, il suffira de créer les tables du package souhaité:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    HCréationSiInexistant(PACK_Classic)
    ne créera que les tables "Classic".
    Pour récupérer la liste des tables par catégorie, il suffira d'utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    HListeFichier(<Nom du package>,[option])
    Remarque
    L'utilisation de packages permet aussi de travailler avec plusieurs MLD simultanément (cf. Nouveauté 038 de WD 2024)

  3. #3
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 233
    Par défaut
    En fait, ce qu'on met dans l'analyse est juste une indication. Même si un fichier est marqué comme HFClassic dans l'analyse, tu peux le mettre sur une base SQL au lancement de ton projet.
    Et donc, dans ce cas, il te faut un fichier 'pilote' qui te dit l'emplacement de chaque fichier.

    Dans les 2 cas, à tout moment, tu peux utiliser la propriété Monfichier.connexion. Cf https://doc.pcsoft.fr/fr-FR/?2512019...xion_propriete
    Je n'ai pas du tout testé, je ne suis pas totalement serein.

    Je commencerais donc par une boucle , pour afficher ce que ça renvoie, juste pour voir ce que je peux en faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Pour tous les fichiers de l'analyse
      info ( monfichier.nom, monfichier.connexion) 
    fin

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

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 974
    Billets dans le blog
    1
    Par défaut
    La propriété Connexion indique la connexion d'un fichier déjà créé, dans ce cas, on peut obtenir la liste via
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    HListeFichier(<NomConnexion> [, <Options>])
    .
    Eventuellement, si l'on a créé des connexions dans le WDA, il serait possible d'utiliser le nom de ces connexions avant la création(à vérifier.) Toutefois, travailler directement avec les connexions décrites dans le WDA manque un peu de souplesse quant à la migration.
    Or, dans notre cas, on veut créer les fichiers en fonction de la connexion.

  5. #5
    Expert confirmé
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 579
    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 579
    Par défaut
    Bonjour,

    C'est effectivement à proscrire. J'ai eu un souci à cause de ce genre de "bidouille".

    Il s'avère qu'un ancien serveur s'était arrêté (à mon boulot). Résultat des courses, les utilisateurs n'ont pas pu lancer leur appli tant que ce serveur était arrêté. Il a fallu identifier l'origine du souci : Quelqu'un avait associé certains fichiers à ce serveur. Dans le code, il y avait un hchangeconnexion vers le "vrai" serveur, mais au lancement de l'appli, il vérifiait la présence su vieux serveur...

    Pour gagner du temps :
    1. Dans ton projet, tu mets un bouton :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    verspressepapier(hlistefichiers())
    2. Tu lances ton projet + clic.
    3. Dans Notepad++, tu fais coller
    4. Tu fais un remplacer (cocher mode étendu) \n\r par ", NomConnexionCS)\n\rhchangeConnexion(". Tu devrais avoir qq chose du genre hchangeConnexion(Fic1, NomConnexionCS) RC hchangeConnexion(Fic2, NomConnexionCS)
    5. Tu copies tout
    5. Dans le code du projet, tu mets pgChangeConnexion(), clic droit / Nouveau / Procédure globale vide.
    6. Tu colles et tu modifies les connexions qui doivent l'être en HFclassic.

    On pourrait faire mieux (dans cette procédure) en faisant un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    hchangeConnexion("*", NomConnexionCS)
    hchangeConnexion(Fic1classic, NomConnexionClassic)
    hchangeConnexion(Fic2classic, NomConnexionClassic)
    ...
    hchangeConnexion(Ficnclassic, NomConnexionClassic)

  6. #6
    Membre éclairé
    Homme Profil pro
    Informaticien en retraite ...
    Inscrit en
    Janvier 2008
    Messages
    496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Informaticien en retraite ...
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2008
    Messages : 496
    Par défaut
    Citation Envoyé par Voroltinquo Voir le message
    Bonjour,
    une solution est de créer 1 package (groupe de fichiers, perso-dossier, c'est la même chose.) e.g. PACK_Classic, PACK_CS regroupant tes tables selon leur type.
    Bonjour,
    Bravo et merci, cela marche parfaitement
    Bien sur, dans l'analyse il faut mettre le fichier dans le bon perso-dossier ....

    Il est impératif de respecter les consignes, les procédure de développement, car effectivement, par le jeux des connexions on peut rendre un fichier Classique en fichier Client/Serveur et inversement

    Cordialement
    SC

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Faire une page de connexion pour accéder à la liste des fichiers sur le serveur
    Par comme de bien entendu dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 09/05/2022, 16h58
  2. [WD14] Installation des fichiers de données HyperfileSQL Client/serveur
    Par Nonoleplongeur dans le forum HyperFileSQL
    Réponses: 8
    Dernier message: 29/07/2012, 09h19
  3. Réponses: 7
    Dernier message: 19/09/2004, 22h01
  4. liste des fichiers d'un répertoire
    Par am dans le forum C
    Réponses: 3
    Dernier message: 04/08/2003, 17h03
  5. [Kylix] Liste des fichiers d'un répertoire
    Par Houben Jacques dans le forum EDI
    Réponses: 3
    Dernier message: 30/11/2002, 21h14

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