Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Master/Detail (batch mode) - Insert
|
|||
|---|---|---|---|
|
#18+
Есть такая проблема : Мастер : LockType = ltOptimistic, Detail : ltBatchOptimistic, Делаем insert в мастер таблицу заполняем поля, post пока не делаем. Делаем insert в detail, заполняем корректно поля, делаем post - введенная в detail запись ИСЧЕЗАЕТ (остается от нее один ключ связи) ! Выяснил - виноват кусок в ADODB function TCustomADODataSet.InternalGetRecord(Buffer: PChar; GetMode: TGetMode; DoCheck: Boolean): TGetResult; begin if (Assigned(FParentDataSet) and FParentDataSet.Active and (FParentDataSet.IsEmpty or (FParentDataset.State = dsInsert))) or (MasterDataLink.Active and (DataSource.DataSet.IsEmpty or (DataSource.DataSet.State = dsInsert))) then begin Result := grEOF; Exit; end; .... Понятно, что можно скорректировать, убрав дурацкую проверку прямо в ADODB, но как-то нехорошо это... Нигде в Инете нет ссылок на такой трабл (точнее есть один топик в Usenet - вопрос без ответов :-). Сталкивался ли кто-то с таким ? Нет ли методов нормальной корректировки (в унаследованном классе), у меня так не получилось из-за того, что InternalGetRecord невиртуальна, а GetRecord хоть виртуальна, да работает с private FFilterBuffer, который еще дофига за собой тащит... Непонятки... То ли никто не пользует такой подход (редактирование шапки документа + табличной части), то ли master/detail не пользуют, странно это все... Платформа - Delphi 7, MSDE 2000, ADO-разные версии пробовал, пока не локализовал проблему... Вот и опять повод на VCL поругаться... Кстати TBetterADODataset пробовал - там это тоже не решено... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2003, 18:26 |
|
||
|
|

start [/forum/topic.php?fid=58&gotonew=1&tid=2117031]: |
0ms |
get settings: |
7ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
60ms |
get topic data: |
9ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 253ms |
| total: | 401ms |

| 0 / 0 |
