Скидка (наценка) процентом на самые дешевые позиции в чеке

11.11.18

Задачи пользователя - Прайсы

Внешняя обработка для УТ11, добавляющая скидку (наценку) процентом на самые дешевые позиции в чеке кратно условиям.

Скачать файл

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

Наименование По подписке [?] Купить один файл
СкидкаНаценкаПроцентНаСамыеДешевые.epf
.epf 9,10Kb ver:1.0
71
71 Скачать (1 SM) Купить за 1 850 руб.

Данная обработка позволяет вводить скидки процентом не на все позиции в чеке, а на самые дешевые позиции, кратно выполнению условий скидки. Данный тип скидок позволяет увеличить количество позиций в чеке. Пример условий для скидки: Сумма в документе не менее 2 000 руб., Количество в документе не менее 2 ед.. В результате на каждый второй товар при условии, что сумма чека не менне 2000 будет выдана скидка (например 20 %).

Обработка сделана на основе примера из поставки УТ 11. Основной кусок кода отвечающий за расчет скидки.

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

Обработка добавляется как обычно в справочник "Дополнительные отчеты и обработки". После добавления обработки, в справочнике "Скидки (наценки)" появится новый тип скидки "Процент на самые дешевые товары". Установка размера скидки производится с помощью кнопки "Настроить", все остальное стандартно.

Обработка разрабатывалась и тестировать на УТ 11.4.3.126. Платформа 8.3.12.1616

Скидки Наценки Розница УТ 11 Управление торговлей Внешняя обработка

См. также

ККМ Кассовые операции Розничная торговля Системный администратор Программист Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Бухгалтерия государственного учреждения 1С:Бухгалтерия 1.6 1С:Бухгалтерия автономного учреждения Россия Платные (руб)

Универсальная обработка для обслуживания любых фискальных регистраторов (ККТ), в том числе Веб сервер АТОЛ. Работает в соответствии с 54-ФЗ. (ФФД 1.0, ФФД 1.05, ФФД 1.1, ФФД 1.2). Подключайте любую онлайн кассу к практически любой конфигурации. Нет необходимости обновлять 1С. Можно бесплатно скачать и протестировать. Может работать одновременно с несколькими онлайн-кассами, либо одной с разных рабочих мест. (через RDP, TCP\IP или веб-сервер) Позволяет разделить один чек сразу на несколько ККТ или на несколько систем налогообложения. Поддерживает разрешительный режим и маркировку. Можно настроить собственный шаблонов чека. Можно использовать эквайринг там, где он не поддерживается. Работает на LINUX и Windows

6000 руб.

27.02.2017    808696    5128    9736    

2923

Оптовая торговля Розничная торговля Обмен с ГосИС Бухгалтер Платформа 1С v8.3 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Россия Бухгалтерский учет Управленческий учет Акцизы Платные (руб)

Автоматизация учета ЕГАИС в 1С для оптовой торговли, производства и импорта. Получение и отправка ТТН, отправка акта о постановке на баланс и акта о списании. Получение остатков. Загрузка и сопоставление номенклатуры и контрагентов. Оправка в ЕГАИС отчетов о производстве и импорте.

828 руб.

15.12.2015    172086    855    368    

404

ККМ Кассовые операции Розничная торговля Системный администратор Программист Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Бухгалтерия государственного учреждения 1С:Бухгалтерия автономного учреждения Россия Платные (руб)

Обработка осуществляет обслуживание ККТ АТОЛ, Штрих, Вики Принт и Меркурий для конфигураций "УТ 10.3", "КА 1.1", "УПП 1.3", "Розница 1.0", "БП 2.0" и других отраслевых решений, построенных на основе указанных выше конфигурациях. Поддерживает возможность параллельно пробития чеков на одной ККМ несколькими пользователями. Поддерживает Веб-сервер Атол. Соответствует требованиям 54-ФЗ. Поддерживает ФФД 1.0, 1.05, 1.1 и 1.2. Разделяет чеки по нескольким СНО. Поддерживает механизмы подключения ККТ по TCP/IP, для работы через RDP или интернет. Поддержка маркировки и разрешительного режима. Поддержка пробития чеков с новыми ставками НДС 5% и НДС 7%.

5880 руб.

25.05.2015    340200    2041    3112    

1058

Загрузка и выгрузка в Excel Логистика, склад и ТМЦ Ценообразование, анализ цен Файловый обмен (TXT, XML, DBF), FTP Бухгалтер Пользователь Платформа 1С v8.3 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.02.2025, версия 9.9 - 9.15)

16800 руб.

20.11.2015    158179    384    378    

516

ККМ Розничная торговля Системный администратор Программист Платформа 1С v8.3 Оперативный учет 1С:Розница 2 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Обмен между 1С:Розница и Frontol 6 при торговле от нескольких организаций, а также ряд других полезных функций. Данный модуль синхронизации незаменим для тех, кто ведёт учет по нескольким организациям в 1С:Розница, а на РМК (рабочем месте кассира) установлен Frontol или планируется его установка. Подходит для 1С:Розница 2.3 / 3.0, 1С:УНФ 3.0

7900 руб.

22.03.2019    86117    556    479    

194
Оставьте свое сообщение