подключения - это хорошая вещь. Только надо уметь пользоваться и донести пользователю зачем это надо.
(N:N) - для поиска не работает - это правда.
Я вообще реализовываю (N:N) по средствам 3-й сущности. Потом можно крутить как хочешь, но нужно понимать зачем делаете.
Отчет - это если пользователи привыкли к отчетам. если нет, то будет сложно с ними.
Ну а вообще, скудно описан вопрос

Ничего не понял.