Помогите пожалуйста с выводом из таблицы данных
Оклад и надбавка за вредность выводит правильно, а вот стаж и качество не получается совсем.

```1c
    |ВЫБРАТЬ
    | СУММА(ВЫБОР
    | КОГДА КадровыйПереводПоказатели.Показатель В (&СписокПоказателейОклад)
    | ТОГДА КадровыйПереводПоказатели.Значение
    | ИНАЧЕ 0
    | КОНЕЦ) КАК СуммаОклад,
    | СУММА(ВЫБОР
    | КОГДА КадровыйПереводПоказатели.Показатель В (&СписокПоказателейНадбавка)
    | ТОГДА КадровыйПереводПоказатели.Значение
    | ИНАЧЕ 0
    | КОНЕЦ) КАК СуммаНадбавки
    |ПОМЕСТИТЬ ВТНачисленияПоказатели
    |ИЗ
    | Документ.КадровыйПеревод.Показатели КАК КадровыйПереводПоказатели
    |ГДЕ
    | КадровыйПереводПоказатели.Ссылка = &Ссылка
```

Вот вроде достает

```1c
    СписокПоказателейОклад = Новый СписокЗначений;
    Попытка СписокПоказателейОклад.Добавить(Справочники.ПоказателиРасчетаЗарплаты.Оклад); Исключение КонецПопытки;
    Запрос.УстановитьПараметр("СписокПоказателейОклад",СписокПоказателейОклад);
```

```1c
    СписокПоказателейНадбавка = Новый СписокЗначений;
    Попытка СписокПоказателейНадбавка.Добавить(Справочники.ПоказателиРасчетаЗарплаты.ПроцентНадбавкиЗаВредность); Исключение КонецПопытки;
    Запрос.УстановитьПараметр("СписокПоказателейНадбавка",СписокПоказателейНадбавка);
    Запрос.Выполнить();
```

вот оклад находит и надбавку за вредность

```1c
    Область.Параметры.СуммаНадбавки = ВыборкаЗапроса.СуммаНадбавки;
```

вот вывожу его

Подскажите пожалуйста как можно вывести стаж и качество примерно также. Пожалуйста только не надо унижать и если что-то не правильно то простите, новичок.
---
Можно воспользоваться стандартной функцией
```1c
    // Вычисляет разность между двумя датами: в годах, месяцах, днях
    Процедура ПолучитьСтажЗаПериод(Знач ДатаОкончанияПериода, Знач ДатаНачалаПериода, Лет=0, Месяцев=0, Дней=0) Экспорт

    Если ДатаОкончанияПериода >= ДатаНачалаПериода Тогда

    Лет1 = Год(ДатаОкончанияПериода);
    Месяцев1 = Месяц(ДатаОкончанияПериода);

    Если НачалоДня(ДатаОкончанияПериода) <> НачалоДня(КонецМесяца(ДатаОкончанияПериода)) Тогда
    Дней1 = День(ДатаОкончанияПериода);
    Иначе
    Дней1 = 30;//В каждом месяце ровно 30 дней
    КонецЕсли;

    Лет2 = Год(ДатаНачалаПериода);
    Месяцев2 = Месяц(ДатаНачалаПериода);
    Если НачалоДня(ДатаНачалаПериода) <> НачалоДня(КонецМесяца(ДатаНачалаПериода)) Тогда
    Дней2 = День(ДатаНачалаПериода);
    Иначе
    Дней2 = 30;//В каждом месяце ровно 30 дней
    КонецЕсли;

    Лет = Лет1 - Лет2;
    Месяцев = Месяцев1 - Месяцев2;
    Дней = Дней1 - Дней2 + 1;//1 день на увольнение
    Иначе
    Лет = 0;
    Месяцев = 0;
    Дней = 0;
    КонецЕсли;
    КонецПроцедуры
```

Либо использовать в своем запросе РегистрСведений.НакопленныеСтажиФизическихЛиц
---
```1c
    ВЫБРАТЬ РАЗЛИЧНЫЕ
    Т.Регистратор КАК Регистратор,
    Т.Период КАК Период,
    Т.НомерСтроки КАК НомерСтроки,
    Т.Активность КАК Активность,
    Т.Сотрудник КАК Сотрудник,
    Т.Организация КАК Организация,
    Т.ФизическоеЛицо КАК ФизическоеЛицо,
    Т.Показатель КАК Показатель,
    Т.ДокументОснование КАК ДокументОснование,
    Т.Значение КАК Значение,
    Т.ДействуетДо КАК ДействуетДо
    ИЗ
    РегистрСведений.ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудников КАК Т
    ГДЕ
    Т.Регистратор = &Регистратор
```
---
Простите тупой, оклад

```1c
    Попытка СписокПоказателейНадбавка.Добавить(Справочники.ПоказателиРасчетаЗарплаты.НайтиПоНаименованию("За качество",Истина)); Исключение КонецПопытки;
```

А вот вывести стаж так и не могу
---
А какая у вас конечная задача? Т.е. Вы пытаетесь получить в целом перечень надбавок сотрудника для какой-то цели, или необходимо их получить конкретно в разрезе документов кадровых переводов?
---
Сейчас мне нужно вывести процент надбавки за стаж в печатной форме
---
у меня в результате выдает значения показателей. Или Вам нужно стаж в днях?
---
Процент чтобы выводился
---
```1c
    ВЫБРАТЬ
    НакопленныеСтажиФизическихЛиц.РазмерМесяцев КАК РазмерМесяцев
    ИЗ
    РегистрСведений.НакопленныеСтажиФизическихЛиц КАК НакопленныеСтажиФизическихЛиц
    ГДЕ
    НакопленныеСтажиФизическихЛиц.ФизическоеЛицо = &ФизическоеЛицо
    И НакопленныеСтажиФизическихЛиц.ВидСтажа = &ВидСтажа
```

Вот месяцы вроде выводятся, но мне кажется что неправильно
---
Можно воспользоваться стандартной функцией
```1c
    // Вычисляет разность между двумя датами: в годах, месяцах, днях
    Процедура ПолучитьСтажЗаПериод(Знач ДатаОкончанияПериода, Знач ДатаНачалаПериода, Лет=0, Месяцев=0, Дней=0) Экспорт

    Если ДатаОкончанияПериода >= ДатаНачалаПериода Тогда

    Лет1 = Год(ДатаОкончанияПериода);
    Месяцев1 = Месяц(ДатаОкончанияПериода);

    Если НачалоДня(ДатаОкончанияПериода) <> НачалоДня(КонецМесяца(ДатаОкончанияПериода)) Тогда
    Дней1 = День(ДатаОкончанияПериода);
    Иначе
    Дней1 = 30;//В каждом месяце ровно 30 дней
    КонецЕсли;

    Лет2 = Год(ДатаНачалаПериода);
    Месяцев2 = Месяц(ДатаНачалаПериода);
    Если НачалоДня(ДатаНачалаПериода) <> НачалоДня(КонецМесяца(ДатаНачалаПериода)) Тогда
    Дней2 = День(ДатаНачалаПериода);
    Иначе
    Дней2 = 30;//В каждом месяце ровно 30 дней
    КонецЕсли;

    Лет = Лет1 - Лет2;
    Месяцев = Месяцев1 - Месяцев2;
    Дней = Дней1 - Дней2 + 1;//1 день на увольнение
    Иначе
    Лет = 0;
    Месяцев = 0;
    Дней = 0;
    КонецЕсли;
    КонецПроцедуры
```

Либо использовать в своем запросе РегистрСведений.НакопленныеСтажиФизическихЛиц