TSDZakazScladVasilek/CommonModules/ОборудованиеЧекопечатающиеУстройстваКлиентСерверЛокализация/Ext/Module.bsl

415 lines
47 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#Область ПрограммныйИнтерфейс
#Область QRКодЧекаККТ
// Расшифровывает QR код для чека ККТ. Структура описана в документе ФФД в разделе 61.
//
// Параметры:
// ЗначениеQRКода - Строка
// ДанныеШтрихкода - см. ОборудованиеЧекопечатающиеУстройстваКлиентСервер.ПараметрыQRКодаЧекаККТ.
//
Процедура РасшифроватьQRКодЧекаККТ(ЗначениеQRКода, ДанныеШтрихкода) Экспорт
// ++ Локализация
ДанныеШтрихкода.Вставить("Расшифрован", Истина);
ПозицияСимволаСР = Найти(ЗначениеQRКода, "&s=");
ПозицияСимволаФП = Найти(ЗначениеQRКода, "&fp=");
ПозицияСимволаФН = Найти(ЗначениеQRКода, "&fn=");
ПозицияСимволаФД = Найти(ЗначениеQRКода, "&i=");
Если Лев(ЗначениеQRКода, 2) <> "t=" Или ПозицияСимволаСР = 0 Или ПозицияСимволаФП = 0 Или ПозицияСимволаФН = 0 Или ПозицияСимволаФД = 0 Тогда
ДанныеШтрихкода.Расшифрован = Ложь;
Возврат;
КонецЕсли;
// Дата время расчета.
ДатаВремяРасчета = Сред(ЗначениеQRКода, 3, ПозицияСимволаСР - 3);
ДанныеШтрихкода.ДатаВремяРасчета = Дата(Лев(ДатаВремяРасчета, 4), Сред(ДатаВремяРасчета, 5, 2), Сред(ДатаВремяРасчета, 7, 2),
Сред(ДатаВремяРасчета, 10, 2), Сред(ДатаВремяРасчета, 12, 2) ,0);
// Номер фискального накопителя
ДанныеШтрихкода.НомерФискальногоНакопителя = Сред(ЗначениеQRКода, ПозицияСимволаФН + 4, ПозицияСимволаФД - ПозицияСимволаФН - 4);
// Номер фискального документа
ДанныеШтрихкода.НомерФискальногоДокумента = Сред(ЗначениеQRКода, ПозицияСимволаФД + 3, ПозицияСимволаФП - ПозицияСимволаФД - 3);
// Сумма расчета
ДанныеШтрихкода.СуммаРасчета = Число(Сред(ЗначениеQRКода, ПозицияСимволаСР + 3, ПозицияСимволаФН - ПозицияСимволаСР - 3));
// Фискальный признак
Значение = Сред(ЗначениеQRКода, ПозицияСимволаФП + 4);
ДанныеШтрихкода.ФискальныйПризнак = Лев(Значение, СтрДлина(Значение) - 4);
// Признак расчета
ДанныеШтрихкода.ПризнакРасчетаКод = Число(Прав(Значение, 1));
ДанныеШтрихкода.ПризнакРасчета = ОборудованиеЧекопечатающиеУстройстваКлиентСервер.РасчетДенежнымиСредствамиПоКоду(ДанныеШтрихкода.ПризнакРасчетаКод);
// -- Локализация
КонецПроцедуры
// Формирует QR код для чека ККТ. Структура описана в документе ФФД в разделе 61.
//
// Параметры:
// ПараметрыQRКода - Структура
// ДанныеQRКода - Строка - сформированная строка.
//
Процедура СформироватьQRКодЧекаККТараметрыQRКода, ДанныеQRКода) Экспорт
// ++ Локализация
ДанныеQRКода = "t=%D%&s=%S%&fn=%F%&i=%I%&fp=%P%&n=%T%"; // Не локализовывать - утверждено ФФД.
// Формирование QR кода.
// АПК: 1367-выкл особенность локального законодательства
ДанныеQRКода = СтрЗаменить(ДанныеQRКода, "%D%", Формат(ПараметрыQRКода.ДатаВремяРасчета, "ДФ='ггггММддTЧЧмм'")); // Не локализовывать - утверждено ФФД.
// АПК: 1367-вкл
ДанныеQRКода = СтрЗаменить(ДанныеQRКода, "%F%", ПараметрыQRКода.НомерФискальногоНакопителя);
ДанныеQRКода = СтрЗаменить(ДанныеQRКода, "%S%", Формат(ПараметрыQRКода.СуммаРасчета, "ЧДЦ=2;ЧГ=;ЧРД=."));
ДанныеQRКода = СтрЗаменить(ДанныеQRКода, "%I%", Формат(ПараметрыQRКода.НомерФискальногоДокумента, "ЧГ="));
ДанныеQRКода = СтрЗаменить(ДанныеQRКода, "%P%", ПараметрыQRКода.ФискальныйПризнак);
Если ПараметрыQRКода.Свойство("ПризнакРасчета") И Не ПустаяСтрока(ПараметрыQRКода.ПризнакРасчета) Тогда
ПризнакРасчетаКод = ОборудованиеЧекопечатающиеУстройстваКлиентСервер.КодРасчетаДенежнымиСредствами(ПараметрыQRКода.ПризнакРасчета);
Иначе
ПризнакРасчетаКод = ПараметрыQRКода.ПризнакРасчетаКод;
КонецЕсли;
ДанныеQRКода = СтрЗаменить(ДанныеQRКода, "%T%", ПризнакРасчетаКод);
// -- Локализация
КонецПроцедуры
#КонецОбласти
#Область КодыОФД
///////////////////////////////////////////////////////////////////////////////
// Система налогообложения
// Возвращает код системы налогообложения ККТ.
//
// Параметры:
// Код - Число
// СистемаНалогообложенияККТ - ПеречислениеСсылка.ТипыСистемНалогообложенияККТ - Система налогообложения ККТ.
//
Процедура КодСистемыНалогообложенияККТ(Код, СистемаНалогообложенияККТ) Экспорт
// ++ Локализация
СистемыНалогообложения = Новый Соответствие();
СистемыНалогообложения.Вставить(ПредопределенноеЗначение("Перечисление.ТипыСистемНалогообложенияККТ.ОСН") , 0);
СистемыНалогообложения.Вставить(ПредопределенноеЗначение("Перечисление.ТипыСистемНалогообложенияККТ.УСНДоход") , 1);
СистемыНалогообложения.Вставить(ПредопределенноеЗначение("Перечисление.ТипыСистемНалогообложенияККТ.УСНДоходРасход"), 2);
СистемыНалогообложения.Вставить(ПредопределенноеЗначение("Перечисление.ТипыСистемНалогообложенияККТ.ЕНВД") , 3);
СистемыНалогообложения.Вставить(ПредопределенноеЗначение("Перечисление.ТипыСистемНалогообложенияККТ.ЕСН") , 4);
СистемыНалогообложения.Вставить(ПредопределенноеЗначение("Перечисление.ТипыСистемНалогообложенияККТ.Патент") , 5);
Код = СистемыНалогообложения.Получить(СистемаНалогообложенияККТ);
// -- Локализация
КонецПроцедуры
// Возвращает систему налогообложения ККТ по коду
//
// Параметры:
// Значение - ПеречислениеСсылка.ТипыСистемНалогообложенияККТ
// КодСистемыНалогообложенияККТ - Число - Код системы налогообложения ККТ.
//
Процедура СистемаНалогообложенияККТПоКоду(Значение, КодСистемыНалогообложенияККТ) Экспорт
// ++ Локализация
СистемыНалогообложения = Новый Соответствие();
СистемыНалогообложения.Вставить(0, ПредопределенноеЗначение("Перечисление.ТипыСистемНалогообложенияККТ.ОСН"));
СистемыНалогообложения.Вставить(1, ПредопределенноеЗначение("Перечисление.ТипыСистемНалогообложенияККТ.УСНДоход"));
СистемыНалогообложения.Вставить(2, ПредопределенноеЗначение("Перечисление.ТипыСистемНалогообложенияККТ.УСНДоходРасход"));
СистемыНалогообложения.Вставить(3, ПредопределенноеЗначение("Перечисление.ТипыСистемНалогообложенияККТ.ЕНВД"));
СистемыНалогообложения.Вставить(4, ПредопределенноеЗначение("Перечисление.ТипыСистемНалогообложенияККТ.ЕСН"));
СистемыНалогообложения.Вставить(5, ПредопределенноеЗначение("Перечисление.ТипыСистемНалогообложенияККТ.Патент"));
Значение = СистемыНалогообложения.Получить(КодСистемыНалогообложенияККТ);
// -- Локализация
КонецПроцедуры
// Возвращает наименование системы налогообложения по коду.
//
// Параметры:
// Значение - Строка
// СистемаНалогообложения - Число, Произвольный - Система налогообложения
// Кратко - Булево - Кратко
//
Процедура НаименованиеСистемыНалогообложения(Значение, СистемаНалогообложения, Кратко = Ложь) Экспорт;
// ++ Локализация
СистемыНалогообложения = Новый Соответствие();
Если Кратко Тогда
СистемыНалогообложения.Вставить(0, НСтр("ru='ОСН'"));
СистемыНалогообложения.Вставить(1, НСтр("ru='УСН доход'"));
СистемыНалогообложения.Вставить(2, НСтр("ru='УСН доход-расход'"));
СистемыНалогообложения.Вставить(3, НСтр("ru='ЕНВД'"));
СистемыНалогообложения.Вставить(4, НСтр("ru='ЕСН'"));
СистемыНалогообложения.Вставить(5, НСтр("ru='Патент'"));
Иначе
СистемыНалогообложения.Вставить(0, НСтр("ru='Общая'"));
СистемыНалогообложения.Вставить(1, НСтр("ru='Упрощенная Доход'"));
СистемыНалогообложения.Вставить(2, НСтр("ru='Упрощенная Доход минус Расход'"));
СистемыНалогообложения.Вставить(3, НСтр("ru='Единый налог на вмененный доход'"));
СистемыНалогообложения.Вставить(4, НСтр("ru='Единый сельскохозяйственный налог'"));
СистемыНалогообложения.Вставить(5, НСтр("ru='Патентная система налогообложения'"));
КонецЕсли;
Значение = СистемыНалогообложения.Получить(СистемаНалогообложения);
// -- Локализация
КонецПроцедуры
///////////////////////////////////////////////////////////////////////////////
// Коды видов документов
// Возвращает код вида документа удостоверяющего личность ККТ.
//
// Параметры:
// Код - Число
// ВидДокументаУдостоверяющегоЛичность - ПеречислениеСсылка - Вид документа удостоверяющего личность
//
Процедура КодВидДокументаУдостоверяющегоЛичность(Код, ВидДокументаУдостоверяющегоЛичность) Экспорт
// ++ Локализация
ВидДокумента = Новый Соответствие();
ВидДокумента.Вставить(ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ПаспортГражданинаРФ"), 21);
ВидДокумента.Вставить(ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ПаспортГражданинаРФЗаПределамиРФ"), 22);
ВидДокумента.Вставить(ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ВременноеУдостоверениеЛичностиГражданинаРФ"), 26);
ВидДокумента.Вставить(ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.СвидетельствоОРожденииГражданинаРФ"), 27);
ВидДокумента.Вставить(ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ИныеДокументыУдостоверяющиеЛичностьГражданинаРФ"), 28);
ВидДокумента.Вставить(ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ПаспортИностранногоГражданина"), 31);
ВидДокумента.Вставить(ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ИныеДокументыУдостоверяющимиЛичностьИностранногоГражданина"), 32);
ВидДокумента.Вставить(ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ДокументВыданныйИностраннымГосударствомУдостоверяющегоЛичностьБезГражданства"), 33);
ВидДокумента.Вставить(ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ВидНаЖительствоДляЛицБезГражданства"), 34);
ВидДокумента.Вставить(ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.РазрешениеНаВременноеПроживаниеДляЛицБезГражданства"), 35);
ВидДокумента.Вставить(ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.СвидетельствоОРасХодатайстваОПризнанииЛицаБезГражданстваБеженцемНаТерриторииРФ"), 36);
ВидДокумента.Вставить(ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.УдостоверениеБеженца"), 37);
ВидДокумента.Вставить(ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ИныеДокументыУдостоверяющимиЛичностьЛицБезГражданстваРФ"), 38);
// АПК: 1036-выкл - ограничение длины идентификатора
ВидДокумента.Вставить(ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ДокументУдостовЛичностьЛицаНаПериодРассмотренияЗаявленияОПризнанииГражданиномРФ"), 40);
// АПК: 1036-вкл
Код = ВидДокумента.Получить(ВидДокументаУдостоверяющегоЛичность);
// -- Локализация
КонецПроцедуры
// Возвращает вида документа удостоверяющего личность ККТ по коду.
//
// Параметры:
// Значение - ПеречислениеСсылка
// КодВидаДокументаУдостоверяющегоЛичность - Число - Код вида документа удостоверяющего личность.
//
Процедура ВидДокументаУдостоверяющегоЛичностьПоКоду(Значение, КодВидаДокументаУдостоверяющегоЛичность) Экспорт
// ++ Локализация
ВидДокумента = Новый Соответствие();
ВидДокумента.Вставить(21, ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ПаспортГражданинаРФ"));
ВидДокумента.Вставить(22, ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ПаспортГражданинаРФЗаПределамиРФ"));
ВидДокумента.Вставить(26, ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ВременноеУдостоверениеЛичностиГражданинаРФ"));
ВидДокумента.Вставить(27, ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.СвидетельствоОРожденииГражданинаРФ"));
ВидДокумента.Вставить(28, ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ИныеДокументыУдостоверяющиеЛичностьГражданинаРФ"));
ВидДокумента.Вставить(31, ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ПаспортИностранногоГражданина"));
ВидДокумента.Вставить(32, ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ИныеДокументыУдостоверяющимиЛичностьИностранногоГражданина"));
ВидДокумента.Вставить(33, ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ДокументВыданныйИностраннымГосударствомУдостоверяющегоЛичностьБезГражданства"));
ВидДокумента.Вставить(34, ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ВидНаЖительствоДляЛицБезГражданства"));
ВидДокумента.Вставить(35, ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.РазрешениеНаВременноеПроживаниеДляЛицБезГражданства"));
ВидДокумента.Вставить(36, ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.СвидетельствоОРасХодатайстваОПризнанииЛицаБезГражданстваБеженцемНаТерриторииРФ"));
ВидДокумента.Вставить(37, ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.УдостоверениеБеженца"));
ВидДокумента.Вставить(38, ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ИныеДокументыУдостоверяющимиЛичностьЛицБезГражданстваРФ"));
// АПК: 1036-выкл ограничение длины идентификатора
ВидДокумента.Вставить(40, ПредопределенноеЗначение("Перечисление.ВидДокументаУдостоверяющегоЛичностьККТ.ДокументУдостовЛичностьЛицаНаПериодРассмотренияЗаявленияОПризнанииГражданиномРФ"));
// АПК: 1036-вкл
Значение = ВидДокумента.Получить(КодВидаДокументаУдостоверяющегоЛичность);
// -- Локализация
КонецПроцедуры
///////////////////////////////////////////////////////////////////////////////
// Коды расчетов, признаков расчетов и предметов расчетов
// Возвращает текстовое представление типа оплаты на ККТ по версии ФФД
//
// Параметры:
// Наименование - Строка
// ТипОплатыККТ - ПеречислениеСсылка.ТипыОплатыККТ
// ВерсияФФД - Строка - "1.0", "1.1", "1.2"
//
Процедура НаименованиеТипаОплатыККТ(Наименование, ТипОплатыККТ, ВерсияФФД) Экспорт
// ++ Локализация
ТаблицаТипОплатыККТ = Новый Соответствие();
Если ВерсияФФД = "1.0" Тогда
ТаблицаТипОплатыККТ.Вставить(ПредопределенноеЗначение("Перечисление.ТипыОплатыККТ.Наличные"), " "+НСтр("ru='НАЛИЧНЫМИ='"));
ТаблицаТипОплатыККТ.Вставить(ПредопределенноеЗначение("Перечисление.ТипыОплатыККТ.Электронно"), " "+НСтр("ru='ЭЛЕКТРОННЫМИ='"));
ТаблицаТипОплатыККТ.Вставить(ПредопределенноеЗначение("Перечисление.ТипыОплатыККТ.Предоплата"), " "+НСтр("ru='ЭЛЕКТРОННЫМИ='"));
ТаблицаТипОплатыККТ.Вставить(ПредопределенноеЗначение("Перечисление.ТипыОплатыККТ.Постоплата"), " "+НСтр("ru='ЭЛЕКТРОННЫМИ='"));
ТаблицаТипОплатыККТ.Вставить(ПредопределенноеЗначение("Перечисление.ТипыОплатыККТ.ВстречноеПредоставление"), " "+НСтр("ru='ЭЛЕКТРОННЫМИ='"));
Иначе
ТаблицаТипОплатыККТ.Вставить(ПредопределенноеЗначение("Перечисление.ТипыОплатыККТ.Наличные"), " "+НСтр("ru='НАЛИЧНЫМИ='"));
ТаблицаТипОплатыККТ.Вставить(ПредопределенноеЗначение("Перечисление.ТипыОплатыККТ.Электронно"), " "+НСтр("ru='БЕЗНАЛИЧНЫМИ='"));
ТаблицаТипОплатыККТ.Вставить(ПредопределенноеЗначение("Перечисление.ТипыОплатыККТ.Предоплата"), " "+НСтр("ru='ПРЕДВАРИТЕЛЬНАЯ='"));
ТаблицаТипОплатыККТ.Вставить(ПредопределенноеЗначение("Перечисление.ТипыОплатыККТ.Постоплата"), " "+НСтр("ru='ПОСЛЕДУЮЩАЯ='"));
ТаблицаТипОплатыККТ.Вставить(ПредопределенноеЗначение("Перечисление.ТипыОплатыККТ.ВстречноеПредоставление"), " "+НСтр("ru='ИНАЯ ФОРМА='"));
КонецЕсли;
Наименование = ТаблицаТипОплатыККТ.Получить(ТипОплатыККТ);
// -- Локализация
КонецПроцедуры
// Возвращает код признака способа расчета.
//
// Параметры:
// Код - Число
// ПризнакПредметаРасчета - ПеречислениеСсылка.ПризнакиПредметаРасчета - Признак предмета расчета.
//
Процедура КодПризнакаПредметаРасчета(Код, ПризнакПредметаРасчета) Экспорт
// ++ Локализация
ПризнакиПредметаРасчета = Новый Соответствие();
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.Товар") , 1);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ПодакцизныйТовар") , 2);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.Работа") , 3);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.Услуга") , 4);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.СтавкаАзартнойИгры") , 5);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ВыигрышАзартнойИгры") , 6);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ЛотерейныйБилет") , 7);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ВыигрышЛотереи") , 8);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ПредоставлениеРИД") , 9);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.Платеж") , 10);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.АгентскоеВознаграждение"), 11);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.Выплата") , 12);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ИнойПредметРасчета") , 13);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ИмущественноеПраво") , 14);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ВнереализационныйДоход") , 15);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.СтраховыеВзносы") , 16);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ТорговыйСбор") , 17);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.КурортныйСбор") , 18);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ТуристическийНалог") , 18);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.Залог") , 19);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.Расход") , 20);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ОбязательноеПенсионноеСтрахованиеИП") , 21);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ОбязательноеПенсионноеСтрахование") , 22);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ОбязательноеМедицинскоеСтрахованиеИП"), 23);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ОбязательноеМедицинскоеСтрахование") , 24);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ОбязательноеСоциальноеСтрахование") , 25);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ПлатежКазино") , 26);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ПлатежВыплата") , 10);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.СоставнойПредметРасчета"), 10);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ВыдачаДенежныхСредств"), 27);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ПодакцизныйТоварМаркируемыйСИНеИмеющийКМ") , 30);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ПодакцизныйТоварМаркируемыйСИИмеющийКМ") , 31);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ТоварМаркируемыйСИНеИмеющийКМ"), 32);
ПризнакиПредметаРасчета.Вставить(ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ТоварМаркируемыйСИИмеющийКМ") , 33);
Код = ПризнакиПредметаРасчета.Получить(ПризнакПредметаРасчета);
// -- Локализация
КонецПроцедуры
// Возвращает признак способа расчета по коду.
//
// Параметры:
// Значение - ПеречислениеСсылка.ПризнакиПредметаРасчета
// КодПризнакаПредметаРасчета - Число - Код признака предмета расчета.
//
Процедура ПризнакПредметаРасчетаПоКоду(Значение, КодПризнакаПредметаРасчета) Экспорт
// ++ Локализация
ПризнакиПредметаРасчета = Новый Соответствие();
ПризнакиПредметаРасчета.Вставить(1, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.Товар"));
ПризнакиПредметаРасчета.Вставить(2, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ПодакцизныйТовар"));
ПризнакиПредметаРасчета.Вставить(3, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.Работа"));
ПризнакиПредметаРасчета.Вставить(4, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.Услуга"));
ПризнакиПредметаРасчета.Вставить(5, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.СтавкаАзартнойИгры"));
ПризнакиПредметаРасчета.Вставить(6, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ВыигрышАзартнойИгры"));
ПризнакиПредметаРасчета.Вставить(7, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ЛотерейныйБилет"));
ПризнакиПредметаРасчета.Вставить(8, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ВыигрышЛотереи"));
ПризнакиПредметаРасчета.Вставить(9, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ПредоставлениеРИД"));
ПризнакиПредметаРасчета.Вставить(10, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.Платеж"));
ПризнакиПредметаРасчета.Вставить(11, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.АгентскоеВознаграждение"));
ПризнакиПредметаРасчета.Вставить(12, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.Выплата"));
ПризнакиПредметаРасчета.Вставить(13, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ИнойПредметРасчета"));
ПризнакиПредметаРасчета.Вставить(14, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ИмущественноеПраво"));
ПризнакиПредметаРасчета.Вставить(15, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ВнереализационныйДоход"));
ПризнакиПредметаРасчета.Вставить(16, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.СтраховыеВзносы"));
ПризнакиПредметаРасчета.Вставить(17, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ТорговыйСбор"));
ПризнакиПредметаРасчета.Вставить(18, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ТуристическийНалог"));
ПризнакиПредметаРасчета.Вставить(19, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.Залог"));
ПризнакиПредметаРасчета.Вставить(20, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.Расход"));
ПризнакиПредметаРасчета.Вставить(21, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ОбязательноеПенсионноеСтрахованиеИП"));
ПризнакиПредметаРасчета.Вставить(22, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ОбязательноеПенсионноеСтрахование"));
ПризнакиПредметаРасчета.Вставить(23, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ОбязательноеМедицинскоеСтрахованиеИП"));
ПризнакиПредметаРасчета.Вставить(24, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ОбязательноеМедицинскоеСтрахование"));
ПризнакиПредметаРасчета.Вставить(25, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ОбязательноеСоциальноеСтрахование"));
ПризнакиПредметаРасчета.Вставить(26, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ПлатежКазино"));
ПризнакиПредметаРасчета.Вставить(27, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ВыдачаДенежныхСредств"));
ПризнакиПредметаРасчета.Вставить(30, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ПодакцизныйТоварМаркируемыйСИНеИмеющийКМ"));
ПризнакиПредметаРасчета.Вставить(31, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ПодакцизныйТоварМаркируемыйСИИмеющийКМ"));
ПризнакиПредметаРасчета.Вставить(32, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ТоварМаркируемыйСИНеИмеющийКМ"));
ПризнакиПредметаРасчета.Вставить(33, ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ТоварМаркируемыйСИИмеющийКМ"));
Значение = ПризнакиПредметаРасчета.Получить(КодПризнакаПредметаРасчета);
// -- Локализация
КонецПроцедуры
// Возвращает наименование признака предмета расчета по коду.
//
// Параметры:
// Наименование - Строка
// КодПризнакаПредметаРасчета -Число - Код признака предмета расчета.
//
Процедура НаименованиеПризнакаПредметаРасчета(Наименование, КодПризнакаПредметаРасчета) Экспорт
// ++ Локализация
ПризнакиПредметаРасчета = Новый Соответствие();
ПризнакиПредметаРасчета.Вставить(1, НСтр("ru='ТОВАР'"));
ПризнакиПредметаРасчета.Вставить(2, НСтр("ru='ПОДАКЦИЗНЫЙ ТОВАР'"));
ПризнакиПредметаРасчета.Вставить(3, НСтр("ru='РАБОТА'"));
ПризнакиПредметаРасчета.Вставить(4, НСтр("ru='УСЛУГА'"));
ПризнакиПредметаРасчета.Вставить(5, НСтр("ru='СТАВКА АЗАРТНОЙ ИГРЫ'"));
ПризнакиПредметаРасчета.Вставить(6, НСтр("ru='ВЫИГРЫШ АЗАРТНОЙ ИГРЫ'"));
ПризнакиПредметаРасчета.Вставить(7, НСтр("ru='СТАВКА ЛОТЕРЕИ'"));
ПризнакиПредметаРасчета.Вставить(8, НСтр("ru='ВЫИГРЫШ ЛОТЕРЕИ'"));
ПризнакиПредметаРасчета.Вставить(9, НСтр("ru='ПРЕДОСТАВЛЕНИЕ РИД'"));
ПризнакиПредметаРасчета.Вставить(10, НСтр("ru='ПЛАТЕЖ'"));
ПризнакиПредметаРасчета.Вставить(11, НСтр("ru='АГЕНТСКОЕ ВОЗНАГРАЖДЕНИЕ'"));
ПризнакиПредметаРасчета.Вставить(12, НСтр("ru='ВЫПЛАТА'"));
ПризнакиПредметаРасчета.Вставить(13, НСтр("ru='ИНОЙ ПРЕДМЕТ РАСЧЕТА'"));
ПризнакиПредметаРасчета.Вставить(14, НСтр("ru='ИМУЩЕСТВЕННОЕ ПРАВО'"));
ПризнакиПредметаРасчета.Вставить(15, НСтр("ru='ВНЕРЕАЛИЗАЦИОННЫЙ ДОХОД'"));
ПризнакиПредметаРасчета.Вставить(16, НСтр("ru='ИНЫЕ ПЛАТЕЖИ И ВЗНОСЫ'"));
ПризнакиПредметаРасчета.Вставить(17, НСтр("ru='ТОРГОВЫЙ СБОР'"));
ПризнакиПредметаРасчета.Вставить(18, НСтр("ru='ТУРИСТИЧЕСКИЙ НАЛОГ'"));
ПризнакиПредметаРасчета.Вставить(19, НСтр("ru='ЗАЛОГ'"));
ПризнакиПредметаРасчета.Вставить(20, НСтр("ru='РАСХОД'"));
ПризнакиПредметаРасчета.Вставить(21, НСтр("ru='ВЗНОСЫ НА ОПС ИП'"));
ПризнакиПредметаРасчета.Вставить(22, НСтр("ru='ВЗНОСЫ НА ОПС'"));
ПризнакиПредметаРасчета.Вставить(23, НСтр("ru='ВЗНОСЫ НА ОМС ИП'"));
ПризнакиПредметаРасчета.Вставить(24, НСтр("ru='ВЗНОСЫ НА ОМС'"));
ПризнакиПредметаРасчета.Вставить(25, НСтр("ru='ВЗНОСЫ НА ОСС'"));
ПризнакиПредметаРасчета.Вставить(26, НСтр("ru='ПЛАТЕЖ КАЗИНО'"));
ПризнакиПредметаРасчета.Вставить(27, НСтр("ru='ВЫДАЧА ДЕНЕЖНЫХ СРЕДСТВ'"));
ПризнакиПредметаРасчета.Вставить(30, НСтр("ru='АТНМ'"));
ПризнакиПредметаРасчета.Вставить(31, НСтр("ru='АТМ'"));
ПризнакиПредметаРасчета.Вставить(32, НСтр("ru='ТНМ'"));
ПризнакиПредметаРасчета.Вставить(33, НСтр("ru='ТМ'"));
Наименование = ПризнакиПредметаРасчета.Получить(КодПризнакаПредметаРасчета);
// -- Локализация
КонецПроцедуры
#КонецОбласти
#КонецОбласти