> >
> > Ah - that was what I was missing. If it is for management, then the cross tab thing would work. Just build your CREATE CURSOR command on the fly:
> >
> >
> > *** Totally untested code ***
> > lcCreateCursorCmd = "CREATE CURSOR MyOptionsGridCursor (OptionName C(20), OptionID I"
> > SELECT * FROM Models WHERE llFilterOutTheObsoleteModles INTO CURSOR Junk
> > SCAN
> > lcCreateCursorCmd = lcCreateCursorCmd + ;
> > ", Mdl" + ALLTRIM(TRANSFORM(Junk.RecordID))+" L "
> > ENDSCAN
> > USE IN SELECT( [Junk] )
> > lcCreateCursorCmd = lcCreateCursorCmd + ")"
> > &lcCreateCursorCmd
> > SELECT OptionName, RecordID FROM Options WHERE llFilterOutObsoleteOptions INTO CURSOR Junk
> > SELECT Junk
> > SCAN
> > INSERT INTO MyOptionsGridCursor (OptionName, OptionID) VALUES (Junk.OptionName, Junk.RecordID)
> > ENDSCAN
> >
> >
> > This will give you a cross tab cursor with a logical field for each model plus an options name and ID field. Is this what you were looking for?
> >
> > Ken
> > You shall know the truth - and the truth shall set you free. (John 8:33)
>
>
> I will see if I can make your example work.
> After thinking about it more I think I might have to have them do this one model at a time since there are over 100 models. The grid would be to large to be effective. I think a grid to list all the options with check marks for one model at a time would work and be easier to use and program. ?
I think you are right. Use a dropdown for the model and then a grid for the options. (I would use a multi-select list instead, but that is simply a matter of taste.)
Ken
You shall know the truth - and the truth shall set you free. (John 8:33)