Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19.8
dataStore.startTransaction( )
|
dataStore.startTransaction () | ||||||||
Ne requiert pas de paramètre | ||||||||
Toute modification apportée aux entités du datastore dans le processus de la transaction est temporairement stockée jusqu'à ce que la transaction soit validée ou annulée.
Note : Si cette méthode est appelée sur le datastore principal (c'est-à-dire le datastore renvoyé par la commande ds), la transaction est appliquée à toutes les opérations effectuées sur le datastore principal et sur la base de données sous-jacente, y compris ORDA et les langages classiques.
Vous pouvez imbriquer plusieurs transactions (sous-transactions). Chaque transaction ou sous-transaction doit être annulée ou validée. A noter que si la transaction principale est annulée, toutes ses sous-transactions le sont également, même si elles avaient été validées individuellement à l'aide de la méthode dataStore.validateTransaction( ).
C_OBJET($connect;$ds;$person;$status)
C_TEXTE($choice)
C_BOOLEEN($error)
Au cas ou
:($choice="local")
$ds:=ds
:($choice="remote")
$connect:=Creer objet("hostname";"111.222.3.4:8044")
$ds:=Ouvrir datastore($connect;"myRemoteDS")
Fin de cas
$ds.startTransaction()
$person:=$ds.Persons.query("lastname=:1";"Peters").first()
Si($person#Null)
$person.lastname:="Smith"
$status:=$person.save()
Fin de si
...
...
Si($error)
$ds.cancelTransaction()
Sinon
$ds.validateTransaction()
Fin de si
dataStore.cancelTransaction( )
dataStore.validateTransaction( )
DEBUT TRANSACTION
Produit : 4D
Thème : ORDA - DataStore
Nom intl. : dataStore.startTransaction( )
Créé : 4D v18
4D - Langage ( 4D v19)
4D - Langage ( 4D v19.1)
4D - Langage ( 4D v19.4)
4D - Langage ( 4D v19.5)
4D - Langage ( 4D v19.6)
4D - Langage ( 4D v19.7)
4D - Langage ( 4D v19.8)