powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / cxgrid колонка checkbox при установке галочки дублирует строки
14 сообщений из 14, страница 1 из 1
cxgrid колонка checkbox при установке галочки дублирует строки
    #39828209
evgen29
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте! Проблема такая(опишу полностью, вдруг ошибка глубже):
есть cxGrid1 и cxgrid2. cxgrid1 привязан к fibdataset1. cxgrid2 привязан к fibdataset2.
fibdataset1 с fibdataset2 связаны через master-detail(fibdataset2 имеет в поле datasource привязку через datasource к fibdataset1)

так вот, cxgrid2 имеет поля id,name,ischecked типа checkbox. При нажатии на checkbox и переходе на другую строку id и name дублируются из первой записи в строке, на которую перешел. Сколько бы раз я не поставил галочку, то сразу id и name в строке, где проставлена галочка, встают такими же, как у первой строки. Но когда закрываю и открываю форму заново, то id и name встают нормальными и галочка на нужных чекбоксах проставлена. Такое впечатление, что cxgrid тащит значения в кеше.
картинка во вложении
...
Рейтинг: 0 / 0
cxgrid колонка checkbox при установке галочки дублирует строки
    #39828237
Hammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
evgen29,

TcxColumn -> Properties -> ImmediatePost = True?
...
Рейтинг: 0 / 0
cxgrid колонка checkbox при установке галочки дублирует строки
    #39828240
Фотография Кроик Семён
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такое чувствo, будто свойство грида .KeyField не выставлено и грид из-за этого сходит с ума
...
Рейтинг: 0 / 0
cxgrid колонка checkbox при установке галочки дублирует строки
    #39828244
evgen29
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hammer, да
...
Рейтинг: 0 / 0
cxgrid колонка checkbox при установке галочки дублирует строки
    #39828245
evgen29
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кроик СемёнТакое чувствo, будто свойство грида .KeyField не выставлено и грид из-за этого сходит с ума
выставил, не помогло к сожалению.
...
Рейтинг: 0 / 0
cxgrid колонка checkbox при установке галочки дублирует строки
    #39828250
Фотография Кроик Семён
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это поле с уникальными значениями?
...
Рейтинг: 0 / 0
cxgrid колонка checkbox при установке галочки дублирует строки
    #39828254
evgen29
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кроик Семён, конечно
1, 2, 3, 4 и тд.

в DBTableView -> DataController -> KeyFieldNames поставил Id, не помогает
сейчас попробую еще связать помимо датасетов и гриды по полю группы.

просто почему-то если не переходить к примеру на новую строку и immediatepost не сработает, а просто нажать галочку зеленую, то как раз после нее идет дублирование, как на картинке
...
Рейтинг: 0 / 0
cxgrid колонка checkbox при установке галочки дублирует строки
    #39828302
evgen29
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
поставил в fibdataset refreshafterpost = false и грид перестал сходить с ума
...
Рейтинг: 0 / 0
cxgrid колонка checkbox при установке галочки дублирует строки
    #39828366
goldmi45
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
evgen29, у fibDataSet есть RefreshSQL. Там нужно прописать запрос на обновление текущей записи, указав параметр ключа с приставкой OLD_evgen29,
...
Рейтинг: 0 / 0
cxgrid колонка checkbox при установке галочки дублирует строки
    #39828368
goldmi45
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
исправил.....
evgen29, у fibDataSet есть RefreshSQL. Там нужно прописать запрос на обновление текущей записи, указав параметр ключа с приставкой OLD_
...
Рейтинг: 0 / 0
cxgrid колонка checkbox при установке галочки дублирует строки
    #39828515
evgen29
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
goldmi45,
у меня RefreshSQL и SelectSQL одинаковы. Вызывают процедуру firebird с кодом группы на входе. Разве RefreshSQL нужен для обновления одной записи, которая изменилась, а не всего набора данных? Просто в процедуру кроме кода группы ничего не передаю. Я могу конечно сделать в процедуре дополнительный параметр на одно поле, но мне просто не совсем понятна суть RefreshSQL

Код: plsql
1.
2.
select * from 
GET_GROUP_RIGHTS(:mas_group_id)
...
Рейтинг: 0 / 0
cxgrid колонка checkbox при установке галочки дублирует строки
    #39828641
goldmi45
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
evgen29, вызов метода refresh будет перечитывать одну текущую запись. И если возвращается набор из нескольких записей, то он берёт первую и обновляет текущую (что у вас и происходит).
Можно так:
Код: sql
1.
2.
select * from GET_GROUP_RIGHTS
where Id=:OLD_Id


Где (select * from GET_GROUP_RIGHTS) - это запрос в SelectSQL, а Id - ключевое поле.
...
Рейтинг: 0 / 0
cxgrid колонка checkbox при установке галочки дублирует строки
    #39828749
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ключевое поле должно быть уникальным
...
Рейтинг: 0 / 0
cxgrid колонка checkbox при установке галочки дублирует строки
    #39828761
evgen29
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
goldmi45,
спасибо, так работает
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / cxgrid колонка checkbox при установке галочки дублирует строки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]