4571

Разработка учебная Базы Данных (БД) MusicShop

Курсовая

Информатика, кибернетика и программирование

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

Русский

2012-11-22

696 KB

37 чел.

Введение

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

В данной работе разрабатывается учебная БД “MusicShop

Для этого необходимо создать базу данных, содержащих сведения о компакт дисках, списках песен и их участниках (композитор, автор, исполнитель).

Приложение Microsoft Access представляет собой инструмент, позволяющий реализовать поставленную цель.

Достижение цели осуществляется посредством комплекса задач:

  •  проектирование инфологической модели,
  •  проектирование даталогической модели,
  •  проектирование и создание таблиц непосредственно в Microsoft Access
  •  ввод данных,
  •  разработка других элементов базы, предназначенных для просмотра,
  •  редактирование и вывод информации.


1. Инфологическая модель

Опишем предметную область. Магазин «MusicShop» занимается продажей аудио продукции: CD- и DVD-диски с музыкой. Каждый диск имеет свой идентификационный номер, название, список песен (авторы, исполнитель, название, продолжительность), год выпуска и фирму записи.

На основе данного описания создадим ER-диаграмму (рисунок 1.1).

Рисунок 1.1 ER-диаграмма

На рисунке 1 изображена ER-диаграмма без атрибутов связей и сущностей. Как видно на рисунке ER-диаграмма состоит из 4 сущностей и 3 связей. Атрибуты сущностей и связей будут следующие:

Фирма (IDФирмы, Название);

Диск (IDДиска, Тип, Год, Название, Стоимость, Количество);

Песня (IDПесни, Название, Продолжительность);

Человек (IDЧеловека, Фамилия, Имя, Отчество);

Содержит (Номер песни);

Участвует  (Роль).

Связь «Выпускает» не будет иметь атрибутов. В приложении 1 можно увидеть полную ER-диаграмму.

По правилам ER-проектирования мы получим 6 таблиц:

  •  Фирма (IDФирмы, Название);
  •  Диск (IDДиска, IDФирмы, Тип, Год, Название, Стоимость, Количество);
  •  Песня (IDПесни, Название, Продолжительность);
  •  Человек (IDЧеловека, Фамилия, Имя, Отчество);
  •  Содержит (IDДиск, IDПесня, Номер песни);
  •  Участвует (IDПесня, IDЧеловек, Роль).


2. Даталогическая модель

Реляционная модель изображена на рисунке 2.1.

Рисунок 2.1 Реляционная модель

В данной модели используются первичные ключи (Disk.IDDisk, Song.IDSong, Human.IDHuman, Firm.IDFirm) и внешние ключи (DHaveS.IDDisk, DHaveS.IDSong, Playing.IDSong, Playing.IDHuman).

Опишем типы полей, используемые в БД (в формате MS Access):

Таблица 1. Типы полей в таблице «Диск»

Название поля

Тип поля

Описание поля

IDDisk

Целочисленное, автоинкрементное, ключевое, не пустое

Идентификатор диска

IDFirm

Целочисленное, не пустое

Идентификатор фирмы

Type

Строковое, не пустое

Тип диска, может принимать значение «CD», «DVD»

Year

Целочисленное, не пустое

Год, в котором была звукозапись

Name

Строковое, не пустое

Название диска

Cost

Денежный, не пустое

Стоимость диска

Count

Целочисленные, не пустое, больше или равно 0.

Количество дисков в продаже

Таблица 2. Типы полей в таблице «Песня»

Название поля

Тип поля

Описание

IDSong

Целочисленное, автоинкрементное, ключевое, не пустое

Идентификатор песни

Name

Строковое, не пустое

Название песни

Length

Дата/время, не пустое

Продолжительность песни

Таблица 3. Типы полей в таблице «Фирма»

Название поля

Тип поля

Описание

IDFirm

Целочисленное, автоинкрементное, ключевое, не пустое

