Система управления работой банка с пластиковыми карточками (бухгалтерии и вируального банкомата)

Автор работы: Пользователь скрыл имя, 10 Ноября 2013 в 22:25, курсовая работа

Описание работы

Целью данной курсовой работы является разработка приложения, обеспечивающего работу банка и его клиентов с пластиковыми карточками (в частности, реализована идея работы банкомата, а также бухгалтерии). В ходе выполнения курсовой работы должны быть закреплены навыки работы с объектами Access (таблицы, запросы, формы, отчеты, макросы), а также с универсальным языком приложений Microsoft Office – VBA. В курсовой работе будут описаны основные этапы создания БД, а также описаны все возможности созданной БД. Будет применено процессное проектирование.

Содержание работы

ВВЕДЕНИЕ 3
СОЗДАНИЕ БАЗЫ ДАННЫХ: 5
Этап 1. Определение задач 5
Этап 2. Определение последовательности выполнения задач 6
Этап 3. Определение элементов данных. 6
Этап 4. Упорядочивание данных 11
Этап 5. Разработка прототипа и пользовательского интерфейса 12
Этап 6. Создание приложения 12
Этап 7. Тестирование и доводка 13
А) БУХГАЛТЕРИЯ 14
Б) ВИРТУАЛЬНЫЙ БАНКОМАТ 26
ЗАКЛЮЧЕНИЕ 35
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 36
ПРИЛОЖЕНИЕ 1 (ТЕКСТЫ ПРОГРАММ НА VBA) 37
ПРИЛОЖЕНИЕ 2 (ОБЪЕКТЫ (ЗАПРОСЫ И МАКРОСЫ) В РЕЖИМЕ КОНСТРУКТОРА) 63

Файлы: 1 файл

Курсовая работа.doc

— 1.27 Мб (Скачать файл)

[Forms]![Форма_транзакции]![Дата1] = Null

[Forms]![Форма_транзакции]![Дата2] = Null

Forms!Форма_транзакции!Группа = Null

DoCmd.RepaintObject acForm, "Форма_транзакции"

End Sub

'выход

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

DoCmd.Close acForm, "Форма_транзакции", acSaveYes

DoCmd.OpenForm "Форма_Операции_с_клиентами", acNormal, "", "", , acNormal

End Sub

 

  1. “Форма_транзакция”

 

Option Compare Database

 

'------------------------------------------------------------

' Транзакция_Да_Click

'

'------------------------------------------------------------

Private Sub Транзакция_Да_Click()

On Error GoTo Транзакция_Да_Click_Err

 

    DoCmd.OpenForm "Форма_Тип_Операции", acNormal, "", "", , acNormal

    Forms![Форма_Тип_Операции]![НомерКарты] = Forms![Форма_транзакция]![НомерКарты]

    DoCmd.Close acForm, "Форма_транзакция"

   

Транзакция_Да_Click_Exit:

    Exit Sub

 

Транзакция_Да_Click_Err:

    MsgBox Error$

    Resume Транзакция_Да_Click_Exit

 

End Sub

 

 

'------------------------------------------------------------

' Транзакция_Нет_Click

'

'------------------------------------------------------------

Private Sub Транзакция_Нет_Click()

On Error GoTo Транзакция_Нет_Click_Err

 

    DoCmd.Close acForm, "Форма_транзакция"

    DoCmd.OpenForm "Форма_Основа", acNormal, "", "", , acNormal

 

 

Транзакция_Нет_Click_Exit:

    Exit Sub

 

Транзакция_Нет_Click_Err:

    MsgBox Error$

    Resume Транзакция_Нет_Click_Exit

 

End Sub

 

  1. “Форма_Удаление_Карты”

 

Option Compare Database

 

'выход

 

Private Sub Выход_Click()

DoCmd.Close acForm, "Форма_Удаление_Карты", acSaveYes

 DoCmd.OpenForm "Форма_Операции_с_клиентами", acNormal, "", "", , acNormal

   

 

End Sub

 

Private Sub УдалитьКлиента_Click()

Dim rec1 As DAO.Recordset

Dim rec2 As DAO.Recordset

Dim rec3 As DAO.Recordset

 

If (Eval("[Forms]![Форма_Удаление_Карты]![НомерКарты] Is Null") Or Eval("[Forms]![Форма_Удаление_Карты]![Слово] Is Null")) Then

MsgBox "Введите соответствующие  данные"

Exit Sub

End If

 

 

 

Set rec1 = CurrentDb.OpenRecordset("SELECT Клиент_Общая_Инфо.ДевичьяФамилия, Клиент_Карта.НомерКарты" & _

" FROM Клиент_Общая_Инфо INNER JOIN (Клиент_Карта INNER JOIN Клиент_Финансы ON Клиент_Карта.КодКарты = Клиент_Финансы.КодКарты) ON Клиент_Общая_Инфо.КодКлиента = Клиент_Финансы.КодКлиента" & _

" WHERE (Клиент_Карта.НомерКарты)=  " & Me![НомерКарты] & " And (Клиент_Общая_Инфо.ДевичьяФамилия)=  '" & Me![Слово] & "';")

 

 

 

If rec1.EOF Then

MsgBox "Такой карты  не существует"

[Forms]![Форма_Удаление_Карты]![НомерКарты] = Null

[Forms]![Форма_Удаление_Карты]![Слово] = Null

DoCmd.RepaintObject acForm, "Форма_Удаление_Карты"

Exit Sub

End If

 

Set rec1 = CurrentDb.OpenRecordset("SELECT * " & _

"FROM Клиент_Карта " & _

" WHERE (Клиент_Карта.НомерКарты)=  " & Me![НомерКарты] & ";")

 

Set rec2 = CurrentDb.OpenRecordset("SELECT Клиент_Общая_Инфо.ДевичьяФамилия, Клиент_Карта.НомерКарты, Клиент_Финансы.КодКарты" & _

" FROM Клиент_Общая_Инфо INNER JOIN (Клиент_Карта INNER JOIN Клиент_Финансы  ON Клиент_Карта.КодКарты = Клиент_Финансы.КодКарты) ON Клиент_Общая_Инфо.КодКлиента = Клиент_Финансы.КодКлиента" & _

" WHERE (Клиент_Карта.НомерКарты)=  " & Me![НомерКарты] & " And (Клиент_Общая_Инфо.ДевичьяФамилия)=  '" & Me![Слово] & "';")

 

 

 

 

Set rec3 = CurrentDb.OpenRecordset("SELECT Клиент_Финансы.КодФинансов, Клиент_Финансы.КодКарты" & _

" FROM Клиент_Финансы" & _

" WHERE КодКарты =  " & rec2![КодКарты] & ";")

 

rec3.Delete

rec1.Delete

 

 

 

MsgBox "Запись успешно  удалена"

 

[Forms]![Форма_Удаление_Карты]![НомерКарты] = Null

[Forms]![Форма_Удаление_Карты]![Слово] = Null

DoCmd.RepaintObject acForm, "Форма_Удаление_Карты"

 

End Sub

 

 

 

  1. “Форма_Чек_Деньги”

 

Option Compare Database

 

'------------------------------------------------------------

' Чек_Да_Click

'

'------------------------------------------------------------

Private Sub Чек_Да_Click()

On Error GoTo Чек_Да_Click_Err

Dim rst As Recordset

Set db = CurrentDb

Set rst = db.OpenRecordset("Деньги")

rst.MoveLast

DoCmd.OpenReport "Отчет_Снятие_Денег", acViewPreview, _

"", _

"КодОперации= " & rst![КодОперации] & " ", acNormal

 

DoCmd.OpenForm "Форма_транзакция", acNormal, "", "", , acNormal

Forms![Форма_транзакция]![НомерКарты] = Forms![Форма_Чек_Деньги]![НомерКарты]

DoCmd.Close acForm, "Форма_Чек_Деньги"

 

Чек_Да_Click_Exit:

    Exit Sub

 

Чек_Да_Click_Err:

    MsgBox Error$

    Resume Чек_Да_Click_Exit

 

End Sub

 

 

'------------------------------------------------------------

' Чек_Нет_Click

'

'------------------------------------------------------------

Private Sub Чек_Нет_Click()

On Error GoTo Чек_Нет_Click_Err

 

DoCmd.OpenForm "Форма_транзакция", acNormal, "", "", , acNormal

 Forms![Форма_транзакция]![НомерКарты] = Forms![Форма_Чек_Деньги]![НомерКарты]

DoCmd.Close acForm, "Форма_Чек_Деньги"

 

 

Чек_Нет_Click_Exit:

    Exit Sub

 

Чек_Нет_Click_Err:

    MsgBox Error$

    Resume Чек_Нет_Click_Exit

 

End Sub

 

  1. “Форма_Чек_Телефон”

 

Option Compare Database

 

'------------------------------------------------------------

' Чек_Да_Click

'

'------------------------------------------------------------

Private Sub Чек_Да_Click()

On Error GoTo Чек_Да_Click_Err

Dim rst As Recordset

Set db = CurrentDb

Set rst = db.OpenRecordset("Мобильник")

rst.MoveLast

DoCmd.OpenReport "Отчет_Деньги_Телефон", acViewPreview, _

"", _

"КодОперации= " & rst![КодОперации] & " ", acNormal

 

DoCmd.OpenForm "Форма_транзакция", acNormal, "", "", , acNormal

Forms![Форма_транзакция]![НомерКарты] = Forms![Форма_Чек_Телефон]![НомерКарты]

DoCmd.Close acForm, "Форма_Чек_Телефон"

 

Чек_Да_Click_Exit:

    Exit Sub

 

Чек_Да_Click_Err:

    MsgBox Error$

    Resume Чек_Да_Click_Exit

 

End Sub

 

 

'------------------------------------------------------------

' Чек_Нет_Click

'

'------------------------------------------------------------

Private Sub Чек_Нет_Click()

On Error GoTo Чек_Нет_Click_Err

 

    DoCmd.OpenForm "Форма_транзакция", acNormal, "", "", , acNormal

 Forms![Форма_транзакция]![НомерКарты] = Forms![Форма_Чек_Телефон]![НомерКарты]

DoCmd.Close acForm, "Форма_Чек_Телефон"

 

 

Чек_Нет_Click_Exit:

    Exit Sub

 

Чек_Нет_Click_Err:

    MsgBox Error$

    Resume Чек_Нет_Click_Exit

 

End Sub

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ПРИЛОЖЕНИЕ 2 (ОБЪЕКТЫ (ЗАПРОСЫ И МАКРОСЫ) В РЕЖИМЕ КОНСТРУКТОРА)

 

Запрос “Запрос_Инфо_О_Клиенте”

 

 

Режим “SQL”

 

SELECT Клиент_Общая_Инфо.КодКлиента, Клиент_Общая_Инфо.Фамилия, Клиент_Общая_Инфо.Имя, Клиент_Общая_Инфо.Отчество, Клиент_Общая_Инфо.ДатаРождения, Клиент_Общая_Инфо.Пол, Клиент_Общая_Инфо.НомерПасспорта, Клиент_Общая_Инфо.ЛичныйНомер, Клиент_Общая_Инфо.СтранаПроживания, Клиент_Общая_Инфо.ПочтовыйИндекс, Клиент_Общая_Инфо.ГородПроживания, Клиент_Общая_Инфо.УлицаПроживания, Клиент_Общая_Инфо.ДомПроживания, Клиент_Общая_Инфо.КорпусПроживания, Клиент_Общая_Инфо.КвартираПроживания, Клиент_Общая_Инфо.ДомашнийТелефон, Клиент_Общая_Инфо.МобильныйТелефон, Клиент_Общая_Инфо.ДевичьяФамилия, Клиент_Карта.НомерКарты, Клиент_Карта.ДатаВыдачи, Клиент_Карта.ДатаОкончания, Клиент_Карта.Пин, Клиент_Финансы.ТекущийСчет

FROM Клиент_Общая_Инфо INNER JOIN (Клиент_Карта INNER JOIN Клиент_Финансы ON Клиент_Карта.КодКарты = Клиент_Финансы.КодКарты) ON Клиент_Общая_Инфо.КодКлиента = Клиент_Финансы.КодКлиента

ORDER BY Клиент_Общая_Инфо.КодКлиента, Клиент_Общая_Инфо.Фамилия, Клиент_Общая_Инфо.Имя;

 

Запрос “Запрос_Деньги”

 

 

 

Режим “SQL”

SELECT Деньги.КодОперации, Деньги.Сумма,  Деньги.Валюта, Деньги.ТекущийКурс, Деньги.Дата, Деньги.Время, Деньги.НомерКарты

FROM Деньги

WHERE (((Деньги.Дата)>[Forms]![Форма_транзакции]![Дата1] And (Деньги.Дата)<[Forms]![Форма_транзакции]![Дата2]) AND ((Деньги.НомерКарты)=[Forms]![Форма_транзакции]![НомерКарты]));

 

Запрос “Запрос_Начисление”

 

 

Режим “SQL”

 

SELECT Начисление.КодОперации, Начисление.НомерКарты, Начисление.Сумма, Начисление.Дата, Начисление.Время

FROM Начисление

WHERE (((Начисление.НомерКарты)=[Forms]![Форма_транзакции]![НомерКарты]) AND ((Начисление.Дата)>[Forms]![Форма_транзакции]![Дата1] And (Начисление.Дата)<[Forms]![Форма_транзакции]![Дата2]));

 

Запрос “Запрос_Телефон”

 

Режим “SQL”

 

 

SELECT Мобильник.КодОперации, Мобильник.НомерТелефона, Мобильник.НомерКарты, Мобильник.Баланс, Мобильник.Дата, Мобильник.Время

FROM Мобильник

WHERE (((Мобильник.НомерКарты)=[Forms]![Форма_транзакции]![НомерКарты]) AND ((Мобильник.Дата)>[Forms]![Форма_транзакции]![Дата1] And (Мобильник.Дата)<[Forms]![Форма_транзакции]![Дата2]));

 

Макрос “autoexec”

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Информация о работе Система управления работой банка с пластиковыми карточками (бухгалтерии и вируального банкомата)