Вечер добрый!

Начал обучение по программированию и пройдя некоторое количество дней курса, наткнулся на небольшую проблему, а именно:

"Обеспечьте расчет оклада сотрудника по дневном тарифу, расчет выполняется по формуле:
Оклад по тарифу = Дневная оплата * Количество отработанных дней в месяце"

Состряпал код в "своём стиле" и сейчас зашел в тупик по нескольким параметрам:

1. в созданном мною регистре расчета "начисления" не получается подтянуть сумму крайнего сотрудника, хотя через точки останова её видно. - Здесь в документе "НачислениеОкладаПоТарифу" я создаю 2х сотрудников и начисляю им оклад в определенном размере, в регистре же отображает начисление по первому сотруднику, но не отображает начисление по второму.

```1c
    Процедура ОбработкаПроведения(Отказ, Режим)

    Движения.Начисления.Записывать = Истина;

    Для Каждого ТекСтрокаСотрудникиКНачислению Из СотрудникиКНачислению Цикл

    Движение = Движения.Начисления.Добавить();
    Движение.Сторно = Ложь;
    Движение.ВидРасчета =ПланыВидовРасчета.Начисления.ОкладПоТарифу ;
    Движение.ПериодДействияНачало = НачалоМесяца(НачалоПериода);
    Движение.ПериодДействияКонец = КонецМесяца(КонецПериода);
    Движение.ПериодРегистрации = Дата;
    Движение.Сотрудник = ТекСтрокаСотрудникиКНачислению.Сотрудник;
    Движение.Сумма = ТекСтрокаСотрудникиКНачислению.СуммаНачисления;
    //Движения.ДанныеПоТарифу = Перечисления.ТарифыЗаработнойПлаты("ТарифНачисленияЗП");
    //Движения.Начисления.Записать();
    КонецЦикла;

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | НачисленияДанныеГрафика.РабочийДеньФактическийПериодДействия КАК Факт,
    | НачисленияДанныеГрафика.Сотрудник КАК Сотрудник,
    | ЕСТЬNULL(НачислениеОкладаПоТарифуСотрудникиКНачислению.СуммаНачисления, 0) КАК СуммаНачисления,
    | ГрафикРабочегоВремени.РабочийДень КАК РабочийДень
    |ИЗ
    | Документ.НачислениеОкладаПоТарифу.СотрудникиКНачислению КАК НачислениеОкладаПоТарифуСотрудникиКНачислению
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрРасчета.Начисления.ДанныеГрафика(Регистратор = &Ссылка) КАК НачисленияДанныеГрафика
    | ПО (НачисленияДанныеГрафика.ДанныеПоТарифу = НачислениеОкладаПоТарифуСотрудникиКНачислению.СуммаНачисления),
    | РегистрСведений.ГрафикРабочегоВремени КАК ГрафикРабочегоВремени";

    Запрос.УстановитьПараметр("Ссылка", Ссылка);

    РезультатЗапроса = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

    Если ВыборкаДетальныеЗаписи.РабочийДень = 1 Тогда
    Множитель=1;
    Иначе
    Множитель=0;
    КонецЕсли;

    //ДанныеПоТарифу= 0;
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    Движение.Сумма = Множитель * ВыборкаДетальныеЗаписи.СуммаНачисления;

    КонецЦикла;

    Движения.Начисления.Записать();

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

2. Не знаю как связать в документе "начисление оклада по тарифу" начало/конец периода для рассчета по регистру сведений "ГрафикРабочегоВремени"
По задумке:
Есть дневной тариф - 1500р.
Есть график работ - пятидневка

Я хотел что бы в документе "начисление оклада по тарифу" я устанавливал стоимость за день, а в дальнейшем мне отчет выдавал сколько получит сотрудник за весь период работ согласно графику работ
---
закрываю тему, не верное расположение записи движений
---
Подозреваю, что в этом участке

```1c
    Движение.Сумма = Множитель * ВыборкаДетальныеЗаписи.СуммаНачисления;
```

Сумма у последнего сформированного движения обнуляется.
---
как перестать обнулять ? Мне нужно по сути получившийся результат запроса закинуть в таблицу регистра расчета (сумму)
---
Получите запросом из регистра графика количество рабочих дней. Потом при формировании движений умножайте сумму начислений на количество рабочих дней.
---
да, спасибо, с этим понял.
Теперь остается ещё одна проблема.
Когда в табличной части документа начисления 1 сотрудник в регистре всё отлично - сумма рассчитывается и заполняется правильно, но как только 2 и более заполнение колонки сумма сбивается и в колонке сумма отображается одна правильная строка, а остальные строки не рассчитываются и заполняются разовым начислением без учета количества отработанных дней.

наткнулся на подсказку "Имейте ввиду, что если в результате запроса возвращается несколько строк, то вы получите результат последней строки." - так вот возможно ли как то вернуть все строки ?
---
закрываю тему, не верное расположение записи движений