Задания — Создание приложения со связанными таблицами
Задание 1. Создание двухтабличного приложения со связанными таблицами
Теперь посмотрим, как строить приложения со связанными друг с другом таблицами. Две таблицы могут быть связаны друг с другом по ключу. Одна из этих связанных таблиц является головной (master), а другая — подчиненной, детализирующей (detail). Построим приложение, которое при перемещении по таблице КЛИЕНТЫ показывало бы список договоров, заключенных с выбранной организацией. В этом случае головной таблицей является таблица КЛИЕНТЫ, а подчиненной — таблица ДОГОВОРА.
1. Создайте новый проект, разместите по два компонента Table и DataSource и настройте их соответственно на таблицы КЛИЕНТЫ (Clients) и ДОГОВОРА (Contracts). Настройте имена компонентов, чтобы в дальнейшем было удобнее ссылаться на них.

2. Разместите два компонента DBGrid, настройте их на соответствующие таблицы и настройте выводимые имена полей в сетке с
помощью редактора колонок. Сделайте невидимыми поля ContractNum и ClientNum в таблице КЛИЕНТЫ.
3. Добавьте подписи к таблицам при помощи компонента Label.
4. Разместите компонент DBNavigator, свяжите его с таблицей КЛИЕНТЫ и настройте как в предыдущем задании.
5. Сделаем таблицу ДОГОВОРА подчиненной по отношению к таблице КЛИЕНТЫ. Для этого свойство MasterSource компонента Table для таблицы ДОГОВОРА установить в DataSource, соответствующий таблице КЛИЕНТЫ.
6. Теперь надо задать, по какому полю связать таблицы. Щелкните на кнопку в правой части свойства MasterFields компонента Table для таблицы ДОГОВОРА. Запустится конструктор связей Field Link Designer. В нем слева в окне DetailFields расположены имена полей подчиненной таблицы, но только тех, по которым таблица индексирована. Слева в окне MasterFields расположены поля головной таблицы. В списке Availablelndexes выберете вторичный индекс для поля-связки ClientNum и свяжите поля в master и detail таблицах по кнопке Add.
7. Запустите приложение. Проверьте его работу при добавлении и удалении записей в главной и подчиненной таблицах. Вы увидите, что в зависимости от того, какую запись вы выделяете в списке организаций, отображается список договоров с этой организацией. Подчиненная таблица отражает только те записи, в которых ключевые поля совпадают с ключевыми полями головной таблицы.

Задание 2. Поиск и сортировка данных Добавим в приложение возможность сортировки и поиска.
Для индексированных полей существует возможность инкрементального поиска с помощью метода FindNearest и обычного компонента-поля ввода Edit. Таблица должна быть предварительно индексирована по тому полю, по которому будет производиться поиск (помните вторичные индексы?).
1. Настроим поиск по имени организации. Для ввода искомых значений разместите на форме компонент Edit.
2. Создайте обработчик события OnChange: Tablel.lndexName:=’Org’; Tablel .FindNearest([Edit1 .Text]); Tablel — это компонент Table, связанный с таблицей КЛИЕНТЫ (у вас может быть другое название). Свойство IndexName задает индекс, который будет использоваться для поиска. В этом примере индекс для поля с названием организации (OrgName) называется Org (у вас же может быть другое название).
Оператор FindNearest обеспечивает переход к строке с наиболее совпадающим значением (по первым буквам), если полного совпадения нет.
1. Добавьте еще два компонента Edit и создайте соответствующие обработчики, для поиска по полям с адресом и фамилией руководителя.
4. Добавьте подписи к компонентам-редакторам.
5. Запустите приложение и проверьте поиск по разным полям. Обратите внимание: то поле, по которому ведется поиск (чей индекс выставлен в свойстве IndexName), автоматически сортируется. Теперь остановимся на методе Locate. В простейшем случае применение этого метода отличается только отсутствием необходимости индексировать набор данных (вторичных индексов).
6. Добавим в приложение возможность поиска договоров по дате. Разместите на форме компонент Edit, подпись к нему и кнопку. Для кнопки создайте обработчик нажатия и введите туда строку: Table2.Locate(‘Date’,StrToDate(Edit4.Text),[loCaseInsensitive]);
Первый параметр — строка, содержащая список полей, по которым производится поиск.
Второй параметр — массив искомых значений.
Третий параметр может принимать два значения: loCaseInsensitive — нечувствительность поиска к регистру, в котором введены символы, и loPartialKey -допустимость частичного совпадения.
или напишите нам прямо сейчас:
Здравствуйте. Скажите пожалуйста, планирую поступать в магистратуру на факультет Психологии « Психология личности»в РГГУ скажите пожалуйста, есть ли у вас, ответы на вступительные экзамены? так как, планирую, сделать акцент на бюджет. Спасибо.
Арсений, здравствуйте! Прошу Вас прислать всю необходимую информацию на почту info@otlichnici.ru и написать что необходимо выполнить. Я посмотрю описание к заданиям и подскажу вам по стоимости и срокам выполнения.
Дистанционная помощь в защите ВКР
Анастасия, здравствуйте! Прошу Вас прислать всю необходимую информацию на почту info@otlichnici.ru и написать что необходимо выполнить. Я посмотрю описание к заданиям и подскажу вам по стоимости и срокам выполнения.
Здравствуйте. Нужна срочно практическая часть вкр, третья глава. Скину похожие работы, на которые можно ориентироваться
Александр, здравствуйте! Прошу Вас прислать всю необходимую информацию на почту info@otlichnici.ru и написать что необходимо выполнить. Я посмотрю описание к заданиям и подскажу вам по стоимости и срокам выполнения.
вкр по теме: экологический туризм России : анализ состояния, проблемы и перспективы
Людмила, здравствуйте! Прошу Вас прислать всю необходимую информацию на почту info@otlichnici.ru и написать что необходимо выполнить. Я посмотрю описание к заданиям и подскажу вам по стоимости и срокам выполнения.
Здравствуйте вы защищаете ВКР?
Ольга, здравствуйте! Прошу Вас прислать всю необходимую информацию на почту info@otlichnici.ru и написать что необходимо выполнить. Я посмотрю описание к заданиям и подскажу вам по стоимости и срокам выполнения.
Написать магистерскую ВКР на тему «Совершенствование логистических бизнес-процессов на примере торговой компании». Не менее 100 страниц.
Миша, здравствуйте! Прошу Вас прислать всю необходимую информацию на почту info@otlichnici.ru и написать что необходимо выполнить. Я посмотрю описание к заданиям и подскажу вам по стоимости и срокам выполнения.
Здравствуйте нужна работа Вкр
Лена, здравствуйте! Прошу Вас прислать всю необходимую информацию на почту info@otlichnici.ru и написать что необходимо выполнить. Я посмотрю описание к заданиям и подскажу вам по стоимости и срокам выполнения.
Написать ВКР 3 раздела Тема строительство строительство жилого дома с применением каркасно-монолитных технологий Антиплагиат от 75% ПЗ и чертежи
Владимир, здравствуйте! Прошу Вас прислать всю необходимую информацию на почту info@otlichnici.ru и написать что необходимо выполнить. Я посмотрю описание к заданиям и подскажу вам по стоимости и срокам выполнения.