Разработка системы по сбору информации

Разработка системы по сбору информации о доходах физических лиц для формирования налоговых документов и отчетности для налоговой службы по объединению “Сургутгазпром”.



Введение

В настоящее время все большее и большее распространение, как в производстве, так и в документообороте предприятий находит компьютерная техника, все шире и шире становится перечень охватываемых ею задач. Постоянно растет объем и сложность обрабатываемой информации, требуются все новые и новые виды ее представления. Как показывает практика, большинство пользователей уже не представляет себе, как бы они выполняли свою работу, с которой прекрасно справлялись еще 5 – 10 лет назад, без помощи компьютера. Вот только некоторые из преимуществ использования вычислительной техники при работе, с какими – либо данными, документами:

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

		сразу после ввода, данные могут участвовать в различных операциях;

		возможность быстрого получения необходимых отчетов;

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

		существенная экономия времени и людских ресурсов при выполнении операций, связанных с обработкой информации;

		позволяет быстро и в наиболее подходящем для конкретного человека виде просмотреть данные, что повышает их восприятие.

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

Поэтому 15 июня 1998 года была принята очередная редакция инструкции государственной налоговой службы Российской Федерации №35 от 29 июня 1995года. Согласно которой, с 01 марта 1999 года все предприятия с численностью работающих свыше 100 человек обязаны предоставлять данные о доходах своих работников в налоговую инспекцию на магнитных носителях, причем в строго оговоренном формате. (см. Приложение 2)

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

В связи с выше изложенным, у крупных предприятий и объединений появилась острая потребность в соответствующем программном обеспечении. Предлагаемое налоговой службой для этих целей ПО, обеспечивает импорт данных только из конкретной, не очень распространенной программы Best-4, разработанной фирмой “Интеллект-Сервис”.

Предприятия объединения “СургутГазПром” в настоящее время работают с двумя различными программными продуктами, предназначенными для расчета заработной платы и учета других доходов налогоплательщиков;

		комплекс “Заработная плата”, разработан “АСУ-Партнер”;

		АРМ по учету труда и заработной платы (ОАО Автоматика).

Оба этих комплекса не поддерживают предоставление отчетов в налоговую инспекцию на магнитных носителях, и в силу ограниченности используемой СУБД (FoxPro v.2.6(Х)) не способны вести единую базу по всему объединению. Поэтому была поставлена задача, разработать программный продукт, который был бы в состоянии:

		вести единую базу данных о доходах физических лиц по всему объединению;

				выдавать отчеты в налоговую инспекцию на магнитном носителе;

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

		обрабатывать произвольные запросы пользователя к базе данных;

		собирать информацию в собственную базу, из баз данных программ расчета заработной платы, используемых на местах;

		поддерживать ручной ввод и корректировку информации;

		обеспечивать защиту от несанкционированного доступа к базе, как для изменения, так и для просмотра данных;

		отвечать современным требованиям по быстродействию, эргономичности, использовать современную СУБД с возможностью замены ее на еще более современную в будущем;

		иметь возможность настройки под изменяющееся законодательство, с минимальными переделками.

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

 В работе:

		дается полное описание работы с алгоритмами запросов;

		даются структуры баз данных, используемой программой;

		приведено множество иллюстраций, помогающих понять работу программы;



 К дипломной работе прилагается демонстрационная программа, выполненная на Borland Delphi 4.0 с использованием СУБД InterBase v 5.0 и представленная на дискете 3,5”.

		

1. Обзор существующих аналогов

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

1.1. Турбо бухгалтер

Программа Турбо Бухгалтер разработана научно – исследовательским центром ДИЦ. Самая ранняя из ее версий, с которыми я имел дело – версия 3.0.

Программа предназначена для ведения синтетического и аналитического бухгалтерского учета по всем разделам. Аналитический учет ведется по объектам аналитического учета (аналитическим признакам) в натуральном и стоимостном выражениях.

Ее отличительной особенностью, является очень развитый внутренний язык, который включает в себя более 100 операторов, переменные, развилки, а с 6 версии массивы и циклы. Это позволяет написать, по моему личному опыту (4 года работы), практически любую типовую операцию, отчет, бланк, даже по такому предмету непосредственно не связанному с бухгалтерией, как учет продаж в магазинах фирмы или телефонный справочник. Этому также способствует развитая система забалансовых счетов проводки, по которым хранятся в базе, и показываются только по требованию программиста. Руководство программы так же разделено на две книги: “Руководство пользователя” и “Руководство программиста”.

Ввод проводок можно организовать в ручную, но в основном для этого используются бланки, которые генерируют проводки от 1 до неограниченного количества.

После заноса проводок в журналы операций, необходимо обработать журналы, для принятия этих проводок в базу. Еще одной отличительной чертой этой программы является возможность ведения нескольких планов бухгалтерии. План бухгалтерии – это файл с настройками (предприятие, видимые журналы, бланки, типовые операции, аналитические признаки и т.п.), т.е. мы можем настроить программу, так, чтобы вести несколько разных предприятий на одном компьютере, в одной базе. Это не влечет избыточность данных, так как разные фирмы могут использовать, например: общие бланки, аналитические признаки и т.д.

После расчета итогов программа автоматически формирует различные ведомости и отчеты:

		сводные проводки;

		оборотно-сальдовую ведомость;

		оборотно-сальдовую ведомость по объектам аналитического учета;

		карточку счета; 

		карточку счета по одному объекту аналитического учета; 

		главную книгу;

		анализ счета по датам; 

		анализ счета по объектам аналитического учета; 

		анализ объекта аналитического учета по всем счетам; 

		карточка объекта аналитического учета по всем счетам; 

		журнальный ордер.

Также позволяет задать произвольный отчет.

На сегодня, последняя из известных мне версий – 6, выходит в четырех вариантах:

		базовая;

		профессиональная (локальная);

		профессиональная (сетевая) – впервые;

		ТБ-6 Зарплата.

Но более ранние версии также позволяли работать в сети при правильных прописанных путях типа “\\GlBuh\C:\TB6\Blank\a*.gru”

 Из отрицательных черт хотелось бы отметить:

		создав прекрасный внутренний язык, разработчики сэкономили на разработке бланков, предоставив делать это конечным пользователям, что, вероятно, резко снизило популярность этой программы;

		ограничение ширины бланка – 255 символов (не всегда достаточно);

		частая (в среднем 1 раз в неделю) необходимость перестройки баз из-за ее порчи программой, что может занимать до 10 минут (исправлено в 6 версии).

1.2. 1C:Бухгалтерия

Наверное, на сегодня самой популярной из бухгалтерских программ является 1С Бухгалтерия - универсальная бухгалтерская программа которая предназначена для ведения синтетического и аналитического бухгалтерского учета по различным разделам. Аналитический учет ведется по объектам аналитического учета (субконто) в натуральном и стоимостном выражениях.

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

После расчета итогов программа формирует различные ведомости:

		сводные проводки;

		оборотно-сальдовую ведомость;

		оборотно-сальдовую ведомость по объектам аналитического учета;

		карточку счета; 

		карточку счета по одному объекту аналитического учета; 

		анализ счета (аналог главной книги); 

		анализ счета по датам; 

		анализ счета по объектам аналитического учета; 

		анализ объекта аналитического учета по всем счетам; 

		карточка объекта аналитического учета по всем счетам; 

		журнальный ордер.

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

"1С" реализована для разных программных и аппаратных платформ: DOS, Windows, Windows 95, Macintosh (с начала 1996 г.), Power Macintosh (с лета 1996 г.). Существует несколько модификаций системы: базовая, профессиональная (для решения более сложных бухгалтерских задач), сетевая. 

Из недостатков можно отметить:

		малые возможности базовой версии;

		довольно высокую цену при покупке всех необходимых модулей для автоматизации бухгалтерии среднего предприятия.

		1.3. БЭСТ

ПО "БЭСТ" (разработка фирмы “Интеллект-Сервис”) выполнена в виде набора взаимосвязанных программных модулей: настройка и системные утилиты; ведение Главной книги (АРМ главного бухгалтера); учет кассовых операций; учет операций с банком; учет основных средств; учет производственных запасов; учет товаров и готовой продукции; управление продажами (реализацией); заработная плата. 

В настоящее время, последняя из известных мне версий – 4.12 является ориентацией на комплексную автоматизацию предприятий. Разработаны специализированные версии для оптовой и розничной торговли, страховой деятельности, бюджета и даже мостоотрядов (работает в мостоотряде №94). Имеется мощная система анализа финансового состояния предприятия. 

Помимо функций, позволяющих решать задачи управления продажами, расчетов с поставщиками и покупателями, поддержки операций торгового зала, учета ресурсов предприятия по группам товарно-материальных ценностей, номенклатуре, местам хранения и т.п., в "БЭСТ-4" включен ряд дополнительных возможностей. Новая прикладная подсистема "Управление закупками" обеспечивает составление и дальнейшее сопровождение реестров счетов-фактур поставщиков, контрагентов и покупателей, на основе которых автоматически формируются отчеты по сделкам купли/продажи. Ведение отдельного реестра счетов кредиторов позволяет консолидировать и отслеживать все взаиморасчеты с поставщиками и контрагентами. 

Для предприятий розничной торговли "БЭСТ-4" предоставляет возможность ведения индивидуальных прайс-листов для каждого магазина, а также архива прайс-листов, используемого для получения подробных отчетов по объему продаж на любую дату. Система осуществляет связь с кассовыми аппаратами, поддерживает систему штрихового кодирования товара. Система позволяет вести учет для произвольного числа независимых предприятий и использовать для его автоматизации только необходимый набор модулей. Система интересна удобным интерфейсом, своей многофункциональностью, гибкостью и простотой настройки на нужды конкретного предприятия. 

Из недостатков хотелось бы отметить:

		небольшую скорость работы, что вызвано моральной устарелостью используемой СУБД (FoxPro 2.6) и огромным числом файлов в директории с данными более 600, что сильно затрудняет работу ДОС по работе с ними;

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

		отсутствие планов выпуска версии по Windows, что резко снижает ее популярность;

		для защиты используется ключ (вставляется в LPT порт и в принципе прозрачен для принтера), но некоторые из известных мне принтеров, в частности LexMarkи срабатывают при проверки наличия ключа.

Продукт может функционировать как в локальном, так и в сетевом варианте. В качестве сетевой среды используются ОС NetWare версий 3.11 и выше, Windows NT, VINES, LANtastic и др. Требования к аппаратному обеспечению: для станции-клиента необходимы процессор 386 и выше, оперативная память от 4 Мбайт; для сервера - процессор от 486DX, ОЗУ объемом не менее 16 Мбайт. 

1.4. Интегратор 3.0

Пакет "Интегратор", предназначен для комплексной автоматизации бухгалтерского учета. Версия "Интегратор 3.0" в сетевом исполнении предназначена для работы на промышленных предприятиях различных отраслей и видов деятельности, так как исторически все разработки "Инфософт" были ориентированы на автоматизацию промышленных предприятий. 

"Интегратор 3.0" состоит из следующих подсистем: денежные средства (касса, банк); дебиторы и кредиторы; материалы, продукция, товары, МБП; поставщики и подрядчики; основные средства и нематериальные активы; производственные затраты; покупатели и заказчики; прибыль, налоги, капитал; финансовая отчетность. 

При разработке использовалась СУБД Clipper 5.2. В сетевом варианте базовой является конфигурация "файл-сервер". Для работы в архитектуре клиент/сервер необходимо дополнительно установить ПО Advantage Xbase Server. "Интегратор" эксплуатируется в сетях NetWare 3.xx и выше, Windows NT, LANtastic и др. Не рекомендуется применение ОС NetWare 4.01. Требования к аппаратному обеспечению: для станции-клиента необходимы процессор класса 486DX2 и 8 Мбайт оперативной памяти; для сервера - процессор не ниже Pentium 75 и ОЗУ объемом от 16 Мбайт. 



2. Описание автоматизируемых функций

Цель создания системы: обеспечить выполнение требования законодательства в отношении отчетности по подоходному налогу.

Предназначения системы:

		учет начисленной заработной платы на предприятии, прочих доходов и удержанного подоходного налога;

		ведение различной статистики по оплате труда, как в объединении “СургутГазПром” в целом, так и в каждом подразделении отдельно;

		выдача необходимых отчетов в налоговую инспекцию, как на магнитных, так и на бумажных носителях;

		заполнение справок.



Предполагается, что система будет использоваться в следующих отделах предприятия:

		отдел налоговой политики;

		отдел ОТиЗ.



2.1. Анализ существующей системы функционирования и задачи автоматизации

В настоящее время объединение “СургутГазПром” состоит из тридцати трех структурных подразделений – предприятий второго звена, которые в свою очередь имеют в своем подчинении мелкие предприятия, участки. Все эти подразделения географически распределены по Сургуту, Сургутскому району, Тюменской области. В каждом отдельном подразделении есть свои управляющие структуры (директор, заместители и т.д.). Столь разветвленная структура, вызванная исключительно производственной необходимостью, имеет ряд неудобств в части централизованного планирования и управления. В интересующей нас части, это привело к тому, что в различных структурных подразделениях установлено различное программное и техническое обеспечение, разработаны разные системы кодирования информации, отсутствует единая база данных, различные формы внутренних отчетов. Только в конце 1998 года была сделана попытка, перевести все подразделения на работу с едиными классификаторами. В частности введен единый классификатор видов начислений и удержаний, разработанный отделом охраны труда и заработной платы. Также разрабатываются единые справочники должностей и профессий.

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

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

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

Также не представляется возможным ведение единой базы из-за программного обеспечения различных фирм, большой территориальной распределенности и огромного объема информации, с которым применяемая СУБД работать просто не в состоянии (за один год только по одному структурному подразделению накапливается информация объемом более 140 Мбайт).

В этих условиях было принято решение об автоматизировании работы отделов налоговой политики объединения.



Схема представленная на рисунке 1 отражает потоки информации в процессе производства отчетности в ГНИ РФ. По мере надобности, но не реже одного раза в месяц, подразделения передают необходимую для расчёта подоходного налога информацию в отдел налоговой политики центрального офиса предприятия, где эти данные консолидируются и проверяются, после чего готовится отчётность для ГНИ РФ. Также к этим данным имеет доступ отдел ОТиЗ для получения необходимых ему отчетов по заработной плате.



Задачей решаемой разработанной системой является автоматизация этих процессов.

2.2. Состав функций реализуемых системой

		сбор информации о начисленной работникам заработной плате и об удержанном подоходном налоге ото всех структурных подразделений Газпрома;

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

		проверка корректности полученной информации (правильности удержания подоходного налога);

		формирование собственной базы, выдаче всех требуемых отчетов и справок в налоговую инспекцию, как на магнитных, так и на бумажных носителях, на основе информации и базы данных, согласно действующему законодательству РФ;

		формирование и выдача внутренних отчетов;

		численность работников подразделений, размер средней заработной платы;

		динамика изменений численности работников, средней заработной платы;

		динамика % и численности работников, находящихся на больничном;

		динамика % и численности работников находящихся, в очередных отпусках;

		выдача прочих внутренних отчетов;

		ручной ввод информации о заработной плате и заполнение справок в налоговую инспекцию для физических лиц;

		обеспечение сервисных функций, как то: оптимизация базы данных, ведение архивов за “закрытые” годы, резервное копирование данных и их восстановление, блокнот, калькулятор, календарь;

		обеспечение защиты данных от несанкционированного доступа.

2.3. Решение по структуре системы

Структурно система состоит из рабочей станции и серверной части.

		

В функции серверной части должно входить:

		хранение, оптимизирование и поддерживание в рабочем и актуальном состоянии базу данных;

		обрабатывание запросы пользователей;

		обеспечение защиты данных от несанкционированного доступа.

	

В функции рабочих станций входит:

		обеспечение сбора, импорта информации, непосредственно из программ ее формирующих;

		проверка корректности собранной информации;

		передача информации серверу;

		формирование запросов к серверу;

		выдача справок и отчетов;

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



2.4. Решение по функциональному разбиению системы на модули

Функционально АРМ на рабочей станции состоит из следующих модулей:

		модуль импорта, занимающийся выборкой информации из баз данных АРМов расчета заработной платы и ее импортом в собственную базу;

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

		рабочий модуль, предназначен для ввода/просмотра информации, получения различных отчетов;

		контролирующий модуль, занимающийся контролем достоверности и целостности информации, а также правильности удержания подоходного налога с физических лиц;

		модуль администратора, предназначенный для корректировки системной информации путей доступа и т.п.

3. Проектное решение



В данном разделе рассмотрены:

		решения по мерам, для сохранения целостности баз и предотвращения несанкционированного доступа;

		выбор операционной среды и средств разработки;

		решения по комплексу технических средств;

		информационное обеспечение разработки.

3.1. Обеспечение защиты баз данных

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

Для сохранения информации при перерывах во внешнем электропитании предусмотрены следующие меры:

		ведение журнала транзакций, что позволяет в случае нарушения структуры баз произвести откат транзакции;

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

		периодическое резервное копирование базы;

		настоятельная рекомендация в руководстве пользователя и программиста, установить UPS на сервер.

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

3.2. Выбор операционной среды и средств разработки

Выбор в качестве операционной среды для функционирования АРМа платформы win32 (ей соответствуют операционные системы Windows95, Windows98, Windows NT) обусловлен следующими ее особенностями:

		ориентация заказчика на эту платформу;

		развитые средства создания пользовательского интерфейса;

		достаточная масштабируемость, т.е. способность работать на широком диапазоне компьютерного оборудования, начиная от машин уровня 486DX4100 до многопроцессорных систем;

		наличие драйверов для поддержки широкого спектра периферийных устройств (видеоадаптеров, сетевых адаптеров, принтеров, дисководов CD-ROM и пр.);

		чрезвычайно широкое распространение этой платформы;

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

Из недостатков данной платформы, существенных для предлагаемой разработки, стоит отметить следующие:

		отсутствие в операционных системах Windows95 и Windows98 средств обеспечения безопасности и защиты от несанкционированного доступа, что вынуждает разрабатывать собственные или использовать сторонние модули для этого. В Windows NT этот недостаток частично устранен, однако по-прежнему нет поддержки шифрации хранимых данных;

		высокая требовательность к аппаратным ресурсам компьютера, что вынуждает использовать более мощные аппаратные платформы.

Выбор в качестве среды разработки пакета Borland Delphi 4 обусловлен следующими его особенностями:

		политика предприятия в области разработки ПО;

		возможность повторного использования готовых программных компонент;

		наличие большого количества стандартных компонент, а также достаточное количество библиотек компонент от сторонних фирм, расширяющих и дополняющих возможности стандартных;

		возможность генерации кода под платформу win32;

		поддержка технологий ActiveX, OLE, COM, CORBA, InterNet-технологий;

		достаточно высокая скорость и надежность работы скомпилированных программ в сравнении с интерпретирующими системами;

		ориентация на “визуальные” методы разработки программ, что позволяет быстро и качественно спроектировать и реализовать стандартный пользовательский интерфейс;

		перспективность, популярность и широкая распространённость данной среды разработки в мире.

 Выбор в качестве СУБД разработки InterBase v. 5.0. обусловлен следующими его особенностями:

		после включения его в состав Delphi Client/Server Suite InterBase стал “родным” для Borland (ныне Inprise Corporation), а средства разработки приложений этой компании давно зарекомендовали себя с положительной стороны. Уже то, что он очень активно используется в государственном и военном секторе США говорит в его пользу;

		InterBase весьма прост в настройке и в администрировании по сравнению с другими SQL серверами;

		InterBase обладает отличными техническими характеристиками:

		размер базы данных до 20 Гбайт;

		максимальное число таблиц в одной БД 65536;

		максимальное число полей в одной таблице 1000;

		максимальное количество записей в одной таблице не ограничено;

		максимальная длина записи 64К (не считая полей BLOB);

		максимальная длина поля 32К (кроме полей BLOB – не ограничена);

		максимальное количество индексов в одной БД 65536.

Дополнительно в процессе разработки применялись следующие программные пакеты и инструментальные средства:

Пакет InstallShield Express – для создания комплекта дистрибутивных дискет.

Для подготовки документации, рекламного листа и демонстрационной версии программ использовались программы, входящие в комплект Microsoft Office 97.



3.3. Решения по комплексу технических средств

3.3.1. Выбор критериев отбора технических средств



Среди всего множества критериев отбора ТС нас интересуют:

		достаточный объем оперативного запоминающего устройства;

		достаточный объем накопителя на жестком магнитном диске;

		приемлемый тип видеоадаптера и дисплея для работы пользователя;

		достаточная производительность центрального процессора;

		наличие возможности вывода информации на бумажный, магнитный носитель;

		достаточная скорость передачи данных в ЛВС;

		приемлемая стоимость составляющих комплекса технических средств.



3.3.2. Расчет необходимых ресурсов, для функционирования системы, выбор ТС



Объем необходимого ОЗУ рассчитывается, исходя из размеров памяти, занимаемой загружаемой операционной системой, из необходимого объема памяти, выделяемого под драйверы для обслуживания ЭВМ, программы-оболочки, основного загружаемого модуля программного комплекса, динамических библиотек, подгружаемых по мере выполнения программы и резерва памяти для обработки информации.

 Исходя из вышеизложенного, приходим, что для нормальной работы серверной части системы необходимо не менее 64 Мбайт ОЗУ (128 Мбайт рекомендуется). По современным понятиям, это уже не слишком высокое требование объясняется тем, что для нормальной работы выбранной в качестве ОС серверной части системы Windows NT v. 4.0 необходимо не менее 32 Мбайт оперативной памяти. Кроме того, учитывая большой объем базы данных, более 100 Мбайт и возможность многопользовательского доступа для оперативной работы сервера потребуется еще не менее 32 Мбайт ОЗУ.

 Учитывая то, что в качестве ОС для функционирования рабочих станций выбрана Windows 95 или Windows 98 приходим к тому что, для нормальной работы необходимо и достаточно 16 Мбайт ОЗУ (при использовании Windows 98 рекомендуется 32 Мбайта). Это объясняется тем, что Windows 95 для нормального функционирования требует 8 Мбайт ОЗУ, Windows 98 – 12. Сама система занимает 6 Мбайт оперативной памяти. Так как в компьютеры типа Pentium платы памяти выпускаются объемом 8, 16, 32, 64 Мбайт и вставляются по парно, а компьютеры типа Pentium II, Pentium III объемом 16, 32, 64, 128 Мбайт и вставляются по одному. Исходя из выше приведенных технических соображений, мы получаем вышеприведенные требования к оперативной памяти.

Подбор объема накопителя на жестком магнитном диске, далее HDD основывается на размере базы данных, в момент её предполагаемой пиковой загруженности, занимаемом ОС объемом жесткого диска, а также на размере архивов создаваемых системой за прошлые годы. Так же следует учесть необходимое быстродействие HDD, в зависимости от потребности в скорости реакции системы.

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

Предполагаемый срок службы техники – 5 лет. Так как 5 лет – средний срок полного морального устаревания парка машин и его замены.

ОС Windows NT/95/98 в среднем занимают по 150-200 Мбайт свободного места на жестком диске.

Учитывая все вышеизложенное, приходим к выводу, что для нормального функционирования серверной части системы необходимо 100 * (5 + 1) + 150 1Гбайт свободного дискового пространства, однако желательно иметь некоторый резерв свободного места, поэтому рекомендуемый объем свободного места на жестком диске – 1,5 Гбайта. Для осуществления резервного копирования необходимо иметь еще один диск размером 850 Мбайт. В связи с большим объемом базы данных и возможностью многопользовательского доступа, рекомендовано использовать для работы SCSI HDD со скоростью передачи данных не менее 10Мбайт/сек.

 Для нормальной работы рабочей станции необходимо не менее 350 Мбайт (150 – Windows + 150 – InterBase + 50 резерв) свободного места на жестком диске со скоростью передачи данных не менее 2 Мбайт/сек. 

Серверная часть системы не нуждается в постоянном присутствии человека, поэтому для ее работы монитор не требуется, однако для периодического обслуживания базы, учитывая применяемую платформу win32 необходимо иметь VGA или SVGA монитор диагональю 14”.

Для работы рабочих станций, в связи с большим количеством отображаемых данных и используемой OS необходим SVGA монитор диагональю 15”.

Выбор центрального процессора всегда основывается на соображениях о производительности системы.

 Учитывая большой объем обрабатываемой информации и применяемую платформу для приемлемой работы сервера, необходимо использовать процессор Intel пятого поколения (Pentium) со встроенным сопроцессором с тактовой частотой не менее 200 Mzh или его аналоги.

 Для рабочей станции из-за большого объема вычислений также необходим этот или более современный процессор. 

Для переноса информации удаленные рабочие станции, а также главная рабочая станция в отделе налоговой политики для выдачи отчетов в ГНИ, должны быть оборудованы дисководами 3,5”.

Для распечатки отчетов и справок, они так же должны быть оборудованы принтером формата А4 или иметь доступ к такому сетевому устройству.

Скорость передачи данных в ЛВС зависит от выбранного сетевого программного и технического обеспечения. Парк применяемых машин на предприятии заказчика оснащен Ethernet-адаптерами и прочими сетевыми устройствами со скоростью передачи данных 10Mбит/сек. Учитывая достаточность этой скорости для работы системы, и дороговизну замены этого оборудования на 100 Mzh принято решение, использовать имеющиеся средства.



Итак, подведем итоги выше приведенных рассуждений и выдвинем комплексные требования к составу технических средств, необходимых для функционирования системы. 

Для работы серверной части системы необходимо:

ПЭВМ на базе Intel-совместимого процессора пятого поколения с частотой не менее 200Мгц, с ОЗУ равным 64Мб, оснащённая VGA-видеоадаптером и монитором 14”, сетевым Ethernet-адаптером на 10Мбит, со свободным дисковым пространством равным 1Гб.



Для работы рабочей станции системы необходимо:

ПЭВМ на базе Intel-совместимого процессора пятого поколения с частотой не менее 200Мгц, с ОЗУ равным 16Мб, оснащённая SVGA-видеоадаптером и монитором 15”, сетевым Ethernet-адаптером на 10Мбит, со свободным дисковым пространством равным 350Мб и доступом к принтеру формата А4.

3.4. Информационное обеспечение разработки



Проектирование информационного обеспечения разделено на два этапа:

		анализ существующих информационных потоков; 

		разработка структуры баз данных.

		Информационное обеспечение должно выполнять следующие функции:

		организация и ведение массивов информации; 

		формирование отчетов; 

		контроль данных; 

		сохранение и восстановление данных.

Реализация вышеупомянутых функций выполнена за счёт:

		использования СУБД InterBase v 5.0; 

		использования ODBC-драйверов для работы с таблицами FoxPro v.2.6; 

		разработки собственных модулей для сохранения и восстановления данных с использованием среды разработки Inprise Delphi Client/Server Suite v. 4.





3.4.1. Входная и выходная информация



Отличительными признаками данной АС являются:

		средний объем входной и выходной информации;

		большое количество преобразований и вычислительных операций, производимых над данными.

Работа с данными производится в несколько этапов:

		сбор информации из АРМов заработной платы;

		перерасчет/проверка данных;

		выдача необходимых отчетов.

Сбор входной информации проходит в три этапа: 

		проверка информации в базе данных АРМа расчетчика на полноту, целостность, корректность;

		непосредственный импорт данных в базу данных сервера;

		проверку собственных справочников на полноту и корректность информации.

Выходная информация включает в себя:

		стандартные отчётные формы для предоставления в ГНИ РФ на бумажных носителях;

		файл о совокупных доходах лиц-налогоплательщиков (формат см. Приложение 2);

		прочие отчеты и справки для отдела ОТиЗ и руководства (динамика роста/падения заработной платы на предприятии, уровень доходов различных категорий работающих, численность работников подразделений, отчет о прошедших суммах по кодам затрат, балансовым счетам и т.д.).

Сбор информации проводится каждый месяц после расчета зарплаты (15 число). По окончанию сбора информации производится проверка ее корректности при наличии надобности, по команде оператора производится проверка правильности удержанного подоходного налога. ООТиЗ получает доступ к новой информации. Полученные данные в виде отчётных форм передаются в ГНИ РФ.

Во время сбора информации особый упор делается на проверке ее полноты и корректности, так как вся входная информация, касающаяся, непосредственно, начислений/удержаний, является ключевой. Ошибка в этих данных повлечет за собой неверно рассчитанное или не рассчитанное значение, которое, попав в отчётную форму или не попав в неё вовсе, приведёт к тому, что форма будет признана неправильно заполненной или повлечет за собой подобные неприятные последствия. Ошибка же в справочных данных приведет к тому, что отдел ОТиЗ будет пользоваться отчетностью, не отражающей истинное положение дел на предприятии.



3.4.2. Описание информационных массивов



Информационные массивы в данном комплексе распределяются на три типа:

		основные - хранящие полученные, введённые и рассчитанные данные по доходам (включая архивные копии прошлых годов), протоколы о получении данных от подразделений;

		справочники, такие как справочник форм, справочник кодов начислений, справочник входимости, справочник с информацией о структуре предприятия;

		дополнительные - содержащие информацию о настройках АС, прочую вспомогательную информацию.

 Табличное описание структуры базы данных приведено в Приложении 3.



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

Руководство пользователя предназначено для того, чтобы научить пользователя программы работе с ней. При этом предполагается, что он имеет некоторый начальный навык работы с компьютером, т.е. умеет работать с клавиатурой и мышью, ориентируется в сообщениях выдаваемых компьютером, знает, что такое Windows, окно и т.п.

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



На рисунке 2. приведен видеокадр работы системы с информацией о разработчике, версии и т.д.

4.1. Идентификация пользователя

 Информация о заработной плате и прочих доходах физических лиц на сегодняшний день является строго конфиденциальной. Кроме того, следует учесть то, что неправильные или неправомочные изменения данных приведут к различным ошибкам в базе данных и, как следствие, в отчетах. Поэтому работа с данной системой начинается с идентификации пользователя, для чего система запрашивает его наименование и пароль, это демонстрирует нам видеокадр, приведенный на рисунке 3. После имени пользователя и пароля производится проверка прав доступа. На рисунках 4 и 5 продемонстрированы видеокадры из АС с вариантами результатов.



В зависимости от них, некоторые из пунктов меню или опций в формах могут быть недоступны.

4.2. Справочники системы

В начале эксплуатации АС необходимо заполнить справочники, перечень которых высвечивается на экране при входе в одноименную функцию основного меню (см. Рисунок 6). Информация в справочниках должна быть закодирована (см. описание конкретных справочников).



Вся дальнейшая работа пользователя будет осуществляться с теми кодами, которые он заведет в справочники. В течение времени эксплуатации системы коды могут удаляться, корректироваться, добавляться новыми значениями в том числе и импортироваться из АРМов зарплаты (аналогично, любая другая информация справочников).

Для каждого справочника заложен свой перечень режимов обработки информации, как то возможность редактирования, печать, поиск, сортировка и т.д.

Справочники используются для формирования отчетов, проверки информации, а также для формирования файла, который в электронном виде передается в налоговую инспекцию и для печати документа "Справка о доходах физического лица. Приложение №3 к инструкции Государственной налоговой службы России N35 от 29 июня 1995 года".

Поэтому при формировании справочников нужно руководствоваться инструкцией по их заполнению "требования к составу и структуре информации о доходах физического лица, представляемой на магнитных носителях предприятиями, организациями и налоговыми инспекциями", которая содержится на магнитном носителе, распространяемом налоговыми инспекциями, вместе со структурой передаваемого в инспекцию файла, и инструкцией, приведенной в "Финансовой газете" N52 (316) за декабрь 1997 года. 



4.2.1. Классификаторы



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

Список справочников вошедших в классификаторы:

		виды начислений;

		виды удержаний;

		справочник видов документов;

		справочник должностей;

		справочник категорий персонала;

		справочник профессий;

		справочник регионов России;

		справочник стран;

		справочник участков;

		справочник цехов.

		

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

При вводе кода начисления в любом другом режиме системы производится обязательный автоматический контроль на его наличие в этом справочнике. При его отсутствии об этом выдается сообщение.

Повторный ввод одного и того же кода не допускается.

Коды, введенные в справочник видов начислений, автоматически попадают в справочники входимости (описание см. далее)



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

При вводе кода удержания в любом другом режиме системы производится обязательный автоматический контроль на его наличие в этом справочнике. При его отсутствии об этом выдается сообщение.

Повторный ввод одного и того же кода не допускается. 

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

Виды документов заносятся в справочник видов документов согласно справочника "Виды документов, удостоверяющих личность налогоплательщика", формируемого в самой налоговой инспекции, например:

01 - паспорт;

03 - свидетельство о рождении;

и т. д.



Справочник должностей содержит коды и наименования должностей, применяемых в объединении.



В справочнике категорий персонала должны содержаться все категории персонала (руководители, специалисты, рабочие и т. д.), которые:

		имеются в настоящее время на предприятии;

		образуются в ближайшее время.

При вводе кода категории персонала в любой другой видеокадр системы производится обязательный автоматический контроль на его наличие в этом справочнике. При его отсутствии об этом выдается сообщение и выполнение операции прекращается.

Повторный ввод одного и того же кода не допускается.



В справочник профессий должны быть занесены все профессии, имеющиеся в объединении.

 Повторный ввод одного и того же кода не допускается.





Также в системе имеется справочник участков. Данный справочник необходим для производства отчетов для отдела ОТиЗ с выборкой данных по участкам, в нем должны содержаться все участки, имеющиеся в данный момент в подразделении:

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

Повторный ввод одного и того же кода не допускается.



 Справочник цехов так же необходим для производства отчетов для отдела ОТиЗ, но с выборкой данных по цехам, в нем должны содержаться все цеха, имеющиеся в данный момент в подразделении:

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

Повторный ввод одного и того же кода не допускается.



Наименования стран с кодами согласно общероссийского классификатора стран мира (ОКСМ) Госстандарта России заносятся в справочник стран мира.



В справочник регионов заносятся наименования регионов России (область, край, республика) прописки физического лица согласно справочника СОГНИ.



4.2.2. Общие справочники



 Ниже приведен список и описание общих справочников:

		справочник необлагаемых минимумов;

		справочник организаций.

		

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

В справочнике отдельно по задаваемым пользователем годам (количество хранимых лет в файле не ограничено) импортируются из АРМов зарплаты или набираются вручную суммы необлагаемых минимальных заработков за каждый месяц года.

Пользователь должен самостоятельно следить за изменениями сумм минимальных заработков и оперативно вносить в справочник изменения.

В любой момент времени (отчетным месяцем является, например, январь или февраль, или март и т.д.) обязательно должны быть заполнены все двенадцать месяцев года.

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



Справочник организаций содержит коды и наименования о структурных подразделений объединений. Пример его заполнения приведен на рисунке 7.



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



4.2.3. Справочники по работающему



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

		общая информация по физическому лицу;

		лицевые счета работающих.

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

Введенная информация сохраняется для всех последующих формирований файла и корректируется пользователем по мере необходимости.

В данный справочник вводится такая информация как: табельный номер, цех, участок, должность, профессия, паспортные данные и т.п. 

Заполнение данного справочника обязательно!



Лицевой счет работающего содержит информацию о начислениях, удержаниях по табельному номеру, по каждому периоду расчета. Данный справочник является основным источником информации, поэтому:

		заполнение его обязательно;

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

Перед тем как отобразить этот справочник необходимо ответить на запрос системы о диапазоне отображаемых табельных номеров и периодов. (Приведен на рисунке 8.)



На рисунке 9 представлен пример заполнения этого справочника реальными данными.



Для просмотра более подробной информации по работнику достаточно произвести щелчок мышью на его строке. В открывшемся окне (приведено на рисунке 10) можно будет просмотреть полную информацию о начислениях и удержаниях произведенных по этому физическому лицу за выбранный период расчета.





4.2.4. Справочники входимости



Предназначены для настройки расчета подоходного налога. Ниже приведен их список:

		входимость начислений в расчет подоходного налога;

		увеличение необлагаемой суммы;

		кратность льготы.



В таблице входимости начислений в расчет подоходного налога отражена входимость кодов начислений в расчет подоходного налога.

Если код начисления входит в алгоритм расчета подоходного налога (т.е. с него берется подоходный налог), то в столбце, в котором находится данный код, набирается единица. В противном случае, в этом месте набирается ноль. Против тех кодов, которые облагаются подоходным налогом по фиксированной шкале 12% (местный +федеральный) проставляется двойка.



ВНИМАНИЕ! Должен проставляться ноль в реквизите по кодам начислений, которые облагаются налогом с учетом кратности по отношению к необлагаемому минимуму или увеличивают необлагаемую сумму (в таблице "Входимость начислений в сумму к выплате" по этим кодам начислений реквизиты "Кратность льготы" и "Увеличение необлагаемой суммы" отличны от нуля). В противном случае, суммы по этим кодам будут обложены подоходным налогом дважды: как полностью облагаемые и как облагаемые с учетом кратности.



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



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

По тем кодам начислений, которые сравниваются с необлагаемым минимумом, будучи предварительно суммированными, должно проставляться одинаковое значение.



4.2.5. Справочники таблиц налогов и категорий налогоплательщиков



Данная категория справочников состоит из четырех пунктов которые будут описаны ниже:

		коэффициенты для расчета льгот;

		категории налогоплательщиков;

		основная таблица подоходного налога;

		размер подоходного налога с чернобыльцев.



Справочник коэффициентов для расчета льгот служит для определения количества льгот (на самого налогоплательщика и детей и иждивенцев, к нему относящихся) и минимальных необлагаемых налогом заработков, которые должны быть предоставлены налогоплательщику при удержании с него подоходного налога в зависимости от размера его дохода с начала налогооблагаемого года (графа "МИНИМ." - на самого работника, графа "ЛЬГОТ" - на детей и иждивенцев).



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

Основная таблица подоходного налога служит:

		для расчета подоходного налога с основных работников предприятия, то есть с тех, у которых минимальный необлагаемый заработок при расчете подоходного налога вычитается из суммы дохода (у таких табельных номеров в справочнике по работающему значение реквизита "Количество минимумов" должно быть отлично от нуля);

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

Информация в эту таблицу заносится с официальной таблицы, в которой дана градация сумм заработка для обложения ее подоходным налогом.

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

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



Таблица размера подоходного налога с чернобыльцев служит для расчета подоходного налога с участников ликвидации аварии на Чернобыльской АЭС, доход которых облагается с учетом специальных льгот, предусмотренных соответствующим постановлением Правительства (так, по состоянию на 01 января 1999 года - первые тридцать тысяч дохода, начисленные с начала года, налогом вообще не облагаются).

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

4.3 Рабочие режимы системы

4.3.1. Пополнение базы данных системы



 База данных данной АС допускает два способа пополнения:

		ручной (все справочники, кроме справочника “Лицевой счет работающего” допускают возможность ручной корректировки данных);

		автоматический (предусмотрен режим пополнения справочников непосредственно из баз АРМов заработной платы, применяемых на предприятии заказчика).



