    Приступаем к созданию форм 

    10 ГЛАВА 

    Итак, создав главную форму приложения, можно перейти к разработке 
остальных форм. Прежде всего нужно настроить модуль данных системы RENTMAN — 
форму dmRENTMAN. Хотя компоненты Table и DataSource модуля данных уже 
настроены, однако в объекты таблиц мы еще не поместили ни одного компонента 
TField, а также не связали столбцы с наборами атрибутов Delphi. Настройка 
столбцов перед разработкой использующих их форм позволит сократить общие 
затраты сил и времени, а также обеспечить единообразие работы всех частей 
приложения. 

    Режим поддержки Delphi в системе Silverrun-RDM 

    Одним из способов настройки ограничений и масок столбцов заключается в 
применении средства Silverrun-RDM. Данное средство обладает специальным 
режимом работы, ориентированным на поддержку системы Delphi. В этом режиме 
можно определить наборы атрибутов Delphi и связать их с соответствующими 
столбцами реляционной модели. Такой подход позволяет централизовать 
определение столбцов. 
    Недостаток данного метода состоит в необходимости определять наборы 
атрибутов в отрыве от остальных объектов модели. Например, нельзя 
импортировать ограничения, определенные в базе данных, как это можно сделать, 
например, с помощью средства Database Explorer Delphi. Из-за этого ограничения 
я не вижу реальных преимуществ в применении системы Silverrun для определения 
наборов атрибутов Delphi. 

    Импортирование информации словаря данных из базы данных 

    Значительно более простым и, как мне кажется, интуитивно понятным способом 
импортирования информации о наборах атрибутов является применение средства 
Database Explorer, которое позволяет получить эту информацию прямо из базы 
данных. С помощью Database Explorer можно импортировать в словарь данных 
Delphi целые базы данных СУБД InterBase. Информация о таблицах и столбцах 
таких баз данных автоматически преобразуется в таблицы и столбцы словаря 
данных, а информация о доменах — в наборы атрибутов. 
    Выполнив импортирование базы данных в словарь данных Delphi, можно 
настроить определения полученных столбцов и наборов атрибутов в соответствии с 
параметрами, специфичными для Delphi. Например, можно назначить используемый 
по умолчанию компонент для столбцов, которые описываются определенным набором 
атрибутов. Кроме того, можно задать маски редактирования, типы полей и маски 
отображения наборов атрибутов. 

    Глава 10. Приступаем к созданию форм 205 

    Обратите также внимание на возможность перетаскивания объектов из окна 
Database Explorer прямо на формы Delphi. При перетаскивании таблицы или 
представления из окна Database Explorer на обычную форму, находящуюся в окне 
конструктора форм Delphi, в нее автоматически добавляются компоненты Table, 
DataSource и DBGrid. Более того — Delphi автоматически связывает и настраивает 
эти компоненты. При перетаскивании таблицы или представления на форму модуля 
данных в последнюю добавляется только компонент Table. 
    Точно так же можно создавать компоненты StoredProc, перетаскивая из окна 
Database Explorer на форму хранимые процедуры. 
    Для того чтобы импортировать базу данных RENTMAN в словарь данных Delphi, 
выполните следующие операции. 
    1. Если приложение RENTMAN все еще работает, закройте его и вернитесь в Delphi. 
    2. Если сервер СУБД InterBase еще не запущен, запустите его на выполнение. 
    3. Нажмите <Shift+F12> и дважды щелкните на имени модуля данных dmRENTMAN, 
которое появится в раскрывшемся списке. Теперь локальный псевдоним базы данных 
dbRENTMAN будет доступен Database Explorer. 
    4. Выберите пункт Database=>Explore для того чтобы запустить Database Explorer. 
    5. Щелкните на вкладке Dictionary, а затем выберите из меню команду 
Dictionary=>New. 
    6. В диалоговом окне Create a new Dictionary в строке Dictionary Name 
введите RENTMAN, а в строке Database — dbRENTMAN. Этим вы присвоите словарю 
имя RENTMAN и поместите его в базу данных dbRENTMAN (локальный псевдоним базы 
данных был создан при настройке компонента Database модуля данных). 
    7. Введите в строке Desription какое-нибудь описание, например RENTMAN 
Data Dictionary и щелкните на кнопке ОК. На рис. 10.1 приведено диалоговое 
окно Create a new Dictionary с заполненными строками ввода. 

    Рис. 10.1. Создание нового словаря данных для приложения RENTMAN 

    206 Часть II. Учебный курс 

    8. В следующем окне вам будет предложено ввести информацию для регистрации 
на сервере. Если вы не изменяли имя пользователя и пароль, установленные по 
умолчанию, то введите в соответствующих строках имя SYSDBA и пароль masterkey. 
    9. Щелкните дважды на элементе Dictionary, а затем — на пункте Databases 
раскрывшегося списка. Если появится запрос пароля, введите еще раз тот же пароль. 
    10. Выберите команду Dictionary=>lmport from Database, затем выберите из 
полученного списка элемент dbRENTMAN и щелкните на кнопке ОК. Убедитесь, что 
выбрали локальный псевдоним dbRENTMAN, a не псевдоним RENTMAN, созданный в 
главе 9, "Подготовка". Если вы неправильно выберете псевдоним, задача 
импортирования наборов атрибутов словаря данных существенно усложнится. 
    11. Вам снова будет предложено ввести имя пользователя и пароль — снова 
введите SYSDBA и masterkey. 
    12. После небольшой задержки Database Explorer создаст словарь данных 
путем импортирования базы данных. В базе данных появится новая таблица BDESDD, 
предназначенная для хранения словаря данных. 
    13. В списке вкладки Dictionary дважды щелкните на пункте Dictionary, а 
затем на пункте Databases, чтобы убедиться в том, что была импортирована 
именно база данных dbRENTMAN. Для просмотра информации словаря данных щелкните 
дважды на пункте dbRENTMAN. Чтобы просмотреть домены базы данных RENTMAN, 
импортированные в наборы атрибутов Delphi, дважды щелкните на пункте Attribute 
Sets. На рис. 10.2 показана информация, импортированная в словарь данных. 

    Рис. 10.2. Импортированный словарь данных RENTMAN 

    Настройка словаря данных 

    Любые изменения объектов словаря данных нужно выполнять до его 
использования в разработке форм. Это обеспечит точное отражение в формах 
атрибутов объектов словаря. 
    Существует множество способов настройки словаря данных RENTMAN. К 
сожалению, время и ограниченный объем книги не позволяют мне остановиться 
подробнее на этом вопросе, поэтому я ознакомлю вас лишь с настройкой самых 
полезных наборов атрибутов словаря RENTMAN. 
    Для настройки словаря данных RENTMAN выполните следующие операции. 

    Глава 10. Приступаем к созданию форм 207 

    1. Щелкните на наборе атрибутов TYESNO и укажите в качестве значения 
спецификации TControlClass класс TDBCheckBox (рис. 10.3). Это приведет к тому, 
что все столбцы, определенные как TYESNO, будут на форме представляться 
компонентом DBCheckBox, находящимся на вкладке Data Controls палитры 
компонентов Delphi. 

    Рис. 10.3. Настраивая словарь данных, можно определить компоненты, которые 
будут автоматически создаваться при перемещении полей на форму 

    2. Измените используемый по умолчанию тип компонента (TControlClass) 
наборов атрибутов TADDITION, TCITY и TSCHOOLDISTRICT на TDBComboBox. Создавая 
формы, которые будут использовать эти наборы атрибутов, вы заполните 
комбинированные списки DBComboBox соответствующими данными. 
    3. Щелкните на наборе атрибутов TSTATE и введите >АА в строке Edit Mask. 
Данная маска обеспечит преобразование всех вводимых буквенных значений в 
верхний регистр. 
    4. Щелкните на свойстве Default Expression набора атрибутов TSTATE и 
укажите для него значение 'TX'. Таким образом, код шт. Техас (Texas) будет 
используемым по умолчанию значением компонента TField, связанного с атрибутом TSTATE. 
    5. Щелкните на наборе атрибутов TPHONE и в строке свойства Edit Mask 
введите !\(999\)000-0000. Данная маска ввода обеспечит представление всех 
вводимых значений в формате телефонных номеров, принятом в США. 
    6. Еще раз щелкните на пункте Attribute Sets, а затем на кнопке Apply окна 
Database Explorer (на ее пиктограмме изображена синяя стрелка, изогнутая по 
часовой стрелке), чтобы сохранить внесенные изменения. 
    7. Поскольку необходимая подготовка словаря выполнена, закройте окно 
