Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
12 дек 2024, 23:53

Расчёт поля формы документы на основании другого

Автор vanekkkk, 24 апр 2024, 10:19

0 Пользователей и 1 гость просматривают эту тему.

vanekkkk

Помогите, пожалуйста, разобраться. Базу прилагаю.
Есть документ «Приказы», в нем форма «Сотрудники». Когда создаю новый документ в режиме 1С и в табличную часть вношу сотрудника, автоматически подставляется информация о дoлжности и cтавке. Необходимо сделать так, чтобы поле «Прeмия» равнялось информации о ставке, деленной на 2. Т.е. если ставка 50 тыс., то пpемия 25 тыс. (зачем это нужно, опустим, просто разобраться хочу в написании модуля).
Дело в том, что поле «Ставка» находится в справочнике «Дoлжности» и, соответственно, к нему никак не получается обратиться.
Надо просто сделать такой расчёт: Премия = Ставка/2.
Помогите, пожалуйста. Ничего не получается.
Информационная база.zip

LexaK

vanekkkk, да в общем код не сложный, возможны варианты, попробуйте этот
&НаКлиенте
Процедура СотрудникиСотрудникПриИзменении(Элемент)
ТекДанные = Элементы.Сотрудники.ТекущиеДанные;
ТекДанные.Премия = ПолучитьПремию(ТекДанные.Сотрудник);
КонецПроцедуры     

&НаСервереБезКонтекста
Функция ПолучитьПремию(Сотрудник)
Возврат Сотрудник.Должность.Ставка / 2;
КонецФункции



в форме, для поля Сотрудник в событиях назначьте обработчик ПриИзменении эту процедуру: СотрудникиСотрудникПриИзменении
если помогло нажмите: Спасибо!

vanekkkk

LexaK, огромнейшее спасибо! Всё работает так, как надо.
А можно ещё один вопрос небольшой? Как сделать, чтобы в поле "ВыполнениеРабочегоПлана" по умолчанию стояло значение "100"? Знаю, что нужна строчка кода, но навыков у меня особо нет.

LexaK

vanekkkk, там же можно добавить такую команду, как вариант
&НаКлиенте
Процедура СотрудникиСотрудникПриИзменении(Элемент)
    ТекДанные = Элементы.Сотрудники.ТекущиеДанные;
    ТекДанные.Премия = ПолучитьПремию(ТекДанные.Сотрудник);
    ТекДанные.ВыполнениеРабочегоПлана = 100;
КонецПроцедуры   

если помогло нажмите: Спасибо!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск