В начало

Автозаполнение актуальной цены

 

            Есть документ «ОказаниеУслуги», есть также регистр сведений «Цены», в котором хранятся актуальные цены на услуги в зависимости от времени их оказания.

            Необходимо обеспечить автоматическое заполнение цены в документе «ОказаниеУслуги» после выбора вида услуг и соответственно пересчет суммы, если документ был проведен ранее.

&НаСервере

Функция АктуальнаяЦена  (АктуальнаяДата, ЭлементНоменклатуры)

      //Создаем структуру

      Отбор = Новый Структура ("Номенклатура", ЭлементНоменклатуры);

     

      //Получаем АКТУАЛЬНУЮ цену

      ЗначенияРесурсов = РегистрыСведенийены.ПолучитьПоследнее (АктуальнаяДата, Отбор);

      Возврат ЗначенияРесурсовена;

КонецФункции

 

 

&НаКлиенте

Процедура ПереченьНоменклатурыНоменклатураПриИзменении (Элемент)

      //Доступ к элементам ТАБЛИЧНОЙ части документа "ОказаниеУслуг"

      Стр = ЭлементыереченьНоменклатуры.ТекущиеДанные;

     

      //Берем цену на момент создания документа

      //Объектата - дата создания документа

      //Строменклатура - элемент табличной части документа

      Стрена = АктуальнаяЦена  (Объект.Дата, Стр.Номенклатура);

     

      //Пересчитываем сумму с учетом АКТУАЛЬНОЙ цены

      Струмма = Стр.Цена * Стр.Количество;

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

 

 

ПРИМЕЧАНИЕ: процедуры проверены на 1С: Предприятие 8.2.