Шаг 266 - Автоматически получаем сумму в счет фактуру

Раз мы перепредьявляем услуги, то мы просто можем получить из регистров накопленную сумму за месяц. При выборе типа услуги мы вызываем функцию.

266_1.gif (5919 b)

Конечно в зависимости от услуги нужно использовать разные регистры. Как поступать? Я сделал просто, ID услуги в справочнике.

266_2.gif (5355 b)

И если выбрана услуга по аффинажу, то выбираю движение по регистру.

Процедура ПриВыбореУслуги()    
	Перем пр;
	пр=0;
	Если Услуга.ID=1 Тогда
		Если КомуПоставляем.Выбран()=0 Тогда
			Предупреждение("Вы не выбрали контрагента, выберите и попробуйте снова");
		Иначе	 
			Рег1 = СоздатьОбъект("Регистр.УслугиАфинажа");
			Рег1.УстановитьФильтр(КомуПоставляем);
			Рег1.ВыбратьДвижения(НачМесяца(ДатаДок),КонМесяца(ДатаДок));
			Пока Рег1.ПолучитьДвижение() > 0 Цикл 
				Пр=Пр+Рег1.Сумма;
			КонецЦикла;
			Сумма=Пр;
			СчитаемСумму();
		КонецЕсли;    
	Конецесли;

И теперь стоит выбрать услугу аффинажа, как тут же будет проанализирован регистр и сумму помещена в поле сумма. Все, ни какой дополнительной работы. Правда тут я использовал пока две не описанные ранее функции. Смотрите следующие шаги.


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