DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Gestion des bases de données / HFSQL / Modification automatique des données
  • Présentation
  • Dans quels cas la modification automatique des données est nécessaire?
  • Réaliser la modification automatique des tables
  • Poste de développement
  • Poste de déploiement
  • Notes
  • Exécuter plusieurs fois la modification automatique des tables
  • Configuration par défaut du programme d'installation
  • Sauvegarde des tables
  • Forcer la modification automatique des tables
  • Schéma des données partagés entre différentes application et sites
  • Droits d'accès à la table
  • Limitation
WINDEV
WindowsLinuxJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac Catalyst
Autres
Procédures stockées
Présentation
La modification automatique des tables permet de mettre à jour la description des tables présentes sur les postes utilisateurs.
En effet, si la structure d'une ou de plusieurs tables a évolué sur le poste de développement (ajout ou suppression de rubriques, modifications de rubriques, ...), ces modifications doivent obligatoirement être reportées sur les postes utilisateurs lors de la mise à jour de l'application.
Si la mise à jour de l'application est effectuée sans modification automatique des données, l'application sur les postes utilisateurs risque de:
  • ne plus fonctionner correctement.
  • générer des erreurs de programmation.
WINDEV Attention: Dans le cas d'une mise à jour réseau avec modification automatique des tables, l'installation de la mise à jour de l'application sur les postes utilisateurs doit être obligatoire.
Remarques:
  • La modification automatique des tables peut être réalisée par programmation grâce à la fonction HModifieStructure.
  • iPhone/iPad La modification automatique des données peut être réalisée uniquement par la fonction HModifieStructure.
Dans quels cas la modification automatique des données est nécessaire?
WINDEVWEBDEV - Code ServeurWindowsHFSQL ClassicHFSQL Client/ServeurHyper File 5.5 La modification automatique des données est nécessaire dans les cas suivants:
Poste de développementPostes des utilisateurs
1° cas:
Modifications de la structure des tables HFSQL Classic ou Client/Serveur
  • L'application utilise des tables au format HFSQL Classic ou Client/Serveur.
  • La structure des tables a été modifiée (ajout ou suppression de rubriques, ...).
  • L'application utilise des tables au format HFSQL Classic ou Client/Serveur.
  • Ces modifications doivent obligatoirement être répercutées lors de la mise à jour de l'application. La structure des tables sera ainsi identique à celle du poste de développement.
2° cas:
Migration des tables de Hyper File 5.5 vers HFSQL Classic
  • L'application utilise des tables au format HFSQL Classic.
  • L'application utilise des tables au format Hyper File 5.5.
  • La migration des tables de Hyper File 5.5 vers HFSQL Classic doit obligatoirement être effectuée lors de la mise à jour de l'application. La structure des tables sera ainsi identique à celle du poste de développement.
3° cas:
Modifications de la structure des tables au format Hyper File 5.5
  • L'application utilise des tables au format Hyper File 5.5.
  • La structure des tables a été modifiée (ajout ou suppression de rubriques, ...).
  • L'application utilise des tables au format Hyper File 5.5.
  • Ces modifications doivent obligatoirement être répercutées lors de la mise à jour de l'application. La structure des tables sera ainsi identique à celle du poste de développement.

Remarque: Dans le cas d'une installation réseau, la modification automatique des données modifie à la fois les tables présentes sur le poste serveur et celles présentes sur les postes utilisateurs.
HFSQL ClassicHFSQL Client/Serveur La modification automatique des données est nécessaire si la structure des tables a été modifiée à partir du poste de développement (ajout ou suppression de rubriques, ...). Ces modifications doivent alors obligatoirement être répercutées lors de la mise à jour de l'application sur les postes utilisateurs (format CAB). La structure des tables sera ainsi identique à celle du poste de développement.
iPhone/iPadHFSQL ClassicHFSQL Client/Serveur La modification automatique des données est nécessaire si la structure des tables a été modifiée à partir du poste de développement (ajout ou suppression de rubriques, ...). Ces modifications doivent alors obligatoirement être répercutées lors de la mise à jour de l'application sur les postes utilisateurs. La structure des tables sera ainsi identique à celle du poste de développement.
Réaliser la modification automatique des tables

Poste de développement

La modification automatique des tables est systématiquement réalisée lors de la génération du schéma des données sur le poste de développement.
Pour reporter la modification automatique sur les tables présentes sur les postes des utilisateurs finaux, il suffit d'effectuer la modification automatique lors de l'installation de la mise à jour de l'application ou du site. Le paramétrage de cette modification automatique peut être effectué:
Remarque: Si nécessaire, la modification automatique des tables peut également être effectuée lors de la synchronisation de données via la réplication universelle ou la réplication assistée.
WINDEVWindowsHFSQL ClassicHFSQL Client/ServeurHyper File 5.5

Poste de déploiement

Lors de l'installation d'une mise à jour avec modification automatique des tables, l'utilisateur pourra configurer la modification automatique en cliquant sur le bouton "Avancé". Ce bouton est présent sur le premier plan du programme d'installation. La fenêtre suivante s'affiche alors:

Fenêtre de modification automatique
Cette fenêtre permet de:
  • créer un fichier de compte-rendu des opérations effectuées lors de la modification automatique des données. En cas de problème, ce fichier pourra être transmis au responsable de l'application.
    Par défaut, ce fichier est nommé "LOGMODAUTO.TXT" et est créé dans le répertoire d'installation de l'application.
  • lister les tables au format HFSQL Classic sur lesquelles la modification automatique va être effectuée. Il sera alors possible d'ajouter à cette liste:
    • des tables supplémentaires.
    • des répertoires supplémentaires contenant des tables.
  • spécifier des répertoires supplémentaires contenant des tables au format Hyper File 5.5 qui ne sont pas trouvées automatiquement lors de la mise à jour.
Remarques:
  • Lors de la mise à jour, les tables automatiquement trouvées sont:
    • les tables présentes dans le répertoire d'installation de l'application.
    • les tables listées dans le fichier ".REP". Pour plus de détails sur le fichier ".REP", consultez l'aide sur la gestion du .REP.
  • Pour empêcher l'utilisateur d'accéder aux options de configuration de la modification automatique, l'éditeur d'installation WDInst permet de rendre invisible le bouton "Avancé" du programme d'installation.
iPhone/iPadHFSQL ClassicHFSQL Client/Serveur iPhone et iPad
La fonction HModifieStructure permet d'effectuer une modification automatique des tables installées sur l'iPhone ou l'iPad. Il est conseillé d'utiliser cette fonction dans le code d'initialisation du projet.
Notes

Exécuter plusieurs fois la modification automatique des tables

Si la modification automatique est effectuée sur des données déjà à jour, cette modification n'aura aucune incidence sur l'application.
WINDEVWEBDEV - Code ServeurWindowsHFSQL ClassicHFSQL Client/ServeurHyper File 5.5

Configuration par défaut du programme d'installation

Si l'application est associée à un schéma des données, par défaut, le programme d'installation propose à l'utilisateur d'effectuer la modification automatique des tables. L'utilisateur peut accéder aux options de configuration de la modification automatique en cliquant sur le bouton "Avancé".

Sauvegarde des tables

Avant d'exécuter la modification automatique, les tables de l'application sont automatiquement sauvegardées. Les répertoires de sauvegarde sont nommés:
  • "Sauvegarde Modif Auto (<DateModifAuto> <HeureModifAuto>)" s'il s'agit d'une modification automatique des tables au format Hyper File 5.5 ou HFSQL Classic.
  • "Tables avant conversion (<DateModifAuto> <HeureModifAuto>)" s'il s'agit d'une migration des tables de Hyper File 5.5 vers HFSQL Classic.
WINDEVWEBDEV - Code ServeurWindowsHFSQL ClassicHFSQL Client/ServeurHyper File 5.5

Forcer la modification automatique des tables

Il est possible à tout moment de lancer une modification automatique des tables sur le poste de développement.
En effet, dans certains cas, la modification automatique des données peut ne pas être réalisée correctement: tables présentes sur un ordinateur portable non connecté au réseau au moment de la mise à jour, mise à jour défectueuse, ... Il est alors nécessaire de forcer la modification automatique des données pour pouvoir utiliser l'application. Il est nécessaire d'utiliser l'outil WDModFic. Pour plus de détails sur cet outil, consultez WDModFic: Outil de modification automatique des tables.

Schéma des données partagés entre différentes application et sites

Dans le cas d'un schéma des données partagé entre plusieurs applications ou sites, par défaut après la modification automatique des tables il est nécessaire de mettre à jour tous les exécutables et sites qui partagent le schéma des données. Il est cependant possible d'autoriser une application ou un site à utiliser une description de table plus récente, grâce à la fonction HVérifieStructure.
Modification des tables "à chaud"
La modification des tables peut être effectuée même si des applications accèdent à ces tables.
Pendant la modification des tables, les différentes applications manipulant les tables continuent de fonctionner.
L'application cessera de fonctionner dans le cas où les modifications sont incompatibles (suppression de clé, suppression de clé unique, suppression des identifiants, suppression de table ou de rubriques, modification du format d'une rubrique...)
Dès le premier accès à une table dont la structure est incompatible, une erreur indiquant que la structure de la table est différente de celle du schéma des données sera retournée.
Dans le cas d'ajout de rubrique, d'ajout de clé, d'ajout de tables, l'application continuera à fonctionner normalement (sauf si la fonction HVérifieStructure a été employée avec la constante hIdentique).

Droits d'accès à la table

La modification des tables provoque la recréation de la table sur disque. Dans un système d'allocation gérant les droits au niveau des tables (NTFS...), la table après modification automatique aura donc les droits du répertoire auquel elle appartient.
Si avant la modification automatique la table avait des droits particuliers différents de ceux du dossier, il est nécessaire de les redéfinir au niveau de Windows après la modification.

Limitation

La modification automatique des tables fonctionne uniquement pour les tables ayant des index.
Rappel: il est possible de créer des tables ne possédant pas de rubrique de type Index.
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 27/03/2025

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