Разрешить продавать в чеках в минус УТ 11.5

Разрешить продавать в минус только в чеках при включенной галочке «Контролировать свободные остатки» оказалось не так сложно.

Расширяем модуль РаспределениеЗапасов, почему-то контроль остатков сделан тут:


&Вместо("СообщитьОбОшибкахПроведения")
Процедура дор_СообщитьОбОшибкахПроведения(Объект, Отказ, РезультатыКонтроля)
	
	Если ТипЗнч(Объект) = Тип("ДокументОбъект.ЧекККМ") Тогда
		
		Для Каждого ОшибкаКонтроля Из РезультатыКонтроля Цикл
			
			Количество = ОшибкаКонтроля.КоличествоСвободно;
			
			//Если остаток больше нуля, значит не хватает остатка
			Если Количество > 0 Тогда                            
				
				ОшибкаКонтроля.КоличествоСвободно = 0; //Сбрасываем контроль
				ТекстШаблон = НСтр("ru = 'Для отгрузки/резервирования товара ""%1"" недостаточно свободного остатка в количестве %2. Но для чеков разрешено продавать в минус!'");
				ТекстСообщения = СтрШаблон(ТекстШаблон, ОшибкаКонтроля.Номенклатура, Количество);
				Сообщить(ТекстСообщения);
			КонецЕсли;
			
		КонецЦикла;
		
	КонецЕсли;
	
	ПродолжитьВызов(Объект, Отказ, РезультатыКонтроля);

КонецПроцедуры

В итоге сообщение о нехватке товара показывается, но продавать на кассе разрешено. А вот для реализаций и других документов списания запасов контроль работает.

Среда: УТ 11.5.21.99. Объем: 0.8 час.

fixin

Программирую на 1С с 1999 года. В 1С просто Гений. В 2020 году ушел из офиса на вольные хлеба фриланса. Принимаю заказы.

Читайте также:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *