PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2024 → Transaction sur C/S HF: au secours un exemple
Transaction sur C/S HF: au secours un exemple
Iniciado por braun, 15,jul. 2005 20:03 - 10 respuestas
Publicado el 15,julio 2005 - 20:03
Transaction sur C/S HF: je recherche un tout petit exemple style j'envoie un hajoute ou hmodifie ou placer la transaction.
Publicado el 16,julio 2005 - 12:02
Les transactions ne sont pas opérationnelles sur la base hyperfile C/S.

Christian

braun avait écrit le 15/07/2005 :
Transaction sur C/S HF: je recherche un tout petit exemple style j'envoie un
hajoute ou hmodifie ou placer la transaction.


--
Ceci est une signature automatique de MesNews.
Site : http://www.mesnews.net
Publicado el 16,julio 2005 - 15:06
Non c'est de l'histoire. PCSOFT C/S HF gere depuis le 13/7/05 la transaction c'est en effet une bonne nouvelle.
Publicado el 17,julio 2005 - 12:43
oui, tu as entièrement raison, Braun.

Perso, j'ai une appli en HF classique, mais je pense que les instructions de transaction sont les mêmes qu'en C/S.

Alors, j'ai une procédure (pl_validation) que j'appelle lorsque je veux valider les données.

Dans cette procédure j'ai tout d'abbord une instruction de démarrage de la transaction :

HTRANSACTIONDEBUT

tout ce qui sera fait à partir de maintenant ne sera effectif qu'à la fin de la transaction.

Ensuite, un ECRANVERSFICHIER
puis HMODIFIE (ou HAJOUTE...)

puis, un HTRANSACTIONFIN (c'est cette instruction qui valide la transaction).

Bien entendu, ceci est un résumé, il faut faire des vérifications à chaque instructions...

A noter : bien faire attention à supprimer la transaction (HTRANSACTIONANNULE) en cas de problème quelconque, sinon, elle reste "ouverte".

Perso, je fais aussi un HTRANSACTIONANNULE à l'ouverture de ma page.

Si tu veux d'autres renseignements, pas de problèmes, tu peux m'écrire.
Publicado el 17,julio 2005 - 20:06
Géré uniquement par une version n'ayant pas passé le niveau 2 de controle, donc déconseillée pour la diffusion.
Cependant cela ne change au principe de fonctionement des transactions, il suffit encore une fois d'étudier la documentation, qui n'est pas mal faite, et éventuellement de faire les exercices d'auto formation. Au pire, un peu de réflexion....
Publicado el 18,julio 2005 - 10:55
appelle le support...

"braun" <medow@inter.net.il> a écrit dans le message de news:
42d7d360$1@news.pcsoft.fr...
Transaction sur C/S HF: je recherche un tout petit exemple style j'envoie
un hajoute ou hmodifie ou placer la transaction.

Publicado el 18,julio 2005 - 11:53
Je te remercie pour ta reponse, dans la nouvelle aide de Windev9 j'ai trouve ceci.
Mais je pense que il faut comprendre dans Quand Exception Dans Hajoute le hajoute n'a pas ete execute est on fini la transaction puis on l'annule.

Si j'ai bien compris l'utilisation de Quand Exception dans semble parfaite dans ce cas.



HTransactionDebut ("C:\Temp\Transaction.trs","Person")


Person.Identite=Nom

hajoute(Person)

HTransactionFin()
HTransactionAnnule()

QUAND EXCEPTION DANS
HAjoute(Commande) // ajout de la commande
HTransactionFin() // validation de l'ajout
FAIRE
HTransactionAnnule() // suppression des lignes de commandes
FIN



Qu'en pensez-vous est-ce une bonne solution pour un Hajoute. Car si on fait dans l'exception un HtransactionFin comme l'Hajoute n'a pas fonctionne, c'est parfait.
Publicado el 18,julio 2005 - 12:26
HTransactionDebut ("C:\Temp\Transaction.trs","Person")

??
C'est en C/S .
La transaction est gérée coté Client ????


Sébastien
Publicado el 18,julio 2005 - 12:38
Oui la transaction est gere cote client. J'utilise la nouvelle version 34i de Windev9.
Bien qu'en Beta, elle sera je pense rapidement certifie. Je ne suis pas a un ou deux mois pres.
Je pense que c'est correct de mettre le C:temp dans le debut de transaction ou alors l'envoyer sur le serveur?
Publicado el 18,julio 2005 - 13:25
> Je pense que c'est correct de mettre le C:temp dans le debut de
transaction ou alors l'envoyer sur le serveur?

Logiquement sur un Moteur de base de données, c'est justement le moteur
qui gère la transaction non ?
Comment cela fonctionne dans ce cas ?


Sébastien
Publicado el 19,julio 2005 - 00:03
Les opérations sur les fichiers HF classique sont gérées sur le client.
Les opérations sur des fichiers C/S sont gérées sur le serveur. (voir le repertoire __TRS et la doc)