Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Update 2 or more CA cursors
Message
De
11/10/2010 22:07:45
James Blackburn
Qualty Design Systems, Inc.
Kuna, Idaho, États-Unis
 
 
À
11/10/2010 21:30:06
Information générale
Forum:
Visual FoxPro
Catégorie:
Autre
Versions des environnements
Visual FoxPro:
VFP 9 SP1
Divers
Thread ID:
01484765
Message ID:
01484901
Vues:
29
>Naomi,
>
>>I understand the pcinciple, but if you can post the code of your subclass, it will be most helpful.
>
>I am in a public computer now, but my codes goes something like this...
>
>In my DE subclass, I have the following methods: BeginTrans(), CommitTrans(), RollBackTrans(), SaveTrans().
>
I am not sure this is a good idea. If you turn off automatic transactions then the "begin transaction" is automatic. Then all you need to do is either sqlcommit() or sqlrollback(). What you are doing is nesting transactions which I don't think is a good idea especially if you don't do a sqlcommit() at the end.

>
>BeginTrans()
>= SQLEXEC( This.DataSource, "BEGIN TRANSACTION" )
>
>CommitTrans()
>= SQLEXEC( This.DataSource, "COMMIT" )
>
>RollbackTrans()
>= SQLEXEC( This.DataSource, "ROLLBACK" )
>
>SaveTrans()
>* loop thru each CA object 
>* dump into a Collection oCursors
>
>llCommit = .T.
>
>FOR EACH loCursor IN oCursors
>   IF NOT loCursor.Save()
>       llCommit = .F.
>   ENDIF
>ENDFOR
>
>IF llCommit
>    This.CommitTrans()
>ELSE
>   This.RollBackTrans()
>ENDIF
>
>
>
>HTH,
>
>Dennis
>
>
>
>
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform