Утилита tn2xml

Материал из Alta-Soft Wikipedia
Версия от 12:04, 5 сентября 2017; Belousov (обсуждение | вклад) (Дополнительные настройки)
Перейти к навигации Перейти к поиску

ТНВЭД в XML-формате

Программы Альта-ГТД и Такса используют для работы со справочником ТНВЭД собственный бинарный формат (файл tn2.tnf). Для сторонних разработчиков существует возможность получения актуальной версии ТНВЭД в XML-формате, на разовой или на регулярной основе. Доступны русская и английская версии. Услуга платная, обращайтесь в отдел техподдержки.

Пример XML-файла, созданного программой:

 <?xml version="1.0" encoding="windows-1251"?>
 <dataroot>
 <tnved>
   <ID>0</ID>
   <Child>21</Child>
   <Next>1</Next>
   <Level>0</Level>
   <CodeEx>01 - 05</CodeEx>
   <Text>I. Живые животные; продукты животного происхождения (Группы 01-05)</Text>
 </tnved>
 ...
 <tnved>
   <ID>24</ID>
   <Child>0</Child>
   <Next>25</Next>
   <Level>4</Level>
   <Сode>0101210000</Сode>
   <CodeEx>01 01 210000</CodeEx>
   <Date1>2012-01-01</Date1>
   <Text>чистопородные племенные животные</Text>
   <TextEx>ЧИСТОПОРОДНЫЕ ПЛЕМЕННЫЕ ЛОШАДИ ЖИВЫЕ</TextEx>
   <Unit>ШТ</Unit>
   <UnitCode>796</UnitCode>
 </tnved>
 ...

Описание тэгов

dataroot
корневой тэг, начало и конец всего документа.
tnved
запись об отдельном коде, содержит как окончательные, так и промежуточные узлы дерева ТНВЭД (разделы, группы, подгруппы и т.д.).
ID
порядковый номер записи, служит для связывания отдельных элементов в деревянную структуру.
Child
для промежуточных уровней классификации - ID первого из вложенных кодов, для окончательных 10-значных кодов = 0
Next
ID следующего по порядку элемента того же уровня, для последнего = 0
Level
Уровень вложенности элемента в дереве: 0 для разделов, 1 для групп и т.д. Наибольший на данный момент уровень = 11
Сode
Код ТНВЭД, число от 2 до 10 знаков, может содержать ведущие 0. Для самого верхнего уровня (разделов), а также для некоторых промежуточных подразделов обозначенных римскими цифрами - не заполняется. Для всех остальных коды строго отсортированы по возрастанию.
CodeEx
Код ТНВЭД отформатированный для красивого отображения. Первые 2 и 4 знака отделены пробелами, для промежуточных кодов добавлено '...', для первого уровня (разделов) указывается интервал вложенных групп через черточку.
Date1
Дата начала действия кода. Указывается не для всех, а только для кодов добавленных или измененных после выхода действующего "импортного тарифа ТС".
Date2
Дата окончания действия кода. Указывается не для всех, а только для кодов исключенных или измененных после выхода действующего "импортного тарифа ТС".
Text
Название раздела (группы, позиции). Обязательное поле, заполнен для всех элементов. В точности совпадает с текстом "импортного тарифа ТС". В случае с английским ТНВЭД - является его дословным переводом. В отличие от печатного варианта не содержит ведущих черточек "- - -". Их число можно посчитать как <Level>-2.
TextEx
Только для полных 10-значных кодов. Полное описание для вставки в гр.31 ДТ, собрано из названий всех более высоких уровней классификации. Не является юридически значимым, так как составлено специалистами Альты. Часто содержит слово "ПРОЧИЕ". Длина ограничена 255 знаками, поэтому могут использоваться сокращения. Всегда заполняется заглавными буквами (требование инструкции по заполнению ДТ). В английской версии ТНВЭД полное описание на данный момент отсутствует.
DatePrev
Дата предыдущей редакции наименования. Заполняется если описание кода недавно изменилось без смены самого кода.
TextPrev
Название раздела (предыдущая редакция). Только если заполнено DatePrev.
Unit
Только для полных 10-значных кодов. Наименование дополнительной единицы измерения согласно импортному тарифу. Если заполнено - требуется обязательно указать количество в этих единицах в гр.41 ДТ. Оно может использоваться при расчете импортной пошлины со специфической ставкой.
UnitCode
Только для полных 10-значных кодов. Трехзначный цифровой код ДЕИ, если заполнен - обязательно указывается в гр.41 ДТ.

Дополнительные настройки

/C
Влияет на количество незначащих "0" на конце у промежуточных кодов. Без этого параметра они могут отличаться от того, как написано в "импортном тарифе ТС". При транзите часто указываются неполные коды, и таможенная программа требует их ровно с определенным числом "00" на конце. Более того, некоторые позиции в импортном тарифе указаны совсем без кода, а мы его проставляем по порядку для удобства поиска. С параметром /C поле <Сode> в этом случае останется не заполненным. Для ДТ всё это не важно, там всегда указывается полный, 10-значный код.
/D
Не заполнять поля <Date1> и <Date2>. В этом случае в файл попадают только действующие коды на текущую дату. То есть или вообще без дат, или коды у которых дата <Date1> меньше сегодняшней, а <Date2> больше сегодняшней.
/I
Выгружать только окончательные 10-значные коды ТНВЭД. Дерево в этом случае построить нельзя, только сплошной список. Созданный таким образом XML можно отличить по наличию атрибута <dataroot list="1">
/N
Не заполнять расширенное описание <TextEx>