>Ok, thanks, I think I get the point. I'll consider that approach if I rearrange some portions of code.
One thing to beware is that though having a separate session is nice, because it is giving you isolation, it is also bad, becouse it is giving you isolation. This means that when you instantiate a new session, all the previously opened tables, cursors, whatever - are inaccessible. You may only pass the full dbf() name across session boundaries, but then it may not help much if you run into a 'only-in-memory' cursor. Proverbially, "you cross the bridge for free, but pay to cross the river". Depending on what you need... use it or not.