Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
4-54376
paranoid
2003-01-25 20:40
2003.03.17
EnumResourceNames / CALLBACK?


1-54110
UDS
2003-03-05 19:53
2003.03.17
Смена картинки при наведении на неё курсора мыши.


3-53900
Behemoth
2003-02-25 12:41
2003.03.17
Записываются ли данные временной таблицы на винт?


9-53837
Gandalf
2002-10-17 15:01
2003.03.17
Пишем DirectX-движок


8-54116
MPiskunov
2002-12-02 13:24
2003.03.17
Проблема при записи звука TMediaPlayer-ом под win98...




   Наверх