Аннотация
Данный дипломный проектсодержит постановку задачи «Разработка программы «Модуль выгрузки данных втекстовом формате комплекса «Налогоплательщик ЮЛ» для государственной налоговойинспекции г.Узловая», алгоритм реализации данной задачи, представленный в видеблок-схемы, описание входной и выходной информации и машинную реализацию даннойзадачи.
Программа разработана для ПЭВМ IBM PC/AT AMD Athlonä –1700 на языке программирования Visual FoxPro7 под управлениемоперационной системы Windows XP Professional SP1
Данная программа используется на любом коммерческом игосударственном предприятии.
Содержание
Введение
1 Организационно-экономическаясущность задачи
2 Информационноеобеспечение решения задачи
2.1 Режимы работы задачи
2.2 Информационная модельрешения задачи
2.3 Описание входнойинформации
2.4 Описание выходнойинформации
3 Алгоритм решения задачи
3.1 Блок-схема алгоритма
3.2 Описание блок-схемы
4 Машинная реализациязадачи
4.1 Характеристикатехнических средств
4.2 Математическоеобеспечение
4.3 Обоснование выбораязыка программирования
4.4 Описание программы
4.5 Инструкцияпользователю по работе с программой
5 Контрольный пример
6 Экономическоеобоснование программы
Список литературы
Приложения
Введение
В настоящее время все большее и большее распространение, какв производстве, так и в документообороте предприятий находит компьютернаятехника, все шире и шире становится перечень охватываемых ею задач. Постояннорастет объем и сложность обрабатываемой информации, требуются все новые и новыевиды ее представления. Как показывает практика, большинство пользователей ужене представляет себе, как бы они выполняли свою работу, с которой прекрасносправлялись еще 5 – 10 лет назад, без помощи компьютера. Вот только некоторыеиз преимуществ использования вычислительной техники при работе, с какими – либоданными, документами:
возможность оперативного контроля за достоверностьюинформации, уменьшается число возможных ошибок, при генерировании производныхданных;
сразу после ввода, данные могут участвовать в различныхоперациях;
возможность быстрого получения необходимых отчетов;
необходимая информация может быть быстро найдена (в томчисле с помощью контекстного поиска), поиск которой в обычной папке сдокументами затруднен;
существенная экономия времени и людских ресурсов привыполнении операций, связанных с обработкой информации;
позволяет быстро и в наиболее подходящем для конкретногочеловека виде просмотреть данные, что повышает их восприятие.
Все, выше изложенные преимущества, на сегодняшний деньоценены не только рядовыми пользователями, но и властными структурами, особенноэто касается возможности контроля и поиска информации. В нашем случае налоговаяполиция заинтересована иметь единую, электронную базу по всем физическим лицам– налогоплательщикам, так как наличие такой базы существенно усложняет процессуклонения от уплаты налогов (сокрытие, занижение доходов, повторноеиспользование одноразовых льгот и т.д.)
Поэтому 15 июня 1998 года была принята очередная редакцияинструкции государственной налоговой службы Российской Федерации №35 от 29 июня1995года. Согласно которой, с 01 марта 1999 года все предприятия с численностьюработающих свыше 100 человек обязаны предоставлять данные о доходах своихработников в налоговую инспекцию на магнитных носителях, причем в строгооговоренном формате.
На практике же налоговая инспекция требует предоставленияданных на магнитных носителях организациями с общей численностью работающихсвыше 20 человек.
В связи с выше изложенным, у крупных предприятий иобъединений появилась острая потребность в соответствующем программномобеспечении.
В данной дипломной работе рассматривается один из режимовработы автоматизированного рабочего места бухгалтера из отдела налоговойполитики предприятия, ведущего отчетность в налоговую инспекцию. Оно отвечает требованиям,предъявляемым ГНИ к отчетности.
1Организационно-экономическая сущность задачи
Взимание налогов – древнейшая функция и одно из основныхусловий существования государства, развития общества на пути к экономическому исоциальному процветанию. Этим и определяется значение рациональноорганизованной и эффективно действующей налоговой службы.
Экономические преобразования в современной России закономернообусловили реформирование системы налогов и создание новой налоговой службы.Реформа 1991 — 1992 г.г. учитывала, что на пути к рыночной экономике налогистановятся наиболее действенным инструментом регулирования новых экономическихотношений. В частности, они призваны ограничивать стихийность рыночныхпроцессов, воздействовать на формирование производственной и социальнойинфраструктуры, укрощать инфляцию.
Определяющее значение для формирования налоговой политики,системы налогов и налоговой службы имеют законы «О государственной налоговойслужбе РФ», «Об основах налоговой системы в РФ», «О налоге на добавленнуюстоимость», «Об акцизах» и некоторые другие. Затем провести анализ организациисистемы налогообложения юридических лиц и необходимость совершенствованиясистемы налогообложения в современных условиях.
С 1999 года все предприятия с численностью работающих свыше100 человек обязаны предоставлять данные о доходах своих работников в налоговуюинспекцию на магнитных носителях, причем в строго оговоренном формате.Рассматриваемый программный комплекс «Налогоплательщик ЮЛ» позволяетсформировать огромное количество отчетов различных форм не только длягосударственной налоговой инспекции, но и для других контролирующих организаций(ПФР, Финансовый отдел Администрации и др.)
Ввиду организационно-технической сложности комплекса,большого объёма исходного кода и огромного количества используемыхнормативно-справочных и бухгалтерских документов, в данном дипломном проектерассматривается режим выгрузки данных в текстовом формате для государственнойналоговой инспекции.
Данный режим используетсяпосле формирования любого документа для его предоставления в ГНИ на магнитномносителе, как правило, один раз в квартал. При выявлении неточностей или ошибокпроцесс выгрузки должен быть повторен с полной соответствующей инициализациейрассматриваемого в данном дипломном проекте режима.
Входными данными для этойзадачи являются базы данных в формате DBF: kp_sd.dbf, kp_spp.dbf, spp.dbf, kp_sgr.dbf, sgr.dbf, xx_pok.dbf, pok.dbf, consts.dbf, k029.dbf, kp_ctrl.dbf, shapka.dbf, sptran.dbf, sputr.dbf, содержащие информацию овводимых документах за различные даты текущего и предыдущих налоговых периодов.
В результате решенияданной задачи производится выгрузка необходимых данных на магнитный носитель всоответствии с требованиями, предъявляемыми ГНИ, на основании информациииспользуемых баз данных, формируемых комплексом «Налогоплательщик ЮЛ».Структура выходного файла показана в Приложении Б.
2Информационное обеспечение решения задачи
2.1 Режимы работы задачи
/>
2.2 Информационная модельрешения задачи/> /> /> /> /> /> /> /> />
рис1. Схема взаимосвязиинформационных модулей
2.3 Описание входной информации
Для выгрузки данных в текстовом формате комплекса«Налогоплательщик ЮЛ» для государственной налоговой инспекции используютсяранее созданные базы данных kp_sd, kp_spp, spp, kp_sgr, sgr, xx_pok, pok, consts, k029, kp_ctrl, shapka, sptran, sputr,информация в которых организована в виде DBF-файла.
База данных kp_sd содержит описание отчетных документов, kp_spp – справочник подформ,spp – архив вышеуказанного справочника.
Справочник граф документов содержится в базе kp_sgr, егоархив хранится в sgr.
Описание строк и архив этого справочника хранятся в xx_pok иpok соответственно.
Справочник пользовательских констант находится в БД consts, справочник единицизмерения – в k029, контрольных соотношений – в kp_ctrl.
Заголовочная и конечная части документа хранятся в файле shapka.
Справочники автотранспортных средств и признаков расчетауточнения реализованы файлами sptran и sputr соответственно.
Используемые файлы хранятся на жестком диске персональногокомпьютера.
Структура и информация используемых баз данных приведена вПриложении А. Описание входной информации дано в таблице 1.Таблица 1 – Описаниевходной информацииИмя БД Имя файла Наименование поля
Идентифи-
катор Тип, максимальная длина поля Примечание симво-льная дата числовая целая дробная KP_SD KP_SD Код формы KODF 2 Наименование NAIM 100 Период отчетности PER 1 Наименование периода отчетности NPER 11 Раздел RAZDEL 3 Признак печати PRIZ 1 Признак расчета налога PRN 1 Код единицы измерения C257 4 Признак наличия графы ГНИ GNI 1 Дата ввода WDATA 8 Признак контроля документа KONTROL 1 Приоритет PRIOR 2 Признак документа PRD 2 Код дохода TAXCODE 7 Ставка STAVKA 9 3 Код ставки KSTAV 1 Параграф PARAG 2 Признак принадлежности документов одному типу PRTIP 2 Признак наличия комплекта документов PRKOMP 2 Цифровая точность ZOK 7 Признак единицы измерения PRIZM 1 КНД KND 7 Продолжение таблицы 1 Имя БД Имя файла Наименование поля
Идентифи-
катор Тип, максимальная длина поля Примечание симво-льная дата числовая целая дробная KP_SPP KP_SPP Код формы KODF 2 Код подформы KODP 2 Наименование подформы NAIM 35 Дата ввода WDATA 8 Признак расчета налога PRN 1 SPP SPP Код формы KODF 2 Код подформы KODP 2 Наименование подформы NAIM 35 Дата ввода WDATA 8 Признак расчета налога PRN 1 KP_SGR KP_SGR Код формы KODF 2 Код подформы KODP 2 Код графы KODGR 2 Расчетная графа RGR 2 Наименование NAIM 50 Наименование подформы NAIMP 35 Дата ввода WDATA 8 Номер графы 5 НGO5H 2 Признак графы PP 1 Количество нерасчетных граф документа CHVGR 2 Количество расчетных граф CHRGR 2 Признак наличия графы ГНИ GNI 1 SGR SGR Код формы KODF 2 Код подформы KODP 2 Код графы KODGR 2 Расчетная графа RGR 2 Наименование NAIM 50 Продолжение таблицы 1 Имя БД Имя файла Наименование поля
Идентифи-
катор Тип, максимальная длина поля Примечание симво-льная дата числовая целая дробная Наименование подформы NAIMP Дата ввода WDATA 8 Номер графы 5 НGO5H 2 Признак графы PP 1 Количество нерасчетных граф документа CHVGR 2 Количество расчетных граф CHRGR 2 Признак наличия графы ГНИ GNI 1 XX_POK XX_POK Условный код YKOD 3 Наименование показателя NAIM 50 Код строки KODS 5 Код подформы KODP 2 Код операции OPER 3 Тип данных строки TD 1 Тип данных по графам TD1 25 Дата ввода WDATA 8 Признак суммы операций PR2 1 Код единицы измерения C257 4 Код строки в отчете 5-Н 05N 5 Код бюджета KBUD 2 Контрольное соотношение 1 GR1 10 Контрольное соотношение 2 GR2 10 POK POK Условный код YKOD 3 Наименование показателя NAIM 50 Код строки KODS 5 Код подформы KODP 2 Продолжение таблицы 1 Имя БД Имя файла Наименование поля
Идентифи-
катор Тип, максимальная длина поля Примечание симво-льная дата числовая целая дробная Код операции 3 Тип данных строки Тип данных по графам TD1 25 Дата ввода WDATA 8 Признак операций PR2 1 Код единицы измерения C257 4 Код строки в отчете 5-Н O5 3 Код бюджета KBUD 2 Контрольное соотношение 1 GR1 10 Контрольное соотношение 2 GR2...GR25 10 Код формы KODF 2 CONSTS CONSTS Код константы CONST 6 Значение константы DATА 150 Комментарий REMARKA 50 Код единицы измерения С257 4 Наименование C258 15 Коэффициент K 10 KP_CTRL KP_CTRL Код формы документа KODF 2 Дата создания документа WDATA 8 Начальная дата действия DAT1 8 Конечная дата действия DAT2 8 Текстовый файл контрольных соотношений FCONT 10 SHAPKA SHAPKA Код формы KODF 2 Заголовочная часть документа ZAGOL 10 Продолжение таблицы 1 Имя БД Имя файла Наименование поля
Идентифи-
катор Тип, максимальная длина поля Примечание симво-льная дата числовая целая дробная Заключительная часть документа ZAKL 10 SPTRAN SPTRAN Код вида транспорта NTRAN 6 Марка транспорта MARKA 15 Наименование вида транспорта NAIM 40 Мощность двигателя в л.с. MOLS 3 Мощность двигателя в квт MOKVTN 5 Отметка MODE 1 Дата выдачи уведомления DUVED 8 SPUTR SPUTR Раздел RAZDEL 3 Код дохода TAXCODE 5 Дата действия NDAT 8 Признак расчета уточнения PRUT 1 Параграф PARAG 2 /> /> /> /> /> /> /> /> /> /> /> /> />
2.4 Описание выходнойинформации
Информация на магнитных носителях создается в виде текстовыхфайлов в текстовом формате DOS (модифицированная альтернативная кодировка ASCII) с именем DААААААА.txt, где D – префикс,соответствующий данным деклараций юридического лица.
ААААААА – набор букв латинского алфавита и цифр длиной от 1до 8 символов для файлов, представляемых организациями (предприятиями,учреждениями). Для файлов, представляемых инспекциями МНС РФ, первые четыресимвола представляют собой код инспекции по классификатору СОГНИ, а последующиетри символа – порядковый номер файла в текущем году. Расширение txt – обязательно.
Файл содержит следующую информацию:
- информацию,идентифицирующую источник сведений;
- информацию,идентифицирующую налогоплательщика;
- информацию,идентифицирующую форму отчетности;
- информациюс данными отчетности.
Структурными элементами файла с информацией являются:
· служебнаячасть;
· сведенияо юридическом лице;
· разделители.
Разделителями являются:
@@@ — разделитель документов;
=== -конец файла.
Служебная часть файла служит для идентификации информации,содержащейся в файле, и состоит из следующих реквизитов: идентификатор файла;тип информации; наименование отправителя; телефон отправителя; должностьотправителя; фамилия, имя, отчество лица, сформировавшего файл; количестводокументов в файле; версия программы, с помощью которой подготовлен файл.
Файл состоит из строк. В качестве признаков окончания строкииспользуются пары символов “возврат каретки” и “ перевод строки ” (ASCII-кодысоответственно 13 и 10, которые формируются при нажатии клавиши [Enter]).
Строка состоит из кода реквизита, символа ":"(двоеточие) и значения реквизита.
Текстовое (символьное) значение может состоять из прописныхбукв, цифр и любых других символов, за исключением символов «возвраткаретки» и «перевод строки» (коды ASCII соответственно 13 и 10,которые формируются при нажатии клавиши “Enter”), ":"(двоеточие) и "," (запятая).
Числовое значение может состоять только из цифр (в том числе ис лидирующими нулями) и может включать десятичную точку и знак "-"(минус) для отрицательных чисел.
Значение типа ДАТА имеет специальный формат для представлениядат в виде ДД.ММ.ГГГГ, где ДД – номер дня, ММ – номер месяца, ГГГГ – цифрыгода.
Каждый реквизит записывается в отдельной строке. Признакокончания строки – пара символов с кодами ASCII соответственно 13 и10. Код реквизита отделяется от значения знаком ":" (двоеточие).Пробелы между ними не допускаются.
Реквизиты, не имеющие значений, могут быть опущены приформировании файла (кроме обязательных реквизитов, которые заполняются нулевымизначениями).
В состав данных включаются общие реквизиты, приведенные внастоящем документе и реквизиты (показатели) конкретных форм, состав которыхразрабатывается и утверждается для сдачи отчетности по каждому отчетномупериоду.
Последовательность строк файла следующая:
Реквизиты, идентифицирующие источник информации;
Начало документа 1;
Реквизиты, идентифицирующие налогоплательщика 1;
Реквизиты, идентифицирующие форму отчетности 1 за конкретныйпериод;
Реквизиты формы отчетности 1;
Реквизиты, идентифицирующие форму отчетности 2 за конкретныйпериод;
Реквизиты формы отчетности 2;
Конец документа 1;
Начало документа 2…
Реквизиты, идентифицирующие налогоплательщика 2;
…
Конец документа 2;
Конец файла.
Все данные о налоговых декларациях налогоплательщикапомещаются после идентифицирующих его реквизитов, а все данные конкретной формыотчетности располагаются после реквизитов, идентифицирующих форму. Порядокследования форм в пределах данных по одному налогоплательщику, а также порядокследования реквизитов в пределах одной формы отчетности не существенен. Дляконкретных форм должна соблюдаться уникальность идентификаторов в пределаходной формы.
Описание выходного документа (текстового файла) дано втаблице 2.
Информация выходного файла дана в приложении Б.
Таблица 2 – Описание выходной информацииНазвание документа Назначение документа Ключевые признаки Периодичность составления Количество Куда передается экз. строк на листе символов в строке file.txt Предоставление в ГНИ информации на магнитном носителе Имя файла, определяемое по указанным выше правилам 1 раз в квартал 1 перем. перем. в ГНИ
3Алгоритм решения задачи
3.1 Блок-схема алгоритма
/> /> /> /> /> /> /> /> /> />
/>
/>
/>
3.2 Описание блок – схемы
Лист 1.
Блок А1 – начало модуля Exp2f, реализующего выгрузку документов;
Блок B1 – вывод сообщения ‘Идёт подготовка данных’;
Блок С1 – проверка условия;
Блок D1 – присвоение значения переменной YearC;
Блок Е1 – присвоение значения переменной YearC;
БлокF1 – присвоение значенияпеременной FltDocC;
Блок G1 – фильтрация по маске FltDocC базы данных KP_SD;
Блок А2 – проверка условия достижения конца файла;
Блок В2 – проверка условия kp_sd.per=‘1’;
Блок С2 – проверка условия kp_sd.per=‘2’;
Блок D2 – проверка условия kp_sd.per=‘3’;
Блок Е2 – проверка условия kp_sd.per=‘4’;
Блок F2 – присвоение значения переменным;
Блок G2 – вызов процедуры getmper с передачей параметров;
Блок А3 – очистка формы (экрана)
Блок В3 – присвоение значения переменным;
Блок С3 – присвоение значения переменным;
БлокD3 – присвоение значенияпеременным;
Блок Е3 – присвоение значения переменным;
Блок F3 – проверка условия;
Блок G3 – вызов процедуры getmper с передачей параметров.
Лист 2.
БлокА1 – проверка условия period=‘2’;
Блок В1 – проверка условия period=‘3’;
Блок С1 – проверка условия period=‘4’;
Блок D1 – присвоение переменной PeriodTxtC значения;
Блок Е1 – присвоение переменной flycod значения;
Блок F1 – проверка условия;
Блок G1 – открытие БД с оконечным префиксом &&pok и фильтрация данныхоткрываемой базы данных;
Блок А2 – присвоение переменным значений;
Блок В2 – присвоение переменным значений;
Блок С2 – присвоение переменным значений;
Блок D2 – проверка условия достижения конца файла;
Блок Е2 – присвоение переменной flycod значения;
Блок F2 – открытие БД с оконечным префиксом &&pok и фильтрация данныхоткрываемой базы данных;
Блок G2 – переход на первую запись базы данных;
Блок А3 – открытие временной БД с переменным именем;
БлокВ3 – обработка select-запроса к базе данных;
БлокС3 – проверка условия достижения конца файла;
Блок D3 – проверка условия существования UseKnd;
Блок Е3 – присвоение переменной значения;
Блок F3 – присвоение значений переменным;
Блок G3 – добавление записей в базу данных средствами APPEND BLANK и ее модификацияпосредством REPLACE (множественное изменение полей);
Лист 3
БлокА1 – переход на следующую запись базы данных и
завершениецикла обработки по активной базе;
БлокВ1 – очистка формы (экрана);
БлокС1 – модификация БД с оконечным префиксом &&pok;
БлокD1 – фильтрация с возвратом на первую запись БД;
БлокЕ1 – проверка условия достижения конца файла;
БлокF1 – фильтрация с возвратом на первую запись БД;
БлокG1 – проверка условия достижения конца файла;
БлокА2 – присвоение значений переменным;
БлокВ2 – проверка условия;
БлокС2 – присвоение значений переменным;
БлокD2 – проверка условия zpN=0;
БлокЕ2 – присвоение значения переменной;
БлокF2 – присвоение значенийпеременным;
БлокG2 – присвоение значенийпеременным
Блок А3 – добавление записей в базу данных средствами APPEND BLANK и ее модификацияпосредством REPLACE (множественное изменение полей);
БлокВ3 – присвоение значения переменной;
БлокС3 – проверка условия;
БлокD3 – присвоение значения переменной;
БлокЕ3 – присвоение значения переменной;
БлокF3 – проверка наличия диска в дисководе;
БлокG3 – выдача предупреждающего сообщения ‘Вставьте диск в дисковод’.
Лист 4
БлокА1 – проверка существования aDrv (устройства вывода);
БлокВ1 – выдача сообщения ‘Неправильный путь к файлу’;
БлокС1 – выдача сообщения ‘Идет подготовка файла’;
БлокD1 – определение окна wtxt;
БлокЕ1 – активация окна wtxt;
БлокF1 – SET-установки и переназначение устройства ввода вывода (экран –>файл);
БлокG1 – вывод информации в файл (печатью по ?);
БлокА2 – вызов процедуры AddDoc, реализующей добавление реквизитов документа ввыгружаемый файл;
БлокВ2 – уничтожение окна wtxt;
БлокС2 – переназначениеустройства ввода вывода (файл –> экран);
БлокD2 – проверка состояния переменной-флага isOkAll (возвращаемой изпроцедуры AddDoc);
БлокЕ2 – вывод сообщения ‘Нет передаваемых показателей’;
БлокF2 – вывод сообщения ‘Выполняется копирование’;
БлокG2 – вызов процедуры WinToDoc, осуществляющейконвертацию текстовых показателей;
БлокА3 – вывод сообщения ‘Выгрузка завершена’;
БлокВ3 – выход из модуля Exp2f;
БлокС3 – начало процедуры AddDoc;
БлокD3 – проверка достижения конца файла;
БлокЕ3 – вывод сообщения ‘Идет подготовка данных’;
БлокF3 – установка флажка isOkAll (по условию наличия записей);
БлокG3 – выход из процедуры AddDoc.
4Машинная реализация задачи
4.1 Характеристика технических средств
Данный проект реализован с помощью ПЭВМ IBM PC/AT-совместимогокомпьютера. Данная ПЭВМ создана на основе процессора AMD AthlonXP-1700 и состоит изследующих компонентов:
- процессор;
- оперативноезапоминающее устройство (ОЗУ);
- постоянноезапоминающее устройство (ПЗУ);
- накопительна жёстком магнитном диске (НЖМД, «винчестер»);
- накопительна гибких магнитных дисках (НГМД);
- устройстваввода информации (клавиатура, «мышь»);
- устройствавывода информации (дисплей).
Процессор является основным устройствомЭВМ и предназначен для непосредственной обработки информации, которая поступаетот различных внешних и внутренних устройств ПЭВМ.
Процессор AthlonXP разработки компании AMD имеет следующиетехнические характеристики:
- разрядность по ширинеданных 64 бит
- тактоваячастота 1460 MGz
- максимальный объемОЗУ 128 Mb
- кэш-память 2х64 Kb
- быстродействие 1700 MGz (~1460)
ОЗУ предназначено для временного хранения информации и имеетобъём 256 Mb.
ПЗУ предназначено для хранения неизменяемой информации, тоесть программ типа BIOS (basic input-output system – базовая системаввода-вывода), которые позволяют связать компоненты компьютера в единое целое.
Процессор, модули ОЗУ и ПЗУ находятся на материнской платекомпьютера. Данная материнская плата создана на основе чипсета VIA.
Накопитель на жестком диске (винчестер, HDD) предназначен дляпостоянного хранения информации, используемой при работе с компьютером:программ операционной системы, часто используемые пакеты прикладных программ,редакторов документов, трансляторов с языков программирования и т.д. Наличиевинчестера значительно повышает удобство работы с компьютером.
Для пользователя накопители на жестком диске отличаютсядруг от друга, прежде всего своей емкостью. На данной модели жесткий дискимеет емкость 40,1 Гбайт. Вторая существенная для пользователяхарактеристика диска – время доступа к информации. Для областей применения,требующих эффективного обмена с дисками, этот показатель являетсяисключительно важным. Данная ПЭВМ оснащена жестким диском производства Maxtor со скоростью вращенияшпинделя 7200 об/мин., что обеспечивает скорость доступа порядка 10 наносекунддля внутреннего интерфейса винчестера (от головок чтения/записи до вывода нашину данных) и 18 наносекунд для внешнего (при передаче до процессора и вобратном направлении).
Накопитель на гибких магнитных дисках (НГМД) являетсяодним из старейших устройств, входящих в базовую конфигурацию и предназначендля хранения информации небольших объёмов, её переноса между компьютерами,архивации и других целей. На данной машине имеется один НГМД 3,5” ёмкостью1,44 Mb.
Клавиатура предназначена для вводапользователем различной информации и управления ПЭВМ. Данный ПК оборудован104-клавишной клавиатурой.
Манипулятор “мышь” позволяет указывать или выбирать объекты,отображаемые на экране. Компьютер, на котором разрабатывался данный дипломныйпроект, оснащен двухкнопочной мышью с оптико-механическим принципом работыпроизводства фирмы Logitech.
Монитор (дисплей) компьютера IBM PC предназначен для выводана экран текстовой и графической информации. Мониторы бывают цветными имонохромными. Они могут работать в одном из двух режимов: текстовом илиграфическом.
Мониторы Super VGA давно и заслуженно получили очень широкоераспространение, они фактически стали стандартом для тех применений, в которыхтребуются графические средства приемлемого качества. Данная ПЭВМ оснащенамонитором Samsung 765MB, который имеет следующие характеристики:
— тип SamsungSM765MB
— количество цветов 16,5 млн.
— разрешающая способность:
в текстовом режиме 600х800
в графическом режиме 1024х724(рекомендуемая)
1600х1200 (максимальная)
— размер экрана по диагонали 17 ''
— частота обновления экрана 85 Гц (в режиме 1024х724)
ПЭВМ AMD Athlon XP–1700 является современным вычислительнымсредством, обладает высоким быстродействием, значительным объемом памяти иудобным интерфейсом.
4.2 Математическоеобеспечение
Программа, описанная в данном дипломном проекте, быларазработана на ПЭВМ Athlon XP–1700 под управлением операционной системы WindowsXP фирмы Microsoft в визуальной средебыстрой разработки приложений VisualFoxPro.
Программное обеспечение представляет собой неотъемлемуючасть любой ЭВМ. С конца семидесятых годов для персональных компьютеров былразработан огромный фонд программного обеспечения, который открыл путь к ихмассовому применению практически во всех сферах – от игр и до решения сложныхнаучно-технических задач.
Математическое обеспечение – это программное обеспечение машин, предназначенное для повышения эффективности их использования, дляснижения ёмкости работ, связанных с эксплуатацией и облегчением труда приподготовке данных и обработки их на ЭВМ. Математическое обеспечение делится наприкладное и системное.
Системное – это интегрированные системы отладки программ иоперационные системы. Операционные системы (ОС) – программы, которые делаютвозможным диалог человек – компьютер. На данном компьютере установлена ОСWindowsXP, которая сочетает в себе надёжность и поддержку большогоколичества разнообразных устройств.
Многозадачный (многопрограммный) режим позволяетразнообразным приложениям работать взаимосвязано, наличие единого буфераобмена даёт возможность переносить данные между приложениями как MS-DOS, так иWindows.
Интегрированные системы отладки программ – программы,помогающие программисту создавать, отлаживать и компилировать новые программы. Накомпьютере установлена интегрированная система визуальной разработки приложенийMicrosoft Visual FoxPro.
Visual FoxPro позволяет создавать полноценные Windows-приложения, используямаксимум её ресурсов.
Широкие возможности VisualFoxPro по отладке и тестированию программ делаетеё незаменимой в работе над созданием приложений.
Данный дипломный проект набран и сверстан с помощьюпрограммы Word 9.0, входящей в пакет Microsoft Office 2000.
Microsoft Office – это пакет программ, разработанных фирмойMicrosoft, который содержит текстовый процессор Microsoft Word, табличныйпроцессор Microsoft Excel и другие программы. Microsoft Office – это, наверное,самый продаваемый компьютерный продукт после Windows. Microsoft Office обладаетудобным интерфейсом, понятным, наверное, каждому. При этом с его помощью можновыполнять как легкие задачи, так и очень сложные. В Microsoft Office существуюттакие необходимые функции, как взаимодействие приложений (вставка объектаодного приложения в другое), настройка приложений, поиск любых документов ифайлов, созданных как в Microsoft Office, так и в других программах.
Microsoft Word делает написание, редактирование и печатьдокументов, содержащих текст, настоящим удовольствием. С помощью Microsoft Wordможно подготовить на профессиональном уровне письма, отчеты, таблицы, записки,рекламные листки, а также многое другое. Word можно использовать практическидля всего, что содержит текст.
В дополнение к обработке собственно текста, Microsoft Wordвключает простые способы индивидуальной настройки символов, форматированияабзацев и встраивания в документ элементов графики. Для получения документа напрофессиональном уровне можно проверить правописание, добавить графическиеобразы, линии, границы, выделить текст тенью. Word позволяет объединить в одномдокументе текст, рисунки, графики, электронные таблицы и диаграммы, а затемпросмотреть на экране все страницы в том виде, как они будут выглядеть набумаге.
4.3 Обоснование выбора языка программирования
Опыт применения ЭВМ для построенияприкладных систем обработки данных показывает, что самым эффективныминструментом в этом случае являются не языки программирования высокого уровня, аспециализированные языки для создания систем управления данными. Такие средстваобычно включаются в состав систем управления базами данных (СУБД), но они могутсуществовать и отдельно. СУБД дают возможность осуществлять непосредственноеуправление данными, а программистам быстро разрабатывать более совершенныепрограммные средства их обработки.
Хотя известны попытки создания системуправления базами данных, поддерживающих сетевую модель для персональныхкомпьютеров, в настоящее время реляционные системы лучше соответствуют ихтехническим возможностям и вполне удовлетворяют большинство пользователей.Скоростные характеристики этих СУБД поддерживаются специальными средствамиускоренного доступа к информации индексированием баз данных.
Собственно СУБД — это оболочкапользователя. Ввиду того, что такая среда ориентирована на немедленноеудовлетворение его запросов, это всегда система-интерпретатор. Наличие в СУБДязыка программирования позволяет создавать сложные системы обработки данных,ориентированные под конкретные задачи и даже под конкретного пользователя. Естьтакже СУБД, которые имеют только язык и не имеют оболочки пользователя, иявляются системами компилирующего типа, или просто компиляторами.
Важнейшей характеристикой любой СУБДявляется используемый в ней тип транслятора (интерпретатор или компилятор).Программы, написанные для системы-интерпретатора, исполняются лишь вприсутствии самой системы. В настоящее время скорость работы таких программуступает скорости работы программ, сгенерированных компилятором. Бесспорнымпреимуществом интерпретаторов для программиста является удобство в разработке иотладке программных продуктов, а также в освоении языка.
Группа реляционных СУБД представлена нарынке программных продуктов очень широко. Однако СУБД Visual FoxPro (фирмы Microsoft) обладает достаточновысокими скоростными характеристиками и в этом отношении выделяется средидругих интерпретирующих систем. Набор команд и функций, предлагаемыхразработчикам программных продуктов в среде FoxPro, по мощи и гибкостиотвечает современным требованиям к представлению и обработке данных. Здесьможет быть реализован удобный и гибкий пользовательский интерфейс. В FoxPro поддерживаютсяразнообразные всплывающие и многоуровневые меню, работа с окнами и мышью,реализованы функции низкоуровневого доступа к файлам, управление цветами,настройка принтера, данные могут быть представлены в виде, похожем наэлектронные таблицы, и т.п. Система также средствами быстрой генерации экрана,отчетов и меню, поддерживает язык SQL, хорошо работает в сети. В пакете имеетсякомпилятор, позволяющий придать завершенной программе вид готового коммерческогопродукта в форме независимого ЕХЕ — файла.
Для функционирования СУБД Visual FoxPro необходимо наличие намашине Windows 95 и выше, на жестком диске свободного пространства около 100 MB и минимального объемапамяти персонального компьютера 8 MB.
Уместно кратко перечислить возможностиязыка, важные для программиста:
1) поддержкаи активное использование мыши.
2) язык Visual FoxPro позволяет создаватьхорошо структурированные программы. Практически из всех опций команд могут бытьвызваны пользовательские процедуры или функции, что придает ему исключительнуюгибкость. Допускаются как внешние, так и внутренние процедуры;
3) средстваудобного доступа и обработки мемо-полей: теперь они могут использоватьсянаравне с символьными полями;
4) новыетипы индексных файлов, а также возможность применения индексов не только дляпоиска отдельной записи, но и быстрой локализации группы записей с общимпризнаком (технология Rushmore);
5) установкареляционных связей между данными вида одна запись — ко многим;
6) возможностьпостроения многоуровневых световых меню, в качестве элементов которых могутфигурировать как произвольные строки, так и элементы массивов и компоненты файлов.Допускается множественный отбор данных; меню получили статус объектов в памятикомпьютера;
7) СУБДпредоставляет программисту средства конфигурации и системного меню самого Visual FoxPro, что дает возможностьлегко настраивать его для работы в оболочке Visual FoxPro (например, при отладке)и даже интегрировать в прикладную программу;
8) широкоеиспользование концепции окон, допускающее многооконный интерфейс, изменениепользователем размера, вида и положения окон, управление цветом;
9) Visual FoxPro располагает средствами языка SQL, дающими программистуисключительные возможности по формированию сложных запросов к базе,обрабатываемых с использованием одного из самых интеллектуальных оптимизаторовзапросов;
10) специализированныекоманды обработки массивов;
11) удобныйи мощный отладчик;
12) язык FoxPro включает средствасоздания интерфейса, подобного интерфейсу Windows, т.е. так называемогоинтерфейса, управляемого событиями.
Придание меню статуса объектов и введениеWindows-подобных средств управления коренным образом меняет концепциюпрограммирования систем обработки данных, хотя остается возможность работы и втрадиционном стиле. Кроме того, FoxPro имеет в своем составе такие важныевспомогательные средства, как генераторы экранов, отчетов, меню; менеджерпроектов и компилятор; драйверы принтера. Стоит сказать, что FoxPro дает разработчику возможностьсамому написать драйвер принтера.
Visual FoxPro обладает эффективнымязыком программирования прикладных информационных систем и пользуется большимуспехом, особенно среди отечественных разработчиков программного обеспечения.
На вопрос — почему в качестве основногоинструмента для написания программы был выбран язык Visual Fox Pro фирмы Microsoft, можно привестинесколько плюсов в пользу именно его по сравнению с другими.
Во-первых, он создан в качествепродолжения линии Fox Pro, известной уже давно и снискавшей славудоступного и обладающего широким спектром возможностей языка.
Во-вторых, изготовлен Visual Fox Pro именно той фирмой,которая произвела на свет действительно ставшую общемировым стандартом (хотя иде-факто) операционную систему Windows – что обещает легкую интеграцию приложений подданной операционной системой.
В-третьих, новый язык не зря носитприставку Visual – работа с ним идет гораздо проще, нежели с более старымиверсиями того же продукта. Появились богатейшие возможности по быстромуоформлению любой программы. Внешний вид – отнюдь не второстепенный фактор (а сточки зрения конечного пользователя — вообще стоит на первом месте).
В-четвертых, в Visual Fox Pro уже внедрены компонентыпо созданию глобальных структур типа клиент-сервер. Хотя и не лишенные присущимфирме-изготовителю ошибок, они позволяют достаточно прочно объединитьтехнологию Inter Base и пользовательские рабочие станции.
Учитывая возможности описанного языкапрограммирования СУБД VisualFoxPro и информационный характер задачи дипломногопроекта, необходимость обработки нескольких связанных таблиц, в качестве языка программированиядля «Разработки модуля выгрузки данных в текстовом формате комплекса«Налогоплательщик ЮЛ» для государственной налоговой инспекции» был выбран языкпрограммирования FoxPro.
4.4 Описание программы
Наименование программы: «Разработка модуля выгрузки данных в текстовом формате комплекса «Налогоплательщик ЮЛ» для ГНИ» Идентификатор: Exp2f.prg Язык программирования: Microsoft VisualFoxPro 7.0 Назначение программы: Предоставление информации в ГНИ на магнитном носителе (результатов работы комплекса «Налогоплательщик ЮЛ») Оборудование: Компьютер IBM PC/AT AMD Athlonä XP-1700 ОЗУ 256Мбайт, жесткий диск 40 Гб (Maxtor), монитор 17'' Samsung 765MB, клавиатура, мышь, принтер HP LaserJet1100 Входные данные: Базы данных: kp_sd.dbf, kp_spp.dbf, spp.dbf, kp_sgr.dbf, sgr.dbf, xx_pok.dbf, pok.dbf, consts.dbf, k029.dbf, kp_ctrl.dbf, shapka.dbf, sptran.dbf, sputr.dbf Выходные данные: Текстовый файл специального формата Краткий алгоритм: На основании баз данных, содержащих сведения о введенных документах, модуль формирует текстовый файл специального формата, пригодный для передачи в ГНИ, а также выгружает его на магнитный носитель
4.5 Инструкцияпользователю по работе с программой
Доступ к режиму выгрузки документов намагнитный носитель осуществляется выбором пункта «Выгрузка» в главной формеприложения.
Данный режим предназначен для копированиявведенных документов на магнитный носитель.
Для выгрузки данных на магнитный носительпредназначены следующие пункты меню:
“Копирование на магнитный носитель” -выгрузка данныхналоговой и бухгалтерской отчетности по внутреннему формату RNAL_N?
“Копирование на магнитный носитель поформату 1.00” -выгрузкаданных налоговой и бухгалтерской отчетности по унифицированному формату версии1.00,
“Копирование на магнитный носитель поформату 2.00/2.01/3.00” — выгрузка данных налоговой и бухгалтерской отчетности поунифицированным форматам версий 2.00, 2.01, 3.00.
“Декларации об объемах производства иоборота алк.прод.” -выгрузка документов “Сводная декларация об объемах производстваи оборота этилового спирта, алкогольной и спиртосодержащей продукции” и “Отчетоб использовании специальных марок организацией — производителем алкогольнойпродукции и о начислении и уплате акцизов на алкогольную продукцию”,
“Выгрузка в XML” — выгрузка данныхналоговой и бухгалтерской отчетности в формате XML.
/>
Назначение функциональных кнопок:
— выбрать документ длякопирования,
— выбрать все документыза установленный отчетный период,
— исключить документ изчисла копируемых,
— подготовить файл сотчетными документами для копирования на магнитный носитель,
— помощь по выборудокументов,
— выход из режима.
В списке введенных документовотображаются: код документа, номер уточненного расчета, наименование документа.
В списке копируемых документовотображаются: код документа, номер уточненного расчета, отчетный периоддокумента, наименование документа.
Отчетный период записан в виде:
ГГГГ, ПНН
где ГГГГ – отчетный год,
П–период представления документа(К-квартал, Г -год)
НН – номер периода.
Например 2004, К2 (второй квартал 2004года).
Для выбора документа необходимо установитьуказатель списка введенных документов на нужный документ и нажать кнопку ,при этом документ появится в списке копируемых документов.
Для выбора всех документов нажмите кнопку .
Для исключения документа из числакопируемых необходимо установить указатель списка копируемых документов нанужный документ и нажать кнопку .
Есть возможность передавать в одном файледокументы за разные отчетные периоды, для этого необходимо выбрать нужныйотчетный период в этом же диалоговом окне.
При нажатии на кнопку появляется окно “Служебная часть”.
В данном режиме необходимо указатьинформацию, которая будет включена в выгружаемый файл.
/>
Назначение функциональных кнопок:
— копировать файл намагнитный носитель,
— помощь по вводуслужебной части,
— отмена копирования.
5Контрольный пример
В качестве входной информации при выполнении программы Exp2f.prg используются базыданных, описание которых дано в пункте 3.3 в таблице 2.
Входная информация дана в приложении А.
На основании разработанного алгоритма, представленного в видеблок-схемы в пункте 4.1. и описания в пункте 4.2. разработан модуль выгрузкиданных в текстовом формате комплекса «Налогоплательщик ЮЛ» для государственнойналоговой инспекции, листинг которого показан в приложении В.
В результате работы программы формируется выходнаяинформация, описание которой дано в пункте 3.4. в таблице 2, структура иинформация выходного текстового файла дана в приложении Б.
Полученные выходные данные доказывают работоспособностьпрограммы и являются контрольным примером.
6Экономическоеобоснование программы
Применение персональных компьютеров на различных предприятияхи учреждениях позволяет совершенно по-новому организовать процесс решениямножества экономических задач, в том числе и задачу выгрузки данных в текстовомформате комплекса «Налогоплательщик ЮЛ» для государственной налоговойинспекции. Это приводит к уменьшению административно-управленческих расходов,повышению производительности труда, сокращению сроков выдачи документов, что всвою очередь влияет на эффективность работы предприятия по расчетам с органаминалоговой инспекции. На решение этой задачи без применения средстввычислительной техники расчетный отдел и отдел бухгалтерского учета затрачиваютмассу дефицитного времени, а компьютер призван обеспечить разгрузку этихподразделений от рутинной работы.
Входной информацией для этой задачи являются базы данных,хранящие информацию о введенных документах, получаемых в процессе работы любогопредприятия или организации.
Выходная информация представляет собой текстовый файлспециального формата, который подлежит передаче в государственную налоговуюинспекцию.
Экономическая эффективность – это оценка результатов,выполнение различных действий, направленных на изменение способа, скорости и качестваобслуживания клиентов.
Экономический эффект – это прежде всего экономия денежныхсредств предприятия, которая может быть достигнута за счет:
высвобождения штатных сотрудников для выполнения другихзаданий;
снижения затрат на транспортировку информации междуподразделением и аппаратом;
снижение риска пень и штрафных санкций со стороны налоговойинспекции, имеющих место быть в результате несвоевременных выплат ипредоставления отчётности.
Наиболее распространенным методомопределения экономической эффективности является метод сравнения. Его сущностьзаключается в сопоставлении трудоемкости и себестоимости выполненных работ саналогичными показателями предыдущих периодов, то есть экономическуюэффективность определяют по совокупности высвобож-денного времени, работников,совершенствованию способов обработки информации путём применения болеесовременных методов обработки.
Выделяются два вида показателей эффективности: прямая(непосредственно снижает трудовые и стоимостные затраты) и косвенная (косвенноулучшает учет за счет усовершенствований в работе сотрудников бухгалтерии).
Основным показателем прямой эффективности является снижениестоимостных и трудовых затрат на расчётные работы. В основе выявления прямойэффективности лежит принцип сопоставления затрат при различных способахрешения.
Показателями прямой экономической эффективности являются:
абсолютное снижение трудовых и стоимостных затрат,показывающих, на сколько времени и на какую сумму снизились затраты;
относительное снижение трудовых и стоимостных затрат, показывающее,какая часть затрат при предполагаемом варианте экономится;
индекс роста производительности труда, показывает, во сколькораз произошло изменение.
Косвенная эффективность имеет скрытую форму и проявляется вулучшении качества управления объектом, может быть определена экспертным путем.
Косвенная эффективность позволяет оценить влияние задачи наразличные стороны деятельности через качественные факторы.
Из-за отсутствия единой методики расчета прямой эффективностипрограммных продуктов, внедряемых на персональном компьютере, в данном дипломномпроекте рассматривается косвенная эффективность.
Косвенная эффективность автоматизации задачи «Выгрузка данныхв текстовом формате комплекса «Налогоплательщик ЮЛ» для государственнойналоговой инспекции» заключается в следующем:
внедрение безбумажной технологии обработки информации сильносокращает расходы на покупку бумаги и других расходных материалов;
использование разработанной программы позволяет упорядочитьбольшие объёмы информации для удобного использования;
возможность оперативного контроля за достоверностьюинформации, уменьшается число возможных ошибок, при генерировании производныхданных;
сразу после ввода, данные могут участвовать в различныхоперациях;
возможность быстрого получения необходимых отчетов;
необходимая информация может быть быстро найдена (в томчисле с помощью контекстного поиска), поиск которой в обычной папке сдокументами затруднен;
существенная экономия времени и людских ресурсов привыполнении операций, связанных с обработкой информации;
позволяет быстро и в наиболее подходящем для конкретногочеловека виде просмотреть данные, что повышает их восприятие.
Все изложенные выше преимущества автоматизации задачивыгрузки данных в текстовом формате на сегодняшний день оценены не толькорядовыми пользователями, но и властными структурами, особенно это касаетсявозможности контроля и поиска информации. ГНИ заинтересована иметь единую,электронную базу по всем лицам – налогоплательщикам, так как наличие такой базысущественно усложняет процесс уклонения от уплаты налогов (сокрытие, занижениедоходов, повторное использование одноразовых льгот и т.д.)
Поэтому 15 июня 1998 года была принята очередная редакцияинструкции государственной налоговой службы Российской Федерации №35 от 29 июня1995года. Согласно которой, с 01 марта 1999 года все предприятия с численностьюработающих свыше 100 человек обязаны предоставлять данные о доходах своихработников в налоговую инспекцию на магнитных носителях, причем в строгооговоренном формате.
Перечисленные факторы эффективности автоматизации задачи«Выгрузка данных в текстовом формате комплекса «Налогоплательщик ЮЛ» длягосударственной налоговой инспекции» приводят к уменьшению расходов наобработку экономической информации, повышению производительности труда, что всвою очередь влияет на эффективность работы и является основанием для анализадеятельности.
Косвенный эффект позволяет оценить влияниезадачи на различные стороны деятельности данного объекта. Проявляется он черезкачественные факторы.
Режимы работы выбираются с таким расчетом,чтобы в своей совокупности они обеспечивали максимальную эффективность задачи.
При этом ускоряется не только процесспоиска и обработки данных, но что немаловажно, повышается контроль за качествомвыполненной работы.
Внедрение новых информационных технологий существенно влияетна характер и способы обслуживания. Таким образом, при наименьших затратахтруда и времени, осуществляется оперативный и безошибочный учет и поискинформации. Из этого следует целесообразность внедрения данной задачи на ПЭВМ.
Списоклитературы
1. Автоматизированноерабочее место в системе управления предприятием. Сборник научных трудов, — Ленинград, 1989.
2. В.В.Шураков.Автоматизированное рабочее место для статической обработки данных, 1990.
3. И.Л.Кантарь.Автоматизированные рабочие места управленческого аппарата, 1990.
4. ДанилевскийЮ.Г., Петухов ИА., Шибанов B.C. Информационная технология в промышленности. Л.: Машиностроение,1988, 284с.
5. П.И.Камышанов. Практическое пособие по бухгалтерскому учету:- Издание третье,дополненное и переработанное — Москва: ООО «МЕДпресс»; — Элиста: АПП «Джангар»,1998. – 528 с.
6. А.А.Попов Программирование в среде СУБД FoxPro 2.0. Построение систем обработки данных. — М.:Издательство Март, 1996--352с.: илл.
7. ГлушаковС.В., Ломотько Д.В.; Базы данных. — Харьков: Издательство «Фолио», 2001
8. НортонП.; Персональный компьютер. Аппаратно-программная реализация. Книга 1. — М:Издательство «АСТ», 1999
ПриложениеА
(рекомендуемое)
Входнаяинформация
Structure for database: C:\OF\KP_SPP.DBF
Number of data records: 49
Date of last update : 04/14/04
Code Page : 866
Field Field Name Type Width Dec Index Collate
1 KODF Character 2
2 KODP Numeric 2
3 NAIM Character 35
4 WDATA Date 8
5 PRN Numeric 1
** Total ** 49
Structure for database: C:\OF\SPP.DBF
Number of data records: 69
Date of last update : 04/14/04
Code Page : 866
Field Field Name Type Width Dec Index Collate
1 KODF Character 2
2 KODP Numeric 2
3 NAIM Character 35
4 WDATA Date 8
5 PRN Numeric 1
** Total ** 49
Structure for database: C:\OF\KP_SGR.DBF
Number of data records: 347
Date of last update : 04/14/04
Code Page : 866
Field Field Name Type Width Dec Index Collate
1 KODF Character 2
2 KODP Numeric 2
3 KODGR Numeric 2
4 RGR Numeric 2
5 NAIM Character 50
6 NAIMP Character 35
7 WDATA Date 8
8 GO5N Numeric 2
9 PP Character 1
10 CHVGR Numeric 2
11 CHRGR Numeric 2
12 GNI Numeric 1
13 GNI_IS Numeric 1
** Total ** 111
Structure for database: C:\OF\SGR.DBF
Number of data records: 448
Date of last update : 04/14/04
Code Page : 866
Field Field Name Type Width Dec Index Collate
1 KODF Character 2
2 KODP Numeric 2
3 KODGR Numeric 2
4 RGR Numeric 2
5 NAIM Character 50
6 NAIMP Character 35
7 WDATA Date 8
8 GO5N Numeric 2
9 PP Character 1
10 CHVGR Numeric 2
11 CHRGR Numeric 2
12 GNI Numeric 1
13 GNI_IS Numeric 1
** Total ** 111
Structure for database: C:\OF\K029.DBF
Number of data records: 51
Date of last update : 04/16/04
Code Page : 866
Field Field Name Type Width Dec Index Collate
1 C257 Character 4
2 C258 Character 15
3 K Numeric 10
** Total ** 30
Structure for database: C:\OF\SPUTR.DBF
Number of data records: 2
Date of last update : 05/22/02
Code Page : 866
Field Field Name Type Width Dec Index Collate
1 RAZDEL Numeric 3
2 TAXCODE Character 9
3 NDAT Date 8
4 PRUT Character 1
5 PARAG Numeric 2
** Total ** 24
ИНФОРМАЦИЯ БАЗЫ ДАННЫХ KP_SPP.DBF
Record# KODF KODP NAIM WDATA PRN
1 sy 1 Сведения об адвокате 01/01/01 0
2 sy 2 Данные о платежах 01/01/01 0
3 sp 1 Справка 01/01/01 0
4 sp 2 Расчет авансовых платежей 01/01/01 0
5 sp 3 Справочно (не подл.налогообложению) 01/01/01 0
6 sk 1 Налоговая декларация по единому соц 01/01/01 0
7 sk 2 Расчет суммы налога 01/01/01 0
8 sk 3 Справочно 01/01/01 0
9 sl 1 II.Расчет для заполн. стр.300 и 400 01/01/01 0
10 sm 1 III.Расчет для заполн.стр.300 и 400 01/01/01 0
11 qc 1 Расчет 01/01/02 0
12 qg 1 II.Расчет для заполн. с.0300 и 0400 01/01/02 0
13 qg 2 Расчет усл.на право прим.регр.став. 01/01/02 0
14 qb 1 Сведения о налогоплательщике 01/01/02 0
15 qb 2 Налоговая декларация 01/01/02 0
16 qf 2 Расчет по страх.взносам 01/01/03 0
17 qf 3 Уплата страх.взносов на ОПС 01/01/03 0
18 qf 1 Сведения о налогоплательщике 01/01/03 0
19 qd 1 Расчет для заполнения строки 0300 01/01/03 0
20 qd 2 Расчет условия на право прим.ставок 01/01/03 0
ИНФОРМАЦИЯ БАЗЫ ДАННЫХ SPP.DBF
Record# KODF KODP NAIM WDATA PRN
1 qf 2 Расчет по страх.взносам 01/01/02 0
2 qf 3 Справочно 01/01/02 0
3 qf 1 Сведения о налогоплательщике 01/01/02 0
4 qd 2 Расчет для заполнения с.0300 и 0400 01/01/02 0
5 qd 3 Расчет условия на право прим.ставок 01/01/02 0
6 qd 1 Справочно 01/01/02 0
7 qe 1 Выплаты в пользу работников (инв.) 01/01/02 0
8 qe 2 Расчет условий на право прим.льгот 01/01/02 0
9 qe 3 Примечание в разделу II 01/01/02 0
10 qe 4 Выплаты в пользу иностран.граждан 01/01/02 0
11 ba 1 финансовые результаты 01/01/94 0
12 ba 2 испoльзование прибыли 01/01/94 0
13 ba 3 платежи в бюджет 01/01/94 0
14 ba 4 затраты и расходы 01/01/94 0
15 ba 1 финансовые результаты 07/01/95 0
16 ba 2 испoльзование прибыли 07/01/95 0
17 ba 4 платежи в бюджет 07/01/95 0
18 ba 5 затраты и расходы 07/01/95 0
19 ba 3 движение денежных средств 07/01/95 0
20 ba 1 финансовые результаты 10/01/95 0
ИНФОРМАЦИЯ БАЗЫ ДАННЫХ KP_SGR.DBF
Record# KODF KODP KODGR RGR NAIM NAIMP WDATA GO5N PP CHVGR CHRGR GNI GNI_IS
1 sy 2 1 0 Авансовыеплатежи по ЕСН Данные о платежах 01/01/01 2 3 0
2 sy 2 2 0 Кодстроки Данные о платежах 01/01/01 2 3 0
3 sy 2 3 1 ПФР(2001), федеральный бюджет Данные о платежах 01/01/01 2 3 0
4 sy 2 4 2 ФФОМС Данныео платежах 01/01/01 2 3 0
5 sy 2 5 3ТФОМС Данные о платежах 01/01/01 2 3 2
6 sy 1 1 0Наименование Сведения об адвокате01/01/01 2 1 0
7 sy 1 2 0 Кодстроки Сведения об адвокате01/01/01 2 1 0
8 sy 1 3 1Значение Сведения об адвокате01/01/01 2 1 2
9 sr 1 1 0Наименование 01/01/01 2 14 0
10 sr 1 2 0 Кодстроки 01/01/01 2 14 0
11 sr 1 3 1 Налоговаябаза нар.итогом ПФР 01/01/01 2 14 0
12 sr 1 5 3 Налоговаябаза нар.итогом ФСС РФ 01/01/01 2 14 0
13 sr 1 6 4 Начисленоавансовых платежей ПФР: ставка 01/01/01 2 14 0
14 sr 1 8 6 Начисленоавансовых платежей ФСС: ставка 01/01/01 2 14 0
15 sr 1 10 8 Начисленоавансовых платежей ФФОМС: ставка 01/01/01 2 14 0
16 sr 1 12 10 Начисленоавансовых платежей ТФОМС: ставка 01/01/01 2 14 0
17 sr 1 14 12Численность ПФР 01/01/01 2 14 0
18 sr 1 16 14Численность ФСС 01/01/01 2 14 2
19 sr 1 7 5 Начисленоавансовых платежей ПФР: cумма 01/01/01 2 14 0
20 sr 1 9 7 Начисленоавансовых платежей ФСС: ставка 01/01/01 2 14 0
ИНФОРМАЦИЯ БАЗЫ ДАННЫХ SGR.DBF
Record# KODF KODP KODGR RGR NAIM NAIMP WDATA GO5N PP CHVGR CHRGR GNI GNI_IS
1 qf 2 1 0 Наименованиепоказателя Расчет по страх.взносам 01/01/02 2 8 0
2 qf 2 2 0 Кодстроки Расчет пострах.взносам 01/01/02 2 8 0
3 qf 2 3 1 Для мужчин1952г., женщин 1956г.по дан.страховат. Расчет по страх.взносам 01/01/02 2 8 0
4 qf 2 4 2 Для мужчин1952г., женщин 1956г.по дан.НО Расчет по страх.взносам 01/01/02 2 8 1
5 qf 2 5 3 Длямуж.1953-1966, жен.1957-1966 по дан.страховат. Расчет пострах.взносам 01/01/02 2 8 0
6 qf 2 6 4 Длямуж.1953-1966, жен.1957-1966 по дан.НО Расчет пострах.взносам 01/01/02 2 8 1
7 qf 2 7 5 Для лиц1967г.р. и моложе по данным страхователя Расчет по страх.взносам 01/01/02 2 8 0
8 qf 2 8 6 Для лиц1967г.р. и моложе по данным НО Расчет по страх.взносам 01/01/02 2 8 1
9 qf 2 9 7 Всего поданным страхователя Расчет по страх.взносам 01/01/02 2 8 2
10 qf 2 10 8 Всего поданным налогового органа Расчет по страх.взносам 01/01/02 2 8 1
11 qf 3 1 0Наименование показателя Справочно 01/01/02 2 3 0
12 qf 3 2 0 Кодстроки Справочно 01/01/02 2 3 0
13 qf 3 3 1Всего Справочно 01/01/02 2 3 0
14 qf 3 4 2 В т.ч. настраховую часть трудовой пенсии Справочно 01/01/02 2 3 2
15 qf 3 5 3 В т.ч. нанакопительную часть трудовой пенсии Справочно 01/01/02 2 3 0
16 qf 1 1 0Наименование Сведения оналогоплательщике 01/01/02 2 1 0
17 qf 1 2 0 Кодстроки Сведения оналогоплательщике 01/01/02 2 1 0
18 qf 1 3 1Значение/Код Сведения оналогоплательщике 01/01/02 2 1 0
19 qd 2 1 0Наименование Расчет для заполнения с.0300и 0400 01/01/02 2 14 0
20 qd 2 2 0 Кодстроки Расчет для заполнения с.0300 и0400 01/01/02 2 14 0
ИНФОРМАЦИЯ БАЗЫ ДАННЫХ K029.DBF
Record# C257 C258 K
1 0373 млн.руб. 1000000
2 0374 млрд.руб. 1000000000
3 0006 м 1
4 0008 км 1000
5 0055 кв.м 1
6 0056 тыс.кв.м 1000
7 0059 га 10000
8 0061 кв.км 1000000
9 0062 тыс.га 10000000
10 0744 % 1
11 0770 кратн. 1
12 0113 куб.м 1
13 0114 тыс.куб.м 1000
14 0115 млн.куб.м 1000000
15 0162 карат 1
16 0165 тыс.кар 1000
17 0166 кг 1
18 0167 ц 100
19 0168 т 1000
20 0170 тыс.т 1000000
21 0238 лс 1
22 0796 шт 1
23 0798 тыс.шт 1000
24 0797 100 шт 100
25 0799 млн.шт 1000000
26 0120 л 1
27 0124 тыс.л 1000
28 0371 руб. 1
29 0372 тыс.руб. 1000
30 0642 Ед. 1
31 0792 чел. 1
32 0793 тыс.чел. 1000
33 0794 млн.чел. 1000000
34 0795 млрд.чел. 1000000000
35 0214 КВт 1
36 0119 тыс.дкл 1000
37 0116 дкл 1
ИНФОРМАЦИЯ БАЗЫ ДАННЫХ SPUTR.DBF
Record# RAZDEL TAXCODE NDAT PRUT PARAG
1 21 102011101 09/01/95 1 1
2 80 101020201 01/01/99 1 1
Приложение Б
(обязательное)
Выходная информация
ИдФайл:2129000988**212901001200101102936
ТипИнф: ДЕКЛАРАЦИЯЮЛ
НаимОтпрЮл: Здесьдолжно быть наименование предприятия.
ТелОтпр:000-00-01
ДолжОтпр:
ФИООтпр: ФИО бухгалтера
КолДок:1
ВерсПрог:INPUTDOC
@@@
ИдДок:2129000988**212901001200100000001
КНД:1151006
НаимФОтч: Расчет налогаот фактической прибыли
ПеридОтч:2000, К4
ДатаДок:30.11.2000
ОКЕИ:383
ВарДекл:999
КолПокФОтч:18
П010000103:1230.000
П010000303:5670.000
П010000403:0.000
П010000503:0.000
П010000603:0.000
П010000703:0.000
П010000803:0.000
П010000903:0.000
П010001003:0.000
П010001103:0.000
П010001203:0.000
П010001303:01 12..2000
П010001603: . .
П010001703: 04.06.1999
П010002а03:0.000
П010002б03:0.000
П010002в03:0.000
П010002г03:0.000
КНД:0710001
НаимФОтч: Бухгалтерскийбаланс
ПеридОтч:2000, К4
ДатаДок:09.12.2000
ОКЕИ:384
ВарДекл:999
КолПокФОтч:17
П010011003:456.000
П010011004:0.000
П010011103:45645.000
П010011104:0.000
П010011203:65.000
П010011204:0.000
П010011303:456.000
П010011304:0.000
П010012003:45.000
П010012004:0.000
П010012103:64.000
П010012104:0.000
П010012203:456.000
П010012204:0.000
П010013003:4564.000
П010013004:0.000
П010013503:6456.000
@@@
===
Приложение В
(обязательное)
Текст программы
&&---получениесписка существующих документов--(открытие БД осуществляет вызывающий модуль!)
waitwindow nowait 'Идет подготовка данных'
YearC=iif(val(sDT)>50,'19'+sDT,'20'+sDT)
FltDocC='KONTROL=«1» ' && фильтр на KP_SD
select KP_SD
set filter to &FltDocC
go top
do while not eof()
&& определяем имя и период
docase
case KP_SD.PER='1'
FileNameC=KP_SD.KODF+sKW+sDT
PeriodTxtC=YearC+', М'+alltrim(str(sPERIO,2))
case KP_SD.PER='2'
KvartC=str(int((sPERIO-1)/3)+1,1)
FileNameC=KP_SD.KODF+KvartC+sDT
PeriodTxtC=YearC+', К'+KvartC
case KP_SD.PER='3'
YerHlfC=iif(sPERIO>6,'2','1')
KvartC=iif(sPERIO>6,'4','2')
FileNameC=KP_SD.KODF+YerHlfC+sDT
PeriodTxtC=YearC+', К'+KvartC
case KP_SD.PER='4'
FileNameC=KP_SD.KODF+sDT
PeriodTxtC=YearC+', Г'
otherwise
FileNameC=''
PeriodTxtC=''
ENDCASE
&&---------------------------------------------------------------------------------------------------------------
DO CASE
CASE kp_sd.per='2'
nperN=int((_sysMonthN-1)/3)+1
CASE kp_sd.per='3'
nperN=iif(_sysMonthN>6,2,1)
CASE kp_sd.per='4'
nperN=1
OTHERWISE
nperN=_sysMonthN
ENDCASE
&&-------------------------------------------------------------------------------------------------------------------
if empty(kp_sd)
do getmper with kp_sd.kodf,_sysYearN,kp_sd.per,nperN
else
do getmper withleft(kp_sd.prvlog,2),_sysYearN,kp_sd.per,nperN
endif
DO CASE
CASE mperiod.period='2'
KvartC=str(int((sPERIO-1)/3)+1,1)
PeriodTxtC=YearC+', К'+KvartC
CASE mperiod.period='3'
YerHlfC=iif(sPERIO>6,'2','1')
KvartC=iif(sPERIO>6,'4','2')
PeriodTxtC=YearC+', К'+KvartC
CASE mperiod.period='4'
PeriodTxtC=YearC+', Г'
OTHERWISE
PeriodTxtC=YearC+', М'+alltrim(str(sPERIO,2))
ENDCASE
&& получаем список переменных строк----------------------------------------------------------------------------
flykodC=''
SELECT 0
IF docwdataD=kp_sd.wdata
USE (_bases+kp_sd.kodf+'_POK') ALIAS pok
SET ORDER TO TAG pok
SET FILTER TO inlist(left(alltrim(kods),1),':','~')
ELSE
USE (_bases+'POK')
SET ORDER TO TAG pok
SET FILTER TO kodf=kp_sd.kodf ;
AND wdata=docwdataD ;
AND inlist(left(alltrim(kods),1),':','~')
ENDIF
GO TOP
DO WHILE NOT eof()
flykodC=flykodC+alltrim(str(pok.ykod,3))+';'
SKIP
ENDDO
USE IN pok
select 0
use (___user+FileNameC) alias XXZZYY
select 0
&& получаем список уточнений------------------------------------------------------------------------------------------
select max(val(UT)) AS utn ;
from XXZZYY ;
into table (old_vtemp+'AllUT')
select AllUT
go top
do while not eof()
&& заполняем список документов------------------------------------------------------------------------------------
if _UseKND
KNDTxtC=iif(empty(alltrim(KP_SD.KND))or (alltrim(KP_SD.KND)=='0'),'1150000',KP_SD.KND)
else
KNDTxtC=KP_SD.KODF
endif
select HaveDoc
append blank
replace KODF with KP_SD.KODF, ;
UT with str(AllUt.UTn,2), ;
NAIM with KP_SD.NAIM, ;
FileName with FileNameC, ;
SDWDATA with KP_SD.WDATA, ;
PERIODTXT with PERIODTXTC, ;
KNDTXT with KNDTxtC, ;
wdata WITH docwdataD, ;
flykod WITH flykodC, ;
prvlog WITH kp_sd.prvlog, ;
prd WITH kp_sd.prd, ;
_knd WITH kp_sd.knd, ;
prmnog WITH kp_sd.prmnog
select AllUt
skip
enddo
select AllUt
use
select XXZZYY
use
endif
select KP_SD
skip
enddo
wait clear
if DocList.WDATA=DocList.SDWDATA
select ExpDcPok
append blank
replace KODF with DocList.KODF, ;
WDATA with DocList.WDATA, ;
TxtPok with 'П000000101', ;
FieldName with 'KOMM'
append blank
replace KODF with DocList.KODF, ;
WDATA with DocList.WDATA, ;
TxtPok with 'П000000201', ;
FieldName with 'RASSH'
append blank
replace KODF with DocList.KODF, ;
WDATA with DocList.WDATA, ;
TxtPok with 'П000000301', ;
FieldName with 'C257N'
SELECT 0
USE (_bases+doclist.kodf+'_POK') alias pok
set order to tag POK
go top
do while not eof()
if not empty(KODS) and (not (alltrim(KODS)=='0'))
select kp_sgr
set filter to KODF=DocList.KODF and KODP=POK.KODP andRGR0
go top
do while not eof()
scrC=subdat1(pok.twd,kp_sgr.rgr)
IF NOT empty(scrC)
typeC=substr(scrC,1,1)
sc1N=at('(',scrC)
sc2N=at(')',scrC)
zpN=at(',',scrC)
IF zpN=0
lenN=val(substr(scrC,sc1N+1,sc2N-sc1N-1))
decN=0
ELSE
lenN=val(substr(scrC,sc1N+1,zpN-sc1N-1))
decN=val(substr(scrC,zpN+1,sc2N-zpN-1))
ENDIF
ENDIF
YKodN=POK.YKOD
KodPN=POK.KODP
KodSC=strtran(POK.KODS,':','')
KodGN=kp_SGR.KODGR
RGRN=kp_SGR.RGR
GNIN=iif(kp_SGR.GNI=1,1,0)
TxtPokC='П'
TxtPokC=TxtPokC+iif(KodPN>=10,str(KodPN,2),'0'+str(KodPN,1))
TxtPokC=TxtPokC+replicate('0',5-len(alltrim(KodSC)))+alltrim(KodSC)
TxtPokC=TxtPokC+iif(KodGN>=10,str(KodGN,2),'0'+str(KodGN,1))
FieldNameC=DocList.KODF+alltrim(str(YKodN,3))+'_'+alltrim(str(RGRN,2))
select ExpDcPok
append blank
replace KODF with DocList.KODF, ;
WDATA with DocList.WDATA, ;
TxtPok with TxtPokC, ;
FieldName with FieldNameC, ;
type WITH typeC, ;
len WITH lenN, ;
dec WITH decN
select kp_SGR
skip
enddo
endif
select POK
skip
enddo
USE IN pok
else
select ExpDcPok
append blank
replace KODF with DocList.KODF, ;
WDATA with DocList.WDATA, ;
TxtPok with 'П000000101', ;
FieldName with 'KOMM'
append blank
replace KODF with DocList.KODF, ;
WDATA with DocList.WDATA, ;
TxtPok with 'П000000201', ;
FieldName with 'RASSH'
append blank
replace KODF with DocList.KODF, ;
WDATA with DocList.WDATA, ;
TxtPok with 'П000000301', ;
FieldName with 'C257N'
SELECT 0
USE (_bases+'POK')
set order to tag POK
set filter to KODF=DocList.KODF and WDATA=DocList.WDATA
go top
do while not eof()
if not empty(KODS) and (not (alltrim(KODS)=='0'))
select SGR
set filter to KODF=DocList.KODF and KODP=POK.KODP andWDATA=DocList.WDATA and RGR0
go top
do while not eof()
scrC=subdat1(pok.twd,sgr.rgr)
IF NOT empty(scrC)
typeC=substr(scrC,1,1)
sc1N=at('(',scrC)
sc2N=at(')',scrC)
zpN=at(',',scrC)
IF zpN=0
lenN=val(substr(scrC,sc1N+1,sc2N-sc1N-1))
decN=0
ELSE
lenN=val(substr(scrC,sc1N+1,zpN-sc1N-1))
decN=val(substr(scrC,zpN+1,sc2N-zpN-1)) ENDIF
ELSE
IF pok.td='U'
typeC=substr(pok.td1,sgr.rgr,1)
ELSE
typeC=pok.td
ENDIF
DO CASE
CASE typeC='C'
lenN=15
decN=0
CASE typeC='D'
lenN=8
decN=0
OTHERWISE
typeC='N'
lenN=15
decN=3
ENDCASE
ENDIF
if pok.td=='U'
if len(alltrim(pok.td1))>=SGR.RGR
TypeC=substr(pok.td1,SGR.RGR,1)
else
TypeC='N'
endif
else
TypeC=pok.td
endif
YKodN=POK.YKOD
KodPN=POK.KODP
KodSC=strtran(POK.KODS,':','')
KodGN=SGR.KODGR
RGRN=SGR.RGR
GNIN=iif(SGR.GNI=1,1,0)
TxtPokC='П'
TxtPokC=TxtPokC+iif(KodPN>=10,str(KodPN,2),'0'+str(KodPN,1))
TxtPokC=TxtPokC+replicate('0',5-len(alltrim(KodSC)))+alltrim(KodSC)
TxtPokC=TxtPokC+iif(KodGN>=10,str(KodGN,2),'0'+str(KodGN,1))
FieldNameC=DocList.KODF+alltrim(str(YKodN,3))+'_'+alltrim(str(RGRN,2))
select ExpDcPok
append blank
replace KODF with DocList.KODF, ;
WDATA with DocList.WDATA, ;
TxtPok with TxtPokC, ;
FieldName with FieldNameC, ;
type WITH typeC, ;
len WITH lenN, ;
dec WITH decN
select SGR
skip
enddo
endif
select POK
skip
enddo
USE IN pok
endif
&&-----------------------------------------------------------------
aPath=alltrim(upper(bPath))
if right(aPath,1)'\'
aPath=aPath+'\'
endif
aDrv=left(aPath,1)
if !cdrv(aDrv)
if aDrv='A' .or. aDrv='B'
do while !cdrv(aDrv)
if MESSAGEBOX('Вставьте диск в дисковод'+aDrv+':',64+1)1
RETURN .F.
endif
enddo
else
MESSAGEBOX('Диск '+aDrv+': не существует.', 16)
RETURN.F.
endif
endif
isOkPath=.t.
PRIVATE olderrC
olderrC=ON('ERROR')
on error isOkPath=.f.
SetDefault(aPath) &&&&set default to &aPath
ON ERROR &olderrC
SetDefault(root_dir) &&&&set default to&root_dir
if!isOkPath
MESSAGEBOX('Неправильный путь к файлу.', 16)
RETURN .F.
endif
&&формирование текстового файла
waitwindow nowait 'Идет подготовка файла'
define window wtxt from 24,79 to 24,79 none
activate window wtxt noshow
set alternate to (old_vtemp+aFileName)
set alternate on
set console off
?? 'ИдФайл:'+alltrim(sIdOtp)
? 'ТипИнф:'+alltrim(sType)
? 'НаимОтпрЮл:'+alltrim(sDan)
? 'ТелОтпр:'+alltrim(sTel)
? 'ДолжнОтпр:'+alltrim(sDol)
? 'ФИООтпр:'+alltrim(sFIO)
?'КолДок:1'
?'ВерсПрог:'+alltrim(sVer)
? '@@@'
? 'ИдДок:'+alltrim(sIdDoc)
isOkAll=.f.
do AddDoc
? '@@@'
? '==='
release window wtxt
set alternate to
set console on
waitclear
if!isOkAll
MESSAGEBOX('Нет передаваемых показателей во всех передаваемых документах.Копируемый файл не создан', 16)
else
wait window nowait 'Выполняется копирование файла'
DOWinToDos IN _bin+'oninit.prg' WITH old_vtemp+aFileName, aPath+aFileName
wait clear
messagebox('Выгрузка завершена.', 64)
endif
clear read
SELECT 0
USE (_bases+'NOMFILE')
LOCATE FOR year=_sysYearN
REPLACE nomfile WITH nomfile+1
USE
return .t.
&&-----------------------------------------------------------------
procedure AddDoc
select DocList
go topdo while not eof()
wait wind nowait 'Идет подготовка данных'
selectExpDcPok
set filter to KODF=DocList.KODF and WDATA=DocList.WDATA
count to PkCntN
if PkCntN>0
isOkAll=.t.
do AddDoc01
else
MESSAGEBOX('Документ: '+DocList.NAIM + CHR(13) +;
'Уточнение:'+iif(val(DocList.UT)=0,'Основной расчет',DocList.UT+'уточнение')+;
'Нет передаваемых показателей. Документ будет пропущен.',64)
endif select DocList
skip
enddo
wait clear
return/>