2. Общие требования к формату файлов

2. Общие требования к формату файлов

2.1. Структура имен файлов

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

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

XXXXXDNN.TTM,

где

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

D - дата формирования документов (файла); 1 - 9, A - V;

M - месяц формирования документов (файла); 1 - 9, A, B, C;

TT - тип (маркер) документов, содержащихся в файле, который описан в Таблице 2 (раздел 2.3);

NN - порядковый номер файла за дату формирования: каждое из N приводится в 36-ричном формате (0 - 9, A - Z); если файл формируется в локальной вычислительной сети, номер выгрузки варьируется от 00 до RZ, если файл формируется в выделенной локальной вычислительной сети (ВЛВС) - от S0 до ZZ.

Пример имени файла с расходными расписаниями, подготовленного органом федерального казначейства за дату 26.01 для распорядителя средств с кодом 01025 - 01025Q01.RI1.

Пример имени файла с расходными расписаниями, подготовленного распорядителем средств с кодом 01025 для органа федерального казначейства за дату 04.02 - 01025401.RO2.

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

01025Q01.VR1 - выписка из лицевого счета распорядителя средств;

01025Q01.VP1 - выписка из лицевого счета получателя средств.

Пример имени файла с платежными поручениями, подготовленного получателем средств с кодом 01025 для органа федерального казначейства за дату 04.02 - 01025401.PP2.

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

XXXXFDNN.TTM,

где

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

F - константа. 'F' признак того, что обмен ведется органами федерального казначейства;

NN - порядковый номер файла за дату формирования; каждое из N приводится в 36-ричном формате (0 - 9, A - Z); если файл формируется в локальной вычислительной сети, номер выгрузки варьируется от 00 до RZ, если файл формируется в выделенной локальной вычислительной сети (ВЛВС) - от S0 до ZZ;

D - дата формирования файла; 1 - 9, A - V;

M - месяц формирования файла; 1 - 9, A, B, C, D;

TT - тип (маркер) документов, содержащихся в файле, который описан в Таблице 3 (раздел 2.3).

Пример имени файла с расходными расписаниями, подготовленного отделением Федерального казначейства с кодом 3415 за дату 11.03 - 3415F03B.RR3.

Пример имени файла с квитанциями на расходное расписание, подготовленного Управлением Федерального казначейства с кодом 5900 за дату 15.09 - 5900FF03.KV9.

Пример имени файла с квитанциями на извещение, подготовленного Федеральным казначейством с кодом 9500 за дату 03.05 - 9500F301.KV5.

2.2 Структура файлов

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

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

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

Макет файла определяет последовательность блоков, кратность их вхождения в документ, количество полей в блоке и их порядок (смотри п. 2.5).

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

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

Поля могут содержать только символы с кодом ASCII с 32 по 175 (за исключением 127 и 124) и с 224 по 239.

Таблица 1. Структура заголовка файла

┌────────────────────┬──────────┬───────────┬────────┬──────┬─────┐
│      Описание      │    Имя   │    Тип    │ Длина  │Обяза-│     │
│                    │          │           │        │тель- │ НСИ │
│                    │          │           │        │ность │     │
├────────────────────┼──────────┼───────────┼────────┼──────┼─────┤
│Маркер              │    FK    │           │        │      │     │
├────────────────────┼──────────┼───────────┼────────┼──────┼─────┤
│Номер версии формата│  NUM_VER │  STRING   │ <= 10  │  Да  │     │
├────────────────────┼──────────┼───────────┼────────┼──────┼─────┤
│Наименование        │  FORMER  │  STRING   │ <= 50  │  Да  │     │
│программного        │          │           │        │      │     │
│продукта,           │          │           │        │      │     │
│сформировавшего файл│          │           │        │      │     │
├────────────────────┼──────────┼───────────┼────────┼──────┼─────┤
│Версия программного │ FORM_VER │  STRING   │ <= 10  │  Да  │     │
│продукта            │          │           │        │      │     │
├────────────────────┼──────────┼───────────┼────────┼──────┼─────┤
│Ссылка на документ, │ NORM_DOC │  STRING   │ <= 250 │ Нет  │     │
│утверждающий формат │          │           │        │      │     │
│файла               │          │           │        │      │     │
└────────────────────┴──────────┴───────────┴────────┴──────┴─────┘

Таблица 1а. Правила заполнения почтовой информации

┌──────┬──────┬─────────────────────────┬────────────────────────┐
│Отпра-│Полу- │          FROM           │           TO           │
│витель│чатель├────────────┬────────────┼────────────┬───────────┤
│      │      │Код ТОФК,   │Код распоря-│Код ТОФК,   │Код        │
│      │      │наименование│дителя      │наименование│распоря-   │
│      │      │органа ФК - │средств,    │органа ФК - │дителя     │
│      │      │отправителя │полное      │получателя  │средств,   │
│      │      │            │наименование│            │полное     │
│      │      │            │распоряди-  │            │наимено-   │
│      │      │            │теля средств│            │вание      │
│      │      │            │            │            │распоря-   │
│      │      │            │            │            │дителя     │
│      │      │            │            │            │средств    │
├──────┼──────┼────────────┼────────────┼────────────┼───────────┤
│ ФК   │ УФК  │9500, ФК    │            │<код УФК>,  │           │
│      │      │            │            │<Наименова- │           │
│      │      │            │            │ние УФК>    │           │
├──────┼──────┼────────────┼────────────┼────────────┼───────────┤
│ ГРБС │ ФК   │            │<Код ГРБС>, │9500, ФК    │           │
│      │      │            │<Наименова- │            │           │
│      │      │            │ние ГРБС>   │            │           │
├──────┼──────┼────────────┼────────────┼────────────┼───────────┤
│ УФК  │ ФК   │<код УФК>,  │            │9500, ФК    │           │
│      │      │<Наименова- │            │            │           │
│      │      │ние УФК>    │            │            │           │
├──────┼──────┼────────────┼────────────┼────────────┼───────────┤
│ ОФК  │ ФК   │<код ОФК>,  │            │9500, ФК    │           │
│      │      │<Наименова- │            │            │           │
│      │      │ние ОФК>    │            │            │           │
├──────┼──────┼────────────┼────────────┼────────────┼───────────┤
│ ФК   │ ОФК  │9500, ФК    │            │<код ОФК>,  │           │
│      │      │            │            │<Наименова- │           │
│      │      │            │            │ние ОФК>    │           │
├──────┼──────┼────────────┼────────────┼────────────┼───────────┤
│ УФК  │ УФК  │<код УФК>,  │            │<код УФК>,  │           │
│      │      │<Наименова- │            │<Наименова- │           │
│      │      │ние УФК>    │            │ние УФК>    │           │
├──────┼──────┼────────────┼────────────┼────────────┼───────────┤
│ УФК  │ ОФК  │<код УФК>,  │            │<код ОФК>,  │           │
│      │      │<Наименова- │            │<Наименова- │           │
│      │      │ние УФК>    │            │ние ОФК>    │           │
├──────┼──────┼────────────┼────────────┼────────────┼───────────┤
│ УФК  │ РБС  │<код УФК>,  │            │            │<Код БП>,  │
│      │      │<Наименова- │            │            │<Наимено-  │
│      │      │ние УФК>    │            │            │вание      │
│      │      │            │            │            │РБС>       │
├──────┼──────┼────────────┼────────────┼────────────┼───────────┤
│ ОФК  │ УФК  │<код ОФК>,  │            │<код УФК>,  │           │
│      │      │<Наименова- │            │<Наименова- │           │
│      │      │ние ОФК>    │            │ние УФК>    │           │
├──────┼──────┼────────────┼────────────┼────────────┼───────────┤
│ ОФК  │ ОФК  │<код ОФК>,  │            │<код ОФК>,  │           │
│      │      │<Наименова- │            │<Наименова- │           │
│      │      │ние ОФК>    │            │ние ОФК>    │           │
├──────┼──────┼────────────┼────────────┼────────────┼───────────┤
│ ОФК  │ РБС  │<код ОФК>,  │            │            │<Код БП>,  │
│      │      │<Наименова- │            │            │<Наименова-│
│      │      │ние ОФК>    │            │            │ние РБС>   │
├──────┼──────┼────────────┼────────────┼────────────┼───────────┤
│ РБС  │ УФК  │            │<Код БП>,   │<код УФК>,  │           │
│      │      │            │<Наименова- │<Наименова- │           │
│      │      │            │ние РБС>    │ние УФК>    │           │
├──────┼──────┼────────────┼────────────┼────────────┼───────────┤
│ РБС  │ ОФК  │            │<Код БП>,   │<код ОФК>,  │           │
│      │      │            │<Наименова- │<Наименова- │           │
│      │      │            │ние РБС>    │ние ОФК>    │           │
└──────┴──────┴────────────┴────────────┴────────────┴───────────┘

2.3. Перечень документов

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

Таблица 2. Описание типов (маркеров) документов

┌───────────────────────────────────────────────────┬───────────┐
│              Наименование документа               │  Маркер   │
├───────────────────────────────────────────────────┼───────────┤
│Казначейское уведомление                           │    KU     │
├───────────────────────────────────────────────────┼───────────┤
│Реестр расходных расписаний <1>                    │    RL     │
├───────────────────────────────────────────────────┼───────────┤
│Расходное расписание от органа федерального        │    RI     │
│казначейства для распорядителя средств             │           │
├───────────────────────────────────────────────────┼───────────┤
│Расходное расписание от распорядителя средств      │    RO     │
│органу федерального казначейства                   │           │
├───────────────────────────────────────────────────┼───────────┤
│Платежное поручение                                │    PP     │
├───────────────────────────────────────────────────┼───────────┤
│Выписка из лицевого счета получателя средств,      │    VP     │
│приложение к выписке                               │           │
├───────────────────────────────────────────────────┼───────────┤
│Выписка из лицевого счета распорядителя средств,   │    VR     │
│приложение к выписке                               │           │
├───────────────────────────────────────────────────┼───────────┤
│Выписка из лицевого счета главного распорядителя   │    VG     │
│средств, приложение к выписке                      │           │
├───────────────────────────────────────────────────┼───────────┤
│Уведомление о возврате расходного расписания       │    UV     │
├───────────────────────────────────────────────────┼───────────┤
│Лицевой счет главного распорядителя/распорядителя  │    VL     │
│средств                                            │           │
└───────────────────────────────────────────────────┴───────────┘

--------------------------------

<1> Реестры расходных расписаний и Расходные расписания рассматриваются как документы разных типов, т.е. один файл не может содержать в себе одновременно и реестры расходных расписаний, и расходные расписания.

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

Таблица 3. Описание типов (маркеров) документов

┌───────────────────────────────────────────────────┬───────────┐
│              Наименование документа               │  Маркер   │
├───────────────────────────────────────────────────┼───────────┤
│Извещение о принятии на учет (аннулировании)       │    IZ     │
│расходных расписаний                               │           │
├───────────────────────────────────────────────────┼───────────┤
│Расходное расписание                               │    RR     │
├───────────────────────────────────────────────────┼───────────┤
│Квитанция о загрузке файлов с расходными           │    KV     │
│расписаниями и/или извещениями                     │           │
└───────────────────────────────────────────────────┴───────────┘

2.4. Описание типов данных, используемых
при определении полей документов

Таблица 4. Перечень типов данных

┌──────┬────────────────────────┬─────────────────┬──────────────┐
│  N   │     Описание типа      │       Имя       │    Длина     │
│ п/п  │                        │                 │              │
├──────┼────────────────────────┼─────────────────┼──────────────┤
│1.    │Текст, строка символов  │     STRING      │Определяется  │
│      │без лидирующих и        │                 │в каждом поле │
│      │оканчивающих пробелов - │                 │              │
│      │допустимые символы ASCII│                 │              │
│      │с 32 по 175 (кроме 127 и│                 │              │
│      │124) и с 224 по 239     │                 │              │
├──────┼────────────────────────┼─────────────────┼──────────────┤
│2.    │Дата в формате          │      DATE       │    = 10      │
│      │ДД.ММ.ГГГГ              │                 │              │
├──────┼────────────────────────┼─────────────────┼──────────────┤
│3.    │Время в формате ЧЧ:ММ:СС│      TIME       │     = 8      │
├──────┼────────────────────────┼─────────────────┼──────────────┤
│4.    │Денежная сумма в        │     NUMBER1     │    <= 17     │
│      │копейках, представляется│                 │              │
│      │целым числом            │                 │              │
├──────┼────────────────────────┼─────────────────┼──────────────┤
│5.    │Денежная сумма в рублях,│     NUMBER2     │   <= 15.2    │
│      │представляется          │                 │              │
│      │действительным числом с │                 │              │
│      │десятичным разделителем │                 │              │
│      │и не более чем двумя    │                 │              │
│      │цифрами после           │                 │              │
│      │разделителя (в качестве │                 │              │
│      │десятичного разделителя │                 │              │
│      │используется символ     │                 │              │
│      │".")                    │                 │              │
├──────┼────────────────────────┼─────────────────┼──────────────┤
│6.    │Целое число             │     NUMBER      │    <= 7      │
└──────┴────────────────────────┴─────────────────┴──────────────┘

2.5. Описание макета документа

2.5.1. Назначение макета

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

В макете документа определяется:

1. Количество блоков в документе и их последовательность.

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

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

2.5.2 Структура файла макета

Макет документа состоит из последовательности блоков. Каждый блок начинается с новой строки и состоит из имен полей, разделенных символом "|" (код ASCII 124).

Первое поле в блоке является маркером. После имени поля может следовать признак "(0)", что означает, что данное поле может не иметь значения и заполняется по условиям, приведенным в п. 3.x.

Последним полем в блоке является указатель на следующий блок - маркер следующего блока с признаком "(*)" или без него.

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

При описании макета документа используются три типа блоков:

1. Идентификатор документа (смотри Таблицу 2 в п. 2.3). После идентификатора документа может следовать признак "(*)", означающий, что допускается передача нескольких документов в одном файле.

2. Блок, не повторяющийся в одном документе. В этом случае в вышестоящем блоке указатель состоит из маркера текущего блока без признака "(*)".

3. Блок, повторяющийся в одном документе. В этом случае в вышестоящем блоке указатель состоит из маркера текущего блока с признаком "(*)".