МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ
УЧРЕЖДЕНИЕ ОБРАЗОВАНИЯ
Курсовой проект
ГОМЕЛЬ 2003
Статистическая отчетность создана для введения бухгалтерской деятельности (расчета прибыли предприятия, зарплаты персонала, введения бухгалтерского учета, вычисления различных налогов и платежей, составление оплаты за ресурсы и т.д.). При этом для облегчения выполнения данных операций обычно применяют метод разделения всех расчетов на более мелкие. (Так для расчета зарплаты используются статьи расчета налогов, начисления самой платы по нескольким статьям, в зависимости от вида выполненных работ, занимаемой должности, стажа и других составляющих. Кроме этого делаются перечисления в различные фонды, такие как пенсионный. Отнимаются и различные штрафы за нарушения норм и т.д.)
Вот таким сложным образом начисляется заработная плата. Если же мы распределим все операции по отдельным статьям, то в дальнейшем нам не придется заново рассчитывать многие операции. Просто нужно просуммировать те статьи, которые относятся к доходам, и отнять те, которые к расходам. То есть мы получаем как бы справочники по статьям дохода и расхода. В этом и есть удобство системы для создания статистической отчетности. Пользователь выбирает из списка нужные статьи и записывает формулу расчета, а программа вычисляет по данным формулы и значениям таблиц и показывает результат.
Назначение Статистической отчетности в системе АСУ ГГУ – автоматизированное ведение расчетных экономических операций с распечаткой отчетности. Задачи подсистемы:
Данная статистическая отчетность реализует экономическое понятие о отчетности. Она создана для более быстрой и качественной работы с различного вида экономических операций. При справочниках о статьях доходов и расходов (дебитов, кредитов) пользователь может выбрать те из них, по которым он собирается вести расчеты (осуществлять нужную ему экономическую операцию, как например расчет заработной платы). Система АСУ ГГУ проста в работе и предназначена на различных пользователей. То есть человек может успешно работать с системой вне зависимости от его знаний компьютера. Поэтому любой пользователь может без труда сделать экономическую отчетность о проделанной им работе при помощи данной системы.
В процессе функционирования подсистемы «Банк» используется база данных Statotchet, которая подсоединяется к основной базе данных Bank.
CONNECT «D:\GDB\BANKDB.gdb» user «A» password «a»;
/*Подсоединяется к основной базе данных. Нужно только указать правильный путь доступа к базе данных Bank.*/
/*Создается таблица StatRashod, которая описывает статьи расходов.*/
CREATE TABLE StatRashod (
Id_StRd INTEGER NOT NULL,
CodeStRd char(8) NOT NULL UNIQUE,
StatName VARCHAR(30) NOT NULL,
PRIMARY KEY (Id_StRd));
/*Создается таблица StatProvodki, которая описывает коды дебитов и кредитов в соответствии с кодом статьи расходв*/
CREATE TABLE StatProvodki (
Id_Provodki INTEGER NOT NULL,
CodeProvodki CHAR(8) NOT NULL,
IdDsf INTEGER NOT NULL,
IdCsf INTEGER NOT NULL,
PRIMARY KEY (Id_Provodki),
FOREIGN KEY (CodeProvodki) REFERENCES StatRashod(CodeStRd));
/*Создается таблица StatRdDd, которая описывает статьи расходов и доходов.*/
CREATE TABLE StatRdDd (
Id_StatRdDd INTEGER NOT NULL,
StatRdDdName VARCHAR(30) NOT NULL,
PRIMARY KEY (Id_StatRdDd));
/*Создается индексы и генераторы для таблиц*/
CREATE UNIQUE INDEX StatRashod_INDEX ON StatRashod (Id_StRd);
CREATE UNIQUE INDEX StatRdDd_INDEX ON StatRdDd (Id_StatRdDd);
CREATE UNIQUE INDEX StatProvodki_INDEX ON StatProvodki (Id_Provodki);
CREATE GENERATOR Id_StRd_GEN;
CREATE GENERATOR Id_StatRdDd_GEN;
CREATE GENERATOR Id_Provodki_GEN;
COMMIT;
set term #;
/* триггеры для заполнения полей XXX_ID соответствующих таблиц (все срабатывают до добавления данных в таблицу) */
create trigger TRG_Id_StRd for StatRashod active before insert position 0 as
begin
new. Id_StRd = gen_id (Id_StRd _GEN, 1); /* новоезначение XXX_ID РАВНОстароеплюс 1 */
end#
create trigger TRG_Id_StatRdDd for StatRdDd active before insert position 0 as
begin
new. Id_StatRdDd = gen_id (Id_StatRdDd _GEN, 1); /* новоезначение XXX_ID РАВНОстароеплюс 1 */
end#
create trigger TRG_Id_Provodki for Stat Provodki active before insert position 0 as
begin
new. Id_ Provodki = gen_id (Id_ Provodki _GEN, 1); /* новоезначение XXX_ID РАВНОстароеплюс 1 */
end#
setterm;#
COMMIT;
ТаблицаStatRashod:
№Field name Type Width Dec
1 | Id_StRd | INTEGER | Ключ, Счетчик | |
2 | CodeStRd | CHAR | 8 | КодСтатьи расходов |
3 | StatName | VARCHAR | 30 | Название статьи расходов |
Таблица StatProvodki:
№Field name Type Width Dec
1 | Id_Provodki | INTEGER | Ключ, Счетчик | |
2 | CodeProvodki | CHAR | 8 | Код проводки в соответсвии с кодами статей расходов |
3 | IdDsf | INTEGER | Код дебита | |
4 | IdСsf | INTEGER | Код кредита |
Таблица StatRdDd:
№Field name Type Width Dec
1 | Id_StRdDd | INTEGER | Ключ, Счетчик | |
2 | StatRdDdName | VARCHAR | 30 | Название статьи расходов |
Взаимодействие пользователя с подсистемой осуществляется с использованием модели пользовательского интерфейса, соответствующей известному стандарту CUA (Common User Access). Хотя этот стандарт первоначально был предложен фирмой IBM в качестве внутрифирменного стандарта, на сегодняшний день он превратился в общепризнанный стандарт проектирования пользовательского интерфейса. Далее рассматриваются некоторые базовые концепции стандарта CUA.
Меню-ориентированный интерфейс. CUA жестко регламентирует требования к организации пользовательского меню. Это размещение главного меню в верхней строке экрана, организация «выпадающих» подменю, возможность выбора требуемой позиции с помощью клавиатуры и манипулятора типа «мышь», наличие «горячих» клавиш для позиций меню. Средства организации меню должны обеспечивать возможность различной визуализации активных и неактивных позиций, а также организовывать связь с системой помощи, которая позволяет получить подсказку для каждой позиции меню.
Диалоговые окна. В соответствии с концепцией CUA общение пользователя с программой (ввод данных пользователем или вывод сообщений программой) осуществляется с помощью так называемых «всплывающих» (pop-up) диалоговых окон. Такие окна содержат маркированные области, в которые пользователь может осуществлять ввод данных, выбор опций программы, просмотр информации и другие операции. Важным элементом диалоговых окон являются так называемые органы управления – кнопки, полосы прокрутки, позволяющие пользователю управлять поведением программы или просмотром информации.
Контекстно-зависимая помощь. Программа, удовлетворяющая требованиям CUA, обязана поддерживать систему помощи, содержание которой зависит от текущей выполняемой пользователем операции. Это касается не только вывода справочной информации по запросу пользователя, но также и наличия кратких подсказок по используемым клавишам, идентификации текущей выполняемой функции или операции.
Реализация системы АСУ ГГУ проведена на языке C++Bilder5 с применением объектно-ориентированной технологии, обеспечивающей разработку пользовательского интерфейса для прикладных программ в соответствии с изложенными выше концепциями стандарта CUA. Взаимодействие пользователя с подсистемой осуществляется в основном с использованием диалоговых окон, содержащих следующие основные органы управления: «Файл», «Проводки», «НДС», «Банк», «Касса», «Питание», «Услуги», «Материалы», «Командировки», «Квитанции», «Документы», «Справочники». Некоторые из них содержат другие диалоговые окна. Например: диалоговое окно «Файл» кроме пункта «Создание данных за месяц» содержит так же подменю «Настройка», «Служебные функции», «Параметры работы».