Subject |
Re: begintrans() |
From |
Mervyn Bick <invalid@invalid.invalid> |
Date |
Tue, 6 Dec 2022 11:49:35 +0200 |
Newsgroups |
dbase.getting-started |
On 2022/12/06 11:18, Mustansir Ghor wrote:
..
> However, Below text is copied from dbase help. Here why is the command form.rowset.parent.database.begintrans() and not form.database.begintrans()
>
> try
> form.rowset.parent.database.beginTrans( ) // Begin the transaction
> form.rowset.parent.database.commit( ) // If you got this far, there were no
> catch ( Exception e ) // The parameter receives the Exception object that describes
> form.rowset.parent.database.rollback( ) // Undo any changes that did take
> endtry
>
Although it's not usual, a form may have more than one database object
and each database object may have more than one query (and as a result
more than one rowset) associated with it.
If you know which database associated with the query, and hence the
rowset you are working with, then by all means use
form.oDatabase.begintrans()
Although a form may have several rowsets in play only one can be
assigned to the form's rowset property.
Example code in the help file needs to be fairly universal. In this
case the author is using the rowset assigned to the form's rowset
property. He does not, therefore, need to name the query. By working
back up the "parentage" the author also specifies the correct database
without needing to know it's actual name.
If you need to work with a rowset not assigned to the form's rowset
property then you need to specify the rowset in the command if you don't
specify the actual database.
form.MyDatabase1.begintrans()
or
form.customers1.rowset.parent.database.beginTrans( )
Mervyn.
|
|