среда, 7 ноября 2018 г.

Получение кадровых данные сотрудников в ЗУП 3.1

//ПараметрШаблона в качестве параметра передается массив или единичный параметр из возможных указанных выше

ДанныеФизическогоЛица = КадровыйУчет.КадровыеДанныеСотрудников(Истина, Объект.Сотрудник, ПараметрШаблона);
Если ДанныеФизическогоЛица.Количество() > 0 Тогда
  ИскомыйРеквизит=ДанныеФизическогоЛица[0][ПараметрШаблона]);
КонецЕсли;






Список возможных значений ПараметровШаблона:

ФИОПолные,Пол,ТабельныйНомер,Организация,Подразделение,Должность,ДатаПриема,ДатаУвольнения,Возраст,
Фамилия, Имя, Отчество, Наименование, ФизическоеЛицоНаименование, Код, ФизическоеЛицоКод,
АдресДляИнформирования, АдресДляИнформированияПредставление, АдресЗаПределамиРФ, АдресЗаПределамиРФПредставление
АдресМестаПроживания, АдресМестаПроживанияПредставление, АдресПоПрописке,АдресПоПропискеПредставление
ТелефонДомашний, ТелефонДомашнийПредставление, ТелефонРабочий, ТелефонРабочийПредставление, EMail, EMailПредставление
ДокументПериодРегистрации, ДокументВид, ДокументКодМВД, ДокументСерия, ДокументНомер, ДокументДатаВыдачи,ДокументСрокДействия
ДокументКемВыдан, ДокументКодПодразделения, ДокументПредставление, ИнвалидностьПериодРегистрации, Инвалидность
ИнвалидностьДатаВыдачи, ИнвалидностьСрокДействияСправки, ГражданствоПериодРегистрации, Страна, ИННВСтранеГражданства,
ПроцентСевернойНадбавки, ТекущаяОрганизация, ТекущееПодразделение, ТекущаяДолжность, ТекущийВидЗанятости,
ОсновноеРабочееМестоВОрганизации, ДатаПриема, ДатаЗавершенияРаботы, ОформленПоТрудовомуДоговору, ДатаУвольнения,
ТекущаяТарифнаяСтавка, ТекущийСпособРасчетаАванса, ТекущийАванс, ДатаНачалаУчета, ПриказОПриеме, ПриказОПриемеДата,
ПриказОПриемеНомер, НазначениеПодработки, ПриказОбУвольнении, ПриказОбУвольненииДата, ПриказОбУвольненииНомер,
ПриказОбУвольненииСтатьяТКРФ, ПрекращениеПодработки, РабочееМестоПериодРегистрации, РабочееМестоРегистратор
ВидСобытия, КоличествоСтавок, ЭтоГоловнойСотрудник, УчетЗатратПериодРегистрации,
СпособОтраженияЗарплатыВБухучете, ОтношениеКЕНВД, СтатьяФинансирования, УчетЗатратДокументОснование,
ОплатаТрудаПериодЗаписи, ОплатаТрудаРегистратор, ТарифнаяСтавка, ФОТ, Надбавка, ВидЗанятостиПериодЗаписи,
ВидЗанятостиРегистратор, ВидЗанятости, АвансПериодЗаписи, АвансРегистратор, СпособРасчетаАванса, Аванс,
КлассУсловийТрудаПериодРегистрации, КлассУсловийТруда, КлассУсловийТрудаДатаРегистрацииИзменений,
ЗарплатныйПроектПериодРегистрации, ЗарплатныйПроектРегистратор, ЗарплатныйПроект, НомерЛицевогоСчета.


Стандартная функция КадровыеДанныеСотрудников:

// Возвращает таблицу значений заполненную данными сотрудников, перечисленными в 
// параметре СписокНеобходимыхДанных.
//
// Параметры:
// ТолькоРазрешенные - Булево
//  СписокСотрудников - Массив ссылок на элементы справочника сотрудники или
//        СправочникСсылка.Сотрудники.
//  КадровыеДанные -  Строка - список полей данных, перечисленных через запятую 
//      или Массив строк с полями данных, которые необходимо получить.
// ДатаПолученияДанных - дата на которую необходимо получить данные сотрудников, 
//      применимо к данным, носящим периодический характер.
//      Если дату не указывать, будут получены самые последние данные.
//
//
//  ПоляОтбораПериодическихДанных - Структура, в качестве ключа указывается имя таблицы, содержащей
//         периодические данные (например ФИОФизическихЛиц, ГражданствоФизическихЛиц).
//         В качестве значений коллекция условий отбора, 
//         соединяемых по "И" и применяемых к регистру сведений.
//         Коллекция строки которой имеют поля.
//          * ЛевоеЗначение - строка, имя поля регистра сведений.
//          * ВидСравнения - строка, вид сравнения, допустимый в языке запросов.
//          * ПравоеЗначение - значение для сравнения с полем ЛевоеЗначение.
//
// Список полей, допустимых в параметре КадровыеДанные см. КадровыйУчетВнутренний.ЗапросВТКадровыеДанныеСотрудников.
//
// Возвращаемое значение:
//   ТаблицаЗначений   - Таблица значений, содержащая запрошенные данные.
//
Функция КадровыеДанныеСотрудников(ТолькоРазрешенные, СписокСотрудников, КадровыеДанные, ДатаПолученияДанных = '00010101', ПоляОтбораПериодическихДанных = Неопределено, ФормироватьСПериодичностьДень = Истина) Экспорт
 
 // Подготовим Запрос и Менеджер временных таблиц.
 Запрос = Новый Запрос;
 Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
 
 // Сформируем временную таблицу ВТКадровыеДанныеФизическихЛиц.
 СоздатьНаДатуВТКадровыеДанныеСотрудников(Запрос.МенеджерВременныхТаблиц, ТолькоРазрешенные, СписокСотрудников, КадровыеДанные, ДатаПолученияДанных, ПоляОтбораПериодическихДанных, ФормироватьСПериодичностьДень);
 
 // Выберем кадровые данные физлиц из временной таблицы.
 Запрос.Текст = "ВЫБРАТЬ КадровыеДанныеСотрудников.* ИЗ ВТКадровыеДанныеСотрудников КАК КадровыеДанныеСотрудников";
 КадровыеДанныеСотрудников = Запрос.Выполнить().Выгрузить();
 
 Возврат КадровыеДанныеСотрудников;
 
КонецФункции