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

HyperFileSQL Discussion :

Déterminer la version Hyper File : 5.5 ou 11 ?


Sujet :

HyperFileSQL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 15
    Points : 12
    Points
    12
    Par défaut Déterminer la version Hyper File : 5.5 ou 11 ?
    Bonjour,
    Je cherche à savoir comment récupérer la version d'un fichier hyper file avec WinDev11.
    Ma société vient de passer de WinDev 5.5 vers la 11.
    pour la migration, pas de problème. mais en ce qui concerne l'importation de fichiers hyper file vers notre logiciel, il faut que je détermine si il s'agit de fichier 5.5 ou 11 pour éventuellement procéder à la migration des fichiers.

    J'ai vu qu'avec WDOptimiseur, je peux visualiser les propriétés du fichiers dont la version, c'est très bien mais cette fonctionnalité n'est pas accessible en ligne de commande car il s'agit d'une opération interne au programme.
    C'est peut être tout bête mais je ne vois pas.
    Merci à celui qui pourrait m'aider.

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Points : 32 889
    Points
    32 889
    Par défaut
    WDOptimiseur est disponible en dehors de l'environnement Windev si c'est ce que tu souhaites.
    WDMap aussi.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Pas exactement car j'ai besoin d'obtenir la réponse à l'intérieur de mon programme de façon invisible à l'utilisateur final car celui-ci sera exécuté sur son poste.
    Donc je récapitule, sur le poste de mon/mes utilisateur(s) final le programme (écrit en Delphi) va récupérer des fichiers Hyper Files sans savoir s'ils sont en version 5.5 ou 11. S'il sont en 5.5, je les convertis en 11 sinon je passe mon chemin.
    J'utilise déjà WDMap, WDModFic et WDConver en dehors de leur environnement Windev. Mais pour WDOptimiseur ça implique un mode interactif ce que je ne souhaite pas étant donnée que la monté de version ne concerne pas les clients.
    Merci pour ton implication.

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Points : 32 889
    Points
    32 889
    Par défaut
    Dans les fonctions HF de Windev pour savoir si un fichier HF est en format 5.5 ou 7 il faut utiliser la propriété "Type" (théoriquement, je n'ai pas testé)

    Par contre, j'aimerais savoir comment tu convertis les fichiers HF5.5 en HF7 avec Delphi ?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    En effet, la réponse ce trouve surement dans "Type". Maintenant il faut que j'arrive à l'utiliser c'est à dire lire mon fichier de "type inconnu" dans windev pour en extraire son type. J'ai commencé à travailler dessus mais il me manque le fait de relier le fichier physique au fichier logique. Tu as peut être la réponse, voici mon début de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    dfMonFic est une description de fichier
     
    dfMonFic..Répertoire = "C:\chemin du fichier"
    dfMonFic..NomPhysique = "CLIENT"
     
    info(dfMonFic..Type)    //  hFichierHF5 = 56  | hFichierNormal = 51
    pour convertir HF5.5 en 7 par Delphi j'ai commencé par créer le fichier "analyse.wdv" (utilisé par WDConvert) puis j'ai lancé WdConver en ligne de commande en tant qu'application externe à Delphi. J'ai au préalable placé tous les dll et exécutable nécessaire à son fonctionnement dans le répertoire d'exécution. Voici une partie du code si tu es curieux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
             FillChar( exInfo, Sizeof(exInfo), 0 );
             With exInfo Do Begin
                cbSize:= Sizeof( exInfo );
                fMask := SEE_MASK_NOCLOSEPROCESS or SEE_MASK_FLAG_DDEWAIT;
                Wnd   := 0;
                lpVerb:= 'open';
                lpParameters := Pchar('-error' + ' ' + '/SCRIPT="' + RepertoireDestination + '\analyse.WDV"');
                lpFile:= Pchar('WDConver');
                nShow := SW_SHOWNORMAL
             End;
             If ShellExecuteEx( @exInfo ) 
             Then Begin
                While GetExitCodeProcess( exinfo.hProcess, exitcode ) and (exitcode = STILL_ACTIVE) 
                Do   Application.Processmessages;
                CloseHandle( exinfo.hProcess );
             End;
             Else Begin
                  Appelwd('ERREUR,Erreur détectée lors de la conversion de la base de données. La mise à jour va se terminer.'+#13+#10+'Contactez le service technique.');             
             End;

  6. #6
    Expert éminent sénior

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Points : 32 889
    Points
    32 889
    Par défaut
    Tricheur

    J'aurais au moins appris qu'on peut utiliser WDConvert de cette manière
    Merci

    NomDécrit Gère le nom logique d'un fichier de données
    La propriété NomDécrit permet de gérer le nom logique des fichiers Hyper File (sans tenir compte des éventuelles modifications effectuées par la fonction HAlias ).

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Bonjour,

    Réponse tardive, désolée, il m'est arrivé un imprévu (pied cassé) qui a perturbé mon quotidien.
    Bref, il y a une autre solution pour déterminer si un fichier et en 5.5 ou 11 qui consiterait à lire le contenu (dans le blocnote). On constate que si le fichier commence par * (étoile) alors il s'agit d'un fichier 5.5 alors que les fichiers en version 11 commencent par 'PCS'. J'avoue que cette solution m'est plus facile car je ne suis pas sur de bien métriser 'NomDécrit' ou encore 'Type' (qui me renvoi systématiquement 51 en résultat).

    En tout merci pour tes conseils et ton temps.
    Bonne semaine à ceux qui liront ce message.

  8. #8
    Expert éminent sénior

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Points : 32 889
    Points
    32 889
    Par défaut
    Merci pour l'astuce qui, effectivement, est encore plus simple à mettre en place.

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

Discussions similaires

  1. Copier coller hyper file
    Par mael94420 dans le forum WinDev
    Réponses: 6
    Dernier message: 12/07/2006, 09h21
  2. [hyper file client/serveur] problème de droit
    Par routmout dans le forum HyperFileSQL
    Réponses: 3
    Dernier message: 17/06/2006, 21h48
  3. Réponses: 7
    Dernier message: 28/03/2006, 08h38
  4. Réponses: 4
    Dernier message: 03/11/2005, 16h16
  5. déterminer la version de Winsock installée
    Par BlueX_scf dans le forum Web & réseau
    Réponses: 7
    Dernier message: 24/02/2003, 10h23

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