Справочник по компонентам Дельфи

Автор: Пользователь скрыл имя, 06 Февраля 2013 в 01:52, аттестационная работа

Описание работы

Класс TList -- универсальный список. Он представляет собой массив нетипированных указателей и поэтому годится для хранения набора любых, в том числе разнотипных, данных и объектов. При добавлении/удалении в список данные не создаются и не уничтожаются -- эта обязанность лежит на программисте. Приведем доступные ему методы и свойства класса.

Работа содержит 1 файл

componens.doc

— 980.33 Кб (Скачать)

 

 

procedure EditRangeStart;

Действует аналогично предыдущему методу, изменяя значение начального ключа.

procedure EmptyTable;

Уничтожает все записи таблицы, которая определяется свойствами DatabaseName, TableName и TableType. Для открытой таблицы должно быть включено свойство Exclusive.

procedure EnableControls;

Восстанавливает соединение со всеми компонентами TDataSource, связанными с данным компонентом и временно отключенными методом DisableControls.

function FieldByName(const FieldName: String): TField;

Возвращает ссылку на экземпляр объекта TField и удобна для работы с конкретным полем. Ее использование не нарушает структуры таблицы, в отличие от применения свойства Fields. Параметром FieldName передается название поля.

function FindField(const FieldName: String): TField;

Возвращает ссылку на экземпляр объекта TField, используя имя, передаваемое параметром PieldName. Не изменяет структуру таблицы. В случае отсутствия заданного поля возвращает nil.

function FindKey(const KeyValues: array of const): Boolean;

Предназначен для поиска записи по индексу. Параметр KeyValues задает список полей индекса. Метод устанавливает набор данных в состояние SetKey. В случае успеха функция возвращает True и перемещает курсор на наиденную запись, в случае неудачи возвращается False.

procedure FindNearest(const KeyValues: array of const);

Находит запись, индекс которой больше или равен заданному параметром KeyValues. Курсор перемещается на найденную запись. Для поиска могут использоваться только строковые поля. По умолчанию используются первичные индексы, задание необходимых значений свойств IndexFieldNames или IndexName позволяет проводить поиск по другим индексам. Для таблиц Paradox и dBase метод применим только к индексированным полям, а для баз SQL -- ко всем полям, определенным свойством IndexFieldNames.

procedure First;

Устанавливает курсор на первую запись текущего расположения записей набора данных. На результат влияет применение метода SetRangeStart.

procedure FreeBookmark(Bookmark: TBookmark) ; TBookmark = Pointer;

Освобождает системные ресурсы, используемые методом GetBookmark. Параметр Bookmark задает идентификатор используемой закладки.

function GetBookmark: TBookmark;

Устанавливает закладку на текущей записи, к ней можно вернуться в любой момент при помощи метода GotoBookmark. Возвращает указатель на экземпляр закладки типа TBookmark. Все установленные закладки уничтожаются при закрытии таблицы или изменении индексов.


 

procedure GetFieldNames(List TStrings) ;

procedure GetIndexNames(List TStrings) ;

procedure GotoBookmark(Bookmark: TBookmark) ;

: Записывает имена полей набора данных в параметр List.

Записывает все индексы набора данных в параметр List.

Позиционирует курсор на записи, которой соответствует закладка, указатель на которую передается в параметре Bookmark.

procedure GotoCurrent(Table: TTable);

Используется для совмещения курсоров двух экземпляров компонента, которые используют одну и ту же таблицу. Изменяется положение курсора того компонента, который задан параметром Table. Для выполнения метода необходима идентичность свойств DatabaseName и TableName обоих экземпляров компонента.

function GotoKey: Boolean;

procedure GotoNearest procedure Insert;

procedure InsertRecordfconst Values: array of constIt-

Перемещает курсор на запись, определяемую ключом. Возвращает True в случае успешного поиска. Используется совместно с методами SetKey или EditKey. Если для ключа используется несколько полей, то их число необходимо задать свойством KeyFieldCount.

Используется для перехода к записи, чей индекс равен пли больше значения свойства IndexField. Поиск проводится с первой записи. Используется совместно с методами SetKey и EditKey.

Переводит набор данных в состояние Insert и вставляет на месте курсора новую пустую запись. При наличии в таблице индексов метод размещает новую запись в соответствие с ними.

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

procedure Last;

Перемещает курсор на последнюю запись текущего порядка расположения записей. На результат влияет использование метода SetRangeEnd.

procedure MoveBy(Distance: Integer) ;

П H

Перемещает курсор на число записей, задаваемое параметром Distance. При положительном значении параметра перемещение осуществляется по направлению к концу'таблицы.

 

 

Перемещает курсор на одну запись к концу таблицы.

procedure Open; 0

В

A Открывает набор данных, находящийся в состоянии

Browse. Аналогичным действием обладает свойство Active = Тше.


 

procedure Post;

Производит передачу текущей записи в базу данных. Результат зависит от состояния набора данных (см. свойство State): в Edit запись модифицируется, в Insert запись вставляется или добавляется в конец таблицы, в SetKey измененные поля помещаются в буфер ключа поиска и для набора данных устанавливается состояние Browse. Метод вызывается автоматически при перемещениях по таблице при помощи методов First, Last, Next, Prior, MoveBy, если набор данных находится в состояниях Edit или Insert. Post вызывается также для методов Append, AppendRecord, Insert, InsertRecord, если есть данные, нуждающиеся в обновлении. Если метод не может записать данные в базу, то набор данных устанавливается в состояние Edit.

procedure Prior;

Перемещает курсор на одну строку к началу таблицы.

procedure Refresh;

Обновляет набор данных, читая информацию из базы данных. Применение метода может вызвать противоречие с текущим набором данных компонента, так как не все проведенные приложением изменения могут быть переданы в базу или другие пользователи могут изменить используемую таблицу.

procedure SetFields(const Values: array of const) ;

Изменяет значения полей таблицы, используя массив данных, передаваемый параметром Values. Для успешного применения метода необходимо установить набор данных в состояние Edit. При значении Values = nil, поля устанавливаются в предопределенные значения.

procedure SetKey;

Устанавливает для набора данных состояние SetKey (см. свойство State), которое позволяет осуществлять поиск записей по задаваемым в буфере ключей поиска значениям. Буфер представляет собой набор полей, связанных с табличными ключевыми полями. Метод отличается от процедуры EditKey тем, что уничтожает старое содержимое буфера.

procedure SetRange(const StartValues, EndValues: array of const);

Объединяет методы SetRangeStart, SetRangeEnd, ApplyRange и используется для переупорядочивания данных. Параметр StartValues используется для определения начального индексного ключа, а массив EndValues для конечных ключей. В таблицах баз Paradox и dBase метод применим только для индексированных полей, а в SQL -- для всех колонок, определенных свойством IndexFieldNames.

procedure SetRangeEnd;

Задает набор ключей конца последовательности для последующей фильтрации записей таблицы. Метод очищает набор ранее определенных ключей. Результат используется методом ApplyRange. В таблицах баз Paradox и dBase метод применим только для индексированных полей, а в SQL -- для всех колонок, определенных свойством IndexFieldNames.


 

procedure SetRangeStart;

 

 

Задает набор ключей начала последовательности. В остальном аналогичен предыдущему методу.

Устанавливает курсор BDE в положение текущего курсора компонента.

procedure UpdateRecord;

Автоматически вызывается после применения метода Post и сообщает всем связанным компонентам TDataSource о факте изменения исходной таблицы в базе данных для последующей передачи изменений визуальным компонентам отображения данных.


 

Опции, поддерживаемые СУБД Paradox и dBase приведены в таблице.

Опции

ixCaseInsensitive ixDescending

 

 

Paradox

+

dBase

.

+

+ +

ixNonMaintained

+

ixPrimary

+

 

 

ixUnique

 

 

+


 

Компонент TQuery

TObject--"TPersistent->TComponent-"TDataSet->TDBDataSet->TQuery

Модуль DBTABLES

Страница Палитры компонентов Data Access

