Пример 3. Разработка приложения, использующего компонент просмотра баз данных
В этом примере рассматривается связь таблиц CUSTOMER (компании-заказчики)
и ORDERS (их заказы) из базы данных BCDEMOS и используется компонент DBLookupListBox
для того, чтобы отобразить на экране имя компании, соответствующее значению
CustID, находящемуся в таблице ORDERS.
Чтобы создать форму для выведения на экран выбранных из таблицы ORDERS
полей, следует открыть новый проект и сохранить главную форму как DBLOOK1.CPP,
а проект как DBLOOK.MAK. Далее нужно разместить на форме компоненты TTable,
DataSource, DBGrid и DBNavigator. Далее следует присвоить свойству Database
Name компонента Table1 значение BСDEMOS, свойству TableName - значение
ORDERS.DB, а свойству Active - значение true. Свойству DataSet компонента
DataSource1 присвоим значение Table1, а свойству AutoEdit - значение false.
Свойству DataSource компонентов DBGrid1 и DBNavigator1 присвоим значение
DataSource1. Далее используем Fields Editor, чтобы внести в набор данных
Table1 поля OrderNo, CustNo, SaleDate, ItemsTotal, AmountPaid. Расположим
поля в Fields Editor так, чтобы OrderNo был бы первым, а CustNo - вторым.
Можно скомпилировать и сохранить это приложение, затем запустить и протестировать
его.
Теперь внесем в приложение компонент DBLookupListBox и установим его
свойство DataSource равным DataSource1, а свойство DataField равным CustNo.
Поместим на форму новые компоненты TTable и DataSource. Установим свойство
DatabaseName для компонента Table2 равным BCDEMOS, свойство TableName равным
CUSTOMER.DB, а свойство Active равным true. Свяжем DataSource2 с Table2.
Свяжем компонент DBLookupListBox1 с DataSource2, установив значение свойства
ListSource компонента DBLookupListBox1 равным DataSource2, свойства KeytField
равным CustNo, а свойства ListField равным Company. Можно скомпилировать
и сохранить приложение, затем запустить и протестировать его.
В компоненте DBLookupListBox будет выделено название компании, соответствующее
значению CustNo в текущей строке DBGrid (рис. 9). Можно использовать DBLookupListBox
для выбора заказчика по имени, при этом в таблице Orders будет устанавливаться
соответствующее значение CustNo.
Рис. 9. Приложение с компонентом DBLookupListBox.
В следующих статьях будет рассмотрено использование компонента TQuery
и возможности создания и использования SQL-запросов в приложениях С++ Builder.
Содержание | Вперед
|