Получить данные бухгалтерского учета (организации, подразделения, сотрудника, начисления) в ЗУП 3
&НаСервере
Процедура ОтражениеВУчетеНаСервере()
//Тестировалось на релизе 3.1.8
Сотрудник = Справочники.Сотрудники.НайтиПоНаименованию("Колесник Дмитрий Иванович");
ДатаНачалаСобытия = ДАТА(2018,12,14);
Начисление = ПланыВидовРасчета.Начисления.НайтиПоНаименованию("Оплата по окладу");
// Определяет статью финансирования, используемую для СОТРУДНИКА по умолчанию.
ОтражениеВБухучетеНачисления = УчетСреднегоЗаработка.ОтражениеВБухучетеПоУмолчанию(Сотрудник, ДатаНачалаСобытия, Начисление);
// Определяет статью финансирования, используемую для НАЧИСЛЕНИЯ СОТРУДНИКА по умолчанию.
ОтражениеВБухучетеСотрудника = УчетСреднегоЗаработка.ОтражениеВБухучетеПоУмолчанию(Сотрудник, ДатаНачалаСобытия);
//ОтражениеВБухучетеСотрудника2 = ОтражениеЗарплатыВБухучетеРасширенный.НастройкаБухучетаЗарплатыСотрудника(Сотрудник, ДатаНачалаСобытия);
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//ВАРИАНТ 1
// Определяет статью финансирования, используемую для НАЧИСЛЕНИЯ СОТРУДНИКА по умолчанию.
// Определяет откуда применяется статья финансирования (из Организации, Подразделения, Сотрудника)
// и выводит статью финансирования с учетом всех введенных данных
КадровыеДанныеСотрудника = КадровыйУчет.КадровыеДанныеСотрудников(Истина,
ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Сотрудник),
"Организация,ФизическоеЛицо,Подразделение,ТерриторияВыполненияРаботВОрганизации", ДатаНачалаСобытия);
МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц();
Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
Запрос.Текст =
"ВЫБРАТЬ
| ТаблицаСотрудников.Сотрудник КАК Сотрудник,
| ТаблицаСотрудников.Период КАК Период,
| ТаблицаСотрудников.Подразделение КАК Подразделение,
| ТаблицаСотрудников.ТерриторияВыполненияРаботВОрганизации КАК ТерриторияВыполненияРаботВОрганизации
|ПОМЕСТИТЬ ВТСотрудники
|ИЗ
| &ТаблицаСотрудников КАК ТаблицаСотрудников";
Запрос.УстановитьПараметр("ТаблицаСотрудников", КадровыеДанныеСотрудника);
Запрос.Выполнить();
ОтражениеЗарплатыВБухучете.СоздатьВТСведенияОБухучетеЗарплатыСотрудников(МенеджерВременныхТаблиц, "ВТСотрудники", "Сотрудник,Период", КадровыеДанныеСотрудника[0].Организация);
ОтражениеВБухучетеСотрудникаПодробно = МенеджерВременныхТаблиц.Таблицы.Найти("ВТСведенияОБухучетеЗарплатыСотрудников").ПолучитьДанные().Выгрузить();
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//ВАРИАНТ 2
МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
ТекстЗапроса =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| Сотрудники.Ссылка КАК Сотрудник,
| &ДатаАктуальности КАК Период
|ПОМЕСТИТЬ ВТСотрудники
|ИЗ
| Справочник.Сотрудники КАК Сотрудники
|ГДЕ
| Сотрудники.Ссылка = &Сотрудник";
Запрос = Новый Запрос(ТекстЗапроса);
Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
Запрос.УстановитьПараметр("Сотрудник", Сотрудник);
Запрос.УстановитьПараметр("ДатаАктуальности", ДатаНачалаСобытия);
Запрос.Выполнить();
// Из кадрового учета получаем организацию и подразделение.
Описатель = КадровыйУчет.ОписательВременныхТаблицДляСоздатьВТКадровыеДанныеСотрудников(МенеджерВременныхТаблиц, "ВТСотрудники");
КадровыйУчет.СоздатьВТКадровыеДанныеСотрудников(Описатель, Истина, "Организация,Подразделение,ТерриторияВыполненияРаботВОрганизации");
Отборы = Новый Массив;
ОтборыНачислений = Новый Структура("ПлановыеНачисления", ОбщегоНазначенияКлиентСервер.СкопироватьМассив(Отборы));
ЗапросВТПлановыеНачисления = КадровыйУчетРасширенный.ЗапросВТПлановыеНачисленияСотрудников(
Истина, "ВТПлановыеНачисленияСотрудников", "ВТСотрудники", "Сотрудник,Период",ОтборыНачислений,Истина);
ЗапросВТПлановыеНачисления.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
ЗапросВТПлановыеНачисления.Выполнить();
// Формируем временную таблицу с настройками бухучета.
//Если Начисление <> Неопределено Тогда
ОтражениеЗарплатыВБухучете.СоздатьВТСведенияОБухучетеНачисленийСотрудников(МенеджерВременныхТаблиц, "ВТКадровыеДанныеСотрудников", "Сотрудник,Период", , , Начисление);
//ИмяВТ = "ВТСведенияОБухучетеНачисленийСотрудников";
//Иначе
ОтражениеЗарплатыВБухучетеРасширенный.СоздатьВТСведенияОБухучетеЗарплатыСотрудников(МенеджерВременныхТаблиц, "ВТКадровыеДанныеСотрудников", "Сотрудник,Период");
//ИмяВТ = "ВТСведенияОБухучетеЗарплатыСотрудников";
//КонецЕсли;
ОтражениеВБухучетеНачисленийСотрудникаПодробно = МенеджерВременныхТаблиц.Таблицы.Найти("ВТСведенияОБухучетеНачисленийСотрудников").ПолучитьДанные().Выгрузить();
ОтражениеВБухучетеСотрудникаПодробно = МенеджерВременныхТаблиц.Таблицы.Найти("ВТСведенияОБухучетеЗарплатыСотрудников").ПолучитьДанные().Выгрузить();
ВТПлановыеНачисленияСотрудников = МенеджерВременныхТаблиц.Таблицы.Найти("ВТПлановыеНачисленияСотрудников").ПолучитьДанные().Выгрузить();
КонецПроцедуры
{12} Переменной ОтражениеВБухучетеНачисления присвоено значение, но оно нигде не используется {16} Переменной ОтражениеВБухучетеСотрудника присвоено значение, но оно нигде не используется {52} Переменной ОтражениеВБухучетеСотрудникаПодробно присвоено значение, но оно нигде не используется {98} Переменной ОтражениеВБухучетеНачисленийСотрудникаПодробно присвоено значение, но оно нигде не используется {99} Переменной ОтражениеВБухучетеСотрудникаПодробно присвоено значение, но оно нигде не используется {101} Переменной ВТПлановыеНачисленияСотрудников присвоено значение, но оно нигде не используется
Создать временную таблицу, с данными учета времени и состояний сотрудников
Получение данных динамического списка