DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

PV

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
PHPHFSQL 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
ÉcranVersFichier()
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
HFSQL 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