BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 27 апр 2024, 23:05

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




Начать новую тему Ответить на тему  [ Сообщений: 72 ]  На страницу 1, 2, 3  След.
Автор Сообщение
СообщениеДобавлено: 25 май 2010, 14:05 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Есть необходимость "предсказывать" абонплату за текущий месяц, когда он ещё не закончился.
Как можно реализовать такое на BGBS?

Следующий тестовый код возвращает наработку по абонплатам на текущий момент:

Код:
      Calendar dt = new GregorianCalendar();
      dt.set(Calendar.DAY_OF_MONTH ,31);

      Calculator calculator = new Calculator();
      calculator.setExecutingTime(dt);
      calculator.setPreCalc();
      calculator.initTask(setup, 0, "mid="+mid);
      calculator.setCids(cids);
      calculator.startTask();

      if (!calculator.isCalcErrors())
      {
        BigDecimal planAccount = BigDecimal.ZERO;
        Map planAccountMap = calculator.getCostCache().getContractAccounts();
        for (Integer contractId : ru.bitel.common.Utils.stringToIntegerList(cids))
        {
          planAccount = planAccount.add(ru.bitel.common.Utils.maskNull((BigDecimal)planAccountMap.get(contractId)));
        }

      print(planAccount);
      }


Как получить наработку, которая будет у клиента в конце месяца (если ничего не поменяется в договоре)?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 26 май 2010, 14:28 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Ап!
Господа разработчики, скажите, это возможно сейчас?
Если нет, то я отстану.


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

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Вообще данный код как раз и высчитывает планируемую к начислению наработку за месяц.
А чего у вас не сходится? Скрины что ли выложите..


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

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Цитата:
Вообще данный код как раз и высчитывает планируемую к начислению наработку за месяц.

No, it's not :(

Код:
   Calendar dt = new GregorianCalendar();
   dt.set(Calendar.DAY_OF_MONTH ,31);

      Calculator calculator = new Calculator();
      print(TimeUtils.convertCalendarToDateString(dt));
      calculator.setExecutingTime(dt);
      calculator.setPreCalc();
      calculator.initTask(setup, 0, "mid=16");
      calculator.setCids("172108");
      calculator.startTask();

      if (!calculator.isCalcErrors())
      {
        BigDecimal planAccount = BigDecimal.ZERO;
        Map planAccountMap = calculator.getCostCache().getContractAccounts();
        for (Integer contractId : ru.bitel.common.Utils.stringToIntegerList("172108"))
        {
          planAccount = planAccount.add(ru.bitel.common.Utils.maskNull((BigDecimal)planAccountMap.get(contractId)));
        }

      print(planAccount);
      }


На выходе скрипта:
Код:
COMPLETE_TIME: 27.05.10 09:29:38
PROCESS_TIME: 201

OUT:
2010-05-31
979.83


ERROR:


EXCEPTIONS:


WARNINGS:


В договоре:
Вложение:
172108.JPG
172108.JPG [ 7.72 КБ | Просмотров: 18099 ]


Тарифный план:
Вложение:
npay-M.JPG
npay-M.JPG [ 11.44 КБ | Просмотров: 18099 ]


Статус договора - активен с открытым периодом в течение всего месяца.

Т.е. этот код вычисляет сумму начислений по абонплатам только до текущего дня.


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

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Апдейт NPay для 5.0. Положите в BGBillingServer/lib, рестартуйте сервер и попробуйте выполнить скрипт.
http://www.bgbilling.ru/patch/5/npay.jar


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

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Спасибо, работает :)

Код:
OUT:
2010-05-31
1125.00


Это попадёт в официальный апдейт?


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

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
подскажите, пожалуйста, как получить сабж в 4.6 ?


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

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Для 5.0 официальный апдейт выложен, для 4.6 невозможно - там режима предначисления не было.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 01 июн 2010, 07:31 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Администратор писал(а):
Апдейт NPay для 5.0. Положите в BGBillingServer/lib, рестартуйте сервер и попробуйте выполнить скрипт.
http://www.bgbilling.ru/patch/5/npay.jar

С этим файликом 1 числа стала неправильно считается абонплата за предыдущий месяц - начисление производится только за 2 дня. Откатил назад - всё стало нормально.
Официальный апдейт не пробовали - посмотрите, возможно там такая же проблема.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 01 июн 2010, 14:04 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Проверил, всё корректно. Тестировал сменой даты на машине. У вас в scheduler.log информация не осталась?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 01 июн 2010, 15:10 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Как-то так, например:

