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

Вниз

Как скопировать строку в ADOQuery?   Найти похожие ветки 

 
Uran   (2005-07-13 11:36) [0]

мастера, подскажите пожалуйста ...
необходимо релазиовать процедуру в которую передается DataSet, и значение ключиевого, поля. Необходимо что бы это процедура скопировала строку с переданным значением ключевого поля в новую строку.
Подскажите пожалуйста как это лучше реализовать.


 
ANB ©   (2005-07-13 11:37) [1]

Клчевое поле тоже будешь дублировать ?


 
Uran   (2005-07-13 11:55) [2]

Нет ... продублировать нужно все кроме ключевого поля.
Оно счетчиком генерируется.


 
ЮЮ ©   (2005-07-13 12:08) [3]

>которую передается DataSet, и значение ключиевого, поля.

А где уверенность, что в этом датасете есть запись с этим ключом?
И куда вставлять? В DataSet или таблицу?


 
sniknik ©   (2005-07-13 12:11) [4]

> Подскажите пожалуйста как это лучше реализовать.
это лучше не реализовывать. т.к. есть подозрение (> "Оно счетчиком генерируется."), что нужно оно тебе для передачи в запрос на вставку в другую таблицу... копирование такое своеобразное.
так вот если так, или хотябы подобное, то это принципиально неверный подход.


 
Slym ©   (2005-07-13 12:53) [5]

procedure Copy(DataSet:TDataSet;const KeyField:string;KeyValue:Variant);
var i:integer;
Data:array of variant;
begin
if not DataSet.Locate(KeyField,KeyValue,[]) then exit;
SetLength(Data,DataSet.FieldCount);
for i:=0 to DataSet.FieldCount-1 do
Data[i]:=DataSet.Fields[i].Value;

DataSet.Append;
for i:=0 to DataSet.FieldCount-1 do
begin
if DataSet.Fields[i].FieldName=KeyField then continue;
DataSet.Fields[i].Value:=Data[i];
end;
DataSet.Post;
end;


 
Uran   (2005-07-13 14:28) [6]

Slym спасибо большое! :) то что надо!:)



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

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

Наверх




Память: 0.47 MB
Время: 0.041 c
1-1123000525
deamon_t
2005-08-02 20:35
2005.08.21
Вызов функции


3-1121080660
Dyakon_Frost
2005-07-11 15:17
2005.08.21
Ошибка при выводе информации в DBGrid!


1-1122626595
Виталька 2005
2005-07-29 12:43
2005.08.21
В Excel XP работает ,а в Excel 97 нет:(


3-1120751559
Alex77777
2005-07-07 19:52
2005.08.21
Поиск значения при вводе


6-1115806018
Progh
2005-05-11 14:06
2005.08.21
Получение локального IP адреса