6.3. Задания для выполнения практических работ.
Практическая работа №1
Создание баз данных MS Access и работа с данными в консольном режиме.
Цель работы:
Создание простейшего информационного образа книги продаж предприятия в виде 4 таблиц базы данных – BIK, INN, SF, PP, содержащих конкретные данные.
В процессе выполнения задания студент должен:
— приобрести навыки создания, редактирования и работы с базами данных в консольном режиме;
— освоить приемы организации межпрограммных интерфейсов в консольном режиме;
— научиться создавать и применять элементарные SQL-запросы для модификации содержимого таблиц базы данных.
Задания к Практической работе №1
Задание 1. Создать новую базу данных СУБД MS Access.
Загрузить СУБД MS Access из среды Windows.
Используя Главное меню MS Access войти в режим создания новой базы данных. Указать имя БД и выбрать (при необходимости) диск и (или) каталог, в котором будет сохранен файл БД.
В качестве имени БД рекомендуется использовать фамилию пользователя. Файл БД рекомендуется сохранить в каталоге «Мои документы» или в специальном каталоге, который следует предварительно создать.
Создать БД, выбрав командную кнопку [СОЗДАТЬ] в окне режима создания новой базы данных.
Задание 2. Создать таблицы базы данных для решения задачи ВЕДЕНИЯ СЧЕТОВ-ФАКТУР.
2.1. Создать таблицу БД для хранения данных о выписанных счетах-фактурах.
Определение структуры новой таблицы выполнить в режиме Конструктора таблиц.
При определении структуры таблицы:
- задать имена и типы данных полей таблицы (необходимый состав полей и типы данных приведены в таблице)
Структура таблицы счетов-фактур:
- для полей таблицы указать значения основных свойств:
- размер поля (для текстовых и числовых полей)
- подпись поля (наименования полей на русском языке для последующего отображения в шапке таблицы при работе в режиме просмотра таблицы)
- возможность ввода пустого значения (исходя из экономического смысла задачи, НЕ могут иметь пустых значений, т.е. являются обязательными поля, содержащие сведения об ИНН, номере, дате и суммах счетов-фактур и платежных поручений, наименования клиентов и банков, а также работ в счетах-фактурах, расчетные и корреспондентские счета, БИК банков)
- значение по умолчанию
- условие на значение поля
- сообщение об ошибках ввода
-
сохранить таблицу счетов-фактур под именем SF
Примечание: при сохранении таблицы ключевое поле в таблице не создавать.
2.2. Создать таблицы БД для хранения данных о клиентах (имя таблицы – INN) и банках (имя таблицы – BIK)/
Определение структуры новых таблиц выполнить в режиме Конструктора таблиц в последовательности, указанной в пункте 2.1.
Необходимый состав полей и типы данных приведены в следующих таблицах:
Структура таблицы клиентов
Структура таблицы банков
Задание 3. Ввести в таблицы данные в консольном режиме.
Открыть таблицу банков (BIK) и ввести в нее с клавиатуры следующие данные:
Открыть таблицу счетов-фактур-(SF) и ввести в нее с клавиатуры следующие данные:
Закрыть таблицы банков и счетов-фактур.
Задание 4. Добавление данных из внешних источников.
Необходимо дополнить созданные таблицы новыми данными, то есть занести в них информацию, которая хранится в таблицах, имеющих аналогичную структуру, но созданных в среде другой СУБД (dBase-системе) и являющихся внешними, по отношению к вашей БД. Каждая из этих таблиц содержится в отдельном файле формата dBase-III: BIK.DBF, INN.DBF и SF.DBF, соответственно (файлы с таблицами, заполненные данными, предоставляются вместе с настоящим заданием и должны быть предварительно размещены на жестком диске компьютера или на дискете).
Для решения задачи необходимо:
- установить информационный интерфейс между базами данных различного типа, то есть присоединить таблицы, содержащиеся в файлах формата dBase, к созданной БД.
Для установки интерфейса следует воспользоваться командой главного меню СУБД MA Access: Файл > Внешние данные > Связь с таблицами…
После выполнения присоединения таблицы должны быть визуально отображены в ярлыке «Таблицы» вашей БД в виде соответствующих пиктограмм:
Таблица BIK.DBF в виде пиктограммы
BIK1
Таблица INN.DBF в виде пиктограммы
INN1
Таблица SF.DBF в виде пиктограммы
SF1
Присоединенные таблицы доступны для работы в БД.
- добавить записи с данными из присоединенных таблиц в ранее созданные таблицы
из таблицы
BIK1 в таблицу BIK
из таблицы
INN1 в таблицу INN
из таблицы
SF1 в таблицу SF
Для автоматизации данной операции следует создать и выполнить индивидуальный запрос-действие на добавление записей в каждую из созданных таблиц. При этом следует:
— из таблицы BIK1 в таблицу BIK добавить все имеющиеся записи
— из таблицы INN1 в таблицу INN добавить все имеющиеся записи
— из таблицы SF1 в таблицу SF добавить только те записи, ИНН которых присутствуют в таблице клиентов. Критерий запроса SF1.INN=INN.INN
Примечание: после выполнения каждого запроса следует открыть соответствующую таблицу и визуально проконтролировать правильность добавления записей. Количество добавленных записей в каждой таблице не должно быть больше числа записей в соответствующей таблице-источнике.
Если задания выполнены верно, то присоединенные таблицы следует отключить от базы данных, удалив соответствующие пиктограммы BIK1, INN1, SF1.
- создать в БД таблицу РР, содержащую данные о платежных поручениях посредством импорта информации из внешней среды
Структура таблицы платежных поручений
Для импорта таблицы следует воспользоваться командой главного меню СУБД MA Access: Файл > Внешние данные >Импорт
Практическая работа №2.
Создание и работа с элементарными запросами-выборками в QBE-редакторе.
Цель работы:
- Приобрести навыки создания, редактирования и выполнения простейших SQL-запросов-выборок (SELECT) в консольном режиме (в режиме Конструктора) при решения элементарных, нерасчетных задач управления.
- Освоить приемы организации отбора записей по критериям, задаваемых различными способами: с помощью использования условий отбора (WHERE), с помощью управления содержимым полей (IIF), с помощью управления параметрами связи между таблицами (INNER JOIN, LEFT JOIN, RIGHT JOIN).
- Научиться разрабатывать и выполнять SQL-запросы-выборки с временными параметрами на определенную дату, на интервал времени и т.д.
Примечание:
При выполнении заданий следует иметь в виду, что примеры, иллюстрирующие результаты их выполнения, отражают, прежде всего, общий вид получаемого результата, например, состав и последовательность полей, сортировку записей. Конкретные данные в иллюстративных примерах, например, названия предприятий, даты, суммы и т.п. могут отличаться от полученного Вами результата, поскольку предоставляемые для выполнения работ исходные данные постоянно обновляются
Задания к Практической работе №2
Создать и выполнить запросы:
Запрос №2.1
Определить и вывести на экран список предприятий, от которых поступили денежные средства в следующем формате:
ИНН Наименование Адрес Телефон
Отсортировать по наименованию клиента.
Результат должен иметь следующий вид:
Запрос №2.2
Определить и вывести на экран список предприятий, по которым были выписаны счета-фактуры в следующем формате:
Номер квартала ИНН Наименование № СФ Дата Сумма
Отсортировать по кварталам, а внутри кварталов — по наименованию клиента.
Результат должен иметь следующий вид:
Запрос №2.3
Определить и вывести на экран список банков, по которым были получены денежные средства за период с 01.01.2004 г. по 31.05.2004 г. следующем формате:
Банк ИНН Банка Город БИК банка Кор/счет
Отсортировать по кварталам, а внутри кварталов — по наименованию клиента.
Результат должен иметь следующий вид:
Запрос №2.4
Определить и вывести на экран распределение клиентов по банкам:
Банк БИК Банка Клиент ИНН клиента Адрес клиента
Результат должен иметь следующий вид:
Запрос №2.5
Определить и вывести на экран список банков, по которым введены ошибочные БИК или кор/счет:
Банк БИК Банка Кор/счет ИНН банка
Пояснение. Критерием проверки соответствия БИК банка его корреспондентскому счету является требование, чтобы последние три символа поля БИК совпадали с последними тремя символами кор/счета. В прикладной информатики в области экономики и менеджмента часто используются встроенные функции выделения различных частей из символьных строк – Left$(), Mid$(), Right$(). Формат встроенных функций с примерами их использования лучше всего просмотреть в электронной справке СУБД MS Access.
Результат должен иметь следующий вид:
Запрос №2.6
Определить и вывести на печать анализ оплаты всех счетов-фактур:
Наименование клиента ИНН клиента № Счета-фактуры Дата Счета-фактуры Сумма Счета-фактуры Дата оплаты Сумма оплаты
Отсортировать по клиентам, датам выписки счетов-фактур и датам оплаты.
Результат должен иметь следующий вид (фрагмент, для наглядности распечатан отчет):
Запрос №2.7
Определить и вывести на печать авансовые платежи:
Наименование клиента ИНН клиента № Счета-фактуры Дата Счета-фактуры Сумма Счета-фактуры Дата аванса Сумма аванса
Отсортировать по клиентам, датам выписки счетов-фактур и датам авансов.
Пояснение. Платеж, который поступил хотя бы на один день раньше счета-фактуры, или без выписки счета-фактуры следует считать авансом. На него выписывается внутренний счет-фактура, который не передается клиенту, а используется при составлении книги продаж.
Результат должен иметь следующий вид (фрагмент):
Практическая работа №3.
Создание и работа с групповыми запросами и сложными запросами выборками в QBE-редакторе.
Цель работы:
- Приобрести навыки создания, редактирования и выполнения групповых и итоговых SQL-запросов-выборок(SELECT) в консольном режиме при решение расчетных задач экономики и управления.
- Закрепить приемы организации отбора записей по критериям, задаваемых различными способами: с помощью использования условий отбора (WHERE), с помощью управления содержимом полей (IIF), с помощью управления параметрами связи между таблицами(INNER JOIN, LEFT JOIN, RIGHT JOIN).
- Научиться разрабатывать и выполнять групповые и итоговые SQL-запросы-выборки с временными параметрами на определенную дату, на интервал времени и т.д.
Задания к Практической работе №3
Создать и выполнить запросы:
Запрос №3.1.
Определить и вывести на экран список ошибочных платежных поручений в следующем формате:
Номер п/п Дата Сумма ошибочного платежа ИНН клиента
Отсортировать по сумме платежных поручений.
Пояснение. Ошибочными платежными поручениями следует считать такие платежи, которые получены от организаций, которых нет в списке предприятий-покупателей. Свойство целостности в организации информационного обеспечения требует, чтобы сначала были введены данные о покупателе в таблицу INN, и только потом данные в таблицу платежей.
Результат должен иметь следующий вид:
Запрос №3.2.
Определить и вывести на экран список клиентов, по которым не были вписаны счета-фактуры и которые не зарегистрированы в г. Москве. Формат запроса:
Клиент ИНН клиента Адрес Банк клиента
Отсортировать по наименованию клиентов.
Пояснение. Первая два символа ИНН содержат номер региона, в котором зарегистрирована организация. Так, например, все организации, зарегистрированные в Санкт-Петербург, имеют ИНН, соответствующий следующей маске — «78*», подмосковные клиенты – «50*», предприятия Кабардино-Балкирии –«07*», юридические лица Москвы – «77*» и т.д. В отличие от запроса 3.1 здесь требуется дополнительное задание условий отбора в явном виде.
Результат должен иметь следующий вид:
Запрос №3.3.
Определить и вывести на экран список банков, по которым в таблицу INN не были введены данные по клиентам. Формат запроса:
Банк Город Кор/счет БИК банка
Отсортировать по наименованию банков.
Пояснение. Проанализируйте разницу между данным запросом и запросом 2.4.
Результат должен иметь следующий вид:
Запрос №3.4.
Определить и вывести на экран анализ распределения клиентов по всем банкам. Формат запроса:
Банк Город БИК банка Количество обслуживаемых клиентов
Отсортировать по убыванию количества обслуживаемых клиентов.
Результат должен иметь следующий вид:
Запрос №3.5.
Определить и вывести на экран предприятия, по которым были выписаны счета-фактуры, но которые не оплачены частично или полностью. Формат запроса:
Клиент ИНН клиента Количество неоплаченных СФ
Отсортировать по убыванию количества неоплаченных СФ.
Пояснение. 1. Для решения данной задачи требуется создать дополнительный запрос, для предварительной подготовки данных.
2. Так как есть счета-фактуры, по которым может вообще не быть платежей, то потребуется использования встроенных функций определения существования объекта – ISNull() и IsEmpty(). Программно связать два разнородных события – сумма платежа и отсутствия любой оплаты – можно с помощью функции условий iif(). Например:
IIf(IsNull([Запрос 3_5_0].[Sum-SUMMA]);0;[Запрос 3_5_0].[Sum-SUMMA])
где источник данных – запрос Запрос 3_5_0 (имя SQL-запроса может быть любым) – определяет сумму всех платежей по данному счету-фактуре. Приведенная форма генерирует значение 0(нуль), если по счету-фактуре совсем не было платежей. Такое построение диктуется необходимостью согласования типов операндов в выражениях.
Результат должен иметь следующий вид: