DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Gestion des bases de données / HFSQL / Fonctions HFSQL
  • Exemple 1 : Ajout d'un enregistrement dans un fichier Client
  • Exemple 2 : Transfert des enregistrements entre un fichier de données et son alias
Exemple 1 : Ajout d'un enregistrement dans un fichier Client
WINDEVJavaHFSQL ClassicHFSQL Client/ServeurHyper File 5.5OLE DBConnecteurs Natifs (Accès Natifs) La fiche client est affichée à l'écran. La fonction EcranVersFichier permet de charger les valeurs saisies en mémoire.
// Ajout d'un enregistrement dans un fichier client
EcranVersFichier()
SI HAjoute(CLIENT) = Faux ALORS
Erreur("Impossible d'ajouter le client")
FIN
Exemple 2 : Transfert des enregistrements entre un fichier de données et son alias
WINDEVJavaHFSQL ClassicHFSQL Client/ServeurHyper File 5.5OLE DBConnecteurs Natifs (Accès Natifs) Un fichier "Client" est créé ainsi que son alias.
Dans le fichier CLIENT, un nouvel enregistrement est créé en fixant l'identifiant automatique (IDCLIENT) à 1001.
Dans l'alias ALIASCLIENT, la gestion des identifiants automatique par défaut est conservée : l'identifiant automatique démarre à 1.
Les enregistrements sont copiés de l'alias au fichier CLIENT grâce à la fonction HCopieEnreg. L'identifiant automatique de l'enregistrement est conservé lors de la copie (constante hCopieIdAuto). L'enregistrement copié est alors ajouté au fichier CLIENT. Les risques de doublons sont minimisés.
// Création du fichier de données CLIENT
HCréation(CLIENT)
// Affectation de l'identifiant automatique
CLIENT.IDCLIENT = 1001
// Ajout d'un enregistrement dans le fichier de données Client
// sans calcul de l'identifiant automatique
// On réserve les 1000 premiers enregistrements
SI HAjoute(CLIENT, hFixeIDAuto) = Faux ALORS
Erreur("Impossible d'ajouter le client")
// Détailler l'erreur en testant
// HErreurDoublon, HErreurIntégrité
// HErreurBlocage
FIN
// Création de l'alias
HAlias(CLIENT, ALIASCLIENT)
HCréation(ALIASCLIENT)
// Ajout d'enregistrements dans l'alias ALIASCLIENT
// (l'identifiant automatique sera égal à 1)
SI HAjoute(ALIASCLIENT) = Faux ALORS
  Erreur("Impossible d'ajouter le client")
  // Détailler l'erreur en testant
// HErreurDoublon, HErreurIntégrité
  // HErreurBlocage
FIN
 
// Autres ajouts
...
 
// Copie des clients de ALIASCLIENT dans CLIENT
i est un entier = 1
HLit(ALIASCLIENT, i)
// Copie de l'enregistrement
// tant que des enregistrements sont présents dans l'alias
// et que l'identifiant ne dépasse pas 1000
TANTQUE PAS HEnDehors(ALIASCLIENT) ET ALIASCLIENT.IDClient < 1001
  // Copie l'enregistrement de ALIASCLIENT dans CLIENT
  HCopieEnreg(CLIENT, ALIASCLIENT, hCopieIDAuto)
  // Ajout de l'enregistrement
  SI HAjoute(CLIENT, hFixeIDAuto) = Faux ALORS
Erreur("Impossible d'ajouter le client")
// Détailler l'erreur en testant
// HErreurDoublon, HErreurIntégrité
// HErreurBlocage
FIN
  // Prochain enregistrement de l'alias
  i++
  HLit(ALIASCLIENT, i)
FIN
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

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