Код:
06-01/09:50:15  INFO [Thread-10] TaskRunProcessor - Running Task: bitel.billing.server.npay.Recalculator@2f213a05
06-01/09:50:15  INFO [pool-1-thread-4] Recalculator - PaymentRecalculator time: 01.05.2010 00
06-01/09:50:15  INFO [pool-1-thread-4] Utils - Memory total: 1 635 450 880; max: 1 908 932 608; free: 1 064 450 800
06-01/09:50:15  INFO [pool-1-thread-4] Utils - Memory pools:
06-01/09:50:15  INFO [pool-1-thread-4] Calculator - Memory total: 1 635 450 880; max: 1 908 932 608; free: 1 064 450 800
06-01/09:50:15  INFO [pool-1-thread-4] Calculator - Setting balances for independ and subs..
06-01/09:50:15  INFO [pool-1-thread-4] Calculator - Selected.
06-01/09:50:15  INFO [pool-1-thread-4] Calculator - Selecting sub account
06-01/09:50:15  INFO [pool-1-thread-4] Calculator - Selected.
06-01/09:50:15  INFO [pool-1-thread-4] Calculator - Setting balance for super..
06-01/09:50:15  INFO [pool-1-thread-4] Calculator - Selected.
06-01/09:50:15  INFO [pool-1-thread-4] Calculator - Task finished time=26 ms.


В логах ничего крамольного.

После выставления счетов обновимся и посмотрим, как будет.


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

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Не так понял вас. При ручном начислении действительно такая проблема была. Обновление выложено.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 07 июн 2010, 16:03 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Обновились до версии npay 217
Запускаю начисление по всем договорам за текущий месяц - снова наработка считается только за один день.
Причем как при индивидуальном начислении, так и при глобальном.
Откатываюсь до 213 путём замены файлика npay.jar, перезапускаю сервер, делаю начисление - всё в порядке.
Пробую обновить npay принудительно:
останавливаю сервер, планировщик и лоадер.
Затем:
Код:
# ./bg_installer.sh npay_5.0_217.zip!
 06-07/18:42:22  INFO [main] DefaultServerSetup - Init DB connection pools
 06-07/18:42:22  INFO [main] DefaultServerSetup - Init trash pools..
 06-07/18:42:22  INFO [main] DefaultServerSetup - Init DB connection pools
 06-07/18:42:22  INFO [main] DefaultServerSetup - Init trash pools..
Module: npay already installed.
Data extract finished...
Extract data => OK
Database updated...
Install ticket inserted..
Base update => OK
Reinit module instanses
REINIT module => 16
Module Instance init => OK
Executing call AddSchedulerTasks; param: pay.sc
Scheduled class bitel.billing.server.npay.Calculator already exists!
Scheduled class ru.bitel.bgbilling.modules.npay.server.task.DebetStatusManageLocker already exists!
Result => true
Executing call PutFile; param: npay.xml:actions
Result => true
Execute calls => OK
File's copy finished...
File copy => OK
Module npay was successfull installed!
Please, restart BGBilling server.

Запускаю севрер, лоадер и планировщик, перезапускаю клиент, убеждаюст в версии модуля в меню "Справка" -> "О программе"
Запускаю начисление - снова ошибка.
В итоге обратно откатился до 213. Сейчас имею:
Сервер - сборка 744 от 03.06.2010
npay вер. 5.0 сборка 213 от 13.05.2010 12:02:54

Я что, один такой несчастный?


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

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
При запуске начисления что в scheduler.log выводится? Поставьте в log4j.xml уровень в DEBUG, сделайте начисление по одному проблемному договору и выложите, что получилось в scheduler.log.
И скрин тарифа выложите.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 июн 2010, 07:07 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
1. Новая версия npay:
Цитата:
npay вер. 5.0 сборка 217 от 02.06.2010 12:59:19


Код:
06-08/09:56:42  INFO [Thread-10] TaskRunProcessor - Running Task: bitel.billing.server.npay.Recalculator@23bb9829
06-08/09:56:42  INFO [pool-1-thread-1] Recalculator - PaymentRecalculator time: 01.06.2010 23
06-08/09:56:42  INFO [pool-1-thread-1] Setup - Load config for mid=16
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Services: -1,26,27,28,29,30,31,40,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,68,69,70,71,74,75,81,85,87,88,89,90,91,92,93,94,95,96,97,98,99,100,106,107,108,109,110,111,112,113,114,115,116,117,118,119,122,127,128,129,130,131,132,133,134,136,137,146,147,148,149,150,151,154,155,156,157,158,159,160,163,164,165,168,169,170,171,172,173,174,175,176,177,178,180,181,182,186,187,188
06-08/09:56:42  INFO [pool-1-thread-1] Utils - Memory total: 416 219 136; max: 1 908 932 608; free: 383 832 640
06-08/09:56:42  INFO [pool-1-thread-1] Utils - Memory pools:
06-08/09:56:42  INFO [pool-1-thread-1] Calculator - Memory total: 416 219 136; max: 1 908 932 608; free: 383 832 640
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Found service taker cid: 172108; sid: 40; date1: 09.02.2009; date2: ; col: 1
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - After trimming cid: 172108; sid: 40; date1: 01.06.2010; date2: 30.06.2010
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Tariff period: 01.12.2009-
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Request in tree: 1493
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - accepted => false
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Request after processing: 1493
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - accepted => true
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Add cost cache cid: 172108; sid: 40; cost: 0.0
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Add detail amount cache cid: 172108; sid: 40; mid: 16; eid: 0; cost: 0.0
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Tariff period: 01.06.2010-
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Request in tree: 1656
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - accepted => false
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Request after processing: 1656
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - accepted => true
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Add cost cache cid: 172108; sid: 40; cost: 36.66666666666666666666666666666667
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Add detail amount cache cid: 172108; sid: 40; mid: 16; eid: 0; cost: 36.666666666666664
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Found service taker cid: 172108; sid: 178; date1: 01.04.2010; date2: ; col: 1
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - After trimming cid: 172108; sid: 178; date1: 01.06.2010; date2: 30.06.2010
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Tariff period: 01.12.2009-
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Request in tree: 1493
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - accepted => false
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Request after processing: 1493
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - accepted => true
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Add cost cache cid: 172108; sid: 178; cost: 0.0
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Add detail amount cache cid: 172108; sid: 178; mid: 16; eid: 0; cost: 0.0
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Tariff period: 01.06.2010-
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Request in tree: 1656
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - accepted => false
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Request after processing: 1656
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - accepted => true
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Add cost cache cid: 172108; sid: 178; cost: 0.0
06-08/09:56:42 DEBUG [pool-1-thread-1] Calculator - Add detail amount cache cid: 172108; sid: 178; mid: 16; eid: 0; cost: 0.0
06-08/09:56:42  INFO [pool-1-thread-1] Calculator - Setting balances for independ and subs..
06-08/09:56:42  INFO [pool-1-thread-1] Calculator - Selected.
06-08/09:56:42  INFO [pool-1-thread-1] Calculator - Selecting sub account
06-08/09:56:42  INFO [pool-1-thread-1] Calculator - Selected.
06-08/09:56:42  INFO [pool-1-thread-1] Calculator - Setting balance for super..
06-08/09:56:42  INFO [pool-1-thread-1] Calculator - Selected.
06-08/09:56:42  INFO [pool-1-thread-1] Calculator - Task finished time=159 ms.


2. Старый npay:
Цитата:
npay вер. 5.0 сборка 213 от 13.05.2010 12:02:54


