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

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



Память: 0.46 MB
Время: 0.041 c
8-1113485801
vayrus
2005-04-14 17:36
2005.08.21
Windows.Beep


1-1122966066
rolex
2005-08-02 11:01
2005.08.21
На одном компе нужно "." а на другом "," !


14-1122399553
БарЛог
2005-07-26 21:39
2005.08.21
Стихи


14-1122753871
syte_ser78
2005-07-31 00:04
2005.08.21
Что значит "инсталировать"?


1-1122978908
КодеКорешь
2005-08-02 14:35
2005.08.21
Функция в dll




   Наверх