Автор работы: Пользователь скрыл имя, 03 Декабря 2011 в 01:48, курсовая работа
Целью данной работы является рассмотрение технологии создания базы данных в сфере СУБД MS Access на примере туристической фирмы.
Задачи работы: в теоретической части рассмотреть принципы построения новой базы данных в СУБД MS Access, практическая часть включает разработку таблиц, связей между ними, запросов и отчетов для базы данных по заключению договоров на туристические поездки.
Рис. 1. Пользовательский автофильтр.
Получаем
итоги по всем номерам паспортов, удовлетворяющим
данному условию.
Рис.2. Отчет
: номера паспортов.
9.2. Места убытия
Открываем новый файл Excel для создания нового отчёта.
Выбираем в меню «Данные» пункт «Фильтр», затем пункт «Автофильтр». Затем в столбце «Город убытия» в выпадающем списке выбираем пункт «(Условие…)». В появившемся окне указываем диапазон и параметры. (см. рис. 3).
Рис. 3. Пользовательский автофильтр.
Получаем итоги по всем городам убытия, удовлетворяющим данному условию.
Рис.4. Отчет:
Города убытия.
11.РЕПЛИКАЦИЯ БАЗЫ ДАННЫХ
11.1. Репликация
данных.
Создаём копию базы данных.
Создаём
реплику базы данных: Сервис, Репликация,
Создать Реплику (см. рис. 1 – рис.
3).
Рис. 1. Преобразование
базы.
Рис 2. Создание
реплики.
Рис 3. Репликация
завершена
Далее вводим новый тур (см.
рис. 4 – рис. 5).
Рис. 4. Основная
реплика
Рис. 5. Не
основная реплика
11.2. Синхронизация
данных.
Далее открываем основную реплику и синхронизируем реплики: Сервис, Репликация, Синхронизация (см. рис. 6 – рис. 9).
Рис. 6. Синхронизация.
Рис. 7. Сообщение
о завершении синхронизации.
Рис. 8. Основная
реплика.
Рис. 9. Не
основная реплика.
13. ПРИЛОЖЕНИЯ
13.1. Запрос: Агенты.
SELECT Агенты.Агент
FROM Агенты;
13.2. Запрос:
Запрос по транспорту.
SELECT Договор.Клиент,
Договор.Тур, Договор.[Вид
FROM Договор;
13.3. Запрос: Клиенты.
SELECT Клиент.ФИО,
Клиент.Телефон, Клиент.Адрес,
FROM Клиент;
13.4. Запрос:
Места прибытия по странам.
SELECT [Места прибытия].[Место прибытия]
FROM [Места прибытия]
WHERE ((([Места прибытия].Страна)=[
13.5. Запрос:
Проданные туры.
SELECT Договор.Тур, Договор.Клиент, Договор.[Дата выезда], Договор.Агент
FROM Договор;
13.6. Запрос:
Пункты назначения.
SELECT [Места прибытия].Страна,
[Места прибытия].[Место
FROM [Места прибытия];
13.7.Запрос:
Цены отелей.
SELECT Отель.[Класс отеля(звезды)], Отель.[Цена за ночь]
FROM Отель;
13.8.Форма: Вариант тура
Option Compare Database
Private Sub Кнопка13_Click()
On Error GoTo Err_Кнопка13_Click
Exit_Кнопка13_Click:
Exit Sub
Err_Кнопка13_Click:
MsgBox Err.Description
Resume Exit_Кнопка13_Click
End Sub
Private Sub Кнопка17_Click()
On Error GoTo Err_Кнопка17_Click
DoCmd.OpenQuery stDocName, acNormal, acEdit
Exit_Кнопка17_Click:
Exit Sub
Err_Кнопка17_Click:
MsgBox Err.Description
Resume Exit_Кнопка17_Click
End Sub
13.9.Форма: Главная кнопочная форма
Option Compare Database
Private Sub Form_Open(Cancel As Integer)
' Minimize the database
window and initialize the form.
' Move to the switchboard page that is marked as the default.
Me.Filter = "[ItemNumber] = 0 AND [Argument] = 'По умолчанию' "
Me.FilterOn = True
End Sub
Private Sub Form_Current()
' Update the caption and
fill in the list of options.
Me.Caption = Nz(Me![ItemText], "")
FillOptions
End Sub
Private Sub FillOptions()
' Fill in the options
for this switchboard page.
' The number of buttons on the form.
Const conNumButtons = 8
Dim con As Object
Dim rs As Object
Dim stSql As String
Dim intOption As Integer
' Set the focus to the first button on the form,
' and then hide all of the buttons on the form
' but the first. You can't hide the field with the focus.
Me![Option1].SetFocus
For intOption = 2 To conNumButtons
Me("Option" & intOption).Visible = False
Me("OptionLabel" & intOption).Visible = False
Next intOption
' Open the table of Switchboard Items, and find
' the first item for this Switchboard Page.
Set
con = Application.CurrentProject.
stSql = "SELECT * FROM [Switchboard Items]"
stSql = stSql & " WHERE [ItemNumber] > 0 AND [SwitchboardID]=" & Me![SwitchboardID]
stSql = stSql & " ORDER BY [ItemNumber];"
Set
rs = CreateObject("ADODB.Recordset"
rs.Open stSql, con, 1 ' 1 = adOpenKeyset
' If there are no options for this Switchboard Page,
' display a message. Otherwise, fill the page with the items.
If (rs.EOF) Then
Me![OptionLabel1].Caption = "На странице кнопочной формы нет элементов"
Else
While (Not (rs.EOF))
Me("Option" & rs![ItemNumber]).Visible = True
Me("OptionLabel" & rs![ItemNumber]).Visible = True
Me("OptionLabel" & rs![ItemNumber]).Caption = rs![ItemText]
rs.MoveNext
Wend
End
If
' Close the recordset and the database.
rs.Close
Set rs = Nothing
Set
con = Nothing
End Sub
Private Function HandleButtonClick(intBtn As Integer)
' This function is called when a button is clicked.
' intBtn indicates which
button was clicked.
' Constants for the commands that can be executed.
Const conCmdGotoSwitchboard = 1
Const conCmdOpenFormAdd = 2
Const conCmdOpenFormBrowse = 3
Const conCmdOpenReport = 4
Const conCmdCustomizeSwitchboard = 5
Const conCmdExitApplication = 6
Const conCmdRunMacro = 7
Const conCmdRunCode = 8
Const
conCmdOpenPage = 9
' An error that is special cased.
Const conErrDoCmdCancelled = 2501
Dim con As Object
Dim rs As Object
Dim
stSql As String
On Error GoTo HandleButtonClick_Err
' Find the item in the Switchboard Items table
' that corresponds to the button that was clicked.
Set
con = Application.CurrentProject.
Set
rs = CreateObject("ADODB.Recordset"
stSql = "SELECT * FROM [Switchboard Items] "
stSql = stSql & "WHERE [SwitchboardID]=" & Me![SwitchboardID] & " AND [ItemNumber]=" & intBtn
rs.Open stSql, con, 1 ' 1 = adOpenKeyset
' If no item matches, report the error and exit the function.
If (rs.EOF) Then
MsgBox "Ошибка при чтении таблицы Switchboard Items."
rs.Close
Set rs = Nothing
Set con = Nothing
Exit Function
End If
Select Case rs![Command]
' Go to another switchboard.
Case conCmdGotoSwitchboard
Me.Filter = "[ItemNumber] = 0 AND [SwitchboardID]=" & rs![Argument]
' Open a form in Add mode.
Case conCmdOpenFormAdd
DoCmd.OpenForm rs![Argument], , , , acAdd
' Open a form.
Case conCmdOpenFormBrowse
DoCmd.OpenForm rs![Argument]
' Open a report.
Case conCmdOpenReport
DoCmd.OpenReport rs![Argument], acPreview
' Customize the Switchboard.
Case conCmdCustomizeSwitchboard
' Handle the case where the Switchboard Manager
' is not installed (e.g. Minimal Install).
On Error Resume Next
Application.Run "ACWZMAIN.sbm_Entry"
If (Err <> 0) Then MsgBox "Команда недоступна."
On Error GoTo 0
' Update the form.
Me.Filter = "[ItemNumber] = 0 AND [Argument] = 'По умолчанию' "
Me.Caption = Nz(Me![ItemText], "")
FillOptions
' Exit the application.
Case conCmdExitApplication
CloseCurrentDatabase
' Run a macro.
Case conCmdRunMacro
DoCmd.RunMacro rs![Argument]
' Run code.
Case conCmdRunCode
Application.Run rs![Argument]