Deeptown12
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Цитата: X11 Deeptown12, отобрази индикаторы. | Отобразил, стало более понятно поведение, но все равно неясн 1.До вставки 2.Вставка После Код вставки, SyncMode - True _FIBDs.Append; _FIBDs.FN('SI_GROUP_ID').AsInteger := _FIBDs_Level_Master.FN('ID').AsInteger; // ключ мастера _FIBDs.FN('MARKA').asString := TfrSIEdit(FrameEditing).MARKA.Text; // данные _FIBDs.FN('TIP').asString := TfrSIEdit(FrameEditing).TIP.Text; _FIBDs.FN('NUMBER_REESTR').asString := TfrSIEdit(FrameEditing).NUMBER_REESTR.Text; _FIBDs.Post; после переоткрытия датасета видим что все нормально Понятно что беда возникает т.к. курсор у подчиненной таблице стоит не в той группе, хотя курсор мастера стоит верно, вообщем как сделать так что при вставке в пустой подчиненный level запись попадала именно туда, а не туда где стоит курсор (в другой группе) Ключи и поля выставлены верно, индексы у всех есть Т.е. проблема появляется при вставке подчиненной записи при раскрытом подчиненном Level-е у которого нет данных, т.к. курсор был в другой группе (видно на рисунке что текущий курсор стоит на идикаторах в группе индикаторов) , а запись добавляется в группу метрштоки (мастер курсор на ней), у которой нет данных, соотв. курсор не может стоять на записи подчиненной этой группе при Sync-true то при добавлении cxgrid почему то считает текущей группу не метрштоки , а индикаторы и относит запись туда. При переоткрытии все нормализуется. Как побороть, как принудительно появившуюся запись отнести к view-e метрштоков | Всего записей: 246 | Зарегистр. 22-03-2004 | Отправлено: 13:56 09-07-2013 | Исправлено: Deeptown12, 14:04 09-07-2013 |
|