powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / MemableEh отложенные обновления
8 сообщений из 8, страница 1 из 1
MemableEh отложенные обновления
    #39783833
Алексаша
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.

Delphi 10.2
Ehlib 9

На форме есть мастер датасетs MasterMemeTableEh и DetailMemTableEh. Оба компонента в режиме "With Driver".
У обоих компонентов CachedUpdates := True

Ситуация: вставляю одну запись в MasterMemeTableEh и более одной записи в DetailMemTableEh
В датасете DetailMemTableEh поле DetailFieldsKey наполняется отрицательными значениями. Оно и понято ИД пока неизвестно ...

MasterMemeTableEh.ApplyUpdates(-1)
Уже известен МастерИД. Пробегаюсь по всем записям DetailMemTableEh меняю в поле DetailFieldsKey значение значением ИД правильным с сервера.
Пора сделать DetailMemTableEh.ApplyUpdates(-1) ... И вот в этом моменте вопрос. Выполняются инструкции поочередно кот. были сделаны т.е. инсерт с отрицательным значением в поле DetailFields а потом апдейт. Как сделать сразу инсерт с значениями кот. уже подправлены? Или может както подправить этот буфер инструкций ?
...
Рейтинг: 0 / 0
MemableEh отложенные обновления
    #39783849
Фотография Кроик Семён
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что за датасеты (т.е. какая библиотека компонентов? SDAC и т.д.)?
...
Рейтинг: 0 / 0
MemableEh отложенные обновления
    #39783868
Фотография Кроик Семён
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S.

Я раньше тоже частенько использовал CachedUpdates (библиотека компонентов DOA) и в случае master-detail если не хотел дёргать секвенции, приходилось как и у вас вначале -1 заполнять, потом менять перед отправкой. И это при том, что DOA не отправляет все значения если CachedUpdates, а только последние.

Сегодня же я применяю такой подход: секвенции всегда дёргаю для генерации Primary Key'a, а если нужен счетчик увеличивающийся без пропусков, то завожу в таблице второе поле.

И чего то забил на CachedUpdates, просто ставлю теперь везде Датасет.CommitOnPost=false и либо делаю Commit в конце, либо Rollback.
...
Рейтинг: 0 / 0
MemableEh отложенные обновления
    #39784019
Алексаша
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кроик Семён,

Библиотека Ehlib
...
Рейтинг: 0 / 0
MemableEh отложенные обновления
    #39784052
Vlad F
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексаша,

Мил человек, а почему бы тебе, непосредственно на их форуме об этом и не спросить?
http://forum.ehlib.com/ru/viewforum.php?f=4
...
Рейтинг: 0 / 0
MemableEh отложенные обновления
    #39784149
энди
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Неудобно наверное, мало того что "взял покататься", так еще и позвонить хозяину с просьбой объяснить почему хреново едет :)
...
Рейтинг: 0 / 0
MemableEh отложенные обновления
    #39784159
Vlad F
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
энди,

Во-первых, погоди сразу плохо думать о человеке, а, потом, на сколько помню, на форуме у них, достаточно живом, так уж сразу про чеки и не спрашивают.))
...
Рейтинг: 0 / 0
MemableEh отложенные обновления
    #39784287
Алексаша
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Vlad F,

Там тоже задал. Но по опыту здесь быстрее отвечают :) Может кто сталкивался и есть решение ...
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / MemableEh отложенные обновления
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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