nSessionId=ThisForm.DataSessionID oForm=createobject("AddMilestone") set datasession to oForm.DataSessionId use Milepick order milestone set filter to Milepick.MileId<>999 *oForm.lstMilestones.RowSource="Milepick.milestone" oForm.lstMilestones.FirstElement=1 oForm.lstMilestones.RowSourceType=6 oForm.lstMilestones.Value=1 oForm.Show() oForm.Activate() *read events nId=oForm.nMileId use in Milepick oForm.Release() set datasession to nSessionID if nId=0 =Messagebox("Milestone addition cancelled.",16,"Notice...") return 0 endif dimension AddMile(1,5) AddMile(1,1)=R6Snc.PWS_ID AddMile(1,2)=R6Enf1.EnfId AddMile(1,3)=nId AddMile(1,4)=R6Enf1.Act_Type AddMile(1,5)=R6Enf1.Docket_1 Insert into R6Mile from array AddMile =TableUpdate(.t.,.t.,"R6Mile") ThisForm.Refresh()I have tried it with and without the "READ EVENTS", trying to set the RowSource in the listbox causes a "Syntax Error" but commenting it out still allows the RowSource to come from the field I want.