Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблема с ClientDataSet в связке Master-Detail [D7, FireBird]


johnden ©   (2010-12-17 10:20:00) 

Здравствуйте, Мастера! У меня трехзвенка FireBird 2.5 - (FIBPlus 6) - Сервер приложений - (DataSnap) - Клиент. Использую Delphi 2010 .Так вот, на клиенте есть два TClientDataSet'а в связке Master-Detail (Через MasterSource и MasterFields).  Устанавливаем текущую запись мастера, которая имеет детали - подчиненные записи отображаются нормально. Далее переходим в мастере на запись не имеющюю деталей - тоже все в порядке с отображением подчиненных. А теперь переходим снова на запись мастера, имеющую подчиненные - и видим ЗАДУБЛИРОВАННЫЕ подчиненные записи !!!. Причем если продолжать повторять эту последовательность действий, то количество дублей увеличивается на один. В чем может быть причина? И как с этим бороться? Пробовал и Delphi 7 - тот же результат.


JohnDen   (2010-12-18 17:08:00) [1]

Johnmen, спасибо за попытку помочь! Отображалось в стандартном DBGride, но эти дубли плодились в самом ClientDataSet.


JohnDen   (2010-12-18 17:02:00) [2]

Проблему решил. Оказывается в TClientDataSet деталей было PackedRecords=0 %)  Такой глюк IDE: если изменяешь MasterSource, то PackedRecords присваивается 0


Johnmen   (2010-12-18 16:58:00) [3]

Чем отображается?


Наверх

Титульная страница Поиск, карта сайта Написать письмо