скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Дубликат Paradox или dBase записи



Автор: Eryk Bottomley

Встречаются два администратора: (1)-Юникса, (2)-Винды
(1) - Вот, на работе скукотища - делать совсем нечего. Hикто не жалуется...
(2) - А у меня всегда работа есть - каждые полчаса систему переставляю.
(1) - Hу ни фига себе - ну ты крут. Как ты добился, чтобы винда 30 минут работала???
(2) - Да нет, это она 30 минут переставляется...

Существует ли какое-либо простое решение для Delphi-приложения, позволяющее прочесть запись из первого поля таблицы Paradox (первичный ключ) и потом обратно добавить ее в таблицу в виде новой записи?

Вот одно "кривое" решение:


procedure TForm1.Button1Click(Sender: TObject);
var
  p : CURProps;
begin
  Table2.Insert;
  DbiGetCursorProps(Table1.Handle,p);
  Move(Table1.ActiveBuffer^,Table2.ActiveBuffer^,p.iRecBufSize);
  Table2.FieldByName('ID').AsInteger := Table1.FieldByName('ID').AsInteger + 1;
  Table2.Post;
end;

...это работает на том "основании", что как Table1, так и Table2 ссылаются на один и тот же табличный файл. Вы могли бы осуществить это и с единственным TTable, если сохраните содержание в активном буфере (ActiveBuffer).






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook