Форум: "Базы";
Текущий архив: 2003.04.28;
Скачать: [xml.tar.bz2];
ВнизИспользование AppendRecord Найти похожие ветки
← →
Patrick (2003-04-09 15:39) [0]Есть фрагмент программы
var ind : integer;
Varray : array of TVarRec;
begin
MainDataModule.qMarks.Edit;
MainDataModule.qMarks.FieldByName("ReportSort").AsInteger := MaxMark + 1;
MainDataModule.qMarks.Post;
Inc(MaxMark);
for ind := 0 to MainDataModule.qMarks.FieldCount - 1 do
begin
SetLength( Varray, ind + 1);
New(Varray[ind].VVariant);
Varray[ind].VVariant^ := MainDataModule.qMarks.Fields[ind].asVariant;
end;
MainDataModule.qMarks.Delete;
MainDataModule.qMarks.AppendRecord(Varray);
Суть такова
Изменяю запись в Query, затем запоминаю ее в массив, удаляю ее, и делаю AppendRecord, но что-то видно напутал и во вновь введенную запись помещаются неверные значения из массива, точнее видимо не тот байт из структуры TVarRec,посоветуйте что-нибудь,please.
← →
Жук (2003-04-09 16:00) [1]А зачем такие сложности ?
← →
Жук (2003-04-09 16:15) [2]Что-то вроде этого должно быть :
> MainDataModule.qMarks.Delete;
MainDataModule.qMarks.Append;
for ind := 0 to MainDataModule.qMarks.FieldCount - 1 do
MainDataModule.qMarks.Fields[ind].asVariant:=Varray[ind].VVariant^;
MainDataModule.qMarks.Post;
← →
Patrick (2003-04-09 16:17) [3]Я понимаю, что подобное можно сделать более простым способом, но мне необходимо тасовать записи внутри DataSet, при всем при том не делая ApplyUpdates, может есть какие-либо варианты?
← →
Patrick (2003-04-09 16:21) [4]Просто хотел попробовать именно AppendRecord, по типу считал запись в массив, а затем в нужный момент добавил, или вставил или изменил.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.04.28;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c