forum.bitel.ru http://forum.bitel.ru/ |
|
Информационное окно http://forum.bitel.ru/viewtopic.php?f=22&t=3959 |
Страница 1 из 1 |
Автор: | mrustik [ 28 апр 2010, 18:19 ] |
Заголовок сообщения: | Информационное окно |
Прописал скрипт и поставил на событие Изменен параметр договора, нужно вывести информацоинное окно оператору, как это сделать. |
Автор: | SafeAndSound [ 28 апр 2010, 19:16 ] |
Заголовок сообщения: | Re: Информационное окно |
Можно так: http://wiki.bgbilling.ru/index.php/%D0% ... 0%B5%D0%BC или так: http://wiki.bgbilling.ru/index.php/%D0% ... 1%80%D0%B0 |
Автор: | mrustik [ 29 апр 2010, 20:33 ] |
Заголовок сообщения: | Re: Информационное окно |
Изменяю параметр Адрес, функция event.setError не отрабатывается. Но в текстовом параметре, после вызова event.setError, ничего не будет меняться. Нужен просто информер. |
Автор: | skn [ 30 апр 2010, 00:44 ] |
Заголовок сообщения: | Re: Информационное окно |
1) в конфиге прописывается для каких акшенов генерировать события в виде Код: action.event_<module>_<action>=before|after|both 2) события генерируются только для запросов в которых есть параметер cid 3) есть два события: ActionBeforeEvent и ActionAfterEvent в которые передаются параметры: module, action, contractId, userId. Дополнительно в ActionBeforeEvent передается httpRequest (из которого можно получить все параметры переданные с клиента), а в ActionAfterEvent - rootNode - ссылка на ответную xml. 4) ActionBeforeEvent содержит методы setDoAction(Boolean) и setError( String, Boolean ) с помощью которых можно отменить выполнение акшена и задать сообщение выводимое в клиенте. |
Автор: | aiwbend [ 30 дек 2011, 15:16 ] |
Заголовок сообщения: | Re: Информационное окно |
skn писал(а): Дополнительно в ActionBeforeEvent передается httpRequest (из которого можно получить все параметры переданные с клиента) А как выудить этот httpRequest ? |
Автор: | Phricker [ 30 дек 2011, 15:43 ] |
Заголовок сообщения: | Re: Информационное окно |
viewtopic.php?f=19&t=6254 Я делал на событие приход платежа. Выводится вот такая хреновина при попытке занесения платежа предыдущим числом Вложение: prixod.png [ 13.95 КБ | Просмотров: 5696 ] Попробуйте не Error а event.setMessage |
Автор: | Phricker [ 30 дек 2011, 15:51 ] |
Заголовок сообщения: | Re: Информационное окно |
А пардон. Понял вашу идею. Нужно после изменения параметра вывести сообщение. И сохранить изменения. Сейчас поищу в api может что и найду. |
Автор: | Phricker [ 30 дек 2011, 15:57 ] |
Заголовок сообщения: | Re: Информационное окно |
Если сделать вот так Код: import bitel.billing.server.script.event.*; import bitel.billing.server.contract.bean.*; import bitel.billing.server.util.*; Calendar calendar = new GregorianCalendar(); dateNow = TimeUtils.convertCalendarToDate(calendar); cid = event.getContractId(); payDate = TimeUtils.convertStringToDate(event.getRequest().getParameter("date")); Integer userId = event.getUserId(); print("userId = " + userId); if( TimeUtils.dateBefore(payDate, dateNow) && userId != 58 ){ event.setError( "Запрещены приходы с датой ранее текущей", true ); } Т.е. после event.setError поставить true То выведется сообщение об ошибке и платеж занесется. Не самый изящный вариант, но можете попробовать ) |
Автор: | aiwbend [ 04 янв 2012, 23:45 ] |
Заголовок сообщения: | Re: Информационное окно |
Phricker писал(а): Если сделать вот так Код: import bitel.billing.server.script.event.*; import bitel.billing.server.contract.bean.*; import bitel.billing.server.util.*; Calendar calendar = new GregorianCalendar(); dateNow = TimeUtils.convertCalendarToDate(calendar); cid = event.getContractId(); payDate = TimeUtils.convertStringToDate(event.getRequest().getParameter("date")); Integer userId = event.getUserId(); print("userId = " + userId); if( TimeUtils.dateBefore(payDate, dateNow) && userId != 58 ){ event.setError( "Запрещены приходы с датой ранее текущей", true ); } Т.е. после event.setError поставить true То выведется сообщение об ошибке и платеж занесется. Не самый изящный вариант, но можете попробовать ) Спасибо, очень помогли. |
Автор: | aiwbend [ 09 янв 2012, 23:39 ] |
Заголовок сообщения: | Re: Информационное окно |
Вот тут вы с параметром даты работаете getParameter("date"), а как выудить другой параметр. Я делаю для CRM, нужен параметр экзекутор. В API написано getParameter(java.lang.String key), вот где эти ключи посмотреть или по какому принципу они определяются. Если написать type или comment то выводит все хорошо(в БД у строк названия аналогичны но как я понял он ориентируется не на них), не могу логику уловить. Методом тыка, ключом executors, получил необходимую информацию, но как без этого метода прошу объяснить. :) |
Автор: | skn [ 10 янв 2012, 01:15 ] |
Заголовок сообщения: | Re: Информационное окно |
getParameter - дает доступ ко всем параметрам передаваемым из клиента в запросе посмотреть запрос клиента со всеми параметрами можно запустив клиент биллинга в debug режиме |
Автор: | aiwbend [ 10 янв 2012, 08:26 ] |
Заголовок сообщения: | Re: Информационное окно |
skn писал(а): getParameter - дает доступ ко всем параметрам передаваемым из клиента в запросе посмотреть запрос клиента со всеми параметрами можно запустив клиент биллинга в debug режиме Спасибо, теперь все понятно. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |