КРИТИЧЕСКАЯ ошибка с ежемесячным расчетным периодом
-
- Сообщения: 131
- Зарегистрирован: Ср авг 10, 2005 21:32
- Откуда: Москва
У меня большинство тарифов с плавным списанием.
Вчера думал над проблемой.
Есть предположение, что баланс пользователям восстанавливать таки не нужно т.к. количество списаний в РП ограничено, просто будет неравномерность по скорости списания. И концу октября все должны выйти на правильную сумму.
Поправьте если ошибаюсь.
Вчера думал над проблемой.
Есть предположение, что баланс пользователям восстанавливать таки не нужно т.к. количество списаний в РП ограничено, просто будет неравномерность по скорости списания. И концу октября все должны выйти на правильную сумму.
Поправьте если ошибаюсь.
так и есть, но могут быть косяки если есть галочки "не списывать абонентку в заблокированном состоянии", блокировка то будет, но деньги то уже списаныInstruktor писал(а):У меня большинство тарифов с плавным списанием.
Вчера думал над проблемой.
Есть предположение, что баланс пользователям восстанавливать таки не нужно т.к. количество списаний в РП ограничено, просто будет неравномерность по скорости списания. И концу октября все должны выйти на правильную сумму.
Поправьте если ошибаюсь.
-
- Сообщения: 131
- Зарегистрирован: Ср авг 10, 2005 21:32
- Откуда: Москва
Я так понимаю, что ошибка затрагивает только тех абонентов, которые были подключены 27, 28,29,30 сентября и 1 октября, т.к. именно им назначается укороченный расчетный период?
Потому как смотрел отчеты по услугам - сверхскоростное снятие абонплаты наблюдается только у этих абонентов.
Потому как смотрел отчеты по услугам - сверхскоростное снятие абонплаты наблюдается только у этих абонентов.
Последний раз редактировалось Voronok Ср окт 01, 2008 08:48, всего редактировалось 1 раз.
У меня, например, поле canonical_len выглядит следующим образом:
Все кроме последнего думаю поставить в 2592000, а последнее в 2678400. Вопрос в том, стоит ли это делать?
Код: Выделить всё
mysql> select id,start_date,end_date,canonical_len from discount_periods where id>919;
+-----+------------+------------+---------------+
| id | start_date | end_date | canonical_len |
+-----+------------+------------+---------------+
| 920 | 1221854400 | 1222171001 | 2592000 |
| 921 | 1222200000 | 1224792000 | 2592000 |
| 922 | 1222286400 | 1224878400 | 2592000 |
| 923 | 1222372800 | 1224964800 | 2592000 |
| 924 | 1222459200 | 1225054800 | 432000 |
| 925 | 1222545600 | 1225141200 | 345600 |
| 926 | 1222632000 | 1225227600 | 259200 |
| 927 | 1222718400 | 1225314000 | 172800 |
| 928 | 1222804800 | 1225486800 | 86400 |
+-----+------------+------------+---------------+
9 rows in set (0.01 sec)
mysql>
-
- Сообщения: 1612
- Зарегистрирован: Пт ноя 10, 2006 15:23
если у вас в соответствии с правилами предоставления услуг период идет с 1 числа месяца по 1 число след месяца, то имейте в виду, биллинг пересчитывает длину расч периода самостоятельно, главное - чтоб все были на одном расчетном периоде. Проблему у себя не наблюдаю при плавном списании абонплаты.
При привязке услуги абонплаты стоит галка "не списывать", что означает в переводе на человеческий "списывать только ту часть абонплаты, которую осталось списать в основном расчетном периоде"
При привязке услуги абонплаты стоит галка "не списывать", что означает в переводе на человеческий "списывать только ту часть абонплаты, которую осталось списать в основном расчетном периоде"
Я только изменил окончание расчетного периорда и все (ибо нетаповцы в первом посте сказали сделать только это). Абонентка у затронутых абонентов перестала списываться вообще. Я так понимаю, из-за того, что теперь остаток средств биллинг будет "растягивать" на месяц. Пока наблюдаю.
Последний раз редактировалось Voronok Ср окт 01, 2008 11:06, всего редактировалось 1 раз.
у себя поставил 2682000, вычисленное как 1225479600 - 1222797600Magnum72 писал(а):пиляд, порнография какая то..
решил проверить не ошибся ли я с канонической длиной периода
дождался часа ночи, создал период длиной в 1 месяц начинающийся 1 октября в 01:00:00, он мне создал период с датой начала 1 октября в 01:00:00 и датой завершения 1 ноября в 00:00:00
я понимаю переход на зимнее время, но фигали он дату завершения поставил в 00 часов а не в 01.
Скажите правильную какноническую длину расчетного периода.
то есть было
Код: Выделить всё
+------+------------+------------+---------------+-------------------------+---------------+------------+-----------------+-----------+-------------------+
| id | start_date | end_date | periodic_type | next_discount_period_id | canonical_len | is_expired | custom_duration | static_id | discount_interval |
+------+------------+------------+---------------+-------------------------+---------------+------------+-----------------+-----------+-------------------+
| 6893 | 1222797600 | 1225479600 | 3 | 0 | 86400 | 0 | 1 | 2 | 0 |
Код: Выделить всё
+------+------------+------------+---------------+-------------------------+---------------+------------+-----------------+-----------+-------------------+
| id | start_date | end_date | periodic_type | next_discount_period_id | canonical_len | is_expired | custom_duration | static_id | discount_interval |
+------+------------+------------+---------------+-------------------------+---------------+------------+-----------------+-----------+-------------------+
| 6893 | 1222797600 | 1225479600 | 3 | 0 | 2682000 | 0 | 1 | 2 | 0 |
Код: Выделить всё
bash-3.1$ echo "2682000/3600/24" | bc -l
31.04166666666666666666
это все для периода с 0 часов 1 числа до 0 часов 1 числа седующего месяца
Код: Выделить всё
bash-3.1$ ptime -h 1222797600
Wed Oct 1 00:00:00 2008
bash-3.1$ ptime -h 1225479600
Sat Nov 1 00:00:00 2008
-
- Сообщения: 1612
- Зарегистрирован: Пт ноя 10, 2006 15:23
Вопрос к нетаповцам: за что отвечает длина периода в поле canonical_len? Просто есть подозрение, что оно отвечает за частоту списывания абонплаты. Таким образом, если при дате окончания расчетного периода 2-го октября абонплата списывалась слишком быстро, то при изменении даты окончания она должна списываться медленнее, чем положено. Так вот, мне интересно, если изменить вручную длину периода, не станет ли абонплата списываться в обычном режиме и не поведет ли это в дальнейшем к корректировке баланса абонента? И чем чревато в будущем то, что у абонента расчетный период с правильными датами начала и окончания, но с уменьшенным значением canonical_len?