Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.08.13;
Скачать: [xml.tar.bz2];

Вниз

TFrame: класс TDATETIMEFIELD не найден   Найти похожие ветки 

 
Rav   (2006-07-23 23:03) [0]

Доброго времени суток!

Раньше фреймы не использовал, но надоело повторять меню, кнопки, фильтры на каждой форме. Короче приспичило подвести фреймы под это дело. Сделал TFrame, на котором TAdoQuery, DbGrid... ну и там всего по мелочи. Все настроил, вроде бы ок. Кидаю этот фрейм на форму. Добавляю поля и текст запроса в TAdoQuery, столбцы в DbGrid. Запускаю - и получаю ошибку "Класс TDATETIMEFIELD не найден". Я так понимаю, ругается как раз фрейм, ясно дело, там такого поля еще и нет, я его в форме определил. Но как теперь выкрутится?
Вдогонку еще вопрос: можно ли на фрейм в форме накидать компонентов? (конкретно: если я в фрейме поместил панель, на которой показываются данные из таблицы - TDbText, но поскольку таблицы бывают разные, хотелось бы в форме на эту панель (которая включена во фрейм) накидать этих самых TDbText).


 
DrPass ©   (2006-07-23 23:14) [1]

думаю, не хватает
uses DB в модуле с фреймом


 
jack128 ©   (2006-07-23 23:15) [2]

Rav   (23.07.06 23:03)
Раньше фреймы не использовал, но надоело повторять меню, кнопки, фильтры на каждой форме. Короче приспичило подвести фреймы под это дело. Сделал TFrame, на котором TAdoQuery, DbGrid... ну и там всего по мелочи. Все настроил, вроде бы ок. Кидаю этот фрейм на форму. Добавляю поля и текст запроса в TAdoQuery, столбцы в DbGrid. Запускаю - и получаю ошибку "Класс TDATETIMEFIELD не найден". Я так понимаю, ругается как раз фрейм, ясно дело, там такого поля еще и нет, я его в форме определил. Но как теперь выкрутится?

кидай минимально возможные сорцы, которые воспроизводят глюк.
Rav   (23.07.06 23:03)
Вдогонку еще вопрос: можно ли на фрейм в форме накидать компонентов?

можно.


 
Rav   (2006-07-23 23:23) [3]


> DrPass
> думаю, не хватает
> uses DB в модуле с фреймом

Есть он там - unit DbGridFrame;
uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
 ToolWin, ComCtrls, Grids, DBGrids, DBCtrls, RXDBCtrl, ActnList, Menus, Db,   ADODB,
 RavDbCustom, RavDbGridTuner, RavDbFind, RavDbOrder, RavDbFilter, DBActns,
 RavDbColorGrid;


 
Rav   (2006-07-23 23:36) [4]

В
> кидай минимально возможные сорцы, которые воспроизводят
> глюк.

Иерархия такова: FrameDbGrid - TADOQuery + TDataSource + TDbGrid (+ мои компоненты: фильтр, сортировка, поиск, настройка полей). Его вставляю в FrameTable - Там все это "обвязываю" меню, панелью TToolBar, TStatusBar, а также добавляю TPanel для вывода детализированных сведений записи. FrameTable уже вставляю в форму TFormChFio и определяю поля. (В FrameDbGrid TAdoQuery "девственно чист" - полей в нем нет).
При попытке создать экземпляр формы - ошибка (метод OnCreate формы даже не вызывается, значит глюк где-то на уровне HistViewer := TFormChFio.Create(Application.MainForm);).


> можно.

не получается :-( вставляемые компоненты "проваливаются" на форму, за TFrame, соответственно за панель. Как воткнуть в фреймовую панель - пока не понимаю...

Вот как опеделен "первичный" фрейм:

 TFrameDbGrid = class(TFrame)
   ActionList: TActionList;
   DbGridPopupMenu: TPopupMenu;
   Query: TADOQuery;
   DataSource: TDataSource;
   DbGrid: TRDbStyledGrid;
   RDbFilter: TRDbFilter;
   RDbOrder: TRDbOrder;
   RDbFind: TRDbFind;
   RDbGridTuner: TRDbGridTuner;
   DataSetFirst: TDataSetFirst;
   DataSetLast: TDataSetLast;
   DataSetNext: TDataSetNext;
   DataSetPrior: TDataSetPrior;
   itemDataSetFirstP: TMenuItem;
   itemDataSetPriorP: TMenuItem;
   itemDataSetNextP: TMenuItem;
   itemDataSetLastP: TMenuItem;
   FindRecord: TAction;
   FilterUser: TAction;
   FilterDefault: TAction;
   FilterClear: TAction;
   SortUser: TAction;
   SortDefault: TAction;
   ColumnsUser: TAction;
   ColumnsDefault: TAction;
   menuDataP: TMenuItem;
   itemFindRecordP: TMenuItem;
   itemFilterUserP: TMenuItem;
   itemFilterDefaultP: TMenuItem;
   itemFilterClearP: TMenuItem;
   itemSortUserP: TMenuItem;
   itemSortDefaultP: TMenuItem;
   itemColumnsUserP: TMenuItem;
   itemColumnsDefaultP: TMenuItem;
   divN1: TMenuItem;
   divN2: TMenuItem;
   divN3: TMenuItem;
   divN4: TMenuItem;
   divN5: TMenuItem;
   divN6: TMenuItem;
   InsertRecord: TAction;
   EditRecord: TAction;
   DeleteRecord: TAction;
   itemInsertRecordP: TMenuItem;
   itemEditRecordP: TMenuItem;
   itemDeleteRecordP: TMenuItem;
   ExportExcel: TAction;
   menuReportsP: TMenuItem;
   itemExportExcelP: TMenuItem;
   DataSetRefresh: TAction;
   itemDataSetRefreshP: TMenuItem;
   procedure PostError(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction);
   procedure DeleteError(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction);
   procedure InsertRecordUpdate(Sender: TObject);
   procedure InsertRecordExecute(Sender: TObject);
   procedure EditRecordUpdate(Sender: TObject);
   procedure EditRecordExecute(Sender: TObject);
   procedure DeleteRecordUpdate(Sender: TObject);
   procedure DeleteRecordExecute(Sender: TObject);
   procedure ExportExcelUpdate(Sender: TObject);
   procedure ExportExcelExecute(Sender: TObject);
   procedure InterlalOnChange(DataSet: TDataSet);
   procedure FindRecordUpdate(Sender: TObject);
   procedure FindRecordExecute(Sender: TObject);
   procedure FilterUserUpdate(Sender: TObject);
   procedure FilterUserExecute(Sender: TObject);
   procedure FilterDefaultUpdate(Sender: TObject);
   procedure FilterDefaultExecute(Sender: TObject);
   procedure FilterClearUpdate(Sender: TObject);
   procedure FilterClearExecute(Sender: TObject);
   procedure SortUserUpdate(Sender: TObject);
   procedure SortUserExecute(Sender: TObject);
   procedure SortDefaultUpdate(Sender: TObject);
   procedure SortDefaultExecute(Sender: TObject);
   procedure ColumnsUserUpdate(Sender: TObject);
   procedure ColumnsUserExecute(Sender: TObject);
   procedure ColumnsDefaultUpdate(Sender: TObject);
   procedure ColumnsDefaultExecute(Sender: TObject);
   procedure DataSetRefreshUpdate(Sender: TObject);
   procedure DataSetRefreshExecute(Sender: TObject);
 private
   FFlagEdit: Boolean;
   FSelectQuery: string;
   FBaseFilter: string;
   FOnDataChange: TNotifyEvent;
   FOnDataEdit: TDataSetShowEditorNotifyEvent;
   FOnBeforeInsert: TDataSetNotifyEvent;
   FOnBeforeEdit: TDataSetNotifyEvent;
   FOnBeforeDelete: TDataSetNotifyEvent;
   FOnAfterInsert: TDataSetNotifyEvent;
   FOnAfterEdit: TDataSetNotifyEvent;
   FOnAfterDelete: TDataSetNotifyEvent;
   FOnBeforeInsertPost: TDataSetNotifyEvent;
   FOnBeforeEditPost: TDataSetNotifyEvent;
   FOnAfterInsertPost: TDataSetNotifyEvent;
   FOnAfterEditPost: TDataSetNotifyEvent;
   FOnExportExcel: TDataSetNotifyEvent;
   procedure InitEvents;
 public
   procedure InitFrame(const AEditEnable: Boolean);
   procedure DoneFrame;
   procedure LoadTable(const SelectQuery, BaseFilter: string);
   procedure ReloadTable;
   function  ShowRecordEditor: Boolean;
   function  GetTableInfo: string;
 published
   property EditEnable: Boolean read FFlagEdit write FFlagEdit default False;
   property OnDataChange: TNotifyEvent read FOnDataChange write FOnDataChange;
   property OnDataEdit: TDataSetShowEditorNotifyEvent read FOnDataEdit write FOnDataEdit;
   property OnBeforeInsert: TDataSetNotifyEvent read FOnBeforeInsert write FOnBeforeInsert;
   property OnBeforeEdit: TDataSetNotifyEvent read FOnBeforeEdit write FOnBeforeEdit;
   property OnBeforeDelete: TDataSetNotifyEvent read FOnBeforeDelete write FOnBeforeDelete;
   property OnAfterInsert: TDataSetNotifyEvent read FOnAfterInsert write FOnAfterInsert;
   property OnAfterEdit: TDataSetNotifyEvent read FOnAfterEdit write FOnAfterEdit;
   property OnAfterDelete: TDataSetNotifyEvent read FOnAfterDelete write FOnAfterDelete;
   property OnBeforeInsertPost: TDataSetNotifyEvent read FOnBeforeInsertPost write FOnBeforeInsertPost;
   property OnBeforeEditPost: TDataSetNotifyEvent read FOnBeforeEditPost write FOnBeforeEditPost;
   property OnAfterInsertPost: TDataSetNotifyEvent read FOnAfterInsertPost write FOnAfterInsertPost;
   property OnAfterEditPost: TDataSetNotifyEvent read FOnAfterEditPost write FOnAfterEditPost;
   property OnExportExcel: TDataSetNotifyEvent read FOnExportExcel write FOnExportExcel;
 end;



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

Форум: "Начинающим";
Текущий архив: 2006.08.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.045 c
2-1153524835
Батыр
2006-07-22 03:33
2006.08.13
Размер папки


11-1131278061
Haker
2005-11-06 14:54
2006.08.13
wordwrap в KOLRichEdit


2-1153565838
Andrey Kad.
2006-07-22 14:57
2006.08.13
Диалог для указания директории для сохранения в нее файлов.


1-1151428916
Наиль
2006-06-27 21:21
2006.08.13
COM-объект и слово SET


2-1153811497
fedpavel
2006-07-25 11:11
2006.08.13
Есть что нибудь почитать





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский