Just one comment --

Don't forget to DBUNLOCK *after* your call to either DBXEND or DBXUNDO


Brian.

On Wed, 1 Jun 2005 17:02:10 -0400, Olav Kappert <[log in to unmask]> wrote:

>Image question using Cobol.
>
>~~~~~
>i have 2 dbs (A & B).
>each db has 10 sets (1 master & 9 details).
>
>Open both db in mode 1 with concurrent read/modify (modes 1, 5)
>
>Using dbA master, retrieve chained entries in the other 9 details (not
>all DS have a related detail).
>
>Add master entry to dbB and add entries to respective ds in dbB.
>
>Delete details and master form dbA.
>
>All the above must be executed with dynamic rollback (DBXUNDO).
>~~~~~
>
>My thoughts......
>
>Make a call to DBLOCK (entry lock) for each detail ds of dbA followed by
>DBLOCK (ds lock) for the master of dbA.
>
>Next DBLOCK (ds lock) for dbB and DBLOCK (entry lock) for each of the
>details of dbB.
>
>DBXBEGIN
>perform add master to dbB
>perform add details to dbB
>perform delete details from dbA
>perform delete master from dbA
>DBXEND
>
>if there are any errors perform DBXUNDO and go onto the next record.
>~~~~~
>
>ANY COMMENTS.
>
>Olav.
>
>* To join/leave the list, search archives, change list settings, *
>* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *

* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *