Здравствуйте Друзья, Прошу мне в этом помочь, уже с ума схожу )) У меня есть документ Начисление Зарплаты. Внутри ТЧ всего 2 колонки "Сотрудник" и "Начисление"
Есть РегистрСведений "Зарплата" - Теперь когда в самом документе я указываю по однаму выбераю сотрудника в поле "начисление" берет информацию из регистра сведений и колонка начисление автоматом получает сумму. Я подумал и создал кнопку при помощи которого он заполнит вес ТЧ одним кликам.. Но увы не получилос. Вроде бы все отлично работает нажимаю кнопку, спрашивает хочу ли я заполнить ТЧ, нажимаю да и заполнает все сотрудники но то что была колонка "Начисление" там ничего нету.. Я понимаю что нужно дать проводку на Регистр сведений что бы программа понимала что нужно оттуда взять эту инфо и поместить в эту колонку. но как написать код, нимогу найти (( Прошу мне в этом помочь.. вот код

```1c
    &НаКлиенте
    Процедура ТабличнаяЧастьСотрудникПриИзменении(Элемент)
    ТекДанные = Элементы.ТабличнаяЧасть.ТекущиеДанные;
    ТекДанные.Начсленно = РаботаСоСправочниками.Зарплата(Объект.Дата, ТекДанные.Сотрудник);
    КонецПроцедуры

    &НаСервере
    Процедура ЗаполнитьНаСервере()
    Объект.ТабличнаяЧасть.Очистить();
    Заполнить = Справочники.Сотрудники.Выбрать();
    Пока Заполнить.Следующий() Цикл

    Если Заполнить.ЭтоГруппа Тогда Продолжить;
    КонецЕсли;
    Если Заполнить.ПринятьНаРаботу = Ложь Тогда Продолжить;
    КонецЕсли;
    СтрТч = Объект.ТабличнаяЧасть.Добавить();
    СтрТч.Сотрудник = Заполнить.Ссылка;
    СтрТч.Начсленно = ----- */******************************** Тут что должен написать не знаю.
    КонецЦикла;
    КонецПроцедуры

    &НаКлиенте
    Процедура Заполнить(Команда)

    Режим = РежимДиалогаВопрос.ДаНет;
    Оповещение = Новый ОписаниеОповещения("ПослеЗакрытияВопроса", ЭтотОбъект, Параметры);
    ПоказатьВопрос(Оповещение, НСтр("ru = 'Продолжить выполнение операции?'"), Режим, 0);

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

    &НаКлиенте
    Процедура ПослеЗакрытияВопроса(Результат, Параметры) Экспорт

    Если Результат = КодВозвратаДиалога.Нет Тогда
    Возврат;
    ИначеЕсли Результат = КодВозвратаДиалога.Да Тогда
    ЗаполнитьНаСервере();
    КонецЕсли;

    КонецПроцедуры
```
---
```1c
    СтруктураОтбора =новыйструра("сотрудник", выборка. Ссылка) ;РегистрыСведений.зарплата.ПолучитьПоследнее(текущаядата(),СтруктураОтбора). Начисление;
```
---
Структуру регистра покажите
---
Измирение Сотрудник
Ресурсы Зарплата
Режим записи регистра - Подчинение регистратору
Периадичность - В пределах секунды
---
Вам нужно по нажатию на кнопку выбрать всех сотрудников и заполнить их начисления по регистру?
---
да
вот даже в коде есть

```1c
    СтрТч = Объект.ТабличнаяЧасть.Добавить();
    СтрТч.Сотрудник = Заполнить.Ссылка;
    СтрТч.Начсленно = ----- */******************************** Тут что должен написать не знаю.
    КонецЦикла;
    КонецПроцедуры
```
---
```1c
    СтруктураОтбора =новыйструра("сотрудник", выборка. Ссылка) ;РегистрыСведений.зарплата.ПолучитьПоследнее(текущаядата(),СтруктураОтбора). Начисление;
```
---
Вставьте в выборку
(пишу с телефона)
---
СтрТч.Начсленно = регистры сведений.зарплата.получить......то се
---
Хочу заметить, что это самый не оптимальный способ получения данных из регистра, по хорошему надо написать один запрос к регистру и справочник и результат выгрузить в тч
---
не получается
---
а сотрудники заполняются?
---
да
---
Структуру регистра покажите
---
Измирение Сотрудник
Ресурсы Зарплата
Режим записи регистра - Подчинение регистратору
Периадичность - В пределах секунды
---
Общий модуль

```1c
    Функция Зарплата (АктуальнаяДата, ЭлементыСотрудник) Экспорт

    // Создать вспомогательный объект "Отбор".
    Отбор = Новый Структура("Сотрудник", ЭлементыСотрудник);

    // Получить актуальные значения ресурсов регистра.
    ЗначенияРесурсов = РегистрыСведений.Зарплата.ПолучитьПоследнее(АктуальнаяДата, Отбор);

    Возврат ЗначенияРесурсов.Зарплата;

    КонецФункции
```

Модуль формы
```1c
    &НаКлиенте
    Процедура ТабличнаяЧастьСотрудникПриИзменении(Элемент)
    ТекДанные = Элементы.ТабличнаяЧасть.ТекущиеДанные;
    ТекДанные.Начсленно = РаботаСоСправочниками.Зарплата(Объект.Дата, ТекДанные.Сотрудник);
    КонецПроцедуры
```
---
ТекДанные.Начсленно = РаботаСоСправочниками.Зарплата(Объект.Дата, ТекДанные.Сотрудник).Зарплата;
---
Ошибку выдает какую?
---
ные.НачИсленно = РаботаСоСправочниками.Зарплата(Объект.Дата, ТекДанные.Сотрудник);
(14)

Да дает ошибку что тек данные не работает на сервере)
---
Может быть с буквой И получится

```1c
    ТекДанные.НачИсленно = РаботаСоСправочниками.Зарплата(Объект.Дата, ТекДанные.Сотрудник);
```
---
Нет )) Я сам так написал )
(16)
---
есть анидеск?
---
Сделал уже сам)))
Так должно было быть

```1c
    СтрТч.Начсленно = РаботаСоСправочниками.Зарплата(Объект.Дата, СтрТч.Сотрудник);
```

И вам спасибо большое)