BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 23 июн 2025, 17:59

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




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
СообщениеДобавлено: 24 авг 2011, 13:25 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Клиент пожаловался, что в стандартной рассылке баланса (bitel.billing.server.contract.bean.DispatchBalance) ему приходит ерунда.

Конкретнее - ему приходят данные за следующий месяц, хотя в заголовке указан текущий:
Вложение:
Комментарий к файлу: e-mail
email-balance.jpg
email-balance.jpg [ 29.38 КБ | Просмотров: 3246 ]

Вложение:
client-balance.jpg
client-balance.jpg [ 45.72 КБ | Просмотров: 3246 ]


8852.23 - это его текущий баланс, который был в момент рассылки сегодняшнего баланса.

При этом ActionContractBalanceAll при запуске через http работает правильно.

Написал скрипт для проверки наличия бага:
Код:
import bitel.billing.server.util.*;
import java.sql.*;
import java.util.*;
import bitel.billing.common.TimeUtils;
import bitel.billing.server.contract.bean.Contract;
import bitel.billing.server.contract.bean.ContractManager;
import ru.bitel.common.XMLUtils;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import bitel.billing.server.contract.action.ActionContractBalanceAll;
import org.w3c.dom.ls.*;

public void main(setup, con, conSlave)
{
   int cid=123;

   //Получаем даты так же, как и в коде рассылки:
   Calendar startMonth = Calendar.getInstance();
   Calendar endMonth = Calendar.getInstance();
   startMonth.set(5, 1);
   endMonth.add(2, 1);
   endMonth.set(5, 1);
   endMonth.add(6, -1);
   
   //Если раскомментировать следующие 2 строчки, то всё работает правильно:
//   startMonth = TimeUtils.parseCalendar("01.08.2011", "dd.MM.yyyy");
//   endMonth = TimeUtils.parseCalendar("31.08.2011", "dd.MM.yyyy");
   
   print(TimeUtils.format(startMonth, "dd.MM.yyyy"));
   print(TimeUtils.format(endMonth, "dd.MM.yyyy"));

   Document doc = XMLUtils.newDocument();
   Element rootNode = doc.createElement("data");

   ActionContractBalanceAll action = new ActionContractBalanceAll();
   try
   {
      action.init(setup, rootNode, cid, "contract", 0);
      action.balance(startMonth, endMonth);
      domImplLS = (DOMImplementationLS) doc.getImplementation();
      serializer = domImplLS.createLSSerializer();
      String str = serializer.writeToString(rootNode);
      print(str);
   }catch(e){
      print(e);
   }
}


Вывод скрипта:

Код:
COMPLETE_TIME: 24.08.11 16:18:02
PROCESS_TIME: 27

OUT:
01.08.2011
31.08.2011
<?xml version="1.0" encoding="UTF-16"?>
<data comment="ООО &quot;Рога и Копыта&quot;" contractTitle="123456789" date1="01.08.2011" date2="31.08.2011" xslt="contract_balance_print.xsl"><month title="август  2011"><balance><table summa1="-8905.01" summa2="0.00" summa3="0.00" summa4="0.00" summa5="-8905.01"/></balance><account><table summa="0.00"/></account><charge><table summa="0.00"/></charge><payment><table summa="0.00"/></payment></month></data>

- неправильно, выдается баланс на сентябрь


Если же в нем раскомментировать строчки:
Код:
//   startMonth = TimeUtils.parseCalendar("01.08.2011", "dd.MM.yyyy");
//   endMonth = TimeUtils.parseCalendar("31.08.2011", "dd.MM.yyyy");

то на выходе получим правильный баланс на август:
Код:
COMPLETE_TIME: 24.08.11 16:20:32
PROCESS_TIME: 38

