forum.bitel.ru
http://forum.bitel.ru/

скриптом поменять значение списка в справочнике
http://forum.bitel.ru/viewtopic.php?f=19&t=9194
Страница 1 из 1

Автор:  Lesto [ 28 апр 2014, 13:11 ]
Заголовок сообщения:  скриптом поменять значение списка в справочнике

Доброго времени суток.
Есть справочник "Договор - значения списков", в нем есть "Представители" - список имен.
Вложение:
12.JPG
12.JPG [ 51.11 КБ | Просмотров: 2744 ]

в скрипте надо проверить есть ли имя в списке, если нет добавить.

Автор:  Artur [ 28 апр 2014, 15:17 ]
Заголовок сообщения:  Re: скриптом поменять значение списка в справочнике

А разве вам данная тема не подошла? http://forum.bitel.ru/viewtopic.php?f=19&t=9133

Автор:  Lesto [ 28 апр 2014, 15:36 ]
Заголовок сообщения:  Re: скриптом поменять значение списка в справочнике

точно. я тогда не понял. сейчас свежим взглядом осознал... простите, что расплодил однотипные вопросы :)

Автор:  Lesto [ 28 апр 2014, 16:03 ]
Заголовок сообщения:  Re: скриптом поменять значение списка в справочнике

хотя, нет. не осознал.
как я понял, надо посмотреть есть ли такое имя в базе. таким запросом.
Код:
query = "SELECT * FROM contract_parameter_type_7_values WHERE pid=17 and title=" + name;

а как его выполнить? :)
и в каком виде получу ответ?

Автор:  Artur [ 28 апр 2014, 16:22 ]
Заголовок сообщения:  Re: скриптом поменять значение списка в справочнике

Можно смотреть в БД как вы привели, можно с помощью API.
Опишу оба примера:
1)
Код:
String query = "SELECT * FROM contract_parameter_type_7_values WHERE pid=17 and title=?";
PreparedStatement ps = con.prepareStatement(query);
ps.setString(1, name);
ResultSet rs = ps.executeQuery();
if( rs.next() )
{
//если сюда попали, значит в бд есть запись с таким ФИО
}
else
{
//код, который приводился прежде для добавления нового значения.
}


2)
Код:
Set<Integer> set = new HashSet<Integer>();
set.add(pid);
//получаем все параметры договора и среди них нужный списковый параметр
ListParamValue existParam = new ContractParameterManager(con).getListParamValueMap(contractId, set).get(pid);
//проверка значения и дальнейшие действия.



PS. Код писал по памяти, возможно, нужны будут уточнения =)

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/