I agree I would start with Open Database and Set Database To.
>>Here's the code that I originally had in there. I am at home, so I don't have all of the current code.
>>
>>
>>This.Cursor2.Database="e:\proddata\prodschd.dbc"
>>This.Cursor3.Database="e:\proddata\prodschd.dbc"
>>This.Cursor4.Database="e:\proddata\prodschd.dbc"
>>This.Cursor5.Database="e:\proddata\prodschd.dbc"
>>
>>This.Cursor1.CursorSource="E:\ProdData\Desc.dbf"
>>This.Cursor2.CursorSource="E:\ProdData\Carbon.dbf"
>>This.Cursor3.CursorSource="E:\ProdData\D3dept.dbf"
>>This.Cursor4.CursorSource="E:\ProdData\Deltodpt.dbf"
>>This.Cursor5.CursorSource="E:\ProdData\Inst1.dbf"
>>
>
>Maybe .beforeopentables() is too late, and the tables are already open? You may check for used("desc"), used("carbon") etc, also dbf("desc") _before_ this code runs, just to see whether the tables are open or not.
>
>I remember there was a trick to this, and I even remember which app it was where I wrote it... eight years ago, and I got it on my disk, but it seems to be the wrong version... so I have only hunches on what to try. Um... also try to Open database "e:\proddata\prodschd.dbc" and Set Database To prodschd before opening.
>
>If everything else fails, set your DE to .autoopentables=.f., set your cursors' properties as you said here, then call whatever there is to open the tables, i.e. force open when you say so, not before.