PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Manipulations d'enregistrements pendant une transaction
  • Transactions et contexte HFSQL indépendant
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Permet de savoir si une transaction a été interrompue (la transaction n'a été ni validée, ni annulée). Les caractéristiques de la transaction interrompue peuvent être connues grâce à des variables HFSQL.
Il est conseillé d'utiliser cette fonction dans le code d'initialisation du projet. Si la transaction est interrompue, il est par exemple possible :
  • HFSQL soit de lancer WDTRANS ou WDOptimiseur.
  • HFSQL Client/Serveur soit de lancer le Centre de Contrôle HFSQL.
  • soit d'annuler la transaction par programmation.
HFSQL Client/Serveur Cette fonction est utile principalement si des transactions ont été interrompues sur des fichiers de données protégés par mots de passe.
Versions 17 et supérieures
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Nouveauté 17
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Versions 18 et supérieures
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Nouveauté 18
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
AndroidWidget AndroidiPhone/iPadWindows Mobile La gestion des transactions est disponible uniquement pour les bases de données HFSQL Client/Serveur.
Versions 20 et supérieures
Java Cette fonction est désormais disponible pour les applications Java.
Android Cette fonction est désormais disponible pour les applications Android.
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Nouveauté 20
Java Cette fonction est désormais disponible pour les applications Java.
Android Cette fonction est désormais disponible pour les applications Android.
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Java Cette fonction est désormais disponible pour les applications Java.
Android Cette fonction est désormais disponible pour les applications Android.
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Remarque : A partir de la version 19, HFSQL est le nouveau nom de HyperFileSQL.
Versions 21 et supérieures
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Nouveauté 21
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Exemple
SI HTransactionInterrompue("") = Vrai ALORS
        HTransactionAnnule()
FIN
Syntaxe
<Résultat> = HTransactionInterrompue([<Nom du fichier de transaction>])
<Résultat> : Booléen
  • Vrai si une transaction a été interrompue,
  • Faux si aucune transaction n'a été interrompue. Les variables HFSQL suivantes sont mises à jour :
    H.TrsIdInterneValeur si la transaction a été interrompue : Numéro interne identifiant de manière unique la transaction.
    Valeur si la transaction n'a pas été interrompue : -1
    H.TrsPosteValeur si la transaction a été interrompue : Identifiant défini par la fonction HPoste ou nom de la machine à partir de laquelle la transaction a été lancée.
    Valeur si la transaction n'a pas été interrompue : Chaîne vide ("")
    H.TrsNomMachineValeur si la transaction a été interrompue : Nom du poste client et adresse IP du poste Client.
    Valeur si la transaction n'a pas été interrompue : Chaîne vide ("").
    Remarque : Cette variable est disponible uniquement en mode HFSQL Client/Serveur.
    H.TrsNomApplicationValeur si la transaction a été interrompue : Nom de l'application sous la forme : Nom de l'exécutable(Nom du projet).
    Valeur si la transaction n'a pas été interrompue : Chaîne vide ("").
    Remarque : Cette variable est disponible uniquement en mode HFSQL Client/Serveur.
<Nom du fichier de transaction> : Chaîne de caractères optionnelle (entre guillemets)
Nom complet du fichier de transaction (utilisé pour enregistrer les opérations réalisées en transaction). Ce fichier est automatiquement détruit lors de l'utilisation des fonctions HTransactionFin ou HTransactionAnnule.
Si ce nom correspond à une chaîne vide ("") ou n'est pas précisé, le fichier de transaction utilisé est le fichier de transaction par défaut (dans le répertoire de l'application avec pour nom : <Nom Projet>_$TRS_OPERATION.trs).
HFSQL Client/Serveur Ce paramètre n'est pas pris en compte pour les transactions Client/Serveur, mais uniquement pour les transactions HFSQL Classic.
Remarques

Manipulations d'enregistrements pendant une transaction

Pendant une transaction, il est nécessaire de suivre certaines règles lors de la manipulation des enregistrements. Pour plus de détails, consultez Transactions : Manipuler les enregistrements lors d'une transaction.

Transactions et contexte HFSQL indépendant

Lors de la copie de contexte, si une transaction est en cours sur le premier contexte, le nouveau contexte n'est pas en transaction. Il faut rappeler la fonction HTransactionDébut pour démarrer une transaction dans le nouveau contexte.Lors de la copie de contexte, si une transaction est en cours sur le premier contexte, le nouveau contexte n'est pas en transaction. Il faut rappeler la fonction HTransactionDébut (ou la fonction HTransaction) pour démarrer une transaction dans le nouveau contexte.
Composante : wd240hf.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Type de variable Connexion
Si vous déclarez une variable de type Connexion en globale avant le HTransactionInterrompue(..) et que vous n'utilisez pas cette variable à chaque fois (HF Classic ou HF C/S), la fonction vous renvoie une erreur si tous les paramètres de la connexion ne sont pas renseignés.

Mais cela veut dire (non testé), que la fonction se serait connectée sur le HF C/S dans tous les cas ?
lo²
15 mar. 2016