Шаг 260 - Как не выдавать то, чего нет на складе

Формируя отчет по складу Вы наверно сталкивались с ситуацией когда выписывается товар, который не оприходован. Это в корне не правильно. Никаких минусов на складе быть не может. Получается при выписывании счет фактуры нужно проверять наличие товара. В шаге "Шаг 15 - Номенклатура товара" товара было рассказано, как связать событие выбора из номенклатуры с некоторым действием. Получается, что нам просто нужно посмотреть СКД период, и если оно больше нуля, то все нормально (подробнее о СКД "Шаг 43 - Изучаем бухгалтерские итоги – СКД"). Вот примерно такой код:

Процедура Считаем() 
	Перем состоян;
	БухИтоги = СоздатьОбъект("БухгалтерскиеИтоги"); 
	состоян=БухИтоги.СКД("41.4","С",,Номенклатура); 
	
	Если состоян>0 Тогда 
		Цена= Номенклатура.Цена;
		Сумма=Цена*Количество;
		СуммаНДС=(Сумма/100)*НДС; 
		СуммаСНДС=Сумма+СуммаНДС;
	Иначе
		Предупреждение("Товара нет на складе");
	КонецЕсли;

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

И теперь при попытке выбора номенклатуры, которой нет на складе мы получим сообщение.

260_1.gif (13332 b)


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.