Database Explorer и вернитесь в Delphi. Через несколько мгновений мы 
импортируем атрибуты словаря данных в само приложение RENTMAN. 

    208 Часть II. Учебный курс 


    Настройка модуля данных 

    Закончив настройку словаря данных, можно импортировать его в приложение. 
Это выполняется с помощью добавления компонентов TField для всех полей каждой 
таблицы модуля данных dmRENTMAN. После импортирования описаний полей в модуле 
данных появится информация наборов атрибутов, которую вы определяли с помощью 
Database Explorer. 

    Настройка таблиц 

    Для импортирования информации из словаря данных по каждому компоненту 
Table модуля данных dmRENTMAN выполните следующие операции. 
    1. Дважды щелкните на компоненте Table, чтобы открыть окно редактора полей. 
    2. Щелкните правой кнопкой мыши на окне редактора полей и из появившегося 
меню выберите команду Add fields. 
    3. Щелчком на кнопке ОК в появившемся диалоговом окне Add Fields вы 
создадите компоненты TField для всех столбцов-соответствующей таблицы. 
    4. Установите свойство EditMask всех полей даты равным !99/99/00;1;_. 
Этими полями являются LASTLAWNDATE, LASTSPRAYDATE, BEGINDATE, ENDDATE, MOVEINDATE, 
MOVEOUTDATE, CALLDATE И STARTDATE. 
    5. Установите свойство EditMask всех полей времени равным !90:00:00>LL;1;_. 
Таким полем является поле CALLTIME. 
    6. Закройте окно редактора полей. 
    7. Повторите этот процесс для всех компонентов Table модуля данных. 
    Чтобы увидеть результаты своего труда, щелкните правой кнопкой мыши на 
компоненте taPROPERTY, выберите из появившегося меню команду Fields Editor, а 
затем щелкните на поле STATE. В окне Object Inspector должна появится 
информация, импортированная из набора атрибутов, как показано на рис. 10.4. 

    Рис. 10.4. Информация из наборов атрибутов перенесена в приложение 


    Глава 10. Приступаем к созданию форм 209 


    Совет 
    Для того чтобы в окне редактора полей Delphi быстро выделить несколько 
смежных полей, выберите первое поле, а затем с помощью комбинации <Shift+ > 
выделите остальные поля. Если нужно выделить несколько несмежных полей, 
выберите первое поле, нажмите <Shift+F8>, а затем, выбирая остальные поля, 
нажимайте клавишу пробела. 

    Форма EMPLOYEE Quick Entry/Edit Form 

    Давайте продолжим создание приложения RENTMAN и обсудим процесс разработки 
формы быстрого ввода fmREMPENTO, предназначенной для заполнения таблицы 
EMPLOYEE. Как вы уже знаете, существуют два способа создания форм — сложный и 
простой. Мы начнем с простого, заключающегося в применении мастера форм 
Database Form Wizard, а затем немного поговорим о сложном способе, т.е. о 
разработке формы вручную. Мастер форм не может использовать разработанную нами 
иерархию форм, поэтому в случае приложения RENTMAN более легкий метод теряет 
некоторые свои преимущества. Однако мы, тем не менее, остановимся на нем, 
чтобы ознакомится с возможностями мастера форм Delphi. 

    Создание формы с помощью мастера Database Form Wizard 

    Мастер форм запускается с помощью команды Database=>Form Wizard. Он 
предназначен для создания формы с помощью ответов на вопросы о ее внешнем 
виде. В первом окне мастера, показанном на рис. 10.5, спрашивается, какого 
типа форму нужно создать (простую или вида "главная-подчиненная"), а также 
какие компоненты (Table или Query) использовать на форме. В нашем случае нужно 
оставить все переключатели в том положении, в котором они находятся по 
умолчанию, и щелкнуть на кнопке Next. 
    В следующем диалоговом окне мастера, показанном на рис. 10.6, 
спрашивается, какую таблицу нужно связать с формой. Сначала выберите в списке 
Drive or Alias name псевдоним dbRENTMAN. Как только вы выберите этот 
псевдоним, список таблиц изменится в соответствии со структурой и 
расположением базы данных RENTMAN. Щелкните дважды на таблице EMPLOYEE. 

    Рис. 10.5. Первое диалоговое окно мастера форм 

    Рис. 10.6. Выбор таблицы во втором окне мастера форм 

    В следующем окне мастера форм (рис. 10.7) нужно выбрать поля таблицы, 
