рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Библиотека компонент EhLib - Руководство разработчика

Библиотека компонент EhLib - Руководство разработчика - раздел Программирование,     Библиотека Компонент Ehlib...

 

 

Библиотека компонент EhLib 5.

Руководство разработчика.

EhLib Team

Год

Редакция: 1.52

Оглавление Введение. 4 Установка. 8

Введение

Библиотека EhLib включает в себя компоненты и классы для Borland Delphi версии 5, 6, 7, 8, 2005, 2006, 2007 и Borland C++ Builder версии 5, 6 и предназначена для расширения функциональности клиентской части приложений, работающей с БД: вывод, печать и занесения данных конечным пользователем.

 

TDBGridEh Использование TDBGridEh

Компонент TDBGridEh обеспечивает полную функциональность TDBGrid и добавляет некоторые новые возможности, такие как:

Позволяет выделять записи, столбцы и прямоугольные области.

Копировать/вставлять выделенные области в/из буфера обмена.

Позволяет выводить специальные заголовки столбцов, которые могут объединяться над несколькими/всеми столбцами.

Позволяет выводить нижний колонтитул (footer), для отображения сумм/количеств/др. значений полей.

Позволяет автоматически подгонять размеры столбцов, чтобы ширина всего грида равнялась ширине видимой области окна грида.

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

Позволяет автоматически переносить текст и увеличивать высоту заголовке столбца чтобы уместить весь текст заголовка.

Заголовок столбца может вести себя как кнопка и, опционально, иметь маркер сортировки.

Позволяет автоматически менять маркеры сортировки и сортировать данные в наборе данных (DataSet'е).

Позволяет отсекать длинный текст с отображением многоточия.

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

Позволяет инкрементный поиск в lookup-полях.

Позволяет закреплять для прокрутки несколько первых столбцов сетки (FrozenCols).

Позволяет выводить выпадающий календарь (поддерживается для полей типа TDateField и TDateTimeField).

Позволяет отображать картинки из TImageList зависящие от значения поля.

Позволяет прятать и отслеживать положение вертикальных и горизонтальных полос прокрутки.

Позволяет скрывать столбцы.

Позволяет отображать 3D-рамку для закрепленных разных типов столбцов (строк).

Позволяет отображать memo-поля.

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

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

Позволяет автоматическое отображение checkbox'ов для boolean-полей. Позволяет отображать checkbox'ы для других типов полей.

Имеет процедуры для сохранения/восстановления свойств (видимые столбцы, порядок следования столбцов, их ширины, порядок сортировки, высоту столбца) в/из реестра или INI-файла.

Позволяет отображать подсказки (ToolTips) для текста, не помещающегося в ячейку.

Позволяет экспортировать данные в Text, Csv, HTML, RTF, XLS и внутренний форматы.

Позволяет импортировать данные из Text и внутреннего форматов.

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

Может сортировать данные в различных dataset'ах.

Может фильтровать данные в различных dataset'ах.

 

TDBLookupComboboxEh Использование edit-контролов

Обеспечивает полную функциональность TDBLookupCombobox и добавляет несколько новых возможностей, таких как:

Может иметь flat-стиль.

Позволяет присваивать значения как свойству KeyValue так и свойству Text.

Позволяет присваивать данные свойству Text, не содержащится в списке данных (когда Style = csDropDownEh).

Позволяет хранить данные в KeyValue и Text как не влияющее друг на друга значения. Работает когда свойства KeyField, ListField, ListSource, DataField и DataSource пусты.

Выпадающий список может:

Отображать заголовки,

Изменять размеры,

Автоматически устанавливать ширину как сумму DisplayWidth полей в списке (Width = -1),

Автоматически выпадать при нажатии текстовую клавишу.

Кнопка редактирования может:

Отображать изображения типа DropDown, Многоточие либо произвольную картинку.

Имеет указанную ширину.

Добавлены события: OnKeyValueChanged, OnButtonClick.

 

TDBSumList Использование TDBSumList

Предназначен для общего суммирования и подсчета общего количества записей в TDataSet'е с динамическим отслеживанием изменений. Компонент хранит список объектов TDBSum, которые содержат типы групповых операций (goSum, goCount, ...) и имя суммируемого поля.

 

TPrintDBGridEh Использование TPrintDBGridEh

Компонент TPrintDBGridEh содержит свойства и функции для предварительного просмотра и печати компонента TDBGridEh, и обеспечивает следующие возможности:

Может расширять высоту строки по вертикали при печати, чтобы умещать весь текст.

Может масштабировать grid чтобы уместить его по ширине одной страницы.

Может печатать заголовок grid'а.

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

Печатать выделенную область grid'а.

Печатать Rich-текст перед и после grid'а.

 

TPreviewBox

TPreviewBox позволяет создавать настраиваемое в run-time окно предварительного просмотра.

 

Объект TPrinterPreview

  TDBEditEh Использование edit-контролов Компонент TDBEditEh представляет собой однострочный либо многострочный edit-контрол, который может отображать и…

TPropStorageEh, TIniPropStorageManEh, TRegPropStorageManEh Использование TPropStorageEh

  TMemTableEh Использование TMemTableEh Dataset, который держит все данные в памяти.

Установка

Нижеследующее описывает установку EhLib под Delphi 6.

Удалите предыдущую или evaluation версию EhLib из Delphi 6 IDE.

Удалите либо перенесите в другую папку следующие файлы для предупреждения пересечения этой и новой версии EhLib (файлы EhLib.bpl, EhLib.dcp либо EhLibXX.bpl, EhLibXX.dcp (если версия 3.X и выше)).

Распаковкаархива

После распаковки вы получите следующие папки: Папки 'EhLib - source include' версии: BCB4 Содержит файлы для… Папки версии 'Ehlib - without source' и 'Ehlib- Evaluation version': BCB4 Содержит файлы для C++…

Наиболее часто встречающиеся проблемы при инсталляции и методы их решения.

Установка файловпомощи. Скопируйте файлы EhLib.hlp и EhLib.cnt из папки HLP архива EhLib в папку с… Запустите Delphi IDE.

Использование компоненты TDBGridEh

Следующий раздел распространяется как на компонент TDBGridEh так и на TDBGrid. Компонент TDBGridEh позволяет отображать и редактировать записи наборов данных… TDBGridEh не хранит данные в себе, он только отображает данные набора данных TDataSet через объект TDataLink. Каждый…

Работа с TDBGridEh в режиме разработки.

  Чтобы настроить свойство каждого столбца выберите его имя в окне редактора…  

Панель детальной информации для записи – RowDetailPanel.

    Подсвойства свойства RowDetailPanel

Published

  Width: Integer; Ширина панели. Height: Integer; Высота панели.

Public

Visible: Boolean Свойство определяет текущее состояние видимости RowDetailPanel. Свойство доступно для чтения и записи.

 

Для управления отображением панели в гриде существует событие OnCheckRowHaveDetailPanel. Установите параметр события RowHaveDetailPanel чтобы разрешитьзапретить отображение RowDetailPanel для нужной записи.

 

Для выполнения дополнительных действий перед открытием или после закрытия панели в гриде присутсвуют события OnRowDetailPanelHide и OnRowDetailPanelShow, которые срабатывают при скрытии и отображении панели соответственно.

 

Чтобы поместить контрол на панель дательной информации в RunTime используйте свойство TDBGridEh.RowDetailPanelControl. Для добавления контролов используйте следующий код:

MyControl.Parent := DBGridEh1.RowDetailPanelControl;

 

Режим RowPanel

  При изменении ширины ячеки грид также меняет ширину соседних ячеек, которые… Чтобы изменить размер только одной ячейки, измените размер ячейки, удерживая клавишу Shift.

Работа в режиме группировки данных.

Группировку можно создавать и менять как в Design так и RunTime режиме. Группировка работает только когда грид подключен к датасету типа… При группировки грид также сортирует данные в MemTableEh чтобы они соответсвовали данным, по которым группируются…

TDBGridEh и вертикальный scrollbar.

Настройка линеек прокрутки. Для настройки линеек прокрутки используюйте подсвойства свойств HorzScrollBar… Tracking: Boolean Свойство определяет обновлять ли положение грида до того как кнопка мышки над бегунком линейки…

Комплексные заголовки.

See Figure: Для этого надо установить свойство DBGridEh.UseMultiTitle в True и заполнить… Например: Field1.DisplayLabel := 'Title1|SubTitle1';Field2.DisplayLabel := 'Title1|SubTitle2';…

Заголовок как кнопка.

Для того, чтобы заголовки работали как кнопки установите свойство Column.Title.TitleButton в True. Напишите обработчик события OnTitleBtnClick для пределения действия на клик пользователя на ячейке заголовка.

Отображение картинок в заголовках.

Для отображения картинок в заголовках вместо текста, нужно использовать свойство TitleImages TDBGridEh'а и свойство ImageIndex TColumnTitleEh'а.

Значения по умолчанию для свойств заголовков.

Для установки значенией по умолчанию для свойств заголовков используйте свойство TDBGridEh.ColumnDefValues.Title. Эти свойсва будут действовать для свойств всех заголовков до момента изменения аналогичного свойства в заголовке Column.Title.

Настройка колонтитулов grid'а.

Колонтитулы и итоговые значения.

Настройкаячеек данных.

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

 

Отображение картинок в ячейках данных хранящихся в полях DataSet’а.

TDBGridEh позволяет выводить значение полей TBlobField с типом BlobType = ftGraphic в графическом виде. Для отображения графических данных установите свойство DrawGraphicData в True.

Checkbox'ы для boolean и не-boolean полей.

Grid автоматически отображает checkbox'ы для boolean-полей. Для отображения checkbox'ов для не-boolean полей заполните первую строку свойства Column.KeyList, которая соответствует значению 'checked' checkbox'а, вторая строка - значению 'non checked' и установите свойство Column.Checkboxes в True. Cтрока в KeyList может содержать более одного значения, разделенных точкой с запятой.

Высота строк данных.

Используйте свойства RowHeight и RowLines для определения высоты строк данных. Полная высота строки данных в пикселях равна (RowLines * высота одной строки текста) + RowHeight. Установка RowSizingAllowed в True позволяет менять мышкой высоту строк в run-time.

Для разбивки длинного текста на несколько строк установите Column.WordWrap в True. Текст будет перенесен, если высота строки (Row) больше высоты одной строки текста.

Индивидуальная высота каждой записи.

Отображение memo-полей.

Для отображение memo-полей установите DrawMemoText в True.

Изменение настроек шрифта в ячейке и ее цвета.

Свойства TDBGridEh Font и Color описывают шрифт и цвет, используемый для отображения ячейки grid'а.

Свойства Font и Color объекта TColumnEh описывают шрифт и цвет, используемый для отображения ячейки в определенном столбце.

События для изменения настроек шрифта, цвета и других парамерок каждой ячейки.

  TDBGridEh.OnDrawColumnCell Исппольщуйте событие OnDrawColumnCell чтобы перегрузить стандартный метода печати ячеки. Это событие вызывается после…

Значения по умолчанию для свойств столбцов.

Hint’ы и Tooltips’ы Hint’ы и Tooltips’ы это специальные текстовые подсказки, которые выводятся в… Настройка in placeредактораячейки grid'а

Запрет отображения текстового редактора ячейки.

Используйте свойство колонки TextEditing, чтобы запретить/разрешить отображение текстового редактора в ячейке колонки грида. Запрет/разрешение можно выставлять динамически в зависимости от номера записи в DataSet’е. Для этого используйте событие OnGetCellParams и меняйте свойство параметра Params.TextEditing.

Несколько полей в выпадающем lookup-списке.

Для отображнения нескольких полей в выпадающем lookup-списке для lookup-полей установите в Column.LookupDisplayFields список полей. Точки с запятыми должны разделять множество имен полей. Имя Column.Field.LookupResultField должно присутствовать в списке LookupDisplayFields. Lookup-список с несколькими полями может быть назначен только lookup-полям. Это свойство работает только для полей DataSet'а типа Lookup (TField.FieldKind = fkLookup).

Столбец с простыми lookup-значениями.

Выпадающий календарь.

Для полей TDateField и TDateTimeField редактор отображает dropdown-кнопку для отбражения выпадающего календаря. Установите Column.ButtonStyle в cbsNone для отключения отображения dropdown-кнопки.

Цвет и фонт текстового редактора по месту.

Автоматическая подгонкашириныстолбцов grid'а под ширину клиентской области grid'а. Установите AutoFitColWidths в True для автоматического изменения ширины… 3D и flat вид grid'а.

Закрепленная зона.

Закрепленная зона - это набор столбцов в левой части grid'а, который не прокручивается. В отличие от зафиксированных (fixed) столбцов, закрепленные (frozen) столбцы могут получать фокус ввода. Для определения числа непрокручиваемых столбцов задайте свойство FrozenCols.

Инкрементный поиск

Ctrl+F - начало инкрементного поиска. Ctrl+Enter - поиск следующего совпадения. Ctrl+Shift+Enter - поиск предыдущего совпадения.

Горизонтальная и вертикальная полосы прокрутки.

Используйте свойства VertSctollbar и HorzSctollbar для отображения/скрытия вертикальной и горизонтальной полос прокрутки.

Множественный выбор.

dgMultiSelect в свойстве Options - определяет возможность множественного выбора. dghClearSelection в свойстве OptionsEh - определяет, будет ли снято выделение… EditActions - определяет действия, которые пользователь может выполнять с выделенной областью (Copy, Cut, Delete,…

Сохранение и восстановление макета сетки и колонок в/из реестра либо ini-файл.

RestoreColumnsLayout - Восстановление порядка следования столбцов, ширины и состояния маркеров сортировки из реестра. RestoreColumnsLayoutIni - Восстановление порядка следования столбцов, ширины и… RestoreGridLayout - Восстановление порядка следования столбцов, ширины, видимости, состояния маркеров сортировке,…

Введение в технологию MemTable + DataDriver.

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

 

Технология представлена двумя основными компонента:

TMemTableEh – dataset, который держит все данные в памяти. Его можно рассматривать как массив записей.

Кроме того, он:

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

Позволяет закачивать в себя данные из объекта TDataDriverEh (свойство DataDriver).

Позволяет выгружать изменения обратно в DataDriver, оперативно или отложено (в зависимости то свойства CachedUpdates).

Позволяет создавать мастер/дитэил отношения на клиенте (фильтруя записи) или на внешнем источнике (обновляя параметры [Params] и перезапрашивая данные c DetailDataDriver'а).

Позволяет сортировать данные, включая Calculated и Lookup поля.

Позволяет создавать и заполнять данные в design-time и сохранять данные в dfm файле формы.

Позволяет хранить записи в виде дерева. Каждая запись может иметь записи узлы/ветви и сама являться узлом другой родительской записи. Компонент TDBGridEh поддерживает функциональность отображения древовидной структуры этих записей.

Позволяет подключиться к внутреннему массиву другого компонента TMemTableEh (свойство ExternalMemData) и работать с его данными: сортировать, фильтровать, редактировать.

Имеет интерфейс для получения списка всех значений столбца, игнорируя локальный фильтр датасета. TDBGridEh использует это свойство для автоматического формирования списка в выпадающем DropDownBox’е фильтра.

 

TDataDriverEh – выполняет две задачи:

1. Поставляет данные (записи) в TMemTableEh.

2. Обрабатывает записи, измененные в TMemTableEh (записывает их в другой датасет, или вызывает события для обработки изменений в программе).

 

Кроме того, имеется несколько компонент наследуемых от TDataDriverEh. Это TSQLDataDriverEh, который содержит в себе пять SQL выражения и параметры для запроса данных, удаления записи, вставки записи, изменения записи, перезапроса записи. TSQLDataDriverEh посылает запросы не сервер, но умеет подготавливать параметры запроса и вызывает глобальное событие, в котором программист может передать SQL выражение на сервер. От TSQLDataDriverEh порождены несколько компонентов, которые сами могут посылать SQL выражения на сервер через соответствующие драйвера доступа к данным. Это TBDEDataDriverEh, TIBXDataDriverEh, TDBXDataDriverEh и TADODataDriverEh.

 

Компонент TMemTableEh.

Два режима работы компонента TMemTableEh.

Существует два режима работы компоненты TMemTableEh: ‘stand-alone’ и ‘with datadriver’.

 

Stand-alone’ режим.

В режиме ‘stand-alone’ TMemTableEh работает как ни с чем несвязанный массив данных. Прежде чем работать с данными ‘stand-alone’ TMemTableEh’а необходимо создать внутренний массив данных. Для этого надо создать внешние поля (Fields) или field definitions в TMemTableEh и вызвать функцию CreateDataSet.

With datadriver’ режим.

Режим ‘with datadriver’ работает, когда присвоено свойство TMemTableEh.DataDriver. Внутренний массив данных создается автоматически при активизации MemTableEh’а. Структура полей предоставляется компонентом DataDriver.

ViewScroll

TMemTableEh поддерживает специальный интерфейс, позволяющий компоненту DBGridEh просматривать все данные, не перемещая активную запись. В дельнейшем будем называть такой режим работы ViewScroll.

Мастер/дитэил отношения.

TMemTableEh позволяет создавать мастер/дитэил отношения на клиенте “mdsOnSelfEh” (фильтруя записи) или на провайдере “mdsOnProviderEh” (пересоздавая… Для установки TMemTableEh в режим дитэил, используются следующие свойства:… Третий режим работы - “mdsOnSelfAfterProviderEh” является комбинацией двух предыдущих. При первом переходе на запись в…

Режим хранения записей в виде дерева (TreeView).

Настройка и активизация режима TreeView осуществляется с помощью подсвойств объекта TMemTableEh.TreeList. TMemTableEh автоматически добавляет новые…   Свойства объекта TMemTableEh.TreeList:

Работа с полями типа AutoIncrement

При работе TMemTableEh с подключенным DataDriver’ом значение автоинкрементных полей обычно генерируется сервером. Чтобы TMemTableEh мог получать… Проставить значения свойств InitValue и Step в -1. Значения AutoIncrement… Прописать дополнительные параметры в свойстве TSQLDataDriver.SpecParams, чтобы SQLDataDriver мог получать значения…

Использование индексов.

Индексы в TMemTableEh используются для ускорения операций поиска. Они в частности используются при формировании древовидной структуры записей, в процедуре Locate и в MasterDetail отношениях. Шаблон индексов задается в коллекции IndexDefs. TMemTableEh создает индексы на основе шаблона IndexDefs автоматически при создании внутреннего массива данных.

 

Использование общих данных несколькими датасетами.

 

Перетаскивание записей в TMemTableEh при включенном режиме dghRecordMoving.

Включение значения dghRecordMoving в свойство OptionsEh компонента DBGridEh позволяет перетаскивать записи в компоненте TMemTableEh. Кроме того, при активном режиме TreeList, DBGridEh позволяет при перетаскивании менять уровень записи в дереве. Запись перемещается нажатием и перемещением мыши над колонной индикатора записей (при включенном режиме мультиселека записей вначале надо выбрать записи которые надо переместить).

 

Тип поля TRefObjectField.

Юнит MemTableEh содержит описание и код регистрации нового типа поля – TRefObjectField. TRefObjectField предназначен для хранения указателя на объекты типа TObject и содержит свойство Value типа TObject. При создании поля в период разработки вы можете выбрать его в окне добавления поля по имени ‘RefObjectField’. В программе вы можете создать поле этого типа через свойства объекта FieldDefs, задав в качестве типа поля тип ftUnknown.

 

Агрегированные поля.

MemTableEh поддерживает обработку агрегированных полей (поля типа TAggregateField). TAggregateField представляет агрегированную величину (такую как SUM, COUNT) в dataset’е. В режиме Design-time используйте Fields Editor, чтобы создать persistent агрегированное роле, которое вы можете привязать к компоненту TDBEditEh или к футеру в TDBGridEh.

 

Сортировка данных.

1. Для сортировки с динамической поддержкой изменений используйте свойство SortOrder. Несколько полей разделяйте запятой. Для сортировки по… 2. Для сортировки без динамической поддержки изменений используйте процедуру…  

Создание/удаление таблиц в памяти в режиме ‘stand-alone’.

Существует два способа сделать это: Вы можете добавить определения полей в свойстве FieldDefs. В режиме… Кроме того вы можете использовать жеские (pesistent) поля. В режиме Design-time, двойной-щелчкок на dataset’е,…

Работа с компонентом в режиме ‘with datadriver’.

Если свойство FetchAllOnOpen установелно в True, то при открытии MemTableEh загружает все записи из DataDriver’а. При FetchAllOnOpen = False… В режиме ‘with datadriver’ все изменения передаются в метод ApplyUpdates…

Отложенные обновления (CachedUpdates).

В режиме отложенного обновления изменения сделанные в TMemTableEh не посылаются в TDataDriverEh пока приложение не назовет метод… До посылки измененных записей в TDataDriverEh может быть полезным обеспечить… Для отображения информации об изменениях можно использовать метод UpdateStatus и свойство StatusFilter:

Метки записей и переход на запись по метке.

Дополнительно к перемещению с записи на запись в dataset, также бывает полезно, получить маркер (Bookmark) конкретной позиции в dataset’е чтобы потом можно было быстро возвратиться на желаемую запись. TDataSet вводит возможность пометки записей, которая состоит из свойства Bookmark и пяти методов. Реально закладки в TMemTable являются номерами записей (RecNo) в DataSet’е.

 

Свойство Bookmark.

 

Свойство Bookmark указывает на текущую закладку на запись. Она указывает на текущую запись. Закладка является строкой, которая идентифицирует текущую закладку. Всякий раз, когда Вы присваиваете это свойство DataSet переходит на запись соответствующую закладке.

 

Метод GetBookmark

 

Я не рекомендую пользоваться этим метод, используйте вместо него свойство Bookmark. Детально об этом методе читайте в документации по VCL.

 

Методы GotoBookmark и BookmarkValid

 

При вызове GotoBookmark с параметром закладка метод перемещает курсор в dataset’е в позицию определенную закладкой. Перед вызовом GotoBookmark, Вы можете назвать BookmarkValid, чтобы определить действительно ли заклада указывает на одну из записей в DataSet'е. BookmarkValid возвращает True если закладка указывает на запись.

 

Метод CompareBookmarks

 

Вы можете вызвать CompareBookmarks, чтобы определить отличается ли закладка на которую Вы хотите перейти, от другого закладки. Если две закладки ссылаются на ту же запись (или если оба нуль), CompareBookmarks возврат 0.

 

Метод FreeBookmark

 

Используется в комбинации с GetBookamrk. Я не рекомендую пользоваться этим методом. Детально об этом методе читайте в документации по VCL.

Поиск в TMemTableEh

  Locate Метод locate перемещает курсор на первую строку, удовлетворяющую критерию…  

Var

LocateSuccess: Boolean;

SearchOptions: TLocateOptions;

Begin

SearchOptions := [loPartialKey];

LocateSuccess := CustTable.Locate('Company', 'Professional Divers, Ltd.', SearchOptions);

end;

 

Если Locate находит совпадение, то первая запись, удовлетворяющая критерию поиска становится текущей записью. Locate возвращает True если он находит запись, False если это нет. Если поиск ничего не находит, текущая запись не изменяется.

 

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

 

Поскольку искомые значения являются набором значений типа Variant, Вы должны либо передать несколько значений как Variant array в качестве аргумента, либо Вы должны сконструировать выражение типа Variant array в коде, используя функцию VarArrayOf. Следующий код иллюстрирует поиск по нескольким столбцам используя список величин поиска и частичное совпадение:

 

With CustTable do

  Locate использует самый быстрый из возможных методов поиска. Если столбцы в…   Lookup

Var

LookupResults: Variant;

Begin

LookupResults := CustTable.Lookup('Company', 'Professional Divers, Ltd.', 'Company;Contact;Phone');

end;

Lookup возвращает значения заданных полей из первой найденной записи. Значения величин имеют тип Variant. Если задано несколько полей, Lookup возвращает массив Variant’ов. Если ни одной записи не находится, Lookup возвращает значение Null.

 

Подобно, Locate, Lookup использует самый быстрый из возможных методов поиска.

 

  1. FindRec

Метод FindRec ищет первую запись, которая соответствует критериям поиска и возвращает номер первой найденной записи. Синтаксис вызова метода совпадает с синтаксисом метода Locate.

 

При работе MemTableEh в режиме дерева методы Locate и FindRec ищут записи только в узлах которые находятся в открытых (Expanded) ветках. Для поиска во всех узлах и автоматического раскрытия владельцев найденного узла используйте метод MemTableEh.TreeList.Locate.

 

  1. GotoRec

Метод GotoRec перемещает курсор в позицию запись которой указывает на запись заданную параметром Rec. GotoRec возвращает True если он находит запись, False если это нет.

 

Быстрый доступ к значениям записи.

Для быстрого получения значения из конкретно записи без активизации события об изменении в MemTableEh можно использовать несколько способов. Использовать методы DisableControls, EnableControls для деактивизации событий… Использовать методы InstantReadEnter, InstantReadLeave для перехода в режим InstantRead.

Копирование данных и структуры из/в внешнего DataSet’а.

TMemTableEh предоставляет следующие методы для копирования данных из/в внешних DataSat’ов в себя:

 

Метод SaveToDataSet

Копирует свои данные в другой DataSet, указанный в параметре Dest. Если параметр RecordCount > 0, то копирование начинается с текущей записи исходного DataSet’а и копируется не более RecordCount записей. Иначе копируются все записи, начиная с первой. Копирование происходит добавлением новых записей в Dest DataSet.

 

Метод LoadFromDataSet

Загружает не более RecordCount записей из DataSet’а, указанного в параметре Source. Если RecordCount = -1 то загружаются все записи. Параметр Mode определяет режим загрузки. Значение lmCopy определяет, что перед загрузкой надо удалить все записи. Значение lmAppend определяет что новые записи будут добавлены к старым данным.

Параметр UseIfCachedUpdates указывает, что вновь добавленные записи получат статус usInserted.

 

Внутренние объекты компонента TMemTableEh.

TMemTableDataEh – внутренняя таблица данных. Содержит в себе два объекта: TMTDataStructEh описывающий структуру полей таблицы и TRecordsListEh… TMTDataStructEh – класс описывающий структуру полей внутренней таблицы.… TMTDataFieldEh – базовый класс для определения типа поля во внутренней таблице. Является парент-типом для классов…

Работа с TMemTableEh в период разработки.

Создавать поля (компоненты TField) для TMemTableEh. Заполнять TMemTableEh данными. Загружать в TMemTableEh данные из другого DataSet’а источника данных.

Компонент TDataDriverEh.

В режиме поставщика TDataDriverEh берет данные DataSet'а, определенного свойством ProviderDataSet и копирует их в TMemTableEh. Перед получением… Используя события TDataDriverEh'а можно контролировать пересылаемые данные… TDataDriverEh содержит следующие события:

Компонент TSQLDataDriverEh.

TSQLDataDriverEh имеет свойство SpecParams типа TStrings. Вы можете использовать его для записи специальных значений, которые будете использовать в… Свойство DefaultSQLDataDriverResolver.ServerSpecOperations имеет тип… Для полнофункциональной работы TSQLDataDriverEh необходимо написать событие…

Свойство TXXXDataDriverEh.SpecParams.

  При работе с сервером InterBase: 'GENERATOR' - определяет имя генератора значение InterBase. DataDriver использует этот параметр для получения текущего…

Динамическое формирование SQL выражений при обновлении данных.

Свойство KeyFields задает ключевое поле записи. Оно будет использоваться для формирования условия WHERE при удалении или обновлении записи. Свойство…  

TSQLDataDriverEh или TXXXDataDriverEh, что выбрать для работы.

Для TXXXDataDriverEh достачно установить свойство объекта БД (Для TBDEDataDriverEh это свойство Database типа TDatabase). У TSQLDataDriverEh нет свойства объекта БД. Для его работы достаточно один раз… В период разработки различий в работе TSQLDataDriverEh и TXXXDataDriverEh почти нет. При открытии редактора компоненты…

Работа с TSQLDataDriverEh и TXXXDataDriverEh в период разработки.

Окно редактирования TSQLDataEditWin содержит следующие элементы: Дерево объектов БД. Таблицы, Вьюшки, Процедуры, Фукнции и т.д. Зависит от типа… Нижнее окно элементов текущего объекта в дереве объектов.

– Конец работы –

Используемые теги: Библиотека, компонент, EhLib, руководство, разработчика0.076

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Библиотека компонент EhLib - Руководство разработчика

Что будем делать с полученным материалом:

Если этот материал оказался полезным для Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Еще рефераты, курсовые, дипломные работы на эту тему:

Дать содержательную интерпретацию первых двух главных компонент, используя вращение осей координат главных компонент
На сайте allrefs.net читайте: 8.дать содержательную интерпретацию первых двух главных компонент, используя вращение осей координат главных компонент;...

Компонент Memo обладает рядом типичных для визуальных компонентов свойств
Компонент Memo класс TMemo... Пиктограмма... Компонент Memo представляет собой поле для отображения и редактирования текста Текст можно загрузить из файла...

Библиотека и краеведение. Работа библиотек с краеведческими документами
Краеведение переживает процесс поиска новых форм, постановки первостепенных задач. Оно приобретает ярко выраженный социально-политический характер, особенно в… Краеведение – это всестороннее изучение определенной части страны, города или деревни, других поселений местным…

Дать содержательную интерпретацию первых двух главных компонент, используя вращение осей координат главных компонент
На сайте allrefs.net читайте: 8.дать содержательную интерпретацию первых двух главных компонент, используя вращение осей координат главных компонент;...

Пасивні компоненти. Резистори. Конденсатори. Індуктивні компоненти
Перелік скорочень Вступ Пасивні компоненти... ПЕРЕЛІК СКОРОЧЕНЬ...

ПРАКТИЧЕСКОЕ РУКОВОДСТВО ДЛЯ ИЕРЕЙСКОГО СЛУЖЕНИЯ
На сайте allrefs.net читайте: "ПРАКТИЧЕСКОЕ РУКОВОДСТВО ДЛЯ ИЕРЕЙСКОГО СЛУЖЕНИЯ"

Электронная библиотека научной литературы по гуманитарным
Введение Изучение англосаксонской археологии Рис Вагоны Монтелиуса а английский в... И... ЛЭВИД М ВИЛЬСОН АНГЛОСАКСЫ...

Электронная библиотека Портала Археология России
РАЗДЕЛ I... КАМЕННЫЙ ВЕК... ГЛАВА ПАЛЕОЛИТ...

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

Визуальное руководство по звукозаписи и продюссированию
Искусство сведения...

0.032
Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • По категориям
  • По работам