Идентификатор фирмы

Name

Строковое, не пустое

Название фирмы

Таблица 4. Типы полей в таблице «Человек»

Название поля

Тип поля

Описание

IDHuman

Целочисленное, автоинкрементное, ключевое, не пустое

Идентификатор человека

F

Строковое

Фамилия

I

Строковое

Имя

O

Строковое

Отчество

Таблица 5. Типы полей в таблице «Содержит»

Название поля

Тип поля

Описание

IDDisk

Целочисленное, не пустое

Идентификатор диска

IDSong

Целочисленное, не пустое

Идентификатор песни

Number

Целочисленное, не пустое

Порядковый номер на диске

Таблица 6. Типы полей в таблице «Участвует»

Название поля

Тип поля

Описание

IDSong

Целочисленное, не пустое

Идентификатор песни

IDHuman

Целочисленное, не пустое

Идентификатор человека

Type

Строковое, не пустое

Роль участника в песне. Может принимать значение: композитор, автор, исполнитель.


3. Обоснование выбора программных средств

Приложение Microsoft Access - это настольная система управления реляционными базами данных (СУБД), предназначенная для работы на автономном персональном компьютере (ПК) или локальной вычислительной сети под управлением семейства операционных систем Microsoft Windows (Windows 2000, Windows XP и Windows Server 2003). СУБД Microsoft Access обладает мощными, удобными и гибкими средствами визуального проектирования объектов с помощью Мастеров, что позволяет пользователю при минимальной предварительной подготовке довольно быстро создать полноценную информационную систему на уровне таблиц, запросов, форм и отчетов. К основным возможностям СУБД Microsoft Access можно отнести следующие:

  •  проектирование базовых объектов - двумерные таблицы с полями разных типов данных;
  •  создание связей между таблицами, с поддержкой целостности данных, каскадного обновления полей и каскадного удаления записей;
  •  ввод, хранение, просмотр, сортировка, изменение и выборка данных из таблиц с использованием различных средств контроля информации, индексирования таблиц и аппарата алгебры логики;
  •  создание, модификация и использование производных объектов (запросов, форм и отчетов).


4. Описание прикладной программы

4.1 Схема базы данных.

Рисунок 4.1 Схема данных в Microsoft Access.

4.2 Запросы

В БД использовано 8 запросов, построенных с использованием конструктора:

DiskQuery используется для отчета Disk и выводит информацию о диске и фирме. В этот запрос передается от формы Disk значение IDDisk. Запрос выдает информацию об одном диске, который просматривается в форме.

Рисунок 4.2.1 Запрос DiskQuery

FindAsFirm, FindAsHuman, FindAsSong, FindAsType, FindAsYear используются для отчетов FindAsFirm, FindAsHuman, FindAsSong, FindAsType, FindAsYear, соответственно. Эти запросы используются для поиска информации о диске по атрибутам (фирме, человеку, песне, типу диска, году записи). В зависимости от атрибута в данные запросы передаются соответствующие значения из форм. Чтобы информация в отчете по найденному диску не дублировалась, в запросе она группируется по полю IDSong.

Рисунок 4.2.2 Запрос FindAsFirm

Рисунок 4.2.3 Запрос FindAsHuman

Рисунок 4.2.4 Запрос FindAsSong

Рисунок 4.2.5 Запрос FindAsType

Рисунок 4.2.6 Запрос FindAsYear

QueryCountDec запрос на содержимое таблицы Disk. Данный запрос уменьшает значение count на 1, т.е. осуществляет «продажу» диска. Входящий параметр IDDisk записи, в которой надо изменить count.

Рисунок 4.2.7 Запрос QueryCounDec

SongQuery используется для отчета Song, объединяя значения таблицы Song и DHaveS.

Рисунок 4.2.8 Запрос SongQuery

4.3. Формы

В БД используется 10 основных форм и 2 подчиненные формы. Рассмотрим основные формы.

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

Find основная форма поиска по атрибутам через нее можно перейти к формам поиска по определенному атрибуту.

FindAsFirm, FindAsSong, FindAsType, FindAsHuman, FindAsYear используются для поиска информации о диске по определенному атрибуту.

Firm используется для добавления, изменения и удаления информации о фирмах

Human используется для добавления, изменения и удаления информации о участниках песни (исполнитель, автор, композитор)

Song используется для добавления, изменения и удаления информации о песнях. Она содержит подчиненную форму Playing_SubForm

Рисунок 4.3.1 Форма Disk.

Рисунок 4.2.2 Форма Find

Рисунок 4.2.3 Формы FindAsFirm, FindAsSong, FindAsType, FindAsHuman, FindAsYear.

Рисунок 4.2.4 Форма Firm

Рисунок 4.2.5 Форма Human

Рисунок 4.2.6 Форма Song

Подчиненные формы.

Playing_SubForm отображает информацию о типах участников песен и участников песен. Используется в форме Song. Отображается в виде списка.

Song_SubForm отображает информацию о названии песни и его порядковом номере. Используется в форме Disk. Отображается в виде списка.

Рисунок 4.2.7 Форма Playing_SubForm

Рисунок 4.2.8 Форма Song_SubForm

4.3 Программный код

Программный код использованный в БД сгенерирован был, при создании формы, MS Access. Код всех форм расположен в приложении 2.

- отчеты (с описанием, скриншотами и, возможно, распечатками)

4.4 Отчеты

В работе используется 8 отчетов. Отчеты Disk, DiskFormAsFirm, DiskFormAsSong, DiskFormAsType, DiskFormAsYear, DiskFormAsHuman являются идентичными по структуре, различаются только по используемому источнику данных. Данные отчеты используются для отображения информации о дисках и используют подотчет Song.

Song отображает информацию о списке песен на диске и содержит в себе подчиненный отчет Human, который отображает информацию о участниках песни.

Рисунок 4.4.1 Отчет Disk.

Рисунок 4.4.2 Отчет Song.

Рисунок 4.4.3 Отчет Human.


5. Руководство пользователя

При запуске БД «MusicShop» появляется главная форма (рисунок 5.1)

Рисунок 5.1. Главная форма.

Для того чтобы добавить новый диск необходимо создать новую запись. Для этого нажать в нижней части формы стрелочку со звездочкой. В появившейся форме ввести данные о диске. В списке необходимо ввести данные о песнях, которые содержит этот диск. Если при добавлении новой записи о песни, песня не будет найдена в выпадающем списке ее необходимо добавить в БД. Аналогично с названием фирмы. Для продажи диска (уменьшения количества дисков) необходимо нажать на кнопку «Продано». Для просмотра отчета о диске необходимо нажать кнопку «Отчет». Для выхода надо нажать кнопку «Выход».

Добавление песни

Для добавления песни необходимо нажать на кнопку «Песни» на главной форме. В появившемся окне (рисунок 5.2) необходимо нажать на стрелочку со звездочкой для добавления новой записи. Ввести необходимые данные. Если в списке участников не были найдены участники их необходимо добавить в БД.

Рисунок 5.2 Форма «Песни»

Добавление участников.

Для добавления участника необходимо нажать на кнопку «Песни» на главной форме, затем на кнопке «Участники» В появившемся окне (рисунок 5.3) необходимо нажать на стрелочку со звездочкой для добавления новой записи. Ввести необходимые данные.

Рисунок 5.3 Форма «Участники»

Поиск по атрибутам

Для поиска по атрибутам диска необходимо нажать кнопку «Поиск по атрибутам» в главной форме, затем в появившемся окне (рисунок 5.4) выбрать необходимый поиск.

Рисунок 5.4 Выбор типа поиска

Выбрав необходимый поиск, надо ввести искомое значение и нажать кнопку «Найти». В появившемся окне появиться информации о дисках (диске) с данным атрибутом (рисунок 5.5).

Рисунок 5.5 Результат поиска


Заключение

В данной курсовой работе была спроектирована и построена база данных для магазина продажи компакт-дисков с музыкой. Построена инфологическая и даталогическая модель. Используемой СУБД была выбрана программа MS Access. В ходе работы были изучены и реализованы запросы. Была создана прикладная программа, которая позволяет визуально работать с созданной базой данных, написано руководство для пользователей разработанной программы.


Список использованных источников

  1.  Cary N. Prague, Michael R. Irwin, Jennifer Reardon. Microsoft Access 2003 Bible. – Indiana: Wiley Publishing, 2004. – 1401 с. – ISBN 0-7645-3986-8.


Приложение 1. ER-диаграмма.


Приложение 2. Программный код

Form_Disk

Private Sub Кнопка16_Click()

On Error GoTo Err_Кнопка16_Click

   Dim stDocName As String

   Dim stLinkCriteria As String

   stDocName = "Firm"

   DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_Кнопка16_Click:

   Exit Sub

Err_Кнопка16_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка16_Click

   

End Sub

Private Sub Кнопка20_Click()

On Error GoTo Err_Кнопка20_Click

   Dim stDocName As String

   stDocName = ChrW(1044) & ChrW(1080) & ChrW(1089) & ChrW(1082) & ChrW(1080)

   DoCmd.OpenReport stDocName, acPreview

Exit_Кнопка20_Click:

   Exit Sub

Err_Кнопка20_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка20_Click

   

End Sub

Private Sub Кнопка22_Click()

On Error GoTo Err_Кнопка22_Click

   Dim stDocName As String

   stDocName = "AllDisk"

   DoCmd.OpenReport stDocName, acPreview

Exit_Кнопка22_Click:

   Exit Sub

Err_Кнопка22_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка22_Click

   

End Sub

Private Sub Кнопка23_Click()

On Error GoTo Err_Кнопка23_Click

   Dim stDocName As String

   stDocName = "Disk"

   DoCmd.OpenReport stDocName, acPreview

Exit_Кнопка23_Click:

   Exit Sub

Err_Кнопка23_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка23_Click

   

End Sub

Private Sub Кнопка24_Click()

On Error GoTo Err_Кнопка24_Click

   Screen.PreviousControl.SetFocus

   DoCmd.DoMenuItem acFormBar, acEditMenu, 10, , acMenuVer70

Exit_Кнопка24_Click:

   Exit Sub

Err_Кнопка24_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка24_Click

   

End Sub

Private Sub Кнопка26_Click()

On Error GoTo Err_Кнопка26_Click

   DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70

Exit_Кнопка26_Click:

   Exit Sub

Err_Кнопка26_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка26_Click

   

End Sub

Private Sub Кнопка27_Click()

On Error GoTo Err_Кнопка27_Click

   Dim stDocName As String

   stDocName = "QueryDecCount"

   DoCmd.OpenQuery stDocName, acNormal, acEdit

   

   DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70

Exit_Кнопка27_Click:

   Exit Sub

Err_Кнопка27_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка27_Click

   

End Sub

Private Sub Кнопка28_Click()

On Error GoTo Err_Кнопка28_Click

   DoCmd.Quit

Exit_Кнопка28_Click:

   Exit Sub

Err_Кнопка28_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка28_Click

   

End Sub

Private Sub Кнопка29_Click()

On Error GoTo Err_Кнопка29_Click

   Dim stDocName As String

   Dim stLinkCriteria As String

   stDocName = "Find"

   DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_Кнопка29_Click:

   Exit Sub

Err_Кнопка29_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка29_Click

   

End Sub

Private Sub Кнопка30_Click()

On Error GoTo Err_Кнопка30_Click

   Dim stDocName As String

   Dim stLinkCriteria As String

   stDocName = "DiskCountZero"

   DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_Кнопка30_Click:

   Exit Sub

Err_Кнопка30_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка30_Click

   

End Sub

Private Sub Кнопка31_Click()

On Error GoTo Err_Кнопка31_Click

   DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70

Exit_Кнопка31_Click:

   Exit Sub

Err_Кнопка31_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка31_Click

   

End Sub

Form_Find

Option Compare Database

Private Sub Кнопка1_Click()

On Error GoTo Err_Кнопка1_Click

   Dim stDocName As String

   Dim stLinkCriteria As String

   stDocName = "FindAsHuman"

   DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_Кнопка1_Click:

   Exit Sub

Err_Кнопка1_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка1_Click

   

End Sub

Private Sub Кнопка3_Click()

On Error GoTo Err_Кнопка3_Click

   Dim stDocName As String

   Dim stLinkCriteria As String

   stDocName = "FindAsSong"

   DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_Кнопка3_Click:

   Exit Sub

Err_Кнопка3_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка3_Click

   

End Sub

Private Sub Кнопка8_Click()

On Error GoTo Err_Кнопка8_Click

   Dim stDocName As String

   Dim stLinkCriteria As String

   stDocName = "FindAsFirm"

   DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_Кнопка8_Click:

   Exit Sub

Err_Кнопка8_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка8_Click

   

End Sub

Private Sub Кнопка9_Click()

On Error GoTo Err_Кнопка9_Click

   Dim stDocName As String

   Dim stLinkCriteria As String

   stDocName = "FindAsType"

   DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_Кнопка9_Click:

   Exit Sub

Err_Кнопка9_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка9_Click

   

End Sub

Private Sub Кнопка10_Click()

On Error GoTo Err_Кнопка10_Click

   Dim stDocName As String

   Dim stLinkCriteria As String

   stDocName = "FindAsYear"

   DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_Кнопка10_Click:

   Exit Sub

Err_Кнопка10_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка10_Click

   

End Sub

Form_FindAsFirm

Option Compare Database

Private Sub Кнопка14_Click()

On Error GoTo Err_Кнопка14_Click

   Dim stDocName As String

   stDocName = "FindAsType"

   DoCmd.OpenQuery stDocName, acNormal, acEdit

Exit_Кнопка14_Click:

   Exit Sub

Err_Кнопка14_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка14_Click

   

End Sub

Private Sub Кнопка17_Click()

On Error GoTo Err_Кнопка17_Click

   Dim stDocName As String

   stDocName = "DiskFindAsType"

   DoCmd.OpenReport stDocName, acPreview

Exit_Кнопка17_Click:

   Exit Sub

Err_Кнопка17_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка17_Click

   

End Sub

Private Sub Кнопка22_Click()

On Error GoTo Err_Кнопка22_Click

   Dim stDocName As String

   stDocName = "DiskFindAsYear"

   DoCmd.OpenReport stDocName, acPreview

Exit_Кнопка22_Click:

   Exit Sub

Err_Кнопка22_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка22_Click

   

End Sub

Private Sub Кнопка26_Click()

On Error GoTo Err_Кнопка26_Click

   Dim stDocName As String

   stDocName = "DiskFindAsFirm"

   DoCmd.OpenReport stDocName, acPreview

Exit_Кнопка26_Click:

   Exit Sub

Err_Кнопка26_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка26_Click

   

End Sub

Form_FindAsHuman

Option Compare Database

Private Sub Кнопка4_Click()

On Error GoTo Err_Кнопка4_Click

   Dim stDocName As String

   stDocName = "FindAsHuman"

   DoCmd.OpenQuery stDocName, acNormal, acEdit

Exit_Кнопка4_Click:

   Exit Sub

Err_Кнопка4_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка4_Click

   

End Sub

Private Sub Кнопка6_Click()

On Error GoTo Err_Кнопка6_Click

   Dim stDocName As String

   stDocName = "DiskFindAsHuman"

   DoCmd.OpenReport stDocName, acPreview

Exit_Кнопка6_Click:

   Exit Sub

Err_Кнопка6_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка6_Click

   

End Sub

Private Sub Кнопка7_Click()

On Error GoTo Err_Кнопка7_Click

   Dim stDocName As String

   stDocName = "DiskFindAsHuman"

   DoCmd.OpenReport stDocName, acPreview

Exit_Кнопка7_Click:

   Exit Sub

Err_Кнопка7_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка7_Click

   

End Sub

Form_FindAsSong

Option Compare Database

Private Sub Кнопка3_Click()

On Error GoTo Err_Кнопка3_Click

   Dim stDocName As String

   

   stDocName = "FindAsSong"

   DoCmd.OpenQuery stDocName, acNormal, acEdit

Exit_Кнопка3_Click:

   Exit Sub

Err_Кнопка3_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка3_Click

   

End Sub

Private Sub Кнопка14_Click()

On Error GoTo Err_Кнопка14_Click

   Dim stDocName As String

   stDocName = "Find"

   DoCmd.OpenQuery stDocName, acNormal, acEdit

Exit_Кнопка14_Click:

   Exit Sub

Err_Кнопка14_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка14_Click

   

End Sub

Private Sub Кнопка15_Click()

On Error GoTo Err_Кнопка15_Click

   Dim stDocName As String

   stDocName = "FindAsSong"

   DoCmd.OpenQuery stDocName, acNormal, acEdit

Exit_Кнопка15_Click:

   Exit Sub

Err_Кнопка15_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка15_Click

   

End Sub

Private Sub Кнопка16_Click()

On Error GoTo Err_Кнопка16_Click

   Dim stDocName As String

   stDocName = "DiskFindAsSong"

   DoCmd.OpenReport stDocName, acPreview

Exit_Кнопка16_Click:

   Exit Sub

Err_Кнопка16_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка16_Click

   

End Sub

Form_FindAsType

Option Compare Database

Private Sub Кнопка14_Click()

On Error GoTo Err_Кнопка14_Click

   Dim stDocName As String

   stDocName = "FindAsType"

   DoCmd.OpenQuery stDocName, acNormal, acEdit

Exit_Кнопка14_Click:

   Exit Sub

Err_Кнопка14_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка14_Click

   

End Sub

Private Sub Кнопка17_Click()

On Error GoTo Err_Кнопка17_Click

   Dim stDocName As String

   stDocName = "DiskFindAsType"

   DoCmd.OpenReport stDocName, acPreview

Exit_Кнопка17_Click:

   Exit Sub

Err_Кнопка17_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка17_Click

   

End Sub

Form_FindAsYear

Option Compare Database

Private Sub Кнопка14_Click()

On Error GoTo Err_Кнопка14_Click

   Dim stDocName As String

   stDocName = "FindAsType"

   DoCmd.OpenQuery stDocName, acNormal, acEdit

Exit_Кнопка14_Click:

   Exit Sub

Err_Кнопка14_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка14_Click

   

End Sub

Private Sub Кнопка17_Click()

On Error GoTo Err_Кнопка17_Click

   Dim stDocName As String

   stDocName = "DiskFindAsType"

   DoCmd.OpenReport stDocName, acPreview

Exit_Кнопка17_Click:

   Exit Sub

Err_Кнопка17_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка17_Click

   

End Sub

Private Sub Кнопка22_Click()

On Error GoTo Err_Кнопка22_Click

   Dim stDocName As String

   stDocName = "DiskFindAsYear"

   DoCmd.OpenReport stDocName, acPreview

Exit_Кнопка22_Click:

   Exit Sub

Err_Кнопка22_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка22_Click

   

End Sub

Form_Song

Option Compare Database

Private Sub Кнопка7_Click()

