BiTel

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

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




Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: Скрипт работает но шлет ошибки.
СообщениеДобавлено: 15 апр 2009, 11:39 
Код скрипта:

import bitel.billing.server.contract.bean.*;
import bitel.billing.server.util.*;
import java.util.*;
import java.math.*;

VPN_MID = 1;
CHARGE_TYPE = 6;

bu = new BalanceUtils( con ) ;
cm = new ContractManager( con );
chm = new ChargeManager( con );
ctm = new ContractTariffManager( con );

event.setProcessed( true );

if( event.getRequestDate() == null ) {
error( "event.requestDate() == null" );
return;
}
cid = event.getContractID();
contract = cm.getContractByID( cid );

if( contract == null ) {
error( "Contract with ID " + cid + " was not found!" );
return;
}
date_clndr = (Calendar)event.getRequestDate();
date = date_clndr.getTime();
currentTariff = ctm.getContractTariff( cid, date_clndr );

if( currentTariff == null ) {
error( "Current tariff was not found!" );
return;
}

PAY = 0;

tpid = currentTariff.getTariffPlanID();
if( tpid == 7 ) {
PAY = 100;
}
else if ( tpid == 13 ) {
PAY = 150;
}
else if ( tpid == 8 ) {
PAY = 200;
}
else if ( tpid == 34 ) {
PAY = 400;
}
else if ( tpid == 35 ) {
PAY = 500;
}
else if ( tpid == 29 ) {
PAY = 700;
}
else if ( tpid == 28 ) {
PAY = 900;
}
else if ( tpid == 30 ) {
PAY = 1300;
}
else if ( tpid == 31 ) {
PAY = 1500;
}
else if ( tpid == 32 ) {
PAY = 250;
}
else if ( tpid == 33 ) {
PAY = 350;
}
else {
error( "Incorrect current tariff!" );
return;
}

balance = bu.getBalance( date, cid );

if( balance.intValue() < PAY ) {
error( "Not enough money to open a period!!" );
return;
}

charge = new Charge();
charge.setContractID( cid );
charge.setDate( date_clndr );
charge.setChargeTypeID( CHARGE_TYPE );
charge.setComment( "по тарифу за текущий месяц." );
charge.setSumma( PAY );

chm.updateCharge( "new", charge );

bu.updateBalance( date, cid );

date_start = new GregorianCalendar();
date_start.setTime( date );
date_end = (Calendar)date_start.clone();
date_end.set(Calendar.DATE, date_end.getActualMaximum(Calendar.DATE) );
event.setPeriodStart( date_start );
event.setPeriodEnd( date_end );

print( "PAY = " + PAY );


А вот ошибки:

Contract K010667
GENERATE_TIME: 14.04.09 21:00:46
EXECUTION_STOP_TIME: 14.04.09 21:00:46
PROCESS_TIME: 30

OUT:
PAY = 500


ERROR:


EXCEPTIONS:


WARNINGS:
Function [id:19; title:начисление]: using deprecated function [public void bitel.billing.server.contract.bean.Charge.setSumma(float)]
Function [id:19; title:начисление]: using deprecated function [public void bitel.billing.server.contract.bean.Charge.setDate(java.util.Calendar)]

Как лечить?


Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: 15 апр 2009, 11:49 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
http://www.bgbilling.ru/v4.5/javadoc/bi ... harge.html

Поменяйте функции на не Deprecated аналоги.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 15 апр 2009, 12:29 
Как? функции вроде те.


Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: 15 апр 2009, 14:52 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4494
Откуда: Уфа, Россия
Карма: 187
setDate( Calendar ) на setChargeDate( Date date )
setSumma(float) на setChargeSumma( BigDecimal summa )


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 15 апр 2009, 19:10 
А где вы видите setDate( Calendar ) и
setSumma(float)???


Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: 15 апр 2009, 20:06 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Это не ошибка, а предупреждение. API биллинга постоянно меняется и устаревшие методы помечаются как deprecated. Т.к. они устарели и могут быть когда-то в будущем удалены совсем - рекомендуется изменять скрипт под новые методы. Поэтому выдается предупреждение.
Цитата:
Код:
charge = new Charge();
charge.setContractID( cid );
charge.setDate( date_clndr );
charge.setChargeTypeID( CHARGE_TYPE );
charge.setComment( "по тарифу за текущий месяц." );
charge.setSumma( PAY );
на
Код:
charge = new Charge();
charge.setContractID( cid );
charge.setChargeDate( date );
charge.setChargeTypeID( CHARGE_TYPE );
charge.setComment( "по тарифу за текущий месяц." );
charge.setChargeSumma( new BigDecimal( PAY ) );


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 15 апр 2009, 20:13 
А может АПИ менять ненужно... за изменениями нереально следить.
Тем более описаний нет никаких.
Вы позиционируете как оч. гибкая и настраиваемая система. А как настраивать и что ??? простите но такое ощущение что вы Биллинг для себя пишете. (больше описаний, больше).


Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: 15 апр 2009, 20:22 
теперь вообще:

Contract K000009
GENERATE_TIME: 15.04.09 18:19:08
EXECUTION_STOP_TIME: 15.04.09 18:19:15
PROCESS_TIME: 18

OUT:


ERROR:


EXCEPTIONS:
Sourced file: inline evaluation of: ``import bitel.billing.server.contract.bean.*; import bitel.billing.server.util.* . . . '' : Error in method invocation: Method setChargeSumma( java.math.BigDecimal ) not found in class'bitel.billing.server.contract.bean.Charge'Sourced file: inline evaluation of: ``import bitel.billing.server.contract.bean.*; import bitel.billing.server.util.* . . . '' : Error in method invocation: Method setChargeSumma( java.math.BigDecimal ) not found in class'bitel.billing.server.contract.bean.Charge' : at Line: 89 : in file: inline evaluation of: ``import bitel.billing.server.contract.bean.*; import bitel.billing.server.util.* . . . '' : charge .setChargeSumma ( new BigDecimal ( PAY ) )

at bsh.BSHMethodInvocation.eval(Unknown Source)
at bsh.BSHPrimaryExpression.eval(Unknown Source)
at bsh.BSHPrimaryExpression.eval(Unknown Source)
at bsh.Interpreter.eval(Unknown Source)
at bsh.Interpreter.eval(Unknown Source)
at bsh.Interpreter.eval(Unknown Source)
at bitel.billing.server.script.bean.ScriptMachine.runScript(ScriptMachine.java:158)
at bitel.billing.server.script.bean.event.EventProcessor.processEvent(EventProcessor.java:248)
at bitel.billing.server.processor.dialup.DialUpSessionRealtime.setCalculatePeriod(DialUpSessionRealtime.java:1381)
at bitel.billing.server.processor.dialup.DialUpProcessor.connectModule(DialUpProcessor.java:185)
at bitel.billing.server.processor.DefaultProcessor.connect(DefaultProcessor.java:591)
at bitel.billing.server.processor.dialup.DialUpProcessor.authentification(DialUpProcessor.java:819)
at bitel.billing.server.processor.DefaultProcessor.standartAuth(DefaultProcessor.java:153)
at bitel.billing.server.processor.dialup.DialUpProcessor.authenticationProcess(DialUpProcessor.java:106)
at bitel.billing.server.radius.RadiusRequestThread.processRequest(RadiusRequestThread.java:120)
at bitel.billing.server.radius.RadiusRequestThread.run(RadiusRequestThread.java:48)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)


WARNINGS:

.....


Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: 16 апр 2009, 16:06 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
supp писал(а):
А может АПИ менять ненужно... за изменениями нереально следить.

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

Не правильно написал:
не charge.setChargeSumma( new BigDecimal( PAY ) );
а
charge.setSumma( new BigDecimal( PAY ) );


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 16 апр 2009, 22:51 
Спасибо. Помогло. Работает.


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

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


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

Сейчас этот форум просматривают: Google [Bot] и гости: 1


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

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