Допустим, есть СУБД, в которой решено хранить данные от CRM.
Пусть она будет для начала однопользовательская.
Я себе примерно представляю её работу так: продавец делает в день 50-30 звонков, плюс/минус. В базе должны храниться такие данные:
- информация о существующих компаниях - названия, адреса, контакты, контактные лица, плюс штук пять разных отметок - кто работает с компанией, на какой стадии привлечение покупателя/состоявшееся сотрудничество, насколько крупная компания/какой номенклатурой интересуется. При этом ненужные компании и их данные нужно «хранить вечно», чтобы не ходить по одним и тем же граблям по несколько раз. Это я поместил в одну таблицу.
- Т.н. «клиентские карточки», адов геморрой. Когда у каждой компании есть либо несколько юрлиц, либо одно, но живущее пару месяцев максимум. Таблица с полями «ИНН», «ОГРН» и прочее, привязана к уникальному номеру компании в первой таблице. Есть поле «актуально» с булевскими значениями, чтобы отфильтровывать устаревшие юрлица.
А вот что мне не очень понятно:
- С каждым клиентом есть та или иная история общения, которую хорошо бы хранить - во-первых, из неё можно готовить отчёты, во-вторых, опять же, если с кем-то поссорился или ещё чего - можно посмотреть историю.
- Каждому клиенту менеджер каждый день что-то должен. Подготовить счёт, наругаться за дебиторку, выслать образцы, и т.д. и т.п.; это тоже хорошо бы хранить в базе данных, это должно помогать планированию, помогать составлять отчёты, ну и вообще.
Я пока склоняюсь к тому, чтобы для истории контактов и заданий создать по отдельной таблице (в смысле, одна таблица будет для всех клиентов), но они будут очень быстро пухнуть, по идее.
Может быть, имеет смысл создавать таблицы «История общения» и «Задачи» для каждого из клиентов? Удобно ли тогда будет по ним делать отчёт/какую-нибудь обработку-напоминалку?
В общем, у кого какие соображения?