Код:
06-08/10:10:17  INFO [Thread-10] TaskRunProcessor - Running Task: bitel.billing.server.npay.Recalculator@41d47b2b
06-08/10:10:17  INFO [pool-1-thread-1] Recalculator - PaymentRecalculator time: 01.06.2010 00
06-08/10:10:17  INFO [pool-1-thread-1] Setup - Load config for mid=16
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Services: -1,26,27,28,29,30,31,40,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,68,69,70,71,74,75,81,85,87,88,89,90,91,92,93,94,95,96,97,98,99,100,106,107,108,109,110,111,112,113,114,115,116,117,118,119,122,127,128,129,130,131,132,133,134,136,137,146,147,148,149,150,151,154,155,156,157,158,159,160,163,164,165,168,169,170,171,172,173,174,175,176,177,178,180,181,182,186,187,188
06-08/10:10:17  INFO [pool-1-thread-1] Utils - Memory total: 159 121 408; max: 1 908 932 608; free: 145 640 200
06-08/10:10:17  INFO [pool-1-thread-1] Utils - Memory pools:
06-08/10:10:17  INFO [pool-1-thread-1] Calculator - Memory total: 159 121 408; max: 1 908 932 608; free: 145 640 200
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Found service taker cid: 172108; sid: 40; date1: 09.02.2009; date2: ; col: 1
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - After trimming cid: 172108; sid: 40; date1: 01.06.2010; date2: 30.06.2010
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Tariff period: 01.12.2009-
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Request in tree: 1493
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - accepted => false
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Request after processing: 1493
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - accepted => true
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Add cost cache cid: 172108; sid: 40; cost: 0.0
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Add detail amount cache cid: 172108; sid: 40; mid: 16; eid: 0; cost: 0.0
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Tariff period: 01.06.2010-
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Request in tree: 1656
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - accepted => false
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Request after processing: 1656
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - accepted => true
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Add cost cache cid: 172108; sid: 40; cost: 293.33333333333333333333333333333336
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Add detail amount cache cid: 172108; sid: 40; mid: 16; eid: 0; cost: 293.3333333333333
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Found service taker cid: 172108; sid: 178; date1: 01.04.2010; date2: ; col: 1
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - After trimming cid: 172108; sid: 178; date1: 01.06.2010; date2: 30.06.2010
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Tariff period: 01.12.2009-
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Request in tree: 1493
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - accepted => false
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Request after processing: 1493
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - accepted => true
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Add cost cache cid: 172108; sid: 178; cost: 0.0
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Add detail amount cache cid: 172108; sid: 178; mid: 16; eid: 0; cost: 0.0
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Tariff period: 01.06.2010-
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Request in tree: 1656
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - accepted => false
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Request after processing: 1656
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - accepted => true
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Add cost cache cid: 172108; sid: 178; cost: 0.0
06-08/10:10:17 DEBUG [pool-1-thread-1] Calculator - Add detail amount cache cid: 172108; sid: 178; mid: 16; eid: 0; cost: 0.0
06-08/10:10:17  INFO [pool-1-thread-1] Calculator - Setting balances for independ and subs..
06-08/10:10:17  INFO [pool-1-thread-1] Calculator - Selected.
06-08/10:10:17  INFO [pool-1-thread-1] Calculator - Selecting sub account
06-08/10:10:17  INFO [pool-1-thread-1] Calculator - Selected.
06-08/10:10:17  INFO [pool-1-thread-1] Calculator - Setting balance for super..
06-08/10:10:17  INFO [pool-1-thread-1] Calculator - Selected.
06-08/10:10:17  INFO [pool-1-thread-1] Calculator - Task finished time=176 ms.


Тариф:
Вложение:
npay-M.JPG
npay-M.JPG [ 17.88 КБ | Просмотров: 17986 ]


sid 178 - абонплата за тарифную опцию, опций у клиента не подключено
sid 40 - абонплата "предоплаченный трафик"


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 июн 2010, 14:48 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Там две услуги, проблема с обеими? Скажите коды первой и второй услуг в тарифе.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 июн 2010, 14:50 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Цитата:
sid 178 - абонплата за тарифную опцию, опций у клиента не подключено
sid 40 - абонплата "предоплаченный трафик"


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 июн 2010, 15:21 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Обновляли всё?
1) Поставьте последние обновления всего.
2) Дайте ССШ и к биллингу доступ в личку, если проблема не решилась.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 26 июл 2010, 13:08 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
А объясните куда все запихивать? Это я в глобальные скрипты добавил
Код:
EXCEPTIONS:
Sourced file: 1 : Typed variable declaration : Class: Calculator not found in namespace
Sourced file: 1 : Typed variable declaration : Class: Calculator not found in namespace : at Line: 4 : in file: 1 : Calculator
и что за числа
Код:
calculator.setCids("172108");


Немогли бы вы расписать что и куда, и приветси полный код...появилась нужда в этом скрипте...

_________________
Код:
  Клиент: вер. 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 26 июл 2010, 14:51 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Это коды договоров через запятую.
Цитата:
calculator.setCids("172108");

Вы лучше выкладывайте какой у вас получился скрипт и как ругается и чего вы от него хотите.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 26 июл 2010, 15:32 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
Скрипт брал от сюда Охото получить вывод наработки по абонплатам за месяц

