|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Cannot perform this operation on a closed dataset
Добрый день! Пишу небольшую базу данных на делфи! вроде все делаю правильно , но постоянно выходит ошибка Cannot perform this operation on a closed dataset! Работаю с компонентом kmemtable (позволяет создавать таблицу в памяти, выгружать и загружать). Вот сам код
Код:
if od.Execute then begin sfCSV.CSVQuote:='"'; sfCSV.CSVRecordDelimiter:=','; showmessage('1'); bdcomp1.Active:=true; bdcomp1.Open; if bdcomp1.Active then showmessage('открыта'); bdcomp1.LoadFromFileViaFormat('c:\1.csv',sfCSV); showmessage('открыт111а'); dsbdcomp.DataSet:=bdcomp1; bdcomp1.Active:=true; end; Не смотрите что код кривой, просто я уже проверки делаю на активность базы. А ошибка выходит на строчке bdcomp1.LoadFromFileViaFormat('c:\1.csv',sfCSV); кто что может подсказать, а то у меня вариантов не осталось! Последний раз редактировалось Admin, 03.04.2009 в 10:20. |
#2
|
||||
|
||||
Ты сделал проверку на открытость БД и вывод соответствуещего сообщения об этом ... а вот что сделать если БД не открыта ты не сделал
Дкмаю, лучше будет так: Код:
if od.Execute then begin sfCSV.CSVQuote:='"'; sfCSV.CSVRecordDelimiter:=','; dsbdcomp.DataSet:=bdcomp1; try bdcomp1.Open; try bdcomp1.LoadFromFileViaFormat('c:\1.csv',sfCSV); showmessage('открыт111а'); Except ShowMessage('Ошибка открытия файла'); end; Except ShowMessage('Ошибка открытия БД'); end; end; Поживу - увижу, Доживу - узнаю, Выживу - учту. [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
Последний раз редактировалось Yurk@, 03.04.2009 в 23:06. |