forum.bitel.ru http://forum.bitel.ru/ |
|
Договор уже существует!!! http://forum.bitel.ru/viewtopic.php?f=22&t=8506 |
Страница 1 из 1 |
Автор: | Alex_D [ 01 окт 2013, 10:01 ] |
Заголовок сообщения: | Договор уже существует!!! |
Здравствуйте! У меня возникла такая проблема: Я заводил договор с некоторым именем и у меня появилось сообщение "Договор уже существует!!!", однако в "поиске договоров" договора с таким именем не существует. Есть вероятность того, что этот договор создавался ранее и был удален, однако может быть ли это причиной? Как можно либо открыть этот существующий договор или удалить его, чтобы можно быть создать другой с таким же номером? Версия 5.1 стоит на CentOS 5.4. Заранее благодарен за помощь.. |
Автор: | Artur [ 01 окт 2013, 10:29 ] |
Заголовок сообщения: | Re: Договор уже существует!!! |
Что выдает sql-запрос select id from contract where title like '%имя договора%' ? |
Автор: | Alex_D [ 01 окт 2013, 10:47 ] |
Заголовок сообщения: | Re: Договор уже существует!!! |
Проблема в том, что в номере договора есть русские символы и при подобном запросе mysql отвечает ошибкой.. |
Автор: | dimOn [ 01 окт 2013, 11:56 ] |
Заголовок сообщения: | Re: Договор уже существует!!! |
Какой ошибкой? Откуда запрос выполняете? С кодировками что у вас на этой таблице? |
Автор: | Ping333 [ 20 окт 2016, 17:56 ] |
Заголовок сообщения: | Re: Договор уже существует!!! |
Добрый день! не стал плодить темы, подскажите пожалуйста каким образом ContractManager.createFromPattern проверяет существование договора с такимже именем? проблема например в этом, есть уже созданный договор 1126, пытаюсь создать при помощи createFromPattern 1126-55 получаю ru.bitel.bgbilling.common.BGMessageException: Договор с таким именем уже существует! как Amir писал select id from contract where title like '%имя договора%' ? так? |
Автор: | dimOn [ 20 окт 2016, 19:00 ] |
Заголовок сообщения: | Re: Договор уже существует!!! |
проверяет в рамках паттерна вроде бы так-то |
Автор: | Ildar [ 20 окт 2016, 19:22 ] |
Заголовок сообщения: | Re: Договор уже существует!!! |
Какой шаблон? Какая версия? |
Автор: | Ping333 [ 20 окт 2016, 19:39 ] |
Заголовок сообщения: | Re: Договор уже существует!!! |
тогда что за напасть такая происходит делаю так Nomer_Dogovora=ContractPatternManager.getContractTitle(con, new ContractPatternManager(con).getPattern(shablon), сalendar_for_pattern); System.out.println("sssssssss=" + Nomer_Dogovora); contract = CM.createFromPattern(shablon, Nomer_Dogovora, Date_dogovora, contract_pass); вываливается в ошибку sssssssss=МТС-Ф-0004-СЕ ru.bitel.bgbilling.common.BGMessageException: Договор с таким именем уже существует! запуская еще раз sssssssss=МТС-Ф-0005-СЕ ru.bitel.bgbilling.common.BGMessageException: Договор с таким именем уже существует! добавляю Nomer_Dogovora+"/2" успех cid=814 contract=Contract: МТС-Ф-0006-СЕ/2; limit: 0.00; mode: DEBET еще раз тоже успех cid=815 contract=Contract: МТС-Ф-0007-СЕ/2; limit: 0.00; mode: DEBET шаблон имени МТС-Ф-${N4}-СЕ Информация о версии: Клиент: вер. 7.0.807 / 05.05.2016 18:22:49 os: Windows 7; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_73 Сервер: вер. 7.0.1036 / 05.05.2016 18:24:13 os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_77 card: вер. 7.0.37 / 08.04.2016 17:40:32 inet: вер. 7.0.644 / 05.05.2016 18:24:23 npay: вер. 7.0.194 / 19.04.2016 18:00:07 phone: вер. 7.0.278 / 10.10.2016 12:26:36 |
Автор: | dimOn [ 21 окт 2016, 04:04 ] |
Заголовок сообщения: | Re: Договор уже существует!!! |
Ну а они эти ваши МТС-Ф-0004-СЕ точно не существуют, да? Вы же проверили не поиском договоров, а в SQL-редакторе как положено? |
Автор: | Ping333 [ 21 окт 2016, 10:59 ] |
Заголовок сообщения: | Re: Договор уже существует!!! |
точно точно. в эскуэле проверил, везде проверил, даже если бы и существовал, все равно не понятно, скрипт по патерну берет следующий номер договора МТС-Ф-0005-СЕ, которого ну 100% нет. и тоже пишет договор уже существут, а все почему? потому что у меня уже есть договор SE-F-0005 который подходит под запрос select title from contract where title like'%0005%' SE-F-0005 вот как то так.. |
Автор: | Ildar [ 21 окт 2016, 11:25 ] |
Заголовок сообщения: | Re: Договор уже существует!!! |
На всякий перезапустите сервер, чтобы очистить кеш имен( или произведите n-ое кол-во удаление из кеша имен, но так как доподлинно не известно сколько вы раз запускали скрипт, то проще перезапустить ). Далее, если генерируете сами в ручную, то надо удалить название из кеша, или отдайте генерирование названия целиком менеджеру. В ручную как-то так: Код: ContractPattern pattern = new ContractPatternManager( con ).getPattern( pattern_id ); String title = ContractPatternManager.getContractTitle( con, pattern, cal ); ContractPatternManager.removeContractTitleFromLastTitles( title ); cont = contractManager.createFromPattern( pattern_id, title, new Date(), "123456" ) Если хотите проверить занятость названия( только БД ): Код: if ( !contractManager.checkContractTitleOnDublication( title, -1 ) )
{ // "Договор уже существует!"; } |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |