Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Отображение данных таблиц БД на экранной форме без установления связи между ними
Покажем, как в одной форме можно связать два набора данных (родительский и подчиненный) так, чтобы в подчиненном наборе данных всегда показывались записи, соответствующие текущей записи в родительском НД. Добавим в контейнер DataModule5 компонент ТТаblе (с именем Таblе2) для работы с таблицей Prihod базы данных PRIMER (значения свойств такие же, как у компонента Table1, но свойство TableName ссылается на имя таблицы Prihod.DB). Добавим в форму компонент TDataSource (имя по умолчанию DataSource2). Установим свойство DataSet этого компонента в значение Таblе2. Разместим в форме №3 компонент TDBGrid (имя по умолчанию DBGrid2) и установим его свойство DataSowce в значение DataSource2 (рис.23). Установим свойство Таbl2.Аvtive в True. После этого произойдет реальное связывание компонентов TTable с реально существующими таблицами Materialy.DB и Prihod.DB.
Рис.23. Форма с родительским и дочерними наборами данных во время разработки
Чтобы при просмотре нельзя было изменять данные о материалах (таблица Materialy.DB), установим свойства ReadOnly компонента DBGrid1 в положение True. Запустим приложение на выполнение. Добавим несколько записей в таблицу Prihod.DB из компонента TDBGrid2. Обратите внимание, значение поля N_Prih формируется автоматически (рис. 24).
Рис.24. В подчиненном наборе данных показываются записи, связанные с текущей записью в родительском НД
|