So I recentley implemented a "flag" system for my database.

There's a "People" table, and then there's a "People Flags" table.

The "People Flags" table is two columns, ID_Person and Flag Type

Flag Type contains things like, "Has Research Group", "Has Mailbox"

Instead of storing many Yes/No fields in the People table with this information I made this seperate flags table. (That I might now be regretting)

Anyways, sorting reports based on this system is easy, but I had a set up that worked for a form.

The forms recordsource looks like this:


That People Flag Filer Query's querydef is set by the menu form based on what flags the user wants to see.

It looks like, "SELECT DISTINCT ID_Person FROM [People Flags] WHERE [Flag Type] In ('choice 1', 'choice 2') etc"



This used to work just fine. But now if I make any changes to the form (try and add another row to the table or something, or change a control on the form) it makes the recordset non updateable.

I'm soooo confused why changing something totally unrelated would affect the recordset updateability.


FINAL QUESTION:

Is there a better way to handle this? I thought about putting all the flags in one box in the people form delimited with semicolons or something and then using a Like filter to get the records I want, but this seems super inefficient.

Ideas?