КОНТРОЛЬНАЯ РАБОТА
по курсу«Информационные технологии в экономике»
дляспециальности «Экономика и управление АП»
В реляционнойСУБД Microsoft Accessсозданиебазы данных МАТЕРИАЛЫ.
Заданиевыполнено с использованием Microsoft Access – 2002.
После запуска Access в правом окне «Создание файла», еслиокна нет его можно запустить выбрав из меню «Файл» и «Создать», выбираем пункт«Новая база данных». В появившемся окне в своей директории сохраняем БД подуникальным именем, в нашем случае «Kolpakov».
1. Созданиетаблиц.
Исходя изусловий задания какие надо создать отчеты приходим к выводу, что необходимосоздать три таблицы со следующими полями:
1. НОМЕНКЛАТУРАМАТЕРИАЛОВ – КодМатериала, Материал.
2. ПОСТАВЩИКИ– КодПоставщика, Поставщик.
3. ПОСТАВКАМАТЕРИАЛОВ – КодПоставщика, КодМатериала,ДатаПоставки, ЕдИзмерения,Количество, Цена.
Для созданиятаблицы НОМЕНКЛАТУРА МАТЕРИАЛОВ выполняем следующие действия:
- Вокне созданной базы, находясь в пункте меню «Таблицы», нажимаем пункт «Созданиетаблицы в режиме конструктора».
- Впоявившемся окне в первой строке графы «имя поля», набираем имя «КодМатериала», тип данных выбираем счетчик и нажав направую кнопку мыши из появившегося меню выбираем пункт «Ключевое поле».
- Вовторой строке в графе «имя поля» набираем «Материал», тип данных выбираемтекстовый, в свойствах поля размер поля оставляем как предлагается по умолчанию50, считая, что название материала не будет содержать более 50 знаков.
- Закрываемконструктор, выбираем сохранить изменения и в появившемся окне вводим имя таблицы«НОМЕНКЛАТУРА МАТЕРИАЛОВ» и нажимаем «ОК».
Для создания таблицыПОСТАВЩИКИ выполняем те же действия но создаем следующие поля со свойствами:
- КодПоставщика – тип счетчик иключевое поле.
- Поставщик– тип текстовый.
- Закрываемконструктор и сохраняем таблицу под именем «ПОСТАВЩИКИ».
Созданные дветаблицы будет в дальнейшем использоваться как словари при вводе данных восновную таблицу «ПОСТАВКА МАТЕРИАЛОВ», чтобы не вводить повторяющиеся значениятакие как название материала и название поставщика. При этом в таблицу«ПОСТАВКА МАТЕРИАЛОВ» будут вводится только числовые коды поставщика иматериала, а сами текстовые названия поставщика и материала будут браться потомавтоматически по созданной связи из таблиц «НОМЕНКЛАТУРА МАТЕРИАЛОВ» и«ПОСТАВЩИКИ». Так будут соблюденыправила по нормализации таблиц БД, отсутствуют избыточные значения.
Основная таблицасодержащая все основные данные это таблица «ПОСТАВКА МАТЕРИАЛОВ» создаем такжев режиме конструктора с полями и следующими свойствами:
- КодПоставщика – тип числовой,свойство размер поля оставляем как предлагается по умолчанию «длинное целое»,для организации связи с полем «КодПоставщика» изтаблицы «ПОСТАВЩИКИ», свойство индексированное поле оставляем так же как ипредложено по умолчанию «Да (допускаются совпадения)», т.к. связь междутаблицами устанавливается только по индексированным полям.
- Такжеполе КодМатериала – с теми же свойствами, толькосвязь этого поля будет в дальнейшем с полем «КодМатериала»из таблицы «НОМЕНКЛАТУРА МАТЕРИАЛОВ».
- ДатаПоставки – тип данных«Дата/время», свойство формат поля «Краткий формат даты», свойство подпись«Дата поставки».
- ЕдИзмерения – типтекстовый, свойство размер поля ставим 10, свойство подпись «Ед.изм.».
- Количество– тип данных Числовой».
- Цена– тип данных денежный, свойство формат поля «Денежный».
- Закрываемконструктор, сохраняем изменение, название таблицы набираем «ПОСТАВКАМАТЕРИАЛОВ», на предложение создать ключевое поле отвечаем нет.
2. Построениеинформационной схемы базы.
Создаем связимежду таблицами, для этого на панели инструментов нажать кнопку — схема данных. В появившемся окне «Добавлениетаблицы» выбрать таблицу «НОМЕНКЛАТУРА МАТЕРИАЛОВ» и двойным щелчком левойкнопки мыши или кнопкой «Добавить» добавить таблицу в окно «Схема данных»находящегося пока за окном «Добавление таблицы». Также добавить и другиетаблицы «ПОСТАВКА МАТЕРИАЛОВ» и «ПОСТАВЩИКИ». Нажать кнопку «Закрыть».
В окне «схемаданных» будут находится все три таблицы с полями, ключевые поля будут выделеныжирным шрифтом. Левой копкой мыши захватить поле «КодМатериала»из таблицы «НОМЕНКЛАТУРА МАТЕРИАЛОВ» перетащить его на поле «КодМатериала» таблицы «ПОСТАВКА МАТЕРИАЛОВ» и отпуститькопку мыши. В появившемся окне поставить галочку в поле флажка «Обеспечениецелостности данных» и поставить галочки в полях флажков «каскадное обновлениесвязанных полей» и «каскадное удаление вязанных полей». Данные действия будуттеперь выполнятся автоматически и это будет обеспечивать целостность и правильностьданных в БД. Нажать кнопку «Создать». От таблицы «НОМЕНКЛАТУРА МАТЕРИАЛОВ» ктаблице «ПОСТАВКА МАТЕРИАЛОВ» протянулась линия со значками 1 и ¥, чтоозначает связь один-ко-многим. То есть одному кодуматериала в таблице «НОМЕНКЛАТУРА МАТЕРИАЛОВ» будет соответствовать несколькозаписей с таким же кодом материала в таблице «ПОСТАВКА МАТЕРИАЛОВ».
Также поступаем с полем «КодПоставщика» изтаблицы «ПОСТАВЩИКИ» и перетаскиваем его на поле «КодПоставщика»из таблицы «ПОСТАВКА МАТЕРИАЛОВ». Связь аналогичная как рассмотрели выше.
Если внимательнопосмотреть на схему данных то мы увидим, что автоматически образовалась связьтипа многие-ко-многим, для таблиц «НОМЕНКЛАТУРАМАТЕРИАЛОВ» и «ПОСТАВЩИКИ», через таблицу «ПОСТАВКА МАТЕРИАЛОВ». То есть одинпоставщик может поставлять несколько материалов, что будет отражено в таблице «ПОСТАВКАМАТЕРИАЛОВ» и будет это видно в отчете «Поступление материалов от поставщиковпо видам», в то же время один материал может поставляться несколькимипоставщиками, что будет также отражено в таблице «ПОСТАВКА МАТЕРИАЛОВ» и будетвидно в отчете «Поступление материалов по видам от поставщиков».
Закрываем окно«Схема данных», на вопрос о сохранении отвечаем да.
Теперь я могуописать информационную схему базы. Она имеет следующий вид.
SHAPE * MERGEFORMAT
НОМЕНКЛАТУРА МАТЕРИАЛОВ
КодМатериала
Материал
ПОСТАВЩИКИ
КодПоставщика
Поставщик
ПОСТАВКА МАТЕРИАЛОВ
КодПоставщика
КодМатериала
ДатаПоставки
Количество
ЕдИзмерения
Цена
ЗАПРОС
ПОСТУПЛЕНИЕ МАТЕРИАЛОВ ОТ ПОСТАВЩИКОВ ПО ВИДАМ
Поставщик
Материал
ДатаПоставки
ЕдИзмерения
Количество
Цена
Сумма
ЗАПРОС
ПОСТУПЛЕНИЕ МАТЕРИАЛОВ ПО ДАТАМ ЗА ОПРЕДЕЛЕННЫЙ ПЕРИОД
ДатаПоставки
Поставщик
Материал
Количество
Сумма
ОТЧЕТ
Поступление материалов от поставщиков по видам
ОТЧЕТ
Поступление материалов по видам от поставщиков
ОТЧЕТ
Поступление материалов по датам за определенный период
Как видно изинформационной схемы моя база данных основывается на трех таблицах «НОМЕНКЛАТУРАМАТЕРИАЛОВ», «ПОСТАВЩИКИ» и «ПОСТАВКА МАТЕРИАЛОВ». В этих таблицах содержатсявсе необходимые данные. На основании этих трех таблиц создается запрос «Поступлениематериалов от поставщиков по видам» с полями из следующих таблиц:
- «ПОСТАВЩИКИ»– поле «Поставщик», данное полеавтоматически находится для соответствующей записи из таблицы «ПОСТАВКАМАТЕРИАЛОВ» с использованием связи по полю «КодПоставщика»и подставляется для кода соответствующее название поставщика.
- «НОМЕНКЛАТУРАМАТЕРИАЛОВ» – поле «Материал», также автоматически находится с использованиемсвязи по полю «КодМатериала» и подставляется для кодасоответствующее название материала.
- «ПОСТАВКАМАТЕРИАЛОВ» – поля «ДатаПоставки», «ЕдИзмерения», «Количество», «Цена».
В запросепоявляется вычисляемое поле «Сумма» которое находится при вычислении запросакак произведение поля «Цена» на поле «Количество» из таблицы «ПОСТАВКАМАТЕРИАЛОВ». Данное поле является условно-постоянным, т.к. на самом деле данноеполе в базе данных не сохранятся, а вычисляется каждый раз при производствезапроса на выборку по соответствующим данным.
На основанииданного запроса «Поступление материалов от поставщиков по видам» составляетсядва отчета которые в принципе одинаково формируются только содержат различныйнабор полей и группируются по различным полям, это следующие отчеты:
- «Поступлениематериалов от поставщиков по видам» – с полями «Поставщик», «Материал», «ДатаПоставки», «ЕдИзмерения», «Количество»,«Цена», «Сумма», и группируется данный отчет по полю «Поставщик» на первомуровне и по полю «Материал» на втором.
- «Поступлениематериалов по видам от поставщиков» – с полями «Материал», «Поставщик», «Количество»,«Цена», «Сумма», и группируется данный отчет по полю «Материал» на первомуровне и по полю «Поставщик» на втором уровне.
Также наосновании данного запроса «Поступление материалов от поставщиков по видам»формируется другой запрос «Поступление материалов по датам за определенныйпериод». Суть данного запроса в том, что из всего запроса «Поступлениематериалов от поставщиков по видам» выбираются только записи за определенныйпериод лежащий между двумя датами и из полей оставляются «ДатаПоставки»,«Поставщик», «Материал», «Количество», «Сумма» и группируется данный отчет пополю «ДатаПоставки».
На основаниизапроса «Поступление материалов по датам за определенный период» формируетсяотчет «Поступление материалов по датам за определенный период».
3. Создание формдля занесения данных в таблицы.
Данные можновводить и используя таблицы, открыв их двоным щелчкомлевой кнопки мыши, однако в данном случае неудобно будет заполнять таблицу«ПОСТАВКА МАТЕРИАЛОВ», поскольку в первые поля надо будет вводить кодыматериала и поставщика. Для удобства ввода данных в таблицы создаем следующее формы«ПОСТАВЩИКИ», «МАТЕРИАЛЫ» и «ДАННЫЕ О ПОСТАВКЕ МАТЕРИАЛОВ». Для этого переходимв меню «Формы» моей базы данных и нажав два раза левую кнопку мыши запускаем «Созданиеформы с помощью мастера». Выбираем таблицу «НОМЕНКЛАТУРА МАТЕРИАЛОВ» из полейданной таблицы выбираем поле «Материал» и жмем по кнопке « > », нажимаем«Далее >», выбираем «Ленточный», «Далее >», из списка выбираем«Стандартный», в поле вводим наименование формы «МАТЕРИАЛЫ» и нажимаем кнопку«Готово». Вводим названия материалов. Закрываем форму. При необходимости можнодобавить данные нажав два раза левуюкнопку мыши на форме.
Также создаемформу «ПОСТАВЩИКИ», т.е. запускаем «Создание формы с помощью мастера», выбираемтаблицу «ПОСТАВЩИКИ», выбираем поле «Поставщик» по кнопке « > », по копке«Далее >», выбираем «Ленточный» по копке «Далее >», «Стандартный» покопке «Далее >», имя формы оставляем как предложено по имени таблицы.е.«ПОСТАВЩИКИ» и нажимаем копку «Готово». Вводим названия поставщиков. Закрываемформу.
Для созданияформы «ДАННЫЕ О ПОСТАВКЕ МАТЕРИАЛОВ» нажимаем «Создание формы с помощьюмастера», выбираем таблицу «ПОСТАВКА МАТЕРИАЛОВ» и выбирая поля «ДатаПоставки», «Количество», «Цена», «ЕдИзмерения»,и каждый раз нажимая по кнопке « > » переносим данные поля из левого окна вправое, по кнопке «Далее >», выбираем внешний вид формы в один столбец инажимаем кнопку «Далее >», выбираем «Стандартный» по кнопе «Далее >», набираемимя формы «ДАННЫЕ О ПОСТАВКЕ МАТЕРИАЛОВ», по кнопке «Готово». Закрываем форму ивыбрав эту форму щелкаем по правой кнопке мыши выбираем из меню конструктор. Раздвигаем область данных зацепив мышью нижную границу и сдвигаем поля и надписи соответственновниз расположив их при этом в том порядке как удобнее вводить данные.Передвигать надписи и поля можно выделив их и зацепив мышью когда курсор приметвид ладони. Регулируем размер полей выделив поле и зацепив соответствующуюграницу поля когда курсор мыши примет вид двух стрелок. На освободившеесяверхнее место с панели элементов ставим «поле со списком», в появившемся окнеоставляем «Обьект «поле со списком» будетиспользовать данные из таблицы или запроса, по кнопке «Далее >», выбираемтаблицу «ПОСТАВЩИКИ», по кнопке «Далее >», выбираем поле «Поставщик», покнопке « > », по кнопке «Далее >», по кнопке «Далее >», выбираем«сохранить в поле», и в правом поле со списком из списка выбираем «КодПоставщика», по кнопке «Далее >», название подписивводим отставляем как предложено по имени поля т.е. «Поставщик», по кнопке«Готово». Также ниже поставщика ставим поле со списком для ввода материала, приэтом отличие в том что выбираем таблицу «НОМЕНКЛАТУРА МАТЕРИАЛОВ» и поле «Материал»,а сохраняем в поле «КодМатериала», подписьсоответственно «Материал». Закрываем конструктор и на вопрос о сохраненииизменений отвечаем Да.
Двумя щелчкамилевой кнопки мыши на форме Ввод данных о поставке материалов открываем формудля ввода данных и вводим данные.
4. Созданиезапросов.
Для дальнейшегоформирования отчетов необходимо создать два запроса на выборку это «ПОСТУПЛЕНИЕМАТЕРИАЛОВ ОТ ПОСТАВЩИКОВ ПО ВИДАМ» и «ПОСТУПЛЕНИЕ МАТЕРИАЛОВ ПО ДАТАМ ЗАОПРЕДЕЛЕННЫЙ ПЕРИОД».
Вначалеформируем запрос «ПОСТУПЛЕНИЕ МАТЕРИАЛОВ ОТ ПОСТАВЩИКОВ ПО ВИДАМ». В меню базыпереходим на запросы, щелкаем на «Создание запроса в режиме конструктора», впоявившемся окне добавляем все три таблицы это «НОМЕНКЛАТУРА МАТЕРИАЛОВ», «ПОСТАВЩИКИ»и «ПОСТАВКА МАТЕРИАЛОВ», закрываем окно добавления таблиц. С добавлением таблицсразу отразятся и связи между ними. Зацепив левой кнопкой мыши поле «Поставщик»из таблицы «ПОСТАВЩИКИ» перетаскиваем его в первое поле запроса, также поле «Материал»из таблицы «НОМЕНКЛАТУРА МАТЕРИАЛОВ» перетаскиваем во второе поле запроса, поля«ДатаПоставки», «ЕдИзмерения»,«Количество» и «Цена» из таблицы «ПОСТАВКА МАТЕРИАЛОВ» перетаскиваемсоответственно в третье, четвертое, пятое и шестое поле запроса. В седьмом полезапроса в верхней строке поместить в нем курсор и щелкнув по правой кнопке мышииз появившегося меню выбрать Построить. В нижнем левом окне нажав на плюс гдетаблицы открыть их и выбрать таблицу «ПОСТАВКА МАТЕРИАЛОВ». Из появившихсяполей в среднем нижнем окне двойным щелчком выбрать поле «Количество», посленажать кнопку со знаком «*» и далее выбрать поле «Цена». В верхнем Нажать «ОК».Перейти в другое поле. Поставив курсор обратно с верхнюю строку седьмого полязапроса вместо слова «Выражение1» набрать «Сумма». Закрыть запрос, сохранитьизменения, в появившемся окне ввести имя запроса «ПОСТУПЛЕНИЕ МАТЕРИАЛОВ ОТ ПОСТАВЩИКОВПО ВИДАМ» и нажать «ОК».
Далее создаемзапрос «ПОСТУПЛЕНИЕ МАТЕРИАЛОВ ПО ДАТАМ ЗА ОПРЕДЕЛЕННЫЙ ПЕРИОД». Нажимаем «Созданиезапроса в режиме конструктора». В окне «Добавление таблицы» переходим навкладку запросы, двойным щелчком выбираем запрос «ПОСТУПЛЕНИЕ МАТЕРИАЛОВ ОТ ПОСТАВЩИКОВПО ВИДАМ» и закрываем окно. Из запроса «ПОСТУПЛЕНИЕ МАТЕРИАЛОВ ОТ ПОСТАВЩИКОВПО ВИДАМ» в верхнем окне захватываем и переносим в поля запроса следующие поля «ДатаПоставки», «Поставщик», «Материал», «Количество» и «Сумма»соответственно в первое, второе, третье, четвертое и пятое поле запроса. Встроке условие отбора в первом поле (где стоит ДатаПоставки)ставим курсор и пишем Between [Дата началопериода] And [Дата конец периода]. Закрываем конструктор,сохраняем изменения, и вводим имя запроса «ПОСТУПЛЕНИЕ МАТЕРИАЛОВ ПО ДАТАМ ЗАОПРЕДЕЛЕННЫЙ ПЕРИОД». Теперь перед выполнением запроса у пользователя будетсначала запрошена Дата начало периода, а затем Дата конец периода и так будетзадан период между какими датами отобрать записи.
5. Формированиеотчетов.
Переходим в менюОтчеты моей базы данных. Мне по заданию необходимо сформировать три отчета это «Поступлениематериалов от поставщиков по видам», «Поступление материалов по видам отпоставщиков» и «Поступление материалов по датам за определенный период».
Для формированияотчета «Поступление материалов от поставщиков по видам» щелкаем «Созданиеотчета с помощью мастера». Выбираем из списка «Запрос: ПОСТУПЛЕНИЕ МАТЕРИАЛОВ ОТПОСТАВЩИКОВ ПО ВИДАМ». Нажав кнопку « >> » выбираем все поля из запроса.Нажимаем кнопку «Далее >». Вид представления данных выбираем ПОСТАВЩИКИ, этопервый уровень группировки. Далее выбираем Материал, это второй уровеньгруппировки. Нажимаем «Далее >”. Сортировку записей выбираем по дате. Нажавкнопку «Итоги…» ставим галочку на пересечении строки Сумма и столбца Sum и нажимаем «ОК». Кнопка «Далее >». Выбираем Блоки ориентацию бумаги альбомная, «Далее >». Выбираем Строгий и кнопка «Далее >».Вводим имя отчета «Поступление материалов от поставщиков по видам» и кнопка«Готово». Закрываем отчет. Нажав на данном отчете правую кнопку мыши выбираемКонструктор. Выбираем поле «Sum» примечании длягруппы `Материал` и примечании для группы `Название поставщика` и удаляем их.Ставим курсор в строку Итоги для материала и исправляем ее на =”Итого поматериалу “ & [Материал]. Поле =Sum[Сумма]приподнимаем выше чтобы была в одной строке Итого по материалу. Также поступаеми со строкой Итоги для поставщика. ПолеЕд. изм. уменьшаем в длине, а увеличиваем поле Датапоставки, также поступив и с соответствующими полями в области данных. ПоляДата поставки и другие в свойствах выбираем выравнивание по центру. Ну и такдалее производим изменения, что бы поля хорошо читались не наползали друг надруга и помещались все выводимые данные. Закрываем отчет и сохраняем изменения.
Также создаемотчет «Поступление материалов по видам от поставщиков» только выбираем не всеполя из запроса, а только поля «Материал», «Поставщик», «Количество», «Цена» и «Сумма»и группировка первый уровень по материалам а второй по поставщикам.
Создаем отчет «Поступлениематериалов по датам за определенный период». Для этого запускаем Созданиеотчета с помощью мастера, выбираем «запрос: ПОСТУПЛЕНИЕ МАТЕРИАЛОВ ПО ДАТАМ ЗАОПРЕДЕЛЕННЫЙ ПЕРИОД». Из полей нажав кнопку «>>» выбираем все поля,кнопка «Далее >». Выбираем ПОСТАВКА МАТЕРИАЛОВ и кнопка «Далее >».Выбираем уровень группировки по ДатеПоставки нажавэто поле два раза левой кнопкой мыши. Нажимаем кнопку «Группировка» и выбираеминтервал группировки по дням, и кнопка «ОК». Кнопка «Далее >». Сортировкувыбираем по полю ДатаПоставки. Нажимаем кнопку«Итоги» и ставим галочку на пересечении строки Сумма и столбца Sum. Кнопка «ОК» и «Далее >». Выбираем макет Блок,ориентация альбомная и кнопку «Далее >». Строгий и кнопка «Далее >».Вводим имя отчета «Поступление материалов по датам за определенный период» икнопка «Готово». Закрываем отчет и открываем его в режиме конструктора ипроизводим настройки.