Автоматическое пополнение производится из базы данных АРМа текущего структурного подразделения или файлов переданных по электронной почте, на магнитном носителе. На рисунке 11 приведен пример пополнения справочника регионов России. Данный справочник разработан и применяется ГНИ РФ и является единым для всех предприятий.

Пополнение информации о произведенных начислениях и удержаниях производится после предварительной выдачи запроса об интервале дат и табельных номеров. Фрагмент его мы можем наблюдать на рисунке 12. После чего выводится индикатор, отражающий текущее состояние процесса, выполняемую операцию (Рисунок 12).



Во время пополнения происходит автоматический контроль корректности информации для сохранения целостности базы данных. Он осуществляется на уровне СУБД путем введения внешних ключей и триггеров, обеспечивающих каскадное обновление базы данных при изменении ключевого поля в связи один ко многим. (SQL инструкции, реализующие вышеперечисленное см. в Приложении 2). По окончании процедуры импорта выдается соответствующее сообщение.



4.3.2. Подготовка данных для передачи по электронной почте



 Применяется в случае необходимости передачи данных по электронной почте, либо посредством магнитного носителя. Данная необходимость возникает, при невозможности доступа в главную локальную сеть предприятия с машины, на которой эксплуатируется АРМ Заработная плата (например, из-за удаленности ее в географическом плане). На рисунке 13 приведен видеокадр, иллюстрирующий работу в этом режиме.



Внимание! На этапе подготовки данных никакой проверки корректности обрабатываемой информации не ведется, так как ее полная проверка все равно невозможна из-за отсутствия доступа к главному серверу.



Подготовленные файлы создаются в каталоге, которые задает пользователь в настройках, откуда их можно передать по электронной почте CC-Mail с использованием существующего программного обеспечения, или переписать на магнитный носитель.

Импорт данных переданных через электронную почту или магнитный носитель осуществляется аналогично импорту данных от подразделения имеющего доступ к основной локальной сети объединения.



4.3.3. Проверка правильности удержания подоходного налога



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

Проверка осуществляется на основании таблицы входимости начислений в расчет подоходного налога (пример заполнения см. на рисунке 14), таблицы шкалы налога, таблицы c суммами минимальных окладов, таблицы с коэффициентами льгот данных о начислениях/удержаниях, произведенных по физическим лицам.



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

4.4. Производство отчетов

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

На сегодняшний день система обеспечивает производство отчетов для ГНИ, необходимую отчетность для отдела ОТиЗ. Если говорить о перспективах развития системы, то стоит упомянуть планы обеспечения необходимой отчетностью, также плановый отдел. Ниже приведен список отчетов системы.

Для ГНИ РФ:

		налоговая карточка;

		отчет об итоговых суммах доходов и подоходном налоге;

		реестр сведений о доходах физических лиц;

		список работников с прогрессивным налогообложением;

		справка о доходах физического лица;

		формирование файла о доходах на магнитный носитель.



Для отдела ОТиЗ:

		состав ФЗП согласно классификатора должностей;

		состав ФЗП согласно классификатора кодов по начислению;

		состав ФЗП по участкам;

		состав ФЗП по цехам;

		отчет по составу ФЗП, ФМП, прочих фондов;

		свод по начислениям с отображение балансовых счетов;

		свод по отпускам и отгулам;

		отчет по численности и начисленной заработной плате;

		состав ФЗП согласно классификатора категорий персонала (в динамике) (см. Рисунок 15);

		размер ФЗП и численность работников в динамике (см. Рисунок 16);

		отчет о размере ФЗП по произвольному коду начисления, цеху, участку и периоду (в динамике).



Для того, чтобы сформировать отчет, вам необходимо только заполнить форму, аналогичную приведенной на рисунке 12, т.е. выбрать диапазон табельных номеров и период. В некоторых случаях необходимо выбрать также структурную единицу, по которой будет идти выборка данных (цех, участок, категорию, тип начисления и т.п.)



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

4.5. Сервисные функции

Как и следует из названия, сервисные функции призваны обеспечить решение двух задач:

		выполнение операций по обслуживанию системы (работа с базой, настройка параметров и т.д.);

		обеспечение пользователя необходимым инструментарием для повышения комфортности работы с системой.

Ниже приведен список функций.

Функции доступные только администратору (подробности приведены в руководстве программиста):

		пути доступа; 

		резервное копирование баз данных;

		реиндексация баз данных;

		установка паролей доступа.



Функции доступные пользователю:

		блокнот (встроенный текстовый редактор предназначеный для ведения записей. По своим возможностям несколько уступает редактору WordPad, поставляемому вместе с Windows 95/98. Сохраняет файлы в RTF формате);

		установка текущей организации (выбор текущего структурного подразделения);

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

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

		общие параметры (для настройки общих параметров, таких как, текущий рабочий период);

		о программе (приводит краткую информацию о программе, приведена на рисунке 2);



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



5. Руководство программиста

5.1. Инсталляция системы

Инсталляция и настройка системы проводится специалистами АСУ СургутГазПрома. Программа инсталляции системы представляет собой типичную программу установки приложений для Windows 95, снабжённую большим количеством подсказок, минимизирующую ручной ввод данных пользователя, путём предоставления ему выбора нужных опций установки посредством интуитивно понятных средств диалога.

В процессе установки программа предложит выбрать путь на диске, по которому будут копироваться выполняемые и конфигурационные файлы программного комплекса. По умолчанию он будет установлен в каталог \Program Files\Np_W



После того, как необходимый путь будет указан, произойдёт копирование файлов. Программа создаст Рабочую группу “Налогоплательщик” в кнопке “Пуск”, войдя в которую можно будет обнаружить одноимённый ярлык, ссылающийся на файл запуска в работу системы “Налогоплательщик”. Аналогичный ярлык будет автоматически создан на рабочем столе. Драйверы для работы с БД и все необходимые настройки будут установлены автоматически.

По окончанию копирования файлов программа установки предложит закончить свою работу. После этого можно приступать к работе с комплексом.

5.2. Настройка системы

 Настройка системы заключается в прописке путей доступа к базам данным АРМов заработная плата, установленных в подразделениях, а также в распределении прав доступа к данным (полный, доступно для редактирования, только для чтения, гость –демонстрация, работают только некоторые режимы). Для данной цели используются соответствующие пункты в меню “Сервис”.

		пути доступа; 

		установка паролей доступа.

На рисунке 19 приведен видеокадр работы системы в режиме настройки путей доступа к базам подразделений.



5.3 Служебные функции работы с базой данных

5.3.1. Резервное копирование баз данных



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

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

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

В пользу периодического создания резервной копии и восстановления базы данных из нее говорит также сама структура базы данных в InterBase. База данных в котором состоит из пронумерованных с 0 страниц фиксированного размера. InterBase располагает на одной странице БД версии одной записи таблицы БД. После удаления записей на странице образуются дырки. При добавлении новой записи анализируется размер максимальной дырки, если он меньше длины добавляемой записи, то происходит компрессия страницы, в процессе которой дырки объединяются. Если освободившегося пространства не хватает, то запись записывается с новой страницы. Выделение страниц никак не оптимизировано. При длительной работе с базой это приводит к высокой фрагментации БД и как следствие – к замедлению работы с ней. Поэтому необходимо периодически проводить дефрагментацию базы. 

 InterBase автоматически проводит ее через 20000 (транзакций), но этот способ обрабатывает только те версии записей, для которых нет активных транзакций.

Поэтому более предпочтительным является второй способ, который состоит в сохранении БД на дисковом носителе и последующем ее восстановлении из резервной копии. Данный способ гарантирует полную дефрагментацию, так как при сохранении и восстановлении БД не может быть активных транзакций.



5.3.2. Реиндексация баз данных



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

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

Индексы могут быть разбалансированы после многократного внесения изменений в таблицу БД. Это приводит к тому, что глубина индекса возрастает сверх критического значения, что резко снижает его ценность.

5.4. Краткая информация для программистов о базе данных

Тип базы - INTERBASE

Имя администратора - SYSDBA

Пароль - masterkey

Языковой драйвер - Pdox ANSI Cyrillic

Режим открытия - READ/WRITE



 Структуры таблиц, триггеров, просмотров и индексов БД, приведены в приложении 3 в виде SQL программы. Это сделано для удобства редактирования структур базы.



Приложение 1

1. Общие сведения

Полное наименование разрабатываемого АРМа: “Автоматизированное рабочее место “Налогоплательщик” работника отдела налоговой политики, осуществляющего сбор информации о доходах налогоплательщиков по объединению, контролирующего начисление подоходного налога и производящего отчеты для ГНИ РФ”.

1.1. Разработчик и наименование предприятия заказчика

АРМ разрабатывается студентом пятого курса Омского Государственного Технического Университета по заказу цеха производственно-хозяйственной деятельности Производственно Технического Предприятия “Сургутгазэнергоремналадка” ОАО “Сургутгазпром”.

1.2. Цель создания АРМа

Цель создания системы: обеспечить выполнение требования законодательства в отношении отчетности по подоходному налогу, автоматизировать процесс производства отчетности в ГНИ РФ.

1.3. Назначение АРМа

АРМ “Налогоплательщик” предназначен для выполнения текущих работ работника отдела налоговой политики, таких как:

		сбор со структурных подразделений предприятия информации о заработной плате за период;

		сбор со структурных подразделений предприятия информации об удержанном подоходном налоге плате за период;

		проверка правильности удержания подоходного налога в подразделении; 

		подготовка и заполнение отчетов в ГНИ РФ на бумажных и носителях;

		сдача информации о начисленной заработной плате и удержанном подоходном налоге в налоговую инспекцию на магнитном носителе;

		формирование и выдача индивидуальных справок физическим лицам;

		вывод стандартных отчетов;

		архивирование и восстановление данных.



2. Характеристика объекта автоматизации

Автоматизации подлежат:

		отдел налоговой политики ОАО “Сургутгазпром”;

		отделы бухгалтерий структурных подразделений.

При разработке системы следует также учитывать наиболее характерные особенности объектов автоматизации:

		территориальную разобщенность;

		специфику действия трудового законодательства в северных территориях;

		наличие на объекте автоматизации действующего программного обеспечения.



		3. Требования к АРМу

АРМ “Налогоплательщик” должен быть реализован на программно-технических средствах, совместимых с общей концепцией АСУ предприятия. Обязательным требованием к настоящему АРМу является корректная обработка им данных, содержащихся в базах данных программ, применяемых для расчета заработной платы в структурных подразделениях ОАО “Сургутгазпром”.

3.1. Требования к функциям, выполняемым АРМом

АРМ должен обеспечивать выполнение следующих функций:

		настройка системы на параметры конкретного рабочего места (список пользователей системы, права доступа к информации, используемые технические средства, пути доступа к АРМам расчетчиков заработной платы, способ передачи информации к вышестоящей организации, принятые формы документов и т.д.);

		выполнение стандартных параметрических запросов к базе данных с возможностью отображения найденной информации на экране, формирование печатных форм (справки, отчеты) по стандартным запросам;

		формирование выходных данных для налоговой инспекции, вышестоящей организации;

		занесение информации в базу данных с возможностью ее просмотра на экране;

		резервное копирование базы данных.

3.2. Требования к видам обеспечения

3.2.1. Требования к организационному обеспечению



Структура программно-информационного обеспечения в целом должна определяться взаимоотношениями между структурными подразделениями ОАО “Сургутгазпром”. Организационное обеспечение деятельности коллектива работников бухгалтерии, занимающихся налогами, должно быть реализовано в виде самостоятельных автоматизированных рабочих мест. 

Запуск модулей в АРМе должен осуществляться через меню АРМа, пункты которого соответствуют конкретным функциональным задачам. 

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

		только просмотр информации;

		возможность редактировать базу данных;

		просмотр (редактирование части данных).

		

3.2.2. Требования к программному обеспечению



АРМ “Налогоплательщик” должен быть реализован на программно-технических средствах, совместимых с общей концепцией АСУ предприятия. Обязательным требованием к настоящему АРМу является корректная обработка им данных, содержащихся в базах данных программ, применяемых для расчета заработной платы в структурных подразделениях ОАО “СургутГазПром”.

 Отчеты, формы ввода и процедуры обработки информации должны быть разработаны инструментальными средствами языка программирования Borland Delphi 4.0 с использованием СУБД InterBase v5.0.

Продукт должен быть разработан под операционную систему Microsoft Windows 95 или выше, сетевое программное обеспечение Microsoft.



Приложение 2

 Пример представления информации о доходах на магнитном носителе



 ИдФайл:7707123456**980110150011

 ТипИнф:ДОХОД

 НаимОтпрЮЛ:ОАО Сургутгазпром

 ТелОтпр:235-95-84

 АдрОтпр:,646400,77,Мира УЛ,10,

 ДолжнОтпр:БУХГАЛТЕР

 ФИООтпр:МЕЛЬНИК АЛЕКСАНДР СЕРГЕЕВИЧ

 КолДок:123

 ВерсПрог:

 ИдДок:7707123456**9700000001

 ДатаДок:10.06.1999

 ИННФЛ:770712345678

 ФИО:ПУСЬ,ИРИНА,ВИКТОРОВНА

 УдЛичн:01,Х1-ФР 178469

 ДатаРожд:05.11.1955

 АдрМЖ:,626400,36,,,,ОСТРОВСКОГО УЛ,1,,27

 СтатусФЛ:1

 МестоДох:1

 ПериодДох:111000110001

 ДоходМес:10000.00,10000.00,10000.00,0.00,0.00,0.00,15000.00,

 5000.00,0.00,0.00,0.00,10000.00

 ДоходВид:0200,50000.00,0,0.00;3100,10000.00,02,10000.00

 Вычет:10,600.00;11,100.00;41,400.00

 СкидСумм:10000.00

 ВычСумм:1000.00

 ВалСумм:60000.00

 ОблСумм:49000.00

 ОблСуммНалИс:5880.00

 ОблСуммНалУд:5880.00

 НадСумм:10000.00

 НадОбл:9900.00

 НадОблНалИс:1188.00

 НадОблНалУд:1188.00

 ВыгСумм:500.00

 ВыгОбл:500.00

 ВыгОблНалИс:75.00

 ВыгОблНалУд:75.00

 ВзыскГНИ:100.00



Приложение 3

 SQL программа создающая базу данных системы



create table Org(

 KeyOrg char(3) Not Null,

 NameOrg char(254) Not Null,

Primary Key(KeyOrg));



create table Config (

 CurrYear Integer,

 CurrOrg Char(3),

 ServerWay Char(254),

 Tab_Start Char(5),

 Tab_End Char(5),

 God_Start Char(4),

 Mes_Start Char(2),

 God_End Char(4),

 Curr_User Char(25),

 Mes_End Char(2),

CONSTRAINT PO_KeyOrg7

FOREIGN KEY(CurrOrg) REFERENCES Org(KeyOrg) ON UPDATE CASCADE);



create table Users(

 User_ Char(25),

 Pasword Char (25),

 Type SmallInt)



create table RabPlaces (

 KeyOrg Char(3) not Null,

 NameRabPlace Char(254) Not Null,

 Way Char(254) Not Null,

CONSTRAINT PO_KeyOrg6

FOREIGN KEY(KeyOrg) REFERENCES Org(KeyOrg) ON UPDATE CASCADE);



create table FIO (

 Tab Char(5),

 Fio Char(100),

 Zeh Char(2),

 Ych Char(2),

 Kat Char(2),

 Oklad Float,

 Sist_Opl Char(1),

 Prin Date,

 Yvol Date,

 Skidka SmallInt,

 Sovmest Char(1),

 Inostr SmallInt,

 Prof Char(2),

 Deti SmallInt,

 Ijd SmallInt,

 Dolgn Char(2),

 KeyOrg char(3));





create table Nach(

 Tab Char(5) Not Null,

 KeyOrg char(3) Not Null,

 Kod char(3) Not Null,

 Data_M Char(2),

 Data_G Char(4) Not Null,

 Symma Float,

 Data_Ras_M Char(2),

 Data_Ras_G Char(4) Not Null,

 Data_R Char(4),

 CONSTRAINT PO_KeyOrg8

 FOREIGN KEY(KeyOrg) REFERENCES Org(KeyOrg) ON UPDATE CASCADE);





create table Ud(

 Tab Char(5) Not Null,

 KeyOrg char(3) Not Null,

 Kod char(3) Not Null,

 Data_M Char(2),

 Data_G Char(4) Not Null,

 Symma Float,

 Data_Ras_M Char(2),

 Data_Ras_G Char(4) Not Null,

 Data_R Char(4),

 CONSTRAINT PO_KeyOrg9

 FOREIGN KEY(KeyOrg) REFERENCES Org(KeyOrg) ON UPDATE CASCADE);



create table Data (

 KeyOrg char(3) Not Null,

 Tab Char(5) Not Null,

 Fami Char(25),

 Nami Char(15),

 Otch Char(15),

 Dat_R Date,

 Docum Char(2),

 SerDoc Char(10),

 NomDoc Char(6),

 KVID Char(32),

 Dvid Date,

 Str Char(3),

 PostInd Char(6),

 Obl Char(4),

 Raion Char(15),

 Gorod Char(20),

 Punct Char(25),

 Ulica Char(25),

 Dom Char(13),

 Korp Char(10),

 KV Char(10),

 Tel Char(10),

 Katp Char(4));



CREATE INDEX FAMILY ON DATA(FAMI);



CREATE INDEX tab_sum_n ON nach(tab, symma);



CREATE INDEX tab_sum_u ON ud(tab, symma);



CREATE INDEX zeh ON zeh(zeh);



CREATE INDEX ych ON ych(ych);



create table Zeh (

 Zeh Char(2) not null,

 KeyOrg char(3) Not Null,

 Naim Char(25) not null,

 CONSTRAINT PO_KeyOrg3

 FOREIGN KEY(KeyOrg) REFERENCES Org(KeyOrg) ON UPDATE CASCADE);





create table Ych (

 Ych Char(2) not null,

 KeyOrg char(3) Not Null,

 Zeh Char(2) not null,

 Naim Char(15) not null,

 CONSTRAINT PO_KeyOrg4

 FOREIGN KEY(KeyOrg) REFERENCES Org(KeyOrg) ON UPDATE CASCADE);



create trigger kaskad_ych for zeh

Active

After

Update

As

begin

 if (old.zeh<>new.zeh) then

 Update Ych

 Set Zeh=new.Zeh

 Where Zeh=Old.Zeh;

end



create table Kat (

 Kat Char(2) not null,

 Naim Char(15) not null,

Primary Key (Kat));



create table Sist_Opl (

 Sist_Opl Char(1) not null,

 Naim Char(30) not null,

Primary Key (Sist_Opl));



create table Prof (

 Prof Char(2) not null,

 Naim Char(20) not null,

Primary Key (Prof));



create table Dolgn (

 Dolgn Char(2) not null,

 Naim Char(20) not null,

Primary Key (Dolgn));



create table Strana (

 Str Char(2) not null,

 Strana Char(15) not null,

Primary Key (Str));



create table Oblast (

 Obl Char(2) not null,

 Oblast Char(30) not null,

Primary Key (Obl));



create table Kat_Plat (

 KatP char(2) not null,

 naim Char(35) not null,

Primary Key (KatP));



create table Docum (

 Docum char(2) not null,

 naim Char(75) not null,

Primary Key (Docum));



CREATE TABLE Minim(

 Data date NOT NULL,

 Minim Char(10) not null,

 PRIMARY KEY(Data));



create table MLV (

 Tab Char(5) Not Null,

 KeyOrg char(3) Not Null,

 Date_Nach Char(4),

 For_Nal Float,

 Sum_Nal Float,

 Sum_Pens Float,

 Skidka SmallInt,

 Sum_RK_SN Float,

 Nal_RC_SN Float,

 Sum_Pens_RK_SN Float,

 Lgot Float,

 Lgot_RK_SN Float,

 Mat_Pom Float,

 Pr_Vkl Char(1),

 Deti SmallInt,

 Ijd SmallInt,

 Zen_Pod Float,

 Sum_Vig Float,

 Nal_Vig Float,

CONSTRAINT PO_KeyOrg5

FOREIGN KEY(KeyOrg) REFERENCES Org(KeyOrg) ON UPDATE CASCADE); 



create table SHK_SKID (

 God Char(4) Not Null,

 Summa_End Char(15) Not Null,

 Koef SmallInt Not Null);



create table SHKALA (

 God SmallInt Not Null,

 Dox1 Char(15) Not Null,

 Dox2 Char(15) Not Null,

 Pr SmallInt Not Null,

 Nal Char(15),

 Use_3_Proz Char(1));



create table Type_Nach (

 Kod Char(3) not Null,

 Naim Char(254) Not Null,

 Inp Char(1),

Primary KEY(Kod))



create table Type_Ud (

 Kod Char(3) not Null,

 Naim Char(254) Not Null,

Primary KEY(Kod))



create table imput_podoh(

 kod char(3),

 inp char(1))



declare external function sh_date_to_y cstring(4)

returns cstring(4)

entry_point "sh_date_to_y"

module_name "my_funct"



declare external function sh_date_to_m cstring(4)

returns cstring(2)

entry_point "sh_date_to_m"

module_name "my_funct"



create trigger corr_date for nach

Active

Before

Insert

As

begin

 New.Data_M=sh_date_to_m(New.Data_G);

 New.Data_G=sh_date_to_y(New.Data_G);

 New.Data_Ras_M=sh_date_to_m(New.Data_Ras_G);

 New.Data_Ras_G=sh_date_to_y(New.Data_Ras_G);

end



create trigger int_nach for Nach

Active

Before

Insert

As

begin

 New.Gen=Gen_Id(Numb_Nach,1);

end



CREATE GENERATOR Numb_Nach;



SET GENERATOR Numb_Nach TO 1;



CREATE GENERATOR Numb_Ud;



SET GENERATOR Numb_Ud TO 1;



create view nach_01 (tab_, data_ras_m_, data_ras_g_, sum_)

as

select tab, data_ras_m, data_ras_g, sum(symma)as sum_n

from nach

group by tab, data_ras_m, data_ras_g



create view ud_01 (tab_, data_ras_m_, data_ras_g_, sum_)

as

select tab, data_ras_m, data_ras_g, sum(symma)as sum_u

from ud

group by tab, data_ras_m, data_ras_g



create view fio_01 (tab_, fio_, zeh_, ych_, prin_, yvol_)

as

select tab, fio, zeh, ych, prin, yvol

from fio

group by tab_, fio_, zeh_, ych_, prin_, yvol_



create view fio_02 (ych_, deal_tab_)

as

select ych, count(tab) as deal_tab

from fio

group by ych_



create view zeh_01 (zeh_, naim_)

as

select zeh, naim

from zeh

group by zeh, naim



create view ych_01 (ych_, zeh_, naim_)

as

select ych, zeh, naim

from ych

group by ych, zeh, naim



create view nach_04(data_, sum_, kat_)

as

select data_ras_m, sum(symma), fio.kat

from nach, fio

where nach.tab=fio.tab

group by data_ras_m, fio.kat



create view nach_03(data_, data__)

as

select data_ras_m_, count(data_ras_m_)

from nach_01

group by data_ras_m_



create view nach_05(data_ras_m_, sum_)

as

select data_ras_m, sum(symma/100000)

from nach

group by data_ras_m