Используется приложением для связи с SQL-серверами через BDE, открывает доступ к использованию языка SQL для создания запросов с целью получения данных от SQL-сервера. Компонент незаменим при построении приложений клиент/сервер. Передает данные визуальным компонентам через связанный компонент TDataSource. TTable и TQuery имеют много общих свойств, обработчиков событий и методов, поэтому ниже будут описаны только уникальные инструменты компонента.

Свойства компонента

 

 

(Wf property Local: Boolean;

 

 

Принимает значение True, если связанная с компонентом таблица принадлежит локальным базам Paradox или dBase. False устанавливается в случае использования таблиц SQL-сервера.

Отражает число записей, содержащихся в массиве свойства Params, т. е. количество параметров, содержащихся в запросе.

(Ro) property ParainCount: Word;


 

 

(Ro) property Params: TParams ;

Представляет собой массив экземпляров объекта TParam и определяет характеристики всех параметров запроса.

property Prepared: Boolean;

В значении True сообщает о вызове метода Prepare. Перед изменением свойства необходимо закрыть набор данных (Active = False).

(р1э) property RequestLive: boolean;

Для результата запроса устанавливает режим "Только для чтения" при значении False. В True разрешает режим обновления набора данных только в случае использования ограниченного синтаксиса запросов. В противном случае, при использовании локального SQL, устанавливается режим "Только для чтения".

(Pb) property SQL: TStrings;

Содержит текст запроса SQL, который будет выполнен при вызове методов Open или ExecSQL. При предполагаемом использовании метода Open перед изменением свойства необходимо закрыть набор данных (метод Close). Для изменения свойства при выполнении приложения, необходимо использовать методы Clear (уничтожение предыдущего состояния) и Add (новое состояние) объекта TSrings. Для загрузки готового запроса из файла используйте метод LoadFromFile.

(fio) property StmtHandle: HDBIStmt;

Позволяет компоненту получить прямой доступ к функциям API BDE, использующим результаты запросов.

(Ro) property Text: PChar;

Содержит запрос SQL, передаваемый BDE.

(Pb) property UniDirectional: Boolean;

При значении True разрешает перемещение по набору данных результатов запроса только вперед. Этот режим позволяет экономить системные ресурсы, так как не проводится кэширование данных. По умолчанию установлено в False.


 

Ограничения синтаксиса для запросов к локальным Paradox и dBase:

* используются запросы только к одной таблице;

* нельзя использовать ORDER BY;

* запрещены функции AVG и SUM;

* запрещены вычисляемые поля (запрет распространяется только на запросы, в самом компоненте такие поля разрешены);

* WHERE разрешается использовать только для сравнения имен колонок и скалярных констант;

* допускаются операторы сравнения LIKE,>,<,>=,<=.

Обработчики событий У компонентов TQuery и TTable полностью совпадают.

Методы компонента

procedure ExecSQL;

Выполняет запрос, содержащийся в свойстве SQL. Этот метод используется при наличии в запросе предложений INSERT, UPDATE, DELETE или любых-предложений Data Definition Language.

 

 

Выполняет запрос, если он предусматривает возвращение результата (используется предложение SELECT), в противном случае используется метод ExecSQL.

function ParamByName(const Value: String): TParam;

Возвращает элемент свойства Params, используя параметр Value.

procedure Prepare;

Посылает запрос в BDE для проверки синтаксиса и оптимизации. Использование метода необязательно, но очень полезно для динамических запросов, которые выполняются неоднократно, так как в противном случае подготовка запроса будет выполняться автоматически каждый раз.

procedure UnPrepare;

Устанавливает свойство Prepared в False. В этом случае запрос (свойство SQL) будет транслирован еще раз перед передачей на сервер. При этом сервер получает сообщение о возможности освободить ресурсы, связанные с проверкой запроса, так как новый запрос будет отправлен перед вызовом методов ExecSQL или Open.


 

Компонент TStoredProc

TObject->TPersistent->TCornponent-"TDataSet-^TDBDataSet-"TStoredProc

Модуль DBTABLES

Страница Палитры компонентов Data Access

Позволяет приложению использовать хранимые процедуры сервера базы данных. Хранимые процедуры являются разновидностью метаданных и могут возвращать как единичные записи, так и наборы данных. TStoredProc имеет

много общего с другими дочерними компонентами объекта TDataSet, поэтому ниже будут описаны только уникальные свойства и методы компонента, все общие параметры рассматриваются выше.

Свойства компонента

(РЬ) property Overload: Word;

Предназначено для использования пакетов хранимых процедур серверов Oracle. Означает порядковый номер используемой перезагружаемой хранимой процедуры. Значение по умолчанию -- 0.

(Pb) property ParamBindMode: TTParamBindMode; TParamBindMode = (pbByName, pbByNumber) ;

Определяет, каким образом элементы массива свойства Params будут связаны с параметрами хранимой процедуры. Значение pbByName подразумевает расположение параметров по именам; pbByNumber располагает параметры в порядке их определения в хранимой процедуре.

(Ro) property ParamCount:Word;

Определяет общее число передаваемых и получаемых параметров хранимой процедуры.

(Pb) property Params: TParams;

Содержит массив параметров хранимой процедуры.

property Prepared: Boolean;

В значении True инициирует процесс оптимизации хранимой процедуры на сервере. Аналогично по действию методу Prepare. При значении False работает как метод UnPrepare.

(Pb) property StoredProcName: String;

Определяет имя хранимой процедуры на сервере.


 

Обработчики событий

У компонентов TQuery, TTable и TStoredProc полностью совпадают.

Методы компонента

procedure CopyParams(Value: TParams) ;

Копирует всю информацию о параметрах хранимой процедуры в параметр Value.

function DescriptionsAvailable: Boolean;

Возвращает True, если в передаваемых хранимой процедуре параметрах содержится вся необходимая серверу информация. В случае недостатка данных возвращается False.


 

procedure ExecProc;

Выполняет хранимую процедуру. Используется при ожидаемом возвращении одной записи в результате.

procedure GetResults;

Используется только для получения результата выполнения хранимой процедуры сервера SyBase, так как сервер возвращает результат только после достижения курсором последней записи набора данных.

procedure Open;

Выполняет хранимую процедуру. Используется при ожидаемом возвращении группы записей в качестве результата.

procedure Prepare; procedure UnPrepare;

Проводит подготовку выполнения хранимой процедуры на сервере.

Передает серверу сообщение об отказе от использования хранимой процедуры и о необходимости освободить занимаемые ею ресурсы.


 

Компонент TReport

TObject->TPersistent-+TComponent-^TReport

Модуль REPORT

Страница Палитры компонентов Data Access

Позволяет включать в состав разрабатываемого приложения отчеты, генерируемые утилитой ReportSmith и управлять его работой во время выполнения приложения.

Свойства компонента

(Pb) property AutoUnload: Boolean;

Управляет процессом завершения генерации отчета. При значении True ReportSmith выгружается из памяти после генерации отчета.

property Component Index: Integer;

Содержит порядковый номер компонента в списке компонентов.

(My property EndPage: Word;

Определяет номер последней страницы отчета для печати (по умолчанию 9999).

(Pb) property InitialValues: TStrings;

(Pb) property MaxRecords: Word;

Задает список строк, используемых отчетом.

Задает число записей, используемых для генерации отчета.


 

(р5) property Preview: Boolean;

Задает способ просмотра отчета. При значении True отчет отображается на экране монитора, в противном случае печатается.

(Pb) property PrintCopies: Word;

Задает число копий отчета для печати (по умолчанию 1).

(ro) property ReportHandle: HWND;

Определяет дескриптор ReportSmith.

(Pb) property ReportDir: String;

Содержит маршрут доступа к создаваемым отчетам.

(Pb) property ReportName: String;

Определяет имя выполняемого отчета.

(Из) property StarCPage: Word;

Задает номер страницы отчета, с которой начинается печать.

(Ro) property VersionMajor: Integer;

Содержит старший порядок номера версии ReportSmith (например, VersionMajor = 2 для версии 2.5).

(P.o) property VersionMinor: Integer;

Содержит младший порядок номера версии ReportSmith.

Информация о работе Справочник по компонентам Дельфи