которые необходимо поместить на создаваемую форму. Для выбора полей по одному 
можно пользоваться кнопкой >, а для выбора всех полей сразу — кнопкой >>. 
Щелкните на кнопке >>, а затем на кнопке Next для продолжения. 

    210 Часть II. Учебный курс 

    В следующем окне вам будет предложено выбрать ориентацию полей на форме. 
Можно использовать один из трех вариантов: по горизонтали (Horizontal), по 
вертикали (Vertical) или в виде сетки (Grid). Щелкните на кнопке Next, для 
того чтобы принять установленное по умолчанию горизонтальное расположение. 
    В последнем окне мастера форм вам будет задан вопрос, нужно ли делать 
данную форму главной формой приложения. Если этот режим включен, то флажок 
Generate a main form будет установленным. Поскольку приложение RENTMAN уже 
имеет главную форму — fmRSYSMANO, то в данном случае флажок надо сбросить. 
Щелкните на кнопке Generate, чтобы получить новую форму, вид которой приведен 
на рис.10.8. 

    Рис. 10.7. Выбор полей в третьем окне мастера форм 

    Рис. 10.8. Форма ввода и редактирования данных таблицы EMPLOYEE, созданная 
мастером форм 

    Рис. 10.9. Связывание модулей с помощью команды File=>Use Unit 
    
    Заметьте, что на форме расположены собственные компоненты Table и 
DataSource. Все остальные формы, которые мы будем создавать в этой части будут 
использовать компоненты Table и DataSource из модуля данных dmRENTMAN. Для 
того чтобы привести форму в соответствие нашему приложению, выполните 
следующие операции. 
    1. Удалите компоненты Table и DataSource формы. 
    2. Найдите в исходном тексте модуля формы строку 

    Table1.Open; 

    и удалите ее, так как в данном операторе предпринимается попытка открыть 
уже несуществующую таблицу. 
    3. Из меню Delphi выберите команду File=>Use Unit, а затем дважды щелкните 
на пункте RENTDATA, как показано на рис. 10.9. 
    4. Выберите компонент DBNavigator, а также два компонента DBEdit. 
    5. Измените свойства DataSource всех трех компонентов, указав в качестве 
их значений источник данных dmRENTMAN.dsEMPLOYEE (он должен присутствовать в 
списке возможных значений свойства DataSource). 
    Теперь осталось протестировать форму и убедиться, что вы на самом деле 
работаете с компонентами Table и DataSource системы RENTMAN. 

    Тестирование новой формы 

    Самый простой способ быстро протестировать новую форму — связать ее с 
приложением RENTMAN. Для этого выполните следующие операции. 
    1. Выберите форму fmRSYSMANO, затем выберите из меню команду File=>Use 
Unit. В списке открывшегося диалогового окна выберите пункт Unit1. 
    2. Щелкните дважды на компоненте формы MainMenu. 
    
    Глава 10. Приступаем к созданию форм 211 
    
    3. В окне конструктора меню выберите пункт Tables и дважды щелкните на 
пункте Employees. Откроется окно редактирования исходного текста, с помощью 
которого можно добавить в программный модуль формы операторы, которые будут 
выполняться при щелчке на данном пункте меню. 
    4. Так как новая форма имеет имя Form1, установленное по умолчанию, для ее 
добавления к приложению нужно в окне редактирования ввести следующую строку 
(рис. 10.10): 

    Form1.Show; 

    Добавление данного оператора обеспечит отображение новой формы либо при 
выборе команды Tables=>Employees из меню приложения RENTMAN, либо при 
использовании клавиатурного эквивалента этой команды (<F8>). 
    Теперь давайте запустим приложение и проверим работу новой формы. Нажмите 
<F9> либо щелкните на кнопке Run панели инструментов Delphi, чтобы запустить 
приложение RENTMAN. 
    Когда приложение загрузится, нажмите <F8>. На экране должна появится новая 
форма, вид которой во время выполнения приложения представлен на рис. 10.11. 
    С помощью этой формы можно добавлять, удалять и редактировать записи — 
