ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

This content has been translated automatically.  Click here  to view the French version.
Help / WLanguage / Managing databases / HFSQL / HFSQL functions
  • Example 1: Adding a record to a customer data file
  • Example 2: Transferring records between a data file and its alias
Example 1: Adding a record to a customer data file
HFSQL ClassicHFSQL Client/ServerNative Connectors (Native Accesses) The customer form is displayed on the screen. ScreenToFile is used to load the values entered in memory.
// Ajout d'un enregistrement dans un fichier de données client
ScreenToFile()
IF HAdd(CLIENT) = False THEN
	Error("Impossible d'ajouter le client")
END
Example 2: Transferring records between a data file and its alias
HFSQL ClassicHFSQL Client/ServerNative Connectors (Native Accesses) A "Customer" data file is created, along with its alias.
In the "Customer" data file, a new record is created by setting the automation identifier (IDCLIENT) to 1001.
In the ALIASCLIENT alias, the default automatic identifier management is retained: the automatic identifier starts at 1.
Records are copied from the alias to the "Client" data file using the function HCopyRecord function.. The Record's automation ID is retained during copying (constant hCopieIdAuto). The copied record is then added to the "Client" data file. The risks of duplicates are minimized.
// Création du fichier de données CLIENT
HCreation(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
IF HAdd(CLIENT, hSetIDAuto) = False THEN
	Error("Impossible d'ajouter le client")
	// Détailler l'erreur en testant 
	// HErreurDoublon, HErreurIntégrité
	// HErreurBlocage
END
// Création de l'alias
HAlias(CLIENT, ALIASCLIENT)
HCreation(ALIASCLIENT)
// Ajout d'enregistrements dans l'alias ALIASCLIENT 
// (l'identifiant automatique sera égal à 1)
IF HAdd(ALIASCLIENT) = False THEN
   	Error("Impossible d'ajouter le client")
   	// Détailler l'erreur en testant 
	// HErreurDoublon, HErreurIntégrité
   	// HErreurBlocage
END

// Autres ajouts
...

// Copie des clients de ALIASCLIENT dans CLIENT
i is int = 1
HRead(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
WHILE NOT HOut(ALIASCLIENT) AND ALIASCLIENT.IDClient < 1001
   	// Copie l'enregistrement de ALIASCLIENT dans le fichier de données CLIENT
   	HCopyRecord(CLIENT, ALIASCLIENT, hCopyAutoID)
   	// Ajout de l'enregistrement
   	IF HAdd(CLIENT, hSetIDAuto) = False THEN
		Error("Impossible d'ajouter le client")
		// Détailler l'erreur en testant 
		// HErreurDoublon, HErreurIntégrité
		// HErreurBlocage
	END
   	// Prochain enregistrement de l'alias
   	i++
   	HRead(ALIASCLIENT, i)
END
Minimum version required
  • Version 9
This page is also available for…
Comments
Example
If Hadd(Customers) = true

toastdisplay("Gravou com sucesso")

else

info("Erro inesperador! "+ herrorinfo() + error())

end

/// or

ok is boolean = Hadd(Customers)
Boller
18 Jul. 2020
Duplicar Registros
//Duplicar Registros

Nessa aula vou mostrar como eu faço para duplicar Registros

pedido.data_emissao=DateSys()
HAdd(pedido)
TableDisplay(TABLE_Pedido)

//Blog com Video e Exemplo

http://windevdesenvolvimento.blogspot.com.br/2016/10/aula-930-windev21-curso-246-dica.html

https://www.youtube.com/watch?v=gbFkTcVYeTA
De matos
04 Oct. 2016

Last update: 03/27/2025

Send a report | Local help