OUT:
01.08.2011
31.08.2011
<?xml version="1.0" encoding="UTF-16"?>
<data comment="ООО &quot;Рога и Копыта&quot;" contractTitle="123456789" date1="01.08.2011" date2="31.08.2011" xslt="contract_balance_print.xsl"><month title="август  2011"><balance><table summa1="-1299.60" summa2="0.00" summa3="7605.41" summa4="0.00" summa5="-8905.01"><data><row f0="август 2011" f1="Входящий остаток на начало месяца" f2="-1299.60"/><row f0="август 2011" f1="Приход за месяц" f2="0.00"/><row f0="август 2011" f1="Наработка за месяц" f2="7605.41"/><row f0="август 2011" f1="Расход за месяц" f2="0.00"/><row f0="август 2011" f1="Исходящий остаток на конец месяца" f2="-8905.01"/></data></table></balance><account><table summa="7605.40"><data><row date="2011 август" f0="2011 август" f1="Услуга 1" f2="228.39" sid="123" summa="228.39" title="Услуга 1"/><row date="2011 август" f0="2011 август" f1="Услуга 2" f2="3454.96" sid="456" summa="3454.96" title="Услуга 2"/></data></table><sub_table><data><row cid="456" contract="123456789-01" date="2011 август" service="Услуга 1" sid="123" summa="228.39"/><row cid="456" contract="123456789-01" date="2011 август" service="Услуга 2" sid="456" summa="2244.05"/><row cid="789" contract="123456789-02" date="2011 август" service="Услуга 1" sid="123" summa="228.39"/><row cid="789" contract="123456789-02" date="2011 август" service="Услуга 2" sid="456" summa="1221.23"/></data></sub_table></account><charge><table summa="0.00"><data/></table><sub_table><data/></sub_table></charge><payment><table summa="0.00"><data/></table><sub_table><data/></sub_table></payment></month></data>


Клиент: вер. 5.1 сборка 564 от 04.07.2011 17:24:11
os:Windows XP; java:Sun Microsystems Inc., v.1.6.0_16
Сервер: вер. 5.1 сборка 685 от 04.07.2011 17:23:55
os:Linux; java:Sun Microsystems Inc., v.1.6.0_22

Можете пофиксить?


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

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


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

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

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


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

Зарегистрирован: 18 авг 2011, 16:53
Сообщения: 39
Карма: 2
пытаюсь повторить, но пока не выходит. баланс выводит правильно. у кого-то еще подобная ошибка вылазит?


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

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

Вложение:
2011-08-25_144315.png
2011-08-25_144315.png [ 13 КБ | Просмотров: 3215 ]

Вложение:
2011-08-25_144347.png
2011-08-25_144347.png [ 11.31 КБ | Просмотров: 3215 ]



Код:
   Клиент: вер. 5.1 сборка 551 от 20.06.2011 17:03:38
os:Windows 7; java:Sun Microsystems Inc., v.1.6.0_26
   Сервер: вер. 5.1 сборка 672 от 20.06.2011 17:03:07
os:Linux; java:Sun Microsystems Inc., v.1.6.0_22


У меня сборка сервера постарее. В конце месяца не хочу обновлять ибо знаю я вас бителовцев :lol:

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


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

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
В проверочном скрипте делаю TimeUtils.clearCalendarHour(startMonth); - всё ок.


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

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Сегодня обновил все
Код:
   Клиент: вер. 5.1 сборка 584 от 24.08.2011 13:38:37
os:Windows 7; java:Sun Microsystems Inc., v.1.6.0_26
   Сервер: вер. 5.1 сборка 705 от 24.08.2011 13:38:18
os:Linux; java:Sun Microsystems Inc., v.1.6.0_22

Данные за текущий месяц пришли в рассылке

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 авг 2011, 12:31 
Не в сети

Зарегистрирован: 18 авг 2011, 16:53
Сообщения: 39
Карма: 2
мы, конечно, можем добавить эту строку: TimeUtils.clearCalendarHour(startMonth);
но все же как-то странно, кроме вас, ни у кого подобная ошибка не выходит


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

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


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

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


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

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