1С:Фриланс
21.05
Добавить расчет Акциза в ВПФ СФ и УПД
https://1clancer.ru/task/76034
расчет акциза скопипастить из УТ, нужные регистры заведены в бух базе
этот код надо адаптировать
Если СтрокаДокумента.Номенклатура.АлкогольнаяПродукция И НЕ СтрокаДокумента.Номенклатура.Покупное Тогда СтавкаАкциза = ПолучитьСуммуАкцизаНаЕдиницуПродукции("Пиво",ДанныеШапки.Дата); Акциз = СтрокаДокумента.Количество * СтавкаАкциза * КоэффициентАкциза; Попытка Если ЗначениеЗаполнено(СтрокаДокумента.Упаковка) Тогда Если Строка(СтрокаДокумента.Упаковка) = "банка 3 л" Тогда Акциз = Акциз3; ИначеЕсли Строка(СтрокаДокумента.Упаковка) = "банка 2 л" Тогда Акциз = Акциз2; КонецЕсли; КонецЕсли; Исключение Если Строка(СтрокаДокумента.Номенклатура.ОсновнаяЕдиница) = "банка 3 л" Тогда Акциз = Акциз3; ИначеЕсли Строка(СтрокаДокумента.Номенклатура.ОсновнаяЕдиница) = "банка 2 л" Тогда Акциз = Акциз2; КонецЕсли; КонецПопытки; Если Строка(СтрокаДокумента.Номенклатура) = "Пиво фильтрованное непастеризованное светлое ""Косоухофф Ячменный колос"" 3 л" Тогда Акциз = Акциз*3; КонецЕсли; Иначе Акциз = "без акциза"; КонецЕсли;
СахаросодержащийНапиток = УправлениеСвойствами.ЗначениеСвойства(СтрокаДокумента.Номенклатура,"СлабоалкогольныйНапитокАкциз_de5f0ca61d344beb94d08e31f48510d1"); Если ЗначениеЗаполнено(СахаросодержащийНапиток) Тогда СтавкаАкциза = ПолучитьСуммуАкцизаНаЕдиницуПродукции("Сахар",ДанныеШапки.Дата); Акциз = СтрокаДокумента.КоличествоСтавкаАкцизаКоэффициентАкциза; КонецЕсли;
СтрокаДокумента.Акциз = Акциз;
и функция
Функция ПолучитьСуммуАкцизаНаЕдиницуПродукции(ВидПродукции, ДатаСреза) Экспорт Акциз = 0; Если ВидПродукции = "Пиво" Тогда Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | АкцизыСрезПоследних.СуммаАкциза КАК СуммаАкциза |ИЗ | РегистрСведений.Акцизы.СрезПоследних(&ДатаСреза, ) КАК АкцизыСрезПоследних";
Запрос.УстановитьПараметр("ДатаСреза", ДатаСреза); РезультатЗапроса = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл Акциз = ВыборкаДетальныеЗаписи.СуммаАкциза; КонецЦикла; ИначеЕсли ВидПродукции = "Сахар" Тогда Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | АкцизыСахаросодержащиеНапиткиСрезПоследних.СуммаАкциза КАК СуммаАкциза |ИЗ | РегистрСведений.АкцизыСахаросодержащиеНапитки.СрезПоследних(&ДатаСреза) КАК АкцизыСахаросодержащиеНапиткиСрезПоследних";
Запрос.УстановитьПараметр("ДатаСреза",ДатаСреза); РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл Акциз = ВыборкаДетальныеЗаписи.СуммаАкциза; КонецЦикла; КонецЕсли; Возврат(Акциз); КонецФункции
ВПФ пришлю
еще контент в этом сообществе
еще контент в этом соообществе
1С:Фриланс
21.05
войдите, чтобы увидеть
и подписаться на интересных профи