Sur l'AS/400, la gestion de transactions est gérée au travers d'un journal d'activités placé sur l'AS/400.
Pour gérer les transactions sur un fichier AS/400, il faut auparavant créer un fichier destiné à recevoir le journal (CRTJRNRCV puis CRTJRN), puis démarrer la journalisation sur chaque fichier (STRJRNPF).
En mode natif il ne faut pas utiliser la fonction HTransactionDébut mais SQLTransaction.
La connexion doit bien sûr être ouverte avant le début de la transaction.
Les fonctions de WinDev SQLTransaction agissent directement dans le journal de l'AS/400.
Tous les fichiers concernés doivent être journalisés et la description de chaque fichier doit contenir dans les infos étendues l'option suivante :
<EASYCOM>
JOURNALED=TRUE
</EASYCOM>
Remarque : par défaut l'importation des DDS met automatiquement à jour cette option, il est possible de désactiver ce fonctionnement avec l'option AUTOJOURNAL des infos étendues de la connexion.
La transaction est annulée en cas d'erreur fatale ou d'arrêt du programme.
Commencer une transaction : SQLTransaction(SQLDébut)
Valider la transaction (COMMIT) : SQLTransaction(sqlFin)
Annuler la transaction (ROLLBACK) : SQLTransaction(sqlAnnule)