Вниз
Скачать: CL | DM;

Не создается таблица в рантайм   Найти похожие ветки 

← →
mamonth ©   (2003-01-05 12:44) [0]

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

З.Ы. Такого точно нигде больше нет, неужели никто с таким не сталкивался?!

//Код запускается в
//1 - начале работы программы, если файл не существует
//2 - процессе работы, если происходит смена суток (глюк!)
Table1.Close;
//Директория с базой
Table1.DatabaseName:=ProgDir;
//Название таблицы
Table1.TableName:=getDstFileName;
//Тип таблицы
Table1.TableType:=ttDBase;
if not Table1.Exists then
begin
//Если файл не существует - создаем
{Создать поля}
with Table1.FieldDefs do
begin
Clear;
//Поле даты
Add("Date", ftDate, 0, true);
//Поле времени
Add("Time", ftTime, 0, true);
//Поля данных
for n:=1 to Length(DeviceName) do
begin
with AddFieldDef do
begin
Name := DeviceTableName[n-1];
DataType := ftFloat;
Size:=0;
//Количество знаков после запятой (не работает)
Precision:=2;
Required := False;
end;
end;
//Создать таблицу
Table1.CreateTable;
end;
end;
//Активировать таблицу
Table1.Open;


Наверное лишнего написал, но лучше лишнее, чем непонятно..
Глюк вылазит на Table1.CreateTable;
Мастера, помогите!!!


← →
Mike Kouzmine   (2003-01-05 13:24) [1]

А если так
Table1.Close
Table1.free;
Table1 := TTable.Create;


← →
Verg ©   (2003-01-05 13:25) [2]


> Table1.DatabaseName:=ProgDir;

По-моему, где-то здесь неверно.
Типа, DataBaseName - это имя базы данных, заданное у компонента TDataBase.DataBaseName, а не путь до каталога c базой данных.

Если уж компонент TDataBase не используешь, то задавай путь до таблицы в TableName, а поле DataBaseName оставляй пустым.


← →
Mike Kouzmine   (2003-01-05 13:32) [3]

Table1.DatabaseName может иметь значение как ProgDir (алиас), так и c:\gdetotam


← →
Verg ©   (2003-01-05 13:55) [4]


> Table1.DatabaseName может иметь значение как ProgDir (алиас),
> так и c:\gdetotam


Тогда уж c:\gdetotam \



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

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



Память: 0.46 MB
Время: 0.012 c
1-72390
avr555
2003-01-13 15:43
2003.01.23
Освобождение памяти


1-72380
kserg@ukr.net
2003-01-10 17:57
2003.01.23
как к MainMenu в качестве SubMenu прилепить PopupMenu


3-72149
Андрю-ХА!
2003-01-02 17:02
2003.01.23
Сортировка в TCustomDBGrid


8-72419
Link
2002-10-06 14:54
2003.01.23
Распечатка графика


3-72090
vvolkov
2002-12-28 16:12
2003.01.23
Можно ли к TQuery добавить калькулируемое поле?




   Наверх