Caroline,
Will the following code use the INDEX (see InteractiveChange() method)?
form_Task.scx
===============
Init()
SELECT ti_num, ti_type, ti_brief, ti_task, ti_incr, ti_rev, ti_id ;
FROM DD_TASKINFO ;
INTO CURSOR DD_TASKINFOGrd
INDEX ON ti_num TO ti_num
Thisform.grdSrch.RecordSource = "DD_TASKINFOGrd"
Thisform.grdSrch.COLUMN1.ControlSource = "DD_TaskINFOGrd.ti_num"
Thisform.grdSrch.COLUMN2.ControlSource = "DD_TaskINFOGrd.ti_brief"
Thisform.grdSrch.COLUMN3.ControlSource = "DD_TaskINFOGrd.ti_rev"
Thisform.grdSrch.COLUMN4. ....
Thisform.grdSrch.COLUMN5. ....
Thisform.grdSrch.COLUMN6. ....
Thisform.grdSrch.COLUMN7. ....
*!*// Adjoining TextBox for incremental search of Grid
txtSrch.InteractiveChange()
SELECT DD_TASKINFOGrd
WITH thisform
=SEEK(.txtSrch.value)
IF EOF()
GO BOTTOM
ENDIF
.grdSrch.valid()
ENDWITH
Don