_________________
Код:
  Клиент: вер. 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 26 июл 2010, 16:11 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Cromeshnic, дайте скрипт. У вас же такой есть.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 26 июл 2010, 16:18 
Не в сети
Клиент
Аватара пользователя

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

_________________
Код:
  Клиент: вер. 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июл 2010, 07:11 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Сорри, дальше теста не пошло - отпала необходимость, т.к. поменяли бизнес-логику.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июл 2010, 07:13 
Не в сети
Клиент
Аватара пользователя

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

Ну а что получилось во время теста?? мне немного высчитывать, просто есть договор, его до конца выщитывать продажникам приходиться, а так просто(неважно где и как)были бы цифры...ты же как то их получил...расскажи??

_________________
Код:
  Клиент: вер. 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июл 2010, 08:26 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Тест - в первом посте. Запускать в глобальном скрипте поведения. Всё работает правильно:

Код:
   
import java.math.*;
import bitel.billing.server.npay.Calculator;
import bitel.billing.common.TimeUtils;

public void main(setup, con, conSlave)
{
      Calendar dt = new GregorianCalendar();
      dt.set(Calendar.DAY_OF_MONTH ,31);

      Calculator calculator = new Calculator();
      print(TimeUtils.convertCalendarToDateString(dt));
      calculator.setExecutingTime(dt);
      calculator.setPreCalc();
      calculator.initTask(setup, 0, "mid=16");
      calculator.setCids("12345");
      calculator.startTask();

      if (!calculator.isCalcErrors())
      {
        BigDecimal planAccount = BigDecimal.ZERO;
        Map planAccountMap = calculator.getCostCache().getContractAccounts();
        for (Integer contractId : ru.bitel.common.Utils.stringToIntegerList("12345"))
        {
          planAccount = planAccount.add(ru.bitel.common.Utils.maskNull((BigDecimal)planAccountMap.get(contractId)));
        }

      print(planAccount);
      }
}


Возвращает сумму будущей наработки по всем абонплатам за месяц по договору с cid=12345.
На основе этого уже несложно написать свой скрипт.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июл 2010, 08:32 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
Код:
EXCEPTIONS:
Error in method invocation: Method add( java.lang.String ) not found in class'java.math.BigDecimal'
Error in method invocation: Method add( java.lang.String ) not found in class'java.math.BigDecimal' : at Line: 24 : in file: 1 : planAccount .add ( ru .bitel .common .Utils .maskNull ( ( BigDecimal ) planAccountMap .get ( contractId ) ) )
:(

_________________
Код:
  Клиент: вер. 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июл 2010, 09:10 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Хм, прикольно. Значит planAccountMap.get(contractId) выдал null и взялся первый подходящий метод maskNull - для строки.

Try this:
Код:
import java.math.*;
import bitel.billing.server.npay.Calculator;
import bitel.billing.common.TimeUtils;

public void main(setup, con, conSlave)
{
      Calendar dt = new GregorianCalendar();
      dt.set(Calendar.DAY_OF_MONTH ,31);

      Calculator calculator = new Calculator();
      print(TimeUtils.convertCalendarToDateString(dt));
      calculator.setExecutingTime(dt);
      calculator.setPreCalc();
      calculator.initTask(setup, 0, "mid=16");
      calculator.setCids("12345");
      calculator.startTask();

      if (!calculator.isCalcErrors())
      {
        BigDecimal planAccount = BigDecimal.ZERO;
        Map planAccountMap = calculator.getCostCache().getContractAccounts();
        for (Integer contractId : ru.bitel.common.Utils.stringToIntegerList("12345"))
        {
        if(planAccountMap.get(contractId)!=null){
                     planAccount = planAccount.add((BigDecimal)planAccountMap.get(contractId));
        }
        }

      print(planAccount);
      }
}


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июл 2010, 10:03 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
Код:
COMPLETE_TIME: 27.07.10 14:02:28
PROCESS_TIME: 33

OUT:
2010-07-31
0


ERROR:


EXCEPTIONS:


WARNINGS:
:(

mid - это же код модуля абонплат?

_________________
Код:
  Клиент: вер. 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июл 2010, 10:20 
Не в сети
Клиент
Аватара пользователя

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

_________________
Код:
  Клиент: вер. 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 72 ]  На страницу 1, 2, 3  След.

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


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

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


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

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