******************************************************************** * Description.......: ChangeGridSource - allows to change grid's record source in design-time * Calling Samples...: * Parameter List....: tcNewRecordSource * Created by........: Dorin Vasilescu #039247 * Modified by.......: ******************************************************************** PROCEDURE ChangeGridSource LPARAMETERS tcNewRecordSource LOCAL lnSelObjectCount, loGridRef, lnCnt LOCAL ARRAY laSelectedObject[1], laColumnSources[1] lnSelObjectCount = ASELOBJ(laSelectedObject) IF m.lnSelObjectCount = 0 WAIT WINDOW 'Select a grid in Form Designer first' nowait RETURN ENDIF if vartype(m.tcNewRecordSource)<>"C" tcNewRecordSource = rbInputBox('Type New RecordSource for grid','New Record Source','BldMstr') endif if empty(m.tcNewRecordSource) return .f. 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[m.lnCnt] = JUSTEXT(loGridRef.Columns(lnCnt).controlsource) NEXT ENDIF loGridRef.RecordSource = m.tcNewRecordSource FOR lnCnt = 1 TO loGridRef.ColumnCount IF !EMPTY(laColumnSources[m.lnCnt]) loGridRef.Columns(m.lnCnt).ControlSource = m.tcNewRecordSource+'.'+laColumnSources[lnCnt] loGridRef.Columns(m.lnCnt).setall('ControlSource',m.tcNewRecordSource+'.'+laColumnSources[m.lnCnt]) ENDIF NEXT>I have a data file TRANSACTIONS1 that is handled with a Grid called Grid1.