- •Романов в.В.
- •1.2. Типы моделей данных
- •1.3.2. Формализация отношений
- •2.2. Логические связи в рбд
- •4. Работа с данными при помощи запросов
- •4.1. Средства описания запросов
- •4.2 Условия отбора данных
- •А) бланк запроса;
- •4.4. Итоговые запросы
- •А) бланк запроса (вариант 1)
- •Б) бланк запроса (вариант 2)
- •А) схема связей
- •Б) таблица запроса
- •4.6. Запрос с параметром
- •5. Основные этапы разработки рбд
- •6.4. Анализ данных. Определение структуры данных.
- •6.5. Схема базы данных
- •Р ис. 20. Схема базы данных "Транс-2000" (жирным шрифтом выделены первичные ключи)
- •6.6.2. "Расчет затрат на горючее за отчетный период".
- •Содержание
Р ис. 20. Схема базы данных "Транс-2000" (жирным шрифтом выделены первичные ключи)
водителем работы за отчетный период (запрос “Объем по водителям за период”, рис. 22).
На третьем этапе подсчитывается общий объем работ, выполненный компанией за период (запрос “Общий объем работ за период”, рис. 23). Т.о., решение задачи реализуется тремя последовательными запросами. Следует отметить, что в этом примере последующие запросы используют в качестве источника данных предыдущий запрос.
Объемы_по_рейсам_за_период: запрос на выборку |
||||
Поле: |
№рейса |
Дата |
Ф_И_О |
Объем:[ВЕС]*[РСТ] |
Имя таблицы: |
Перевозки |
Перевозки |
Водители |
|
Сортировка: |
|
|
|
|
Вывод на экран: |
|
|
|
|
Условия отбора: |
|
Between [Дата_Н] And [Дата_к] |
|
|
Или: |
|
|
|
|
Рис. 21. Бланк запроса "Объемы работ по рейсам за период"
Объем_по водителям_за период: итоговый запрос |
||
Поле: |
Ф_И_О |
Объем |
Имя таблицы: |
Объемы_по_рейсам_за_п |
Объемы_по_рейсам_за_период |
Групповая операция: |
Группировка |
Sum |
Сортировка: |
|
|
Вывод на экран: |
|
|
Условия отбора: |
|
|
Или: |
|
|
Рис. 22. Бланк запроса "Объемы по водителям за период”
Общий объем работ за период: итоговый запрос |
||
Поле: |
Объем |
|
Имя таблицы: |
Объмы_по_водителям_за_период |
|
Групповая операция: |
Sum |
|
Сортировка: |
|
|
Вывод на экран: |
|
|
Условия отбора: |
|
|
Или: |
|
|
Рис. 23. Бланк запроса " Общий объем работ за период ”
6.6.2. "Расчет затрат на горючее за отчетный период".
В соответствии с допущениями, оговоренными в разделе 6.2, затраты на горючее будут определяться как произведение нормы расхода горючего (таблица “Марки_АТ”) на расстояние (таблица “Перевозки”) и на цену горючего (таблица “ЦЕНА_ГСМ”).
Целесообразно решение задачи разбить на пять этапов (хотя могут быть реализованы и другие варианты). Такой подход позволит решить ряд полезных подзадач за счет промежуточных запросов.
На первом из базы выбраются данные по рейсам, выполненным за некоторый отчетный период. В схему этого запроса включаются сведения о номере рейса, дате выполнения рейса, виде горючего, цене горючего и дате установления цены на ГСМ (запрос “Базовый по ГСМ”, рис. 24).
Следует обратить внимание на то, что между таблицами “Марки_АТ” и “ЦЕНА_ГСМ”, используемые для запроса “Базовый по ГСМ” в качестве источников данных, через промежуточную таблицу “Вид_ГСМ” (рис. 20), образована связь типа “многие-ко-многим”. Особенность таких межобъектных связей источников данных рассматривалась в раздел 4.5. Поэтому, набор записей, сформированный в результате выполнения запроса, будет содержать как “правильные”, так и “неправильные” сочетания данных по атрибутам “номер рейса – цена ГСМ”. Из этого набора необходимо отобрать те записи, в которых дата установления цены на горючее является по времени ближайшей слева от даты выполнения рейса. Однако реализовать такой выбор в пределах одного запроса не удается. Для начала, в схему запроса добавим вычисляемое поле “Разн_Д: [Дата] – [Дата_Ц]” с условием отбора строк содержащих только положительные значения в этом вычисляемом поле (рис. 24).
Для последующего отбора строк с “правильными” сочетаниями, на втором этапе формируется запрос, в котором для каждой группы записей относящихся к одному и тому же рейсу (одинаковые значения по атрибуту “№рейса”), определяется минимальное значение атрибута “Разн_ДР_ДЦ” (запрос “Минимальная разность дат”, рис. 25). Для чего, запрос переводится в режим итогового. В разделе “Групповые операции” бланка запроса для поля “№рейса” указывается признак группировки, а для поля “Разн_ДР_ДЦ” устанавливается групповая функция “Min” (раздел 4.4). Источником данных для этого является запрос “Базовый по ГСМ”.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Марки_АТ |
|
|
Автопарк |
|
|
|
|
|
Код_М_АТ |
|
|
КодАТ |
|
|
Перевозки |
|
|
Марка_АТ |
|
М |
Марка |
|
|
№рейса |
|
|
НР_ГСМ |
|
|
НГР |
|
|
Дата |
|
|
НР_АМОРТ |
|
|
ДатаРег |
|
|
ПунктО |
|
|
Вид_ГСМ |
М |
|
Акт_ПР |
|
|
ПунктН |
|
|
|
|
|
Баланс_СТ |
|
|
РСТ |
|
|
ЦЕНА_ГСМ |
|
|
|
|
|
Водитель |
|
|
Код_Цгсм |
|
|
|
|
М |
А_Тр |
|
|
ВидГСМ |
М |
|
Вид_ГСМ |
|
|
ВЕС |
|
|
Дата_Ц |
|
|
ВидГСМ |
|
|
Заказчик |
|
|
ЦЕНА_ГСМ |
|
|
ГСМ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Базовый по ГСМ: запрос на выборку |
|
|||||||
Поле: |
№рейса |
Дата |
РСТ |
НР_ГСМ |
ГСМ |
Дата_Ц |
ЦЕНА_ГСМ |
Разн_ДР_ДЦ:[Дата]-[Дата_Ц] |
Имя таблицы: |
Перевозки |
Перевозки |
Перевозки |
Марки_АТ |
Вид_ГСМ |
ЦЕНА_ГСМ |
ЦЕНА_ГСМ |
|
Сортировка: |
|
|
|
|
|
|
|
|
Вывод на экран: |
|
|
|
|
|
|
|
|
Условие отбора:
|
Between [ДН] And [ДК] |
|
|
|
|
|
|
>0
|
или: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рис. 24. Схема источников данных и бланк запроса “Базовый по ГСМ”
|
|
|
|
||
|
|
Базовый по ГСМ |
|||
|
|
№рейса |
|
||
|
|
Дата |
|
||
|
|
РСТ |
|
||
|
|
НР_ГСМ |
|
||
|
|
ГСМ |
|
||
|
|
Дата_Ц |
|
||
|
|
ЦЕНА_ГСМ |
|
||
|
|
Разн_ДР_ДЦ |
|
||
|
|
|
|
||
|
Минимальная разность дат: итоговый запрос |
||||
|
Поле: |
№рейса |
Разн_ДР_ДЦ |
||
|
Имя таблицы: |
Базовый по ГСМ |
Базовый по ГСМ |
||
|
Групповые операции |
Группировка |
Min |
||
|
Сортировка: |
|
|
||
|
Вывод на экран: |
|
|
||
|
Условие отбора: |
|
|
||
|
или: |
|
|
||
|
|
|
|
||
Рис. 25. Источник данных и бланк запроса
“Минимальная разность дат”
На третьем этапе рассчитываются затраты на горючее по каждому рейсу данного периода (запрос “Затраты на ГСМ по рейсам”, рис.26), для чего, из результатной таблицы запроса “Базовый по ГСМ” выбираются только те записи, которые удовлетворяют критерию “Min_Разн_ДР_ДЦ” (значения критериев получены в запросе “Минимальная разность дат”). Следует отметить, что в окне запроса “Затраты на ГСМ по рейсам” между объектами-источниками данных “Базовый по ГСМ” и “Минимальная разность дат” необходимо установить временную связь первого типа (раздел 4.5).
На четвертом этапе рассчитываются суммарные затраты по отдельным видам горючего. В запросе “Итоговые затраты на ГСМ по видам” (рис. 27), суммируются значения затрат (атрибут “Затраты_на_ГСМ”) в пределах записей принадлежащих одному виду ГСМ (атрибут “ГСМ”).
На пятом – подсчитываются общие затраты на ГСМ за период (запрос “Итоговые затраты на ГСМ за период”, рис. 28). При обращении к этому запросу все описанные промежуточные запросы данной задачи будут выполнены в скрытом виде.
|
|
Базовый по ГСМ |
|
Минимальная разность дат |
|
|||||||||||||||||||
|
|
№рейса |
|
|
|
№рейса |
|
|
||||||||||||||||
|
|
Дата |
|
|
|
Разн_ДР_ДЦ |
|
|
|
|||||||||||||||
|
|
РСТ |
|
|
|
|
|
|
||||||||||||||||
|
|
НР_ГСМ |
|
|
|
|
|
|
||||||||||||||||
|
|
ГСМ |
|
|
|
|
|
|
||||||||||||||||
|
|
Дата_Ц |
|
|
|
|
|
|
||||||||||||||||
|
|
ЦЕНА_ГСМ |
|
|
|
|
|
|
||||||||||||||||
|
|
Разн_ДР_ДЦ |
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
||||||||||||||||
Затраты на ГСМ по рейсам: запрос на выборку |
|
|||||||||||||||||||||||
Поле: |
№рейса |
Разн_ДР_ДЦ |
ГСМ |
РСТ |
НР_ГСМ |
ЦЕНА_ГСМ |
Расход_ГСМ: [РСТ]*[НР_ГСМ] |
Затраты_на_ГСМ: [Расход_ГСМ]*[ЦЕНА_ГСМ] |
||||||||||||||||
Имя таблицы: |
Базовы |
Базовый по ГСМ |
Баов |
Базо |
Базовый |
Базовый по Г |
|
|
||||||||||||||||
Сортировка: |
|
|
|
|
|
|
|
|
||||||||||||||||
Вывод на экран: |
|
|
|
|
|
|
|
|
||||||||||||||||
Условие отбора: |
|
[Минимальная разность дат]![Min_Разн_ДР_ДЦМ] |
|
|
|
|
|
|
||||||||||||||||
или: |
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
||||||||||||||||
Рис. 26. Схема источников данных и бланк запроса “Затраты на ГСМ по рейсам”
Затраты на ГСМ по рейсам |
|
||
|
№рейса |
|
|
|
Разн_ДР_ДЦ |
|
|
|
ГСМ |
|
|
|
РСТ |
|
|
|
НР_ГСМ |
|
|
|
ЦЕНА_ГСМ |
|
|
|
Расход_ГСМ |
|
|
|
Затраты_на_ГСМ |
|
|
|
|
|
|
Итоговые затраты на ГСМ по видам: итоговый запрос |
|||
Поле: |
ГСМ |
Расход_ГСМ |
Затраты_на_ГСМ |
Имя таблицы: |
Затраты на ГСМ по р |
Затраты на ГСМ |
Затраты на ГСМ по |
Групповые операции |
Группировка |
Sum |
Sum |
Сортировка: |
|
|
|
Вывод на экран: |
|
|
|
Условие отбора: |
|
|
|
или: |
|
|
|
Рис. 27. Источник данных и бланк запроса
“Итоговые затраты на ГСМ по видам”
-
Итоговые затраты на ГСМ по видам
ГСМ
Расход_ГСМ
Затраты_на_ГСМ
Поле:
Затраты_на_ГСМ
Имя таблицы:
Итоговые затраты на ГСМ по видам
Групповые операции
Sum
Сортировка:
Вывод на экран:
Условие отбора:
или:
Рис. 28. Источник данных и бланк запроса
“Итоговые затраты на ГСМ за период”
Полученные в запросах данные служат основой для формирования и вывода на печать выходных (отчетных) документов.
ЗАКЛЮЧЕНИЕ
Задачи, связанные с обработкой данных, широко распространены в любой сфере деятельности. Основу решения таких задач в современном мире составляют автоматизированные информационные системы. Массивы информации, накопленные в автоматизированных информационных системах, должны быть оптимальным образом организованы для их компьютерного хранения и обработки с обеспечением их целостности и непротиворечивости.
При разработке автоматизированных приложений необходимо провести обследование состава, структуры данных и информационных потоков в предметной области, являющихся характеристиками внемашинной БД в предметной области. Особое внимание следует уделить исследованию сложившейся в предметной области системе классификации и кодирования технико-экономической информации, системе и типовым формам документации. Опора на результаты такого обследования позволит упростить процессы систематизации данных, установления логических связей между отдельными информационными объектами и проектирования внутримашинной БД для предметной области. Проект БД является основой разработки и реализации программного приложения.
Автоматизация сокращает трудозатраты на сбор, регистрацию, хранение, поиск, расчетную обработку, вывод и передачу информации. Создание и совершенствование автоматизированных информационных технологий обеспечивает повышение эффективности управления предметной областью.
ЛИТЕРАТУРА
Евдокимов В.В. и др. Экономическая информатика. Учебник для вузов. Под ред. д.э.н. проф В.В. Евдокимова.- Спб.:Питер. 1997.- 592 с.
Вейскас Д. Эффективная работа с Microsoft Access 2/Перев. с англ.- СПб: Питер, 1995.
Диго С.М. Проектирование и использование баз данных: Учебник. М.: Финансы и статистика, 1995.
Мейер Д. Теория реляционных баз данных/Перев. с англ.- М.: Мир, 1987.
Симонович С.В. и др. Специальная информатика: Учебное пособие.- М.:АСТ. 1998.
Острейковский В.А. Информатика: Учебник для вузов.-М:Высш. Шк. 2000.- 511 с.
Приложение
Расшифровка имен атрибутов схемы БД “Транс-2000)”
Таблица “Водители”
КодВ |
Код присваиваемый водителю |
Ф_И_О |
Фамилия Имя Отчество водителя |
ДатаПР |
Дата приема на работу |
ДатаРЖ |
Дата рождения |
Стаж |
Стаж работы |
Таблица “Класс_Водителей”
Код_Кл_Вод |
Код операции присвоения классности водителю |
КодВ |
Код, присвоенный водителю в табл. “Водители” |
Классность |
Классность водителя |
Дата_ПК |
Дата присвоения классности водителю |
Таблица “Тариф_ОТ”
Код_Т |
Код тарифа |
Классность |
Классность |
Дата_Т |
Дата, начиная с которой действует тариф |
Тариф_ОТ |
Тариф оплаты труда |
Таблица “Марки_АТ”
Код_М_АТ |
Код марки автотранспортного средства |
Марка_АТ |
Наименование марки автотранспортного средства |
НР_ГСМ |
Норма расхода ГСМ для данной марки АТ |
НР_АМОРТ |
Норма амортизации ГСМ для данной марки АТ |
Вид_ГСМ |
Код вида ГСМ для данной марки |
Таблица “Автопарк”
КодАТ |
Код автотранспортного средства |
Марка |
Код, присвоенный марке в таблица “Марки_АТ” |
НГР |
Номер государственной регистрации автотранспортного средства |
ДатаРег |
Дата постановки автотранспортного средства на учет |
Акт_ПР |
Документ о приобретении автотранспортного средства |
Баланс_СТ |
Балансовая стоимость автотранспортного средства |
Таблица “Вид_ГСМ”
ВидГСМ |
Код, присвоенный наименованию ГСМ |
ГСМ |
Наименование ГСМ |
Таблица “ЦЕНА_ГСМ”
КодЦгсм |
Код цены ГСМ |
ВидГСМ |
Код, присвоенный наименованию ГСМ в табл. “Вид_ГСМ” |
Дата_Ц |
Дата, с которой действует цена на ГСМ |
ЦЕНА_ГСМ |
Цена ГСМ |
Продолжение приложения
Таблица “Заказчик”
КодЗ |
Код, присвоенный заказчику |
Фирма |
Наименование заказчика |
Город |
Наименование города, где находится фирма-заказчик |
Улица |
Наименование улицы, где находится фирма-заказчик |
Дом_Ком |
Номер дома и комнаты |
Директор |
Фамилия_Имя_Отчество директора фирмы-заказчика |
ИНН |
Идентификационный номер налогоплательщика (фирмы) |
Р_Сч_З |
Расчетный счет фирмы-заказчика |
Банк_З |
Сведения о банке, обслуживающем заказчика |
Таблица “Перевозки”
№рейса |
Номер выполненного рейса |
Дата |
Дата выполнения рейса |
ПунктО |
Код, присвоенный пункту отправления в табл. “Пункт_О_Н” |
ПунктН |
Код, присвоенный пункту назначения в табл. “Пункт_О_Н” |
РСТ |
Расстояние, соответствующее пробегу транспортного средства за рейс |
Водитель |
Код водителя выполнявшего рейс (присвоенный в табл. “Водители”) |
А_Тр |
Код автотранспортного средства (присвоенный в табл. “Автопарк”) |
ВЕС |
Вес перевезенного за рейс груза |
Заказчик |
Код заказчика, для которого выполнялся рейс (табл. “Заказчик”) |
