Автоматическое заполнение цены в документе ОказаниеУслуги

Итак, задачка, которая пред нами стоит, заключается в последующем. При разработке документа « ОказаниеУслуги» нам нужно обеспечить автоматическое наполнение поля « Цена» после того, как юзер изберет услугу. При этом стоимость услуги должна определяться исходя из даты создаваемого документа.

Найдем в конфигураторе документ « ОказаниеУслуги» и откроем его форму « ФормаДокумента». Откроем характеристики поля Автоматическое заполнение цены в документе ОказаниеУслуги ввода, размещенного в колонке « Номенклатура» и понизу перечня найдем событие « При изменении». Нажмем на кнопку с лупой и в открывшейся заготовке обработчика действия напишем последующий текст: ПроцедураПереченьНоменклагурыНоменклатураПриИзменении(Элемент)

//получить текущую строчку табличной части

СтрокаТабличнойЧасти = ЭлементыФормы.ПереченьНоменклатуры.ТекущиеДанные;

//установить стоимость

СтрокаТабличнойЧасти.Стоимость = РозничнаяЦенаДата, Элемент.Значение);

//перечесть сумму строчки

РассчитатьСумму(СтрокаТабличнойЧасти);

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

Прокомментируем содержимое Автоматическое заполнение цены в документе ОказаниеУслуги обработчика.

1-ая строчка обработчика вам уже знакома - мы получаем текущую строчку табличной части документа, потому что она нам пригодится в предстоящем.

Во 2-ой мы устанавливаем полученную стоимость в документе, вызывая нашу функцию « РозничнаяЦена». Первым параметром мы передаем дату документа, на которую нужно получить стоимость, а вторым параметром мы передаем ссылку, которую показывает Автоматическое заполнение цены в документе ОказаниеУслуги отран управления формой, вызвавший это событие ( Элемент.Значение), т.е. ссылку на элемент справочника « Номенклатура».

В заключение мы вызываем нашу функцию « РассчитатьСумму» из общего модуля « РаботаСДокументами» для того, чтоб она перечла итоговую сумму в строке нашего документа.

Проверим, как сейчас работает наш документ. Запустим 1С:Предприятие Автоматическое заполнение цены в документе ОказаниеУслуги в режиме отладки и откроем регистр сведений « Цены». Для транзистора Philips добавим последующим числом новейшую стоимость:



Сейчас откроем документ ОказаниеУслуги № 1. Как вы помните, этим документом мы как раз « израсходовали» один таковой транзистор.

Установим дату документа равной той дате, когда было задано 1-ое значение цены транзистора, и повторим выбор транзистора в колонке Автоматическое заполнение цены в документе ОказаниеУслуги « Номенклатура» табличной части документа. Автоматом установится 1-ое значение цены:


Реорганизация справочника Номенклатура

Откроем конфигуратор и сделаем поначалу новый объект конфигурации Перечисление с именованием «ВидыНоменклатуры».

На закладке « Данные» добавим два значения перечисления: «Материал» и «Услуга»:

Потом добавим в справочни «Номенклатура» новый реквизит к « ВидНоменклатуры» с типом ПеречислениеСсылка.ВидыНоменклатуры:


После Автоматическое заполнение цены в документе ОказаниеУслуги чего запустим 1С:Предприятие в режиме отладки и зададим для каждого элемента справочника « Номенклатура» соответственное значение реквизита « ВидНоменклатуры»:


Сейчас поглядим, как можно использовать новые данные, приобретенные благодаря использованию перечисления « ВидыНоменклатуры».


avtomatizirovannoe-upravlenie-v-tehnicheskih-sistemah-referat.html
avtomatizovana-sistema-oblk-pasportnih-danih.html
avtomobil-doklad.html