>>If you create a cursor in the Form.Load event, it will be available when the grid instanciates. I do this all the time, and retain grid property settings. Just remember to blank out the recordsource before recreating the cursor on the fly, and set it back afterwards.
>
>Thanks. I did just this way and my grid is working well.
>
>One other question: anyway to pass the cursor to the main app where I have a method to do a batch update in DS 1? I tried passing DBF("curUHSTAT") and when I tried to open it in the goApp method it said that the table was being used exclusively (which make sense).
>
You can't pass a cursor. You can switch datasessions to make it visible to other processes with SET DATASESSION, but every time I have seen somebody tryingto use this, its because of a funky design. If you create the object that manipulates the data from an object that lives in the datasession, then the created object will live in that datasession, and have full access to its contents. Having to SET DATASESSION to see cursors in different areas is sort of like, IMHO, using public variables. If your variables are created in the right routines in the first place, you don't need them to be public.
Erik Moore
Clientelligence