Добавление данных по регистру в документ "Перенос данных" в ЗУП



&НаСервере

Процедура ДелоНаСервере()



Док = Документы.ПереносДанных.СоздатьДокумент();

Док.Дата = ТекущаяДата();

Док.ПериодРегистрации = Период.ДатаНачала;



Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| НачислениеЗарплатыНачисления.Сотрудник КАК Сотрудник,

| НачислениеЗарплатыНачисления.ОтработаноДней КАК ОтработаноДней,

| НачислениеЗарплатыНачисления.ОтработаноЧасов КАК ОтработаноЧасов,

| НачислениеЗарплатыНачисления.Ссылка КАК Ссылка,

| НачислениеЗарплатыНачисления.ДатаНачала КАК ДатаНачала,

| НачислениеЗарплатыНачисления.Подразделение.ГоловнаяОрганизация КАК ПодразделениеГоловнаяОрганизация,

| НачислениеЗарплатыНачисления.Сотрудник.ФизическоеЛицо КАК СотрудникФизическоеЛицо,

| НачислениеЗарплатыНачисления.Подразделение КАК Подразделение,

| НачислениеЗарплатыНачисления.Сотрудник.ГоловнойСотрудник КАК СотрудникГоловнойСотрудник

|ИЗ

| РегистрСведений.ВидыЗанятостиСотрудников.СрезПоследних(, ВидЗанятости = ЗНАЧЕНИЕ(Перечисление.ВидыЗанятости.Подработка)) КАК ВидыЗанятостиСотрудниковСрезПоследних

| ЛЕВОЕ СОЕДИНЕНИЕ Документ.НачислениеЗарплаты.Начисления КАК НачислениеЗарплатыНачисления

| ПО ВидыЗанятостиСотрудниковСрезПоследних.Сотрудник = НачислениеЗарплатыНачисления.Сотрудник

|ГДЕ

| НачислениеЗарплатыНачисления.ОтработаноДней > 0

| И НачислениеЗарплатыНачисления.Начисление.Код <> ""РК""

| И ВидыЗанятостиСотрудниковСрезПоследних.ДействуетДо >= НачислениеЗарплатыНачисления.ДатаНачала

| И НачислениеЗарплатыНачисления.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания";



Запрос.УстановитьПараметр("ДатаНачала", Период.ДатаНачала);

Запрос.УстановитьПараметр("ДатаОкончания", Период.ДатаОкончания);



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



ДокументОбъект = Док;



Нз = ДокументОбъект.Движения.ДанныеОВремениДляРасчетаСреднегоОбщий;

Рег = ДокументОбъект.ТаблицаРегистров.Добавить();

Рег.Имя = "ДанныеОВремениДляРасчетаСреднегоОбщий";

ДокументОбъект.Ответственный = ПользователиКлиентСервер.ТекущийПользователь();



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



Пока Выборка.Следующий() Цикл

СтрокаНз = Нз.Добавить();

СтрокаНз.Период = Выборка.ДатаНачала;

СтрокаНз.Активность = Истина;

СтрокаНз.Сотрудник = Выборка.СотрудникГоловнойСотрудник;

СтрокаНз.ПорядокРасчета = Перечисления.ПорядокРасчетаСреднегоЗаработкаОбщий.Постановление2010;

СтрокаНз.ОтработаноДней = Выборка.ОтработаноДней;

СтрокаНз.ОтработаноЧасов = Выборка.ОтработаноЧасов;

КонецЦикла;



ДокументОбъект.Записать(РежимЗаписиДокумента.Запись);

Сообщение = Новый СообщениеПользователю();

Сообщение.Текст = "Создан документ " + ДокументОбъект;

Сообщение.КлючДанных = ДокументОбъект.Ссылка;

Сообщение.ПутьКДанным = "Объект";

Сообщение.Сообщить();





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



✍️ @odin1C_rus