I know it's not specifically what you're asking but I would avoid using this:-
gConnect_Access.BeginTrans
like the plague in a multi-user system. If you begin a transaction from the client and then your program crashes (or the tea lady kicks the plug out) before you issue a commit or rollback this can leave open transactions against the database. That can lead to all sorts of problems like tables being left locked and other user being unable to work.

We set a rule, if we're going to open a transaction we do it in a Sproc (we using SQL Server) and we close it in the same sproc. That way we can be sure that transactions are never left floating (unless the tea lady kicks the plug out of the server, in which case we've got bigger problems).