форма полнофункциональна. Щелкните на кнопке "+" навигатора, чтобы добавить 
запись, а затем на кнопке "-", чтобы удалить ее. Убедившись в 
работоспособности новой формы, закройте ее, завершите работу приложения 
RENTMAN и вернитесь в Delphi. 
    
    Рис. 10.10. Добавление новой формы к приложению RENTMAN 

    Рис. 10.11. Новая форма во время выполнения приложения 
    

    Удаление новой формы из проекта 
    
    Поскольку новая форма не создана на основе разработанной в предыдущих 
главах иерархии форм, несмотря на ее функциональность, она не может быть 
использована в приложении RENTMAN. Для удаления формы из проекта, выполните 
следующие операции. 
    1. Щелкните на кнопке Remove file from project панели инструментов Delphi 
или выберите команду меню Project=>Remove from Project. 
    2. Щелкните дважды на пункте Unit1 в открывшемся списке модулей проекта. 
    3. Появится запрос о том, нужно ли сохранить модуль Unit1 на диске. 
Щелкните на кнопке No. 
    4. Отредактируйте программный модуль формы fmRSYSMANO и удалите из него 
строку Form1.Show;. 
    5. Перейдите в начало раздела implementation программного модуля и удалите 
оператор uses Unit1;. 

    212 Часть II. Учебный курс 


    Создание новой формы с помощью конструктора форм 

    Теперь, когда вы знаете, что такое простой способ создания форм баз данных 
в Delphi, давайте ознакомимся со сложным. Сложность, в общем-то, 
относительная, так как особых затруднений он у вас не вызовет. 
    Для того чтобы создать форму fmREMPENTO, выполните следующие операции. 
    1. Выберите из меню Delphi команду File=>New. 
    2. В открывшемся окне перейдите на вкладку Forms и из списка форм выберите 
элемент fmEditForm. 
    3. Щелкните на переключателе Inherit, а затем — на кнопке ОК. В окне 
конструктора форм должна появится новая форма. 
    4. Измените значение свойства Name новой формы на fmREMPENTO, а свойства 
Caption — на EMPLOYEE Quick Entry/Edit Form. 
    5. Поместите на форму два компонента Label, расположив их в левой части 
формы один над другим и выровняв их по вертикали. 
    6. В качестве заголовка верхней метки укажите &EmployeeNo, а в качестве 
заголовка нижней — &Name. 
    7. Правее меток поместите на форму два компонента DBEdit, выровняв их в 
соответствии с метками. 
    8. В качестве значения свойства Name верхней строки ввода данных укажите 
dedEmployeeNo, а в качестве значения такого же свойства нижней — dedName. 
    9. Установите размер компонента dedName таким образом, чтобы он был 
примерно в два раза шире, чем компонент dedEmployeeNo. Так как в нижней строке 
ввода будет отображаться имя служащего, она должна быть достаточно большого размера. 
    10. Присвойте в качестве значения свойства FocusControl верхней метки 
ссылку на компонент dedEmployeeNo, а в качестве значения такого же свойства 
нижней метки — ссылку на компонент dedName. Это обеспечит переход с верхней 
строки ввода на нижнюю с помощью клавиш мнемонического доступа соответствующих меток. 
    Полученный результат представлен на рис. 10.12. 

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

    1. Откройте форму dmRENTMAN модуля данных в окне конструктора форм и 
разместите ее так, чтобы была видна создаваемая форма. 
    2. Щелкните правой кнопкой мыши на компоненте DataSet, поля которого вы 
хотите использовать, и из появившегося меню выберите пункт Field Editor.
    3. Перетащите поле из окна редактора полей на разрабатываемую форму. На 
форме должны появиться элемент управления и связанная с ним метка. 
    4. Помните, что тип создаваемого элемента управления определяется с 
помощью свойства TControlClass соответствующего набора атрибутов.

    Связывание с модулем данных 

    Теперь нужно связать новую форму с модулем данных, чтобы получить доступ к 
объектам базы данных RENTMAN. Для того чтобы связать форму с формой dmRENTMAN 
выполните следующие операции. 
    1. Выберите команду меню File=>Use Unit и дважды щелкните на пункте 
RENTDATA в списке открывшегося окна. 
    2. Выберите компоненты DBNavigator и DBEdit и присвойте в качестве 
значения их общему свойству DataSource ссылку на источник данных 
dmRENTMAN.dsEMPLOYEE. 
    
    Глава 10. Приступаем к созданию форм 213 


    Рис. 10.12. Форма fmREMPENTO с метками и строками ввода данных 


    3. Отмените выбор всех трех компонентов и присвойте в качестве значений 
свойств DataField каждого компонента DBEdit ссылку на соответствующее поле 
таблицы EMPLOYEE. Компонент dedEmployeeNo должен ссылаться на столбец 
EMPLOYEE_NUMBER, а компонент dedName — на столбец NAME. 
    После выполнения последней операции, можно считать форму EMPLOYEE Quick 
Edit/Entry Form полностью завершенной. Прежде чем продолжить, сохраните ее в 
файле REMPENTO.PAS в каталоге системы RENTMAN. 

    Тестирование новой формы 

    Сохранив новую форму, протестируйте ее. Для этого нужно выполнить 
следующие операции. 
    1. В окне конструктора форм выберите форму fmRSYSMANO и дважды щелкните на 
ее компоненте mmRENTMAN. 
    2. В открывшемся окне конструктора меню выберите подменю Tables и дважды 
щелкните на его пункте Employees. 
    3. В исходном тексте обработчика события OnClick данного пункта введите 
оператор fmREMPENTO.Show;. При выборе пункта Employees выполнение этого 
оператора приведет к открытию только что созданной формы. 
    4. Закройте окно конструктора меню и выберите команду File=>Use Unit. 
    5. Щелкните дважды на пункте REMPENTO в списке открывшегося окна. Это 
приведет к тому, что в оператор uses программного модуля главной формы 
RSYSMANO будет добавлено имя программного модуля формы fmREMPENTO, поэтому 
вызов метода Show последней не приведет к появлению ошибки при компиляции программы. 
    6. Сохраните проект RENTMAN на диске и запустите приложение на выполнение. 
На рис. 10.13 показан вид формы во время работы приложения. 

    Форма Work Type Quick Entry/Edit Form 

    Завершив создание формы для редактирования таблицы EMPLOYEE, можно перейти 
к созданию формы быстрого ввода и редактирования данных таблицы WORKTYPE. 
Теперь я уже не буду вести вас за руку — надеюсь, что с этой формой вы 
справитесь и без меня. Приведу лишь некоторые важные моменты, на которые нужно 
обратить внимание при создании этой формы. 
    
    214 Часть II. Учебный курс 


    Рис. 10.13. Завершенная форма fmREMPENTO 


    Q Имя новой формы — fmRWKTENTO, а заголовок — Work Type Quick Entry/Edit From. 
    Q Как и предыдущая форма, она является наследником класса fmEditForm. 
    Q Определите клавиши мнемонического доступа к меткам, которые помещаются 
на форму (используйте для этого в заголовках символ &), а также не забудьте 
присвоить в качестве значений свойствам FocusControl меток ссылки на 
соответствующие компоненты DBEdit. 
    Q Не забывайте присваивать имена компонентам формы в соответствии с 
соглашениями, приведенными в главе 4, "Соглашения". 
    Q Элементы управления формы для работы с данными должны ссылаться на 
источник данных dmRENTMAN.dsWORKTYPE. 
    Q Не забудьте с помощью команды File=>Use Unit включить модуль RENTDATA в 
список доступных модулей, чтобы новая форма могла получить доступ к объектам 
базы данных. 
    Q Свяжите компоненты DBEdit с соответствующими полями таблицы WORKTYPE с 
помощью свойств DataField. 
    Q Завершив создание формы, свяжите ее с главным меню приложения, как вы 
это делали для предыдущей формы. 
    На рис. 10.14 показан вид завершенной формы во время работы приложения. 


    Рис. 10.14. Завершенная форма fmRWKTENTO 


    Глава 10. Приступаем к созданию форм 215 

    Резюме 

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

    Q Создание и импортирование словаря данных Delphi. 
    Q Настройка компонентов DataSet модуля данных. 
    Q Создание формы быстрого ввода и редактирования данных таблицы EMPLOYEE. 
    Q Создание новой формы с помощью мастера форм. 
    Q Удаление новой формы из проекта RENTMAN. 
    Q Создание новой формы с помощью конструктора форм Delphi. 
    Q Установление связи между новой формой и модулем данных RENTMAN. 
    Q Создание формы быстрого ввода и редактирования данных таблицы WORKTYPE. 
    Все знания и навыки, которые вы приобрели, решая эти небольшие подзадачи, 
пригодятся вам для создания более сложных форм системы RENTMAN. 

    Что дальше... 

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

    216 Часть II. Учебный курс 