On Error GoTo Err_Кнопка7_Click

   Dim stDocName As String

   Dim stLinkCriteria As String

   stDocName = "Human"

   DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_Кнопка7_Click:

   Exit Sub

Err_Кнопка7_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка7_Click

   

End Sub

Private Sub Кнопка8_Click()

On Error GoTo Err_Кнопка8_Click

   Dim stDocName As String

   Dim stLinkCriteria As String

   stDocName = "Human"

   DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_Кнопка8_Click:

   Exit Sub

Err_Кнопка8_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка8_Click

   

End Sub

Form_Song_SubForm

Option Compare Database

Private Sub Кнопка5_Click()

On Error GoTo Err_Кнопка5_Click

   Screen.PreviousControl.SetFocus

   DoCmd.DoMenuItem acFormBar, acEditMenu, 10, , acMenuVer70

Exit_Кнопка5_Click:

   Exit Sub

Err_Кнопка5_Click:

   MsgBox Err.Description

   Resume Exit_Кнопка5_Click

   

End Sub


Приложение 3. Пример сгенерированного отчета

 Информация о диске

 Навзвание: Death Note OST

 Фирма звукозаписи: Anime Record

 Тип: CD

 Год: 2006

 Цена: 120,00р.

 Песни:

 1 Saiku 0:02:08

 Композитор Taniuchi Hideki

 Исполнитель Taniuchi Hideki

 2 Near 0:01:59

 Композитор Taniuchi Hideki

 Исполнитель Taniuchi Hideki

 3 Modotta Ligth 0:03:08

 Исполнитель Taniuchi Hideki

 Композитор Taniuchi Hideki

 4 L's theme 0:03:03

 Композитор Yoshihisa Hirano

 Композитор Taniuchi Hideki

 Исполнитель Yoshihisa Hirano

 5 L 0:01:56

 Исполнитель Taniuchi Hideki

 Композитор Yoshihisa Hirano

 6 Coda 0:02:23

 Композитор Yoshihisa Hirano

 Исполнитель Yoshihisa Hirano

 7 Coppeira no Hitsugi 0:04:00

 Исполнитель Yuki Kajiura

Магазин "MusicShop"


Диск

содержит

Песня

ирма

выпускает

Человек

Участвует

n

1

m

n

n

m

IDDisk

Name

Year

Type

Count

Cost

IDFirm

IDSong

Name

Length

IDFirm

Name

IDDisk

IDSong

Number

Disk

Song

IDSong

IDHuman

Type

IDHuman

F

I

O

Playing

DHaveS

Firm

Human

Диск

содержит

Песня

Фирма

выпускает

Человек

Участвует

n

1

m

n

n

m

IDДиска

Тип

Год

IDДиска

Название

Стоимость

Количество

Номер

IDФирмы

Название

IDПесни

Название

Продол-ть

Роль

IDЧеловека

Фамилия

Имя

Отчество


 

А также другие работы, которые могут Вас заинтересовать

31079. Органоспецифические опухоли челюстных костей 29 KB
  Фолликулярная форма состоит из островков одонтогенного эпителия различной величины и формы напоминающих строение эмалевого органа по периферии островков частоколом располагаются клетки цилиндрического эпителия а в центре они приобретают звездчатую форму эпителиальный ретикулум. Сетевидная форма представлена тяжами одонтоенного эпителия с его причудливыми ветвлениями. Плексиформный вариант характеризуется тяжами эпителия неправильных очертаний переплетающихся в виде сети. По периферии тяжи ограничены цилиндрическими или кубическими...
31080. Органонеспецифические неодонтогенные опухоли челюстных костей 57 KB
  Опухолеподобные поражения костей: 1 фиброзная дисплазия; 2 центральная гигантоклеточная гранулема; 3 херувизм; 4 эозинофильная гранулема; 5 болезнь Педжета; 6 коричневая опухоль гиперпаратиреоидизма. КОСТЕОБРАЗУЮЩИЕ ОПУХОЛИ Доброкачественные: Злокачественные: остеома остеогенная саркома...
31081. Челюстная киста 20.03 KB
  К одонтогенным дизонтогенетическим кистам относят: 1 первичную примордиальную или кератокисту; 2 фолликулярную зубосодержащую кисту; 3 парадентальную периодонтальную кисту; 4 кисту прорезывания зуба; 5 десневую гингивальную кисту. К одонтогенным приобретенным кистам относят радикулярную околокорневую кисту воспалительного генеза. Среди них выделяют: 1 кисты резцового носонебного канала; 2 глобуломаксиллярная; 3 носогубная носоальвеолярная киста преддверья полости рта. Перечисленные кисты и одонтогенные и...
31082. Фиброзная дисплазия челюстных костей 16.37 KB
  Образование увеличивается медленно годы десятилетия но может привести к тяжелой деформации лица за счет разрастания клеточноволокнистой остеогенной ткани Макроскопически: границы разросшейся сероватобелесоватого вида опухолеподобной ткани нечеткие размытые без образования капсулы; беловатокрасные опухолеподобные очаги разной плотности в зависимости от степени выраженности их минерализации имеются многочисленные кисты заполненные желтоватой или красноватой жидкостью и полупрозрачные участки хряща до 3 см в диаметре....
31083. Одонтогенная инфекция 20.53 KB
  Пато и морфогенетически все эти заболевания связаны с острым гнойным апикальным или обострением хронического верхушечного периодонтита нагноением кист челюсти гнойным пародонтитом альвеолитами воспаление костной альвеолы после удаления зуба. Остит воспаление костной ткани челюсти за пределами периодонта зуба. Острый периостит челюсти представляет собой острое воспаление надкостницы альвеолярного отростка верхней или альвеолярной части нижней челюсти иногда распространяющееся на надкостницу тела челюсти. В большинстве случаев процесс...
31084. Слюнно-каменная болезнь (сиалолитиаз) 15.17 KB
  Механизм развития слюннокаменной болезни обусловлен взаимодействием перечисленных этиологических факторов: при застое слюны в протоках происходит повышение ее вязкости и увеличение содержание белков и солей. При слюннокаменной болезни необходимо удаление пораженной слюнной железы.
31085. Максимизация прибыли фирмы на всех типах рынков 71.5 KB
  Максимизация прибыли фирмы на всех типах рынков 8. Условия максимизации прибыли на рынке совершенной конкуренции Совершенно конкурентная фирма является ценополучателем и в связи с этим кривая спроса фирмы на рынке совершенной конкуренции отличается абсолютной эластичностью рис. Кривые спроса и предложения совершенно конкурентной фирмы Совершенный конкурент может продать любое количество продукта который произвел по существующей или более низкой цене но если цена выше чем существующая то предполагается что спрос будет равен нулю....
31086. Экономика неопределенности и риска 88 KB
  Ограничение по заимствованию можно таким образом представить следующим образом: C1 Y1 где C1 – потребление в первый период жизни – до выхода на пенсию Y1 – соответственно доход получаемый в первый период. Это дополнительное ограничение для домашнего хозяйства называют ограничением по заимствованию или ограничением ликвидности.1 показано каким образом ограничение ликвидности сужает возможности выбора для домашнего хозяйства. Если домашнее хозяйство не имеет возможности занимать средства то оно сталкивается с дополнительным...
31087. Общественное воспроизводство и общественное производство 174.5 KB
  Существование производства в котором принимает участие лишь отдельное лицо так же бессмысленно как существование и развитие языка без общения людей совместно живущих и общающихся между собой. Вовторых в процессе производства между людьми возникают производственные отношения социальноэкономическое содержание которых определяется господствующей формой собственности на средства производства. А любой процесс производства который рассматривается в непрерывном потоке своего возобновления является в то же время процессом воспроизводства....