Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.17;
Скачать: CL | DM;

Вниз

Добавление данных в TClientDataSet из другого DataSet.   Найти похожие ветки 

 
Alex9801   (2003-02-25 14:58) [0]

Как в TClientDataSet добавить данные, находящиеся в другом DataSet такой же структуры?
ClientDataSet.Insert / InsertRecord частично решают задачу, но добавленные записи имеют статус usInserted и Provider сразу начнет их добавлять в базу, но это не нужно, т.к. они там уже есть. Т.е. Как в TClientDataSet добавить данные из другого DataSet, чтобы добавленные записи имели статус usUnmodified без физического их добавления в базу?


 
Clickmaker ©   (2003-02-25 16:03) [1]

вообще-то провайдер не должен добавлять их в базу, пока не скажешь ApplyUpdates, а до этого он просто кэширует их на клиенте (св-во Delta). И смысл добавления в CDS, если не добавлять потом их в базу ?


 
Alex9801   (2003-02-25 16:32) [2]

Придется объяснить еще раз.
Есть список товаров, которых хранится в некоторой таблице в БД и в ClientDataSet на клиенте. Когда юзер руками добавляет/изменяет/удаляет 1..n записей, а затем вызывает ApplyUpdates, то все работает нормально. Теперь нужно откопировать все товары из одной категории в другую. Причем не переместить, а скопировать.
Т.е. в результате выполнения некоторого запроса в таблицу будет добавлено энное количество записей. Это оформляется в виде отдельной хранимой процедуры, которая помимо добавления делает еще массу полезных вещей, а в конце возвращает добавленные записи в виде набора данных.
Вопрос: Как в ClientDataSet добавить записи из другого DataSet c одновременным сбосом для них статуса из usInserted в usUnmodified. Т.е. чтобы при вызове ApplyUpdates эти данные не добавлялись в БД, т.к. они там уже есть.



Страницы: 1 вся ветка

Текущий архив: 2003.03.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.013 c
1-54021
aade
2003-03-06 22:08
2003.03.17
Проблема с Диалогом открытия файла


9-53833
Николай Быков
2002-10-13 15:17
2003.03.17
ОпенГЛ


9-53834
Nostradamus
2002-10-11 16:27
2003.03.17
Рисование доп. окон


3-53870
Igor Kashtanov
2003-02-24 01:49
2003.03.17
Кодировка


14-54197
frizZ.
2003-02-28 23:16
2003.03.17
Stack Overflow