Пример приложения ADO
Теперь попробуем применить на практике представленную в этой главе информацию о реализации ADO в Delphi. В качестве примера создадим простое приложение ADO Demo, которое "умеет" отображать пару таблиц БД, сохранять изменения при помощи групповых операций, сортировать записи и устанавливать фильтры на выбранные записи (рис. 19.9).

Рис. 19.9. Главное окно приложения ADO Demo
В качестве источника данных выберем файлы dBase, имеющиеся в демонстрационной базе данных Delphi \Program Files\Common Files\Borland Shared \Data. Для использования в приложении выберем две таблицы: INDUSTRY и MASTER. Они связаны между собой внешним ключом по полям IND_CODE и INDUSTRY соответственно.
Таблицу INDUSTRY можно редактировать, она инкапсулирована в компоненте tbiIndustry типа TADOTable и отображается в левом компоненте TDBGrid. А таблица MASTER инкапсулирована в компоненте tbIMaster, предназначена только для просмотра. Эти два компонента связаны отношением "ОДИН-КО-МНОГИМ" При помощи свойств MasterSource и MasterFields.
Листинг 19.2. Секция implementation модуля uMain приложения ADO Demo.
implementation
uses IniFiles, FileCTRL;
const slniFileName: String = 'ADODemo.ini';
sEmptyDefDB: String = 'Database path is empty';
sEmptyFilter: String = 'Records for filter is not selected';
{$R *.dfm}
procedure TfmMain.FormShow(Sender: TObject);
begin
with TIniFile.Create(slniFileName) do
try
DefDBStr: = ReaDString('DefDB', 'DefDBStr1, ");
edDefDB.Text: = DefDBStr;
finally
Free; end;
SetLength(Bookmarks, 0);
end;
procedure TfmMain.FormClose(Sender: TObject; var Action: TCloseAction);
begin
with TIniFile.Create(slniFileName) do
try
WriteStringCDefDB', 'DefDBStr', edDefDB.Text);
finally
Free;
end;
end;
