Автор работы: Пользователь скрыл имя, 15 Апреля 2014 в 12:18, курсовая работа
АРМ бухгалтера малого предприятия предназначено для оперативного управления информацией, необходимой для бухгалтера предприятия и для подготовки отчетности. АРМ, в первую очередь, ориентировано на бухгалтеров рангов и направлений.
Данная программа дает возможность быстро оформить приходный и расходный кассовый ордер, отыскать кто, когда и сколько внес денег, кому, когда и сколько выдано денег.
Аннотация………………………………………………………………...……3
Введение……………………………………………………………………......4
Анализ предметной области и обоснование задач АРМ…………………....6
Проектирование иерархического меню………………………………….…13
Описание постановки задачи………………………………………………..14
Проектирование базы данных…………………………………………….…18
Проектирование экранных форм…………………………………………....23
Проектирование отчетов…………………………………………………..…26
Заключение……………………………………………………………...…….27
Приложение 1…………………………………………………………..…….28
Приложение 2……………………………………..………………………….29
Приложение 3……………………………………………………………..….40
Приложение 4………………………………………………………………...43
Библиографический список………………………………………………….48
5. Проектирование экранных форм
Работа программы предусматривает использование 2 основных форм: «Приходный кассовый ордер», «Расходный кассовый ордер» и «Выбор отчета».
Таблица 5
Реквизитный состав формы «Приходный ордер»
Наименование поля |
Имя поля в таблице |
Тип данных |
Размер поля |
Метод контроля |
Описание реквизита |
Дата составления |
Дата составления |
Дата/время |
Авто |
Автоматически вводится текущая дата |
Дата составления документа |
Номер документа |
Номер документа |
счетчик |
Авто |
Визуальный контроль |
Номер принятого документа |
Организация |
Организация |
Текстовый |
Авто |
Визуальный контроль |
Организация, регистрирующая ордер |
Форма по ОКПО |
Форма по ОКПО |
Числовой |
Авто |
Визуальный контроль |
Форма по ОКПО |
Структурное подразделение |
Структурное подразделение |
Текстовый |
Авто |
Визуальный контроль |
Название структурного подразделения |
Приложение |
Приложение |
Текстовый |
Авто |
Визуальный контроль |
Приложение, если необходимы |
Основание |
Основание |
Текстовый |
Авто |
Визуальный контроль |
Причина выдачи денег |
Сумма |
Сумма |
Денежный |
Авто |
Визуальный контроль |
Сумма полученная от подотчетного лица |
Код целевого назначения |
Код целевого назначения |
Числовой |
Авто |
Визуальный контроль |
Код целевого назначения |
ФИО |
ФИО |
Текстовый |
Авто |
Визуальный контроль |
ФИО, кто возвращает деньги |
Код структурного подразделения |
Код структурного подразделения |
Числовой |
Авто |
Визуальный контроль |
Код структурного подразделения |
Корреспондирующий счет, субсчет |
Корреспондирующий счет, субсчет |
Числовой |
Авто |
Визуальный контроль |
Счет банка |
Кредит |
Кредит |
Числовой |
Авто |
Визуальный контроль |
Номер счета по кредиту |
Код аналитического учета |
Код аналитического учета |
Числовой |
Авто |
Визуальный контроль |
Код аналитического учета |
Таблица 6
Реквизитный состав формы «Расходный ордер»
Наименование поля |
Имя поля в таблице |
Тип данных |
Размер поля |
Метод контроля |
Описание реквизита |
Дата составления |
Дата составления |
Дата/время |
Авто |
Автоматически вводится текущая дата |
Дата составления документа |
Номер документа |
Номер документа |
Счетчик |
Авто |
Визуальный контроль |
Номер принятого документа |
Организация |
Организация |
Текстовый |
Авто |
Визуальный контроль |
Организация, регистрирующая ордер |
Документ удостоверяющий личность |
Документ удостоверяющий личность |
Текстовый |
Авто |
Визуальный контроль |
Документ по которому принимаются деньги |
Форма по ОКПО |
Форма по ОКПО |
Числовой |
Авто |
Визуальный контроль |
Форма по ОКПО |
Структурное подразделение |
Структурное подразделение |
Текстовый |
Авто |
Визуальный контроль |
Название структурного подразделения |
Приложение |
Приложение |
Текстовый |
Авто |
Визуальный контроль |
Приложение, если необходимы |
Основание |
Основание |
Текстовый |
Авто |
Визуальный контроль |
Причина выдачи денег |
Сумма |
Сумма |
Денежный |
Авто |
Визуальный контроль |
Сумма выданная под отчет |
Код целевого назначения |
Код целевого назначения |
Числовой |
Авто |
Визуальный контроль |
Код целевого назначения |
ФИО |
ФИО |
Текстовый |
Авто |
Визуальный контроль |
ФИО, кому выдаются деньги |
Код структурного подразделения |
Код структурного подразделения |
Числовой |
Авто |
Визуальный контроль |
Код структурного подразделения |
Корреспондирующий счет, субсчет |
Корреспондирующий счет, субсчет |
Числовой |
Авто |
Визуальный контроль |
Счет банка |
Кредит |
Кредит |
Числовой |
Авто |
Визуальный контроль |
Номер счета по кредиту |
Код аналитического учета |
Код аналитического учета |
Числовой |
Авто |
Визуальный контроль |
Код аналитического учета |
Для выполнения задач, обозначенных ранее, необходимо разработать 1 отчета: «Кассовая книга», реквизитный состав которой представлен в таблице.
Таблица 7
Реквизитный состав отчета «Кассовая книга»
Наименование реквизита |
Источник данных |
Имя поля в таблице |
Формула для вычисления |
Касса за |
Дата выбыирается |
Касса за |
|
Лист |
Форма «Приходный ордер» |
Лист |
|
Организация |
Форма «Приходный ордер» |
Организация |
|
Код по ОКЕИ |
Форма «Приходный ордер» |
Код по ОКЕИ |
|
Структурное подразделение |
Форма «Приходный ордер» |
Структурное подразделение |
|
Приход |
Форма «Приходный ордер» |
Приход |
|
Расход |
Форма «Приходный ордер» |
Расход |
|
Итого за день |
Форма «Приходный ордер» |
Итого за день |
Приход-Расход |
От кого получено или кому выдано |
Форма «Приходный ордер» |
От кого получено или кому выдано |
|
Корреспондирующий счет, субсчет |
Форма «Приходный ордер» |
Корреспондирующий счет, субсчет |
Задачами применения автоматизации управления тех или иных процессов являются:
В конечном итоге, все вышеперечисленные задачи сводятся к экономии средств и увеличению прибыли.
Приложение 1
Иерархическое меню АРМ бухгалтера малого предприятия
В готовом виде перед пользователем меню предстает в следующем виде:
Экранные формы и программные коды АРМ бухгалтера малого предприятия
Экранная форма «Приходный кассовый ордер»
Option Compare Database
Private Sub Кнопка30_Click()
On Error GoTo Err_Кнопка30_Click
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
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.Close
Exit_Кнопка31_Click:
Exit Sub
Err_Кнопка31_Click:
MsgBox Err.Description
Resume Exit_Кнопка31_Click
End Sub
Private Sub Кнопка32_Click()
On Error GoTo Err_Кнопка32_Click
Dim stDocName As String
stDocName = ChrW(1055) & ChrW(1088) & ChrW(1080) & ChrW(1093) & ChrW(1086) & ChrW(1076) & ChrW(1085) & ChrW(1099) & ChrW(1081) & ChrW(32) & ChrW(1082) & ChrW(1072) & ChrW(1089) & ChrW(1089) & ChrW(1086) & ChrW(1074) & ChrW(1099) & ChrW(1081) & ChrW(32) & ChrW(1086) & ChrW(1088) & ChrW(1076) & ChrW(1077) & ChrW(1088)
DoCmd.OpenReport stDocName, acPreview
Exit_Кнопка32_Click:
Exit Sub
Err_Кнопка32_Click:
MsgBox Err.Description
Resume Exit_Кнопка32_Click
End Sub
Private Sub Кнопка33_Click()
On Error GoTo Err_Кнопка33_Click
Dim stDocName As String
stDocName = ChrW(1055) & ChrW(1088) & ChrW(1080) & ChrW(1093) & ChrW(1086) & ChrW(1076) & ChrW(1085) & ChrW(1099) & ChrW(1081) & ChrW(32) & ChrW(1082) & ChrW(1072) & ChrW(1089) & ChrW(1089) & ChrW(1086) & ChrW(1074) & ChrW(1099) & ChrW(1081) & ChrW(32) & ChrW(1086) & ChrW(1088) & ChrW(1076) & ChrW(1077) & ChrW(1088)
DoCmd.OpenReport stDocName, acNormal
Exit_Кнопка33_Click:
Exit Sub
Err_Кнопка33_Click:
MsgBox Err.Description
Resume Exit_Кнопка33_Click
End Sub
Экранная форма «Расходный кассовый ордер»
Option Compare Database
Private Sub Кнопка30_Click()
On Error GoTo Err_Кнопка30_Click
Dim stDocName As String
stDocName = ChrW(1056) & ChrW(1072) & ChrW(1089) & ChrW(1093) & ChrW(1086) & ChrW(1076) & ChrW(1085) & ChrW(1099) & ChrW(1081) & ChrW(32) & ChrW(1082) & ChrW(1072) & ChrW(1089) & ChrW(1089) & ChrW(1086) & ChrW(1074) & ChrW(1099) & ChrW(1081) & ChrW(32) & ChrW(1086) & ChrW(1088) & ChrW(1076) & ChrW(1077) & ChrW(1088) & ChrW(49)
DoCmd.OpenReport stDocName, acPreview
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.Close
Exit_Кнопка31_Click:
Exit Sub
Err_Кнопка31_Click:
MsgBox Err.Description
Resume Exit_Кнопка31_Click
End Sub
Private Sub Кнопка32_Click()
On Error GoTo Err_Кнопка32_Click
DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.PrintOut acSelection
Exit_Кнопка32_Click:
Exit Sub
Err_Кнопка32_Click:
MsgBox Err.Description
Resume Exit_Кнопка32_Click
End Sub
Private Sub Кнопка33_Click()
On Error GoTo Err_Кнопка33_Click
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
Exit_Кнопка33_Click:
Exit Sub
Err_Кнопка33_Click:
MsgBox Err.Description
Resume Exit_Кнопка33_Click
End Sub
Экранная форма «Кассовая книга»
Option Compare Database
Private Sub Итого_за_день_AfterUpdate()
MsgBox "After"
Me.Итого_за_день.Value = Me.Приход = Me.Расход
End Sub
Private Sub Итого_за_день_BeforeUpdate(
MsgBox "before"
Me.Итого_за_день.Value = Me.Приход = Me.Расход
End Sub
Private Sub Итого_за_день_Change()
MsgBox "Change"
End Sub
Private Sub Кнопка22_Click()
On Error GoTo Err_Кнопка22_Click
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
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
DoCmd.Close
Exit_Кнопка23_Click:
Exit Sub
Err_Кнопка23_Click:
MsgBox Err.Description
Resume Exit_Кнопка23_Click
End Sub
Экранная форма «Выбор отчета»
Option Compare Database
Option Explicit
Private Sub cboMonth_AfterUpdate()
Me.first_date.Value = Format(DateSerial(Me.cboYear, Me.cboMonth, Day(Date)), "mm/yyyy")
End Sub
Private Sub cboYear_AfterUpdate()
Me.first_date.Value = Format(DateSerial(Me.cboYear, Me.cboMonth, Day(Date)), "mm/yyyy")
End Sub
Private Sub Form_Current()
If IsNull(Me.first_date) Then
Me.cboMonth.Value = Month(Date)
Me.cboYear.Value = Year(Date)
Me.first_date.Value = Format(Date, "mm/yyyy")
Else
Me.cboMonth = Month(Me.first_date.Value)
Me.cboYear = Year(Me.first_date.Value)
End If
End Sub
Private Sub load_report_Click()
Dim countEntriesSQL As String
Dim numberOfEntries As Integer
Dim rs As ADODB.Recordset
countEntriesSQL = "SELECT COUNT(*) FROM [Кассовая книга] " & _
"WHERE Month([Касса за]) = " & Me.cboMonth.Value & " " & _
"AND YEAR([Касса за]) = " & Me.cboYear.Value
Set rs = New ADODB.Recordset
rs.Open countEntriesSQL, CurrentProject.Connection
rs.MoveFirst
numberOfEntries = CInt(rs.Fields(0).Value)
If numberOfEntries = 0 Then
MsgBox "На данный месяц записей не найдено"
Else
DoCmd.OpenReport "final", acPreview