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

1. david138it 06.06.22 09:43 Сейчас в теме
Всем привет. Я тут проходил стажировку в одной компании по методичке из радченко и после 14того занятия мне нужно было решить задачку, и я ее провалил, потому что получил не то что нужно. Помогите разобраться как эту задачу решить правильно новичку. Сама задача:

Необходимо доработать конфигурацию так, чтобы обеспечить расчет вознаграждения мастеру за оказанные им услуги при проведении документа «Оказание услуг». Вознаграждение высчитывается как процент от общей суммы, предоставленных по данному документу услуг (без учёта проданных товаров) и составляет:
5% сумма меньше 1 000 руб.
10% сумма от 1 000 до 5 000 руб.
15% сумма больше 5 000 руб.
Требуется разработать структуру данных для хранения накопленного вознаграждения.
Разработать отчет, позволяющий получить общие суммы вознаграждений по каждому мастеру за произвольно выбранный период.
Пример отчета:
Период: 01.01.2013 – 15.05.2013
Мастер Сумма
Иванов Иван 1000
Петров Пётр 1500

Как в обработчике посчитать вознаграждение мастеру за оказанные им услуги при проведении документа Оказание услуг? Ниже мой код:
		// Регистр Вознаграждения    
		Сумма=0;
		Если ВыборкаДетальныеЗаписи.СуммаВДокументе < 1000 Тогда
			Сумма=ВыборкаДетальныеЗаписи.СуммаВДокументе*0.05;
		ИначеЕсли ВыборкаДетальныеЗаписи.СуммаВДокументе >= 1000 И ВыборкаДетальныеЗаписи.СуммаВДокументе <= 5000 Тогда
			Сумма=ВыборкаДетальныеЗаписи.СуммаВДокументе*0.1;
		Иначе  
			Сумма=ВыборкаДетальныеЗаписи.СуммаВДокументе*0.15;
		КонецЕсли;  
		Движение = Движения.Вознаграждения.Добавить();
		Движение.Период = Дата;
		Движение.Мастер = Мастер;
		Движение.Сумма = ВыборкаДетальныеЗаписи.СуммаВДокументе;
Показать


И базу мою можно посмотреть в прикрепленном файле
Прикрепленные файлы:
1Cv8.dt
Найденные решения
4. Torin 756 13.06.22 06:37 Сейчас в теме
(3)
Движение.Сумма = Сумма;
Pavel Rodinchenko; +1 Ответить
2. Pavel Rodinchenko 06.06.22 10:05 Сейчас в теме
(1)Ну вознаграждение посчитано верно. Но в регистр Вы записываете зачем-то сумму самого документа, а не вознаграждения.
Движение.Сумма = ВыборкаДетальныеЗаписи.СуммаВДокументе;
вот тут
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Pavel Rodinchenko 06.06.22 10:05 Сейчас в теме
(1)Ну вознаграждение посчитано верно. Но в регистр Вы записываете зачем-то сумму самого документа, а не вознаграждения.
Движение.Сумма = ВыборкаДетальныеЗаписи.СуммаВДокументе;
вот тут
3. david138it 13.06.22 04:16 Сейчас в теме
(2)
вознаграждения
так, а как мне вознаграждения прописать? я так понимаю для него в поле запроса нужно указать?
4. Torin 756 13.06.22 06:37 Сейчас в теме
(3)
Движение.Сумма = Сумма;
Pavel Rodinchenko; +1 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот