DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Gestion des bases de données / HFSQL / Fonctions HFSQL
  • Changements de répertoire multiples
  • Changement de nom du fichier de données
  • Substitution de répertoire
  • Divers
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
  • Modifie le chemin d'accès à un fichier de données (c'est-à-dire le répertoire dans lequel le fichier de données sera manipulé). Si le fichier de données est ouvert lors de l'utilisation de HChangeRep, le fichier de données est automatiquement fermé.
    Rappel : Par défaut, le fichier physique correspondant au fichier de données décrit sous l'analyse est manipulé dans le répertoire spécifié dans l'analyse.
  • Substitue le nom de la base de données associée à une table. Dans ce cas, le nom de la base de données spécifié dans les propriétés de la connexion de la table (sous l'éditeur d'analyses) est alors ignoré.
    Pour modifier les paramètres de connexion d'un fichier de données non HFSQL, il est conseillé d'utiliser les fonctions HDécritConnexion et HChangeConnexion.
Java Cette fonction fonctionne uniquement pour les connexions à une base de données HFSQL.
Exemple
WINDEVWEBDEV - Code ServeurEtats et RequêtesJavaCode Utilisateur (MCU)AjaxHFSQL ClassicHyper File 5.5
// Création du fichier de données HFSQL Classic Stat dans le répertoire
// "C:\Statistiques\Janvier"
HChangeRep(Stat, "C:\Statistiques\Janvier")
HCréation(Stat)
WINDEVWEBDEV - Code ServeurEtats et RequêtesCode Utilisateur (MCU)AjaxHFSQL Client/Serveur
// Création du fichier de données HFSQL Client/Serveur Stat dans le répertoire "\Janvier\"
// Ce répertoire est situé à la racine du dossier 
// de la base de données (connexion HFSQL Client/Serveur)
HChangeRep(Stat, ".\Janvier\")
WINDEVWEBDEV - Code ServeurEtats et RequêtesCode Utilisateur (MCU)AjaxOLE DBConnecteurs Natifs (Accès Natifs)
// Fichier de données associé à une connexion par OLE DB. 
// Remplacement de la base de données à utiliser pour la table "Clients"
HChangeRep(Clients, "C:\Temp\MaDBTest.mdb")
HCréation(Clients)
// La table "Clients" a été créée dans la base de données "c:\temp\madbtest.mdb"
// La table "Clients" de la base ("c:\temp\madborigine.mdb") n'a pas été modifiée
Syntaxe

Utilisation avec des fichiers de données HFSQL Masquer les détails

<Résultat> = HChangeRep(<Fichier de données> , <Nouveau chemin du fichier de données>)
<Résultat> : Booléen
  • Vrai si l'opération a été réalisée,
  • Faux en cas de problème. La fonction HErreur permet d'identifier l'erreur.
<Fichier de données> : Chaîne de caractères
Nom logique du fichier de données HFSQL (défini dans l'analyse).
Si ce paramètre est égal à "*", le changement de répertoire sera appliqué pour tous les fichiers de données connus :
  • décrits dans l'analyse en cours,
  • décrits dans l'analyse principale de l'application (cas des projets multi-analyses).
Ce paramètre peut également correspondre au nom d'un groupe de fichiers (ou perso-dossier) défini dans l'analyse (non disponible en Android et Android Widget).
<Nouveau chemin du fichier de données> : Chaîne de caractères
Nouveau chemin d'accès au fichier de données (260 caractères maximum). Ce chemin peut contenir le nom du lecteur et des répertoires, ou être un chemin relatif.
Si le chemin est relatif, le caractère "." (ou "?") permet de désigner le répertoire en cours et le caractère ".." permet de désigner le répertoire parent.
Si ce paramètre correspond à une chaîne vide (""), le fichier de données sera manipulé dans le répertoire spécifié dans l'analyse.
HFSQL Client/Serveur Le chemin d'accès au fichier de données doit être relatif à la base de données présente sur le serveur. Il n'est pas possible d'indiquer un chemin en dehors de la base de données. Si l'on tente d'accéder à des fichiers de données en dehors de la base, une erreur WLangage est affichée. Par exemple:
Chemin valide :
HChangeRep(NomFichier, "SOUSREP")
OU 
HChangeRep(NomFichier, ".\SOUSREP")

Chemin non valide :
HChangeRep(NomFichier, "C:\BDD\SOUSREP")

Si le nouveau chemin est valide et n'existe pas, il est automatiquement créé.
iPhone/iPad Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
Rappel : Sous les iPhone/iPad, une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
WINDEVWEBDEV - Code ServeurEtats et RequêtesCode Utilisateur (MCU)AjaxOLE DBConnecteurs Natifs (Accès Natifs)

Utilisation avec un accès OLE DB ou un Connecteur Natif Masquer les détails

<Résultat> = HChangeRep(<Fichier de données> , <Nouvelle base de données>)
<Résultat> : Booléen
  • Vrai si l'opération a été réalisée,
  • Faux en cas de problème. La fonction HErreur permet d'identifier l'erreur.
<Fichier de données> : Chaîne de caractères
Nom logique de la table (défini dans l'analyse).
Si ce paramètre est égal à "*", la fonction HChangeRep est ignorée.
Attention : Si ce paramètre est égal à "*" et si un des fichiers de données de l'analyse a été associé à une connexion (fonction HChangeConnexion) avant l'utilisation de la fonction HChangeRep, la modification du répertoire sera prise en compte pour ce fichier de données uniquement à la fermeture de la connexion.
<Nouvelle base de données> : Chaîne de caractères
Chemin d'accès à la base de données à utiliser (260 caractères maximum). Dans ce cas, le nom de la base de données spécifié dans les propriétés de la connexion de la table dans l'analyse est alors ignoré.
Ce chemin peut contenir le nom du lecteur et des répertoires, ou être un chemin relatif.
Si le chemin est relatif, le caractère "." (ou "?") permet de désigner le répertoire en cours, et le caractère ".." permet de désigner le répertoire parent.
Remarques

Changements de répertoire multiples

La fonction HChangeRep peut être appelée plusieurs fois avec des paramètres différents. Lorsque le chemin est redéfini plusieurs fois pour un même fichier de données, le dernier chemin spécifié remplace tous les autres.

Changement de nom du fichier de données

La fonction HChangeRep permet uniquement de changer le chemin d'accès au fichier de données physique. Pour modifier le nom physique du fichier de données, utilisez la fonction HChangeNom.

Substitution de répertoire

La fonction HChangeRep permet d'associer un répertoire à un fichier de données. Pour substituer un répertoire par un autre, utilisez la fonction HSubstRep.
Attention : La substitution de répertoire effectuée par HSubstRep s'applique sur le répertoire défini par la fonction HChangeRep. Par exemple :
HSubstRep("C:\Statistiques\Janvier", "C:\Nouveau\StatJanv")
HChangeRep(Stat, "C:\Statistiques\Janvier") 
HCréation(Stat) // Fichier de données créé dans le répertoire C:\Nouveau\StatJanv

Divers

  • Si la gestion du ".REP" est branchée (fonction HGèreREP), la modification de chemin est enregistrée dans le fichier ".REP" (voir gestion du .REP).
  • La fermeture du fichier de données conserve le nouveau chemin, mais ne conserve pas un éventuel mot de passe donné à l'ouverture du fichier de données.
  • La fonction HChangeRep est équivalente à la fonction HAssigne présente dans les versions précédentes.
  • Cette fonction peut être utilisée lors de l'ouverture d'une connexion à un serveur HFSQL.  Attention : L'ordre d'utilisation des fonctions permettant de se connecter à une base de données HFSQL Client/Serveur est important. Consultez Optimiser les temps de connexion aux bases HFSQL Client/Serveur pour plus de détails.
  • Connecteurs Natifs (Accès Natifs) La fonction HChangeRep peut être utilisée avec le Connecteur Natif XML.
Composante : wd300hf.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
HChangeRep incompatible avec Connecteur Natif PostgreSQL
Le support nous a confirmé que HChangeRep est incompatible avec le Connecteur Natif PostgreSQL. Privilégier HChangeConnexion pour travailler avec d'autres db, ou HChangeNom pour travailler avec d'autres schémas
RVN
02 aoû. 2024
Perso dossier sur Android
Visiblement, l'utilisation des perso-dossier sur Android ne fonctionne pas. Il faut soit préciser le nom du fichier, soit indiquer "*".
Jerome_mb
08 nov. 2015

Dernière modification : 12/04/2024

Signaler une erreur ou faire une suggestion | Aide en ligne locale