Akhmat писал(а):
использование услуги, имеется ввиду конечным абонентом, да?
Разумеется по-юзерно или тебе интересны другие варианты?
Akhmat писал(а):
в contract_service сомневаюсь, мелковато для таких нужд.
Чем бОльше дробление - тем шире поле для аналитики.
Akhmat писал(а):
обычно одну услугу, например интернет, обсчитывают несколько услуг(в среднем три, время, вх. траф, исх.траф). зачем по этим услугам ластюз?
Ну и пиши по каждой услуге - с тебя убудет? Будет у тебя 3 даты: дата подключения услуги, дата последнего использования услуги и дата закрытия услуги - разве это плохо?
Если отвлечься от инета как услуг типа время/трафик и посмотреть на абонентки, то тогда становится значительно интереснее, т.к. абоненток может быть масса и дата последнего использования может служить не только для аналитики, но и как лакмусовая бумажка для определения факта начисления действующей услуги.
А если копнуть голос (VoIP и прочую телефонию) ...
Примеров вообще массу можно привести почему по услугам лучше, но раз тебе это не подходит, то значит ты и слушать не желаешь
Akhmat писал(а):
лучше группировать ластюз по модулям, предоставляющим конкретную услугу, т.е. в contract_module.
С точки зрения минимизации кол-ва записей - да, а вот с точки зрения удобства ... Есть у тебя 2 абонентки "за инет" и "за статический IP адрес", 1-я регулярно начисляется, а вот 2-я, хотя и не имеет даты закрытия почему-то перестала начисляться (сбой или ХЗ что еще) - угадай с 3-х раз, как тебе будет удобнее отслеживать такие моменты, по записи в contract_module или в contract_service? Подсказка: в 1-м случае дата будет обновляться, т.к. абонентка за инет начисляется.