>PROCEDURE ChangeGridSource >LPARAMETERS tcNewRecordSource >LOCAL lnSelObjectCount, loGridRef, lnCnt >LOCAL ARRAY laSelectedObject[1], laColumnSources[1] >lnSelObjectCount = ASELOBJ(laSelectedObject) >IF lnSelObjectCount = 0 > WAIT WINDOW 'Select a grid in Form Designer first' nowait > RETURN >ENDIF >loGridRef = laSelectedObject[1] >IF loGridRef.BaseClass <> 'Grid' > WAIT WINDOW 'One Grid object must be selected' nowait > RETURN >ENDIF >IF loGridRef.ColumnCount>0 > DIMENSION laColumnSources[loGridRef.ColumnCount] > FOR lnCnt = 1 TO loGridRef.ColumnCount > laColumnSources[lnCnt] = JUSTEXT(loGridRef.Columns(lnCnt).controlsource) > NEXT >ENDIF >loGridRef.RecordSource = tcNewRecordSource >FOR lnCnt = 1 TO loGridRef.ColumnCount > IF !EMPTY(laColumnSources[lnCnt]) > loGridRef.Columns(lnCnt).ControlSource = tcNewRecordSource+'.'+laColumnSources[lnCnt] > loGridRef.Columns(lnCnt).setall('ControlSource',tcNewRecordSource+'.'+laColumnSources[lnCnt]) > ENDIF >NEXT > >>