BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 21 май 2024, 07:32

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 18 ] 
Автор Сообщение
СообщениеДобавлено: 04 май 2010, 07:05 
Не в сети

Зарегистрирован: 28 апр 2010, 06:00
Сообщения: 36
Карма: 0
Имеется большое количество приостановленных договоров. Каким образом возможно произвести пересчет за определенный месяц у всех договоров сразу?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 04 май 2010, 15:50 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
1-е что приходит в голову - закинуть все приостановленные договора в доп. группу которую, собсно, и пересчитать, а потом можно их и назад, в свою вернуть


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 май 2010, 05:27 
Не в сети

Зарегистрирован: 28 апр 2010, 06:00
Сообщения: 36
Карма: 0
Если выделять их в группу и потом выполнять перерасчет, то кол-во договоров, которые можно пересчитать ограничивается кол-вом отображения договоров в поиске. Может есть возможность вывести результаты поиском полным списком? Просто у меня отображается постранично,макс. кол-во результатов на странице 21.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 май 2010, 18:42 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4489
Откуда: Уфа, Россия
Карма: 186
а почему переобсчет только части договоров? почему не всех?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 06 май 2010, 12:24 
Не в сети

Зарегистрирован: 28 апр 2010, 06:00
Сообщения: 36
Карма: 0
Необходимо пересчитать только некоторые договора, которые вошли в группу неактивных договоров(например), по каким-либо причинам. Нет смысла проводить операцию пересчета на всех договорах из-за 100-200 договоров.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 06 май 2010, 19:00 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4489
Откуда: Уфа, Россия
Карма: 186
переначисление абонплат не очень сложная задача, можно иногда и всех пересчитать
а в вашем случае получается не одна, а две задачи
1) выбрать группу договоров по определенным критериям
2) выполнить для них пересчет

первая задача довольно не тривиальная :-(


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 06 май 2010, 20:02 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
то что в npay нет возможности выбрать группу для перерасчета a-la dialup - это не есть гуд, IMHO ... удобнее было бы если б все модули имели некий общий для всех интерфейс перерасчета +- особенности модуля, конечно же (в dialup - переобработка netflow, например) ...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 06 май 2010, 20:49 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4489
Откуда: Уфа, Россия
Карма: 186
группу добавить можно, но товарищ же хотел:

Цитата:
Необходимо пересчитать только некоторые договора, которые вошли в группу неактивных договоров


так что в данном случае не прокатит...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 04 авг 2014, 16:46 
Не в сети

Зарегистрирован: 04 авг 2014, 16:39
Сообщения: 14
Карма: 0
Здравствуйте!

Столкнулся с подобной проблемой: необходимо выполнить пересчет для ВСЕХ договоров, за весь период. Это возможно?

Осуществляем перенос базы абонентов с другой биллинговой системы. Абонентов занесли, периоды действия, тарифы, статусы. Теперь хотелось бы обсчитать их и назначить начисления автоматически.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 04 авг 2014, 17:56 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
В модуле абонплат кнопка "Запуск"

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 04 авг 2014, 17:56 
Не в сети

Зарегистрирован: 04 авг 2014, 16:39
Сообщения: 14
Карма: 0
Разобрался сам. Публикую решение (для версии биллинга 6.1).

Заходим в "Сервис" -> "Автоматизация" -> "Управление динамическим кодом".

Создаем новый класс npay_recalc. Код класса: https://gist.github.com/ansmirnov/37060644128fb88bad5c

Нажимаем "Сохранить и скомпилировать", затем "Run".

Код несколько отличается от кода, размещенного в Wiki.

Текущее решение обсчитывает только указанный вручную месяц, как только дойдут руки доработать -- обновлю.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 04 авг 2014, 17:57 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Видел велосипеды. Но такие :D
Создавайте что-ли отдельные темы, а не апайте темы от 2010 года. Я что-то без внимания на дату начал искать где у меня скрипт который выбирает договора по определенным критериям а потом засовывает их на переобсчет.

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 04 авг 2014, 20:06 
Не в сети

Зарегистрирован: 04 авг 2014, 16:39
Сообщения: 14
Карма: 0
Phricker писал(а):
В модуле абонплат кнопка "Запуск"


Эта кнопка запускает пересчет для выбранных договоров, за один месяц. И, кстати, в списке договоров, которые можно выбрать для пересчета отображаются не все, а только, как я понял, те, которые были открыты в пределах текущей сессии. Перещелкивать все, чтобы они там отобразились -- не очень перспективное занятие. Если я не прав, поправьте, пожалуйста.

Phricker писал(а):
Видел велосипеды. Но такие :D


Пример взят отсюда:

http://wiki.bitel.ru/index.php/%D0%97%D ... D0%B5_NPay

Если скажете как сделать проще и быстрее -- буду очень благодарен :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 04 авг 2014, 20:15 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
libcurl писал(а):
Phricker писал(а):
В модуле абонплат кнопка "Запуск"


Эта кнопка запускает пересчет для выбранных договоров, за один месяц. И, кстати, в списке договоров, которые можно выбрать для пересчета отображаются не все, а только, как я понял, те, которые были открыты в пределах текущей сессии. Перещелкивать все, чтобы они там отобразились -- не очень перспективное занятие. Если я не прав, поправьте, пожалуйста.


Если не выбрать ни одного договора, то переобсчитает все. Так же как и вашем коде в cids будет пустая строка.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 04 авг 2014, 20:19 
Не в сети

Зарегистрирован: 04 авг 2014, 16:39
Сообщения: 14
Карма: 0
stark писал(а):
libcurl писал(а):
Phricker писал(а):
В модуле абонплат кнопка "Запуск"


Эта кнопка запускает пересчет для выбранных договоров, за один месяц. И, кстати, в списке договоров, которые можно выбрать для пересчета отображаются не все, а только, как я понял, те, которые были открыты в пределах текущей сессии. Перещелкивать все, чтобы они там отобразились -- не очень перспективное занятие. Если я не прав, поправьте, пожалуйста.


Если не выбрать ни одного договора, то переобсчитает все. Так же как и вашем коде в cids будет пустая строка.


Спасибо, я почему-то не догадался, хотя это очевидно. Это упрощает значительно. Но есть возможность сразу обсчитать весь период действия договора? А еще лучше, заданный интервал?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 04 авг 2014, 20:33 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
libcurl писал(а):
Но есть возможность сразу обсчитать весь период действия договора? А еще лучше, заданный интервал?

нет.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 04 авг 2014, 20:55 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
libcurl писал(а):
Phricker писал(а):
Видел велосипеды. Но такие :D


Пример взят отсюда:

http://wiki.bitel.ru/index.php/%D0%97%D ... D0%B5_NPay

Если скажете как сделать проще и быстрее -- буду очень благодарен :)


Ну этот пример действительно как пример.
Для тех случаев когда необходимо выбрать договора отвечающие определенным критериям и по ним запустить начисление.
В общем случае проще пользоваться вкладкой "Начисление" модуля NPAY

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 авг 2014, 05:52 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
skn писал(а):
группу добавить можно,

а я вот эту тему бампну, так чтож остановились? =), периодически нужная фишка

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 18 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
POWERED_BY
Русская поддержка phpBB
[ Time : 0.065s | 54 Queries | GZIP : On ]