Установление скидки / наценки при указании количества кратно упаковке

24.06.26

Учетные задачи - Ценообразование, анализ цен

Внешняя обработка скидки/наценки, которая анализирует количество товара в строке документа и устанавливает скидку наценку на количество товара кратно/не кратно количеству в упаковке из настроек.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Установление скидки / наценки при указании количества кратно упаковке
.epf 10,04Kb
0 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Поставщик запустил акцию: 5% скидка за количество товара, выписанное кратно  2 упаковкам.

Т.е. если в упаковке 10 шт, а в заказе выписывается 21 шт, то скидка рассчитывается на 20 шт, 1шт. идет по полной стоимости без скидки.

Аналогично и с наценкой, наценка делается на количество товара не кратного упаковке.

Ничего готового найти не удалось, пришлось вспоминать, как пишутся внешние скидки. В результате родилась данная обработка. Код не оптимизировался, вполне возможны более изящные решения, но задача была решена.

Обработка тестировалась и работает на конфигурации УТ 11.5.26.118, на более ранних версиях может не работать.

Функция Рассчитать(СкидкаНаценка, Настройки, Товары, ПараметрыРасчета) Экспорт
	
	ТекущийКвант = 0;
	ТекущийПроцент = 0;
	ТекущаяЕд = Справочники.УпаковкиЕдиницыИзмерения.ПустаяСсылка();
	
	Если ТипЗнч(Настройки) = Тип("Структура") Тогда
		Если Настройки.Свойство("ПроцентСкидки") Тогда
			ТекущийПроцент = Настройки.ПроцентСкидки;
		КонецЕсли;
		Если Настройки.Свойство("Квант") Тогда
			ТекущийКвант = Настройки.Квант;
		КонецЕсли;
		Если Настройки.Свойство("Ед") Тогда
			ТекущаяЕд = Настройки.Ед;
		КонецЕсли;
	КонецЕсли;    
	
	Запрос = Новый Запрос;
	Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
	               |	УпаковкиЕдиницыИзмерения.Числитель КАК КоличествоВУпаковке
	               |ИЗ
	               |	Справочник.УпаковкиЕдиницыИзмерения КАК УпаковкиЕдиницыИзмерения
	               |ГДЕ
	               |	УпаковкиЕдиницыИзмерения.Владелец = &Номенклатура
	               |	И УпаковкиЕдиницыИзмерения.ЕдиницаИзмерения = &ЕдиницаИзмерения";
	Запрос.УстановитьПараметр("ЕдиницаИзмерения",ТекущаяЕд);

	РезультатРасчета = СкидкиНаценкиСервер.ПустаяТаблицаСкидокСРасшифровкой();
	Если ТекущийКвант = 0 или ТекущийПроцент = 0 Тогда
		Возврат РезультатРасчета;
	КонецЕсли;
		
	// Пробегаем по строкам ТЧ документа (Заказ, Реализация, Чек ККМ)
	Для Каждого СтрокаТовара Из Товары Цикл
		
		// Пропускаем пустые строки или услуги, если это необходимо
		Если Не ЗначениеЗаполнено(СтрокаТовара.Номенклатура) Тогда
			Продолжить;
		КонецЕсли;
		
		Если СтрокаТовара.Количество > 0 Тогда			
			
			Если Не ЗначениеЗаполнено(ТекущаяЕд) Тогда 
				Возврат РезультатРасчета;
			КонецЕсли;
				
			Запрос.УстановитьПараметр("Номенклатура",СтрокаТовара.Номенклатура);
			Результат = Запрос.Выполнить().Выбрать();
			КоличествоВУпаковке = 1;
			Пока Результат.Следующий() Цикл
				КоличествоВУпаковке = Результат.КоличествоВУпаковке;
			КонеЦцикла;
			ТекущийКвант = ТекущийКвант * КоличествоВУпаковке;
			Если ТекущийПроцент    < 0 Тогда // Это наценка на товар не кратный упаковке
                КоличествоСоСкидкой = СтрокаТовара.Количество - Цел(СтрокаТовара.Количество/(ТекущийКвант))*КоличествоВУпаковке; // количество не в упаковках
                СуммаАвтоматическойСкидки = КоличествоСоСкидкой * СтрокаТовара.Цена * ТекущийПроцент/100;
			Иначе
				КоэфЦены = СтрокаТовара.Количество/СтрокаТовара.КоличествоУпаковок;
                КоличествоКвантов = Цел(СтрокаТовара.Количество/ТекущийКвант);				
                СуммаАвтоматическойСкидки = КоличествоКвантов * ТекущийКвант * СтрокаТовара.Цена/КоэфЦены * ТекущийПроцент/100;
            КонецЕсли;			
			СкидкиНаценкиСервер.ПрименитьЗначениеСкидкиКТовару(СкидкаНаценка, СуммаАвтоматическойСкидки, СтрокаТовара, РезультатРасчета, ПараметрыРасчета);			
		КонецЕсли;
		
	КонецЦикла;
    Возврат РезультатРасчета;
	
КонецФункции

 

 

Проверено на следующих конфигурациях и релизах:

  • Управление торговлей, редакция 11, релизы 11.5.26.118

Вступайте в нашу телеграмм-группу Инфостарт

Скидка наценка внешняя обработка

См. также

Загрузка и выгрузка в Excel Розничная торговля Логистика, склад и ТМЦ Ценообразование, анализ цен Прайсы Системный администратор Программист 1С:Предприятие 8 1С:Комплексная автоматизация 1.х 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Загрузка номенклатуры из файлов Excel (xls, xlsx, ods, csv, mxl) в УТ11, КА 2, ERP 2, Розница 2. Задействованы все возможности конфигурации - заполнение реквизитов номенклатуры, дополнительных реквизитов и сведений, характеристики, доп.реквизиты и сведения характеристик. Дополнительные обработки для расширения возможностей.

12444 руб.

29.10.2014    235804    765    544    

505

SALE! 10%

Загрузка и выгрузка в Excel Логистика, склад и ТМЦ Ценообразование, анализ цен Файловый обмен (TXT, XML, DBF), FTP Бухгалтер Пользователь 1С:Предприятие 8 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Эволюция не стоит на месте - новая удобная версия функциональной обработки для Вашего бизнеса! Что же Вы получаете? Удобный и интуитивно понятный интерфейс с 3-мя этапами работы. 2 режима - автоматический и ручной. Чтение XLSX, XLSM, CSV, XML/YML форматов без офиса, на любом сервере! Визуальное связывание колонок файла и реквизитов простым перетаскиванием колонок. Создание или обновление номенклатуры с иерархией, характеристик, доп. реквизитов, упаковок, загрузка практически неограниченного количества картинок на одну номенклатуру (с возможностью загрузки в несколько потоков одновременно), с хранением в томах или в базе. Загрузка номенклатуры поставщиков или поиск по их данным номенклатуры. Загрузка доп. реквизитов в характеристики. Загрузка штрихкодов с генерацией новых. Создание элементов справочников и ПВХ "на лету" для выбранных реквизитов. (Обновление от 10.09.2026, версия 9.4.0 - 10.8.0)

20740 18666 руб.

20.11.2015    178515    429    401    

545

Сканер штрих-кода Терминал сбора данных Мобильная разработка Монитор заказов Оптовая торговля Розничная торговля Ценообразование, анализ цен Программист Пользователь 1С:Предприятие 8 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Простой мобильный ТСД (терминал сбора данных) сканер для 1С для смартфонов на iOS и Android, не требующий сложных настроек и установки дополнительных программ. Обмен между Вашей 1С и мобильным приложением осуществляется через облачный сервис и расширение конфигурации. Работает с конфигурациями УТ 11, ERP, КА2, Розница 2, Розница 3, УНФ 1.6, УНФ 3.0. Полнофункциональный демо-доступ для своей конфигурации можно запросить в настройках мобильного приложения - все необходимое придет на почту автоматически. Решение предназначено для считывания штрихкодов, а не для их создания и печати.

3050 руб.

22.04.2019    123248    729    207    

387

Ценообразование, анализ цен Роли и права Системный администратор 1С:Предприятие 8 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Расширение возможностей программы 1С:УНФ 1.6 и 3.0. Функционал расширения - разграничение всевозможных прав пользователей и контроль при совершении различных действий.

5100 руб.

23.02.2018    68721    181    264    

169

Прайсы Оптовая торговля Розничная торговля Ценообразование, анализ цен Пользователь 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Форма для упрощения заведения скидок/наценок со всеми сопутствующими элементами (установка цены, создание сегмента номенклатуры и условиями предоставления скидок/наценок).

7990 руб.

21.07.2020    11693    10    2    

17

Ценообразование, анализ цен Бухгалтер Пользователь 1С:Предприятие 8 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Расширение добавляет возможность рассчитать (изменить) цену как процент от другого вида цены в документе Установка цен номенклатуры. Для конфигураций УТ 11.5 и Розница 2.3

7320 руб.

10.08.2022    11139    7    7    

10

Маркетплейсы Ценообразование, анализ цен Пользователь 1С 8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

В последнее время маркетплейсы регулярно и без предупреждения меняют комиссии на своих площадках, поэтому нужно постоянно контролировать и оперативно менять цены, чтобы не «прогореть». Какой-то товар может неожиданно попасть в категорию с другой комиссией или изменить весогабаритные характеристики, от которых сильно зависит стоимость логистики. Данные обработки помогут быстро выявить товары с наценкой ниже требуемой и установить рекомендуемую расчетную цену для выгрузки на маркетплейс.

3050 руб.

27.04.2026    792    3    0    

1
Для отправки сообщения требуется регистрация/авторизация