1С 8.3 Получить должность сотрудника - Программист 1С Минск. Автоматизация бизнеса.

Перейти к контенту

1С 8.3 Получить должность сотрудника

Данные > Примеры кода 1С > 1С 8.3 Типовые (БП3, ЗУП, УТ)
Перейти в раздел примеры кода 1С 8.3:
Пример 1:
Функция ПолучитьДолжностьСотрудникаВариант1(ТекСотрудник)

   
Запрос = Новый Запрос;
   
Запрос.Текст =
   
"ВЫБРАТЬ ТекущиеКадровыеДанныеСотрудников.ТекущаяДолжность
    |
    |ИЗ РегистрСведений.ТекущиеКадровыеДанныеСотрудников КАК ТекущиеКадровыеДанныеСотрудников
    |
    |ГДЕ ТекущиеКадровыеДанныеСотрудников.Сотрудник = &ТекСотрудник"
;

   
Запрос.Параметры.Вставить("ТекСотрудник", ТекСотрудник);
   
Результат = Запрос.Выполнить();
    Если Не
Результат.Пустой() Тогда

       
Выб_Должность = Результат.Выбрать();
       
Выб_Должность.Следующий();
        Возврат
Выб_Должность.ТекущаяДолжность;

    Иначе
        Возврат Неопределено
    КонецЕсли;

КонецФункции
Пример 2:
&НаСервереБезКонтекста
Функция ПолучитьДолжностьСотрудникаВариант2(ТекСотрудник, ТекОрганизация, ТекПодразделение)

   
ВозвратТекДолжности="";
   
Запрос = Новый Запрос;
   
Запрос.Текст =
   
"ВЫБРАТЬ
    |   ТекущиеКадровыеДанныеСотрудников.ТекущаяДолжность
    |ИЗ
    |   РегистрСведений.ТекущиеКадровыеДанныеСотрудников КАК ТекущиеКадровыеДанныеСотрудников
    |ГДЕ
    |   ТекущиеКадровыеДанныеСотрудников.Сотрудник = &Сотрудник
    |   И ТекущиеКадровыеДанныеСотрудников.ТекущаяОрганизация = &ТекущаяОрганизация
    |   И ТекущиеКадровыеДанныеСотрудников.ТекущееПодразделение = &ТекущееПодразделение"
;

   
Запрос.УстановитьПараметр("Сотрудник", ТекСотрудник);
   
Запрос.УстановитьПараметр("ТекущаяОрганизация", ТекОрганизация);
   
Запрос.УстановитьПараметр("ТекущееПодразделение", ТекПодразделение);

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

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

    Пока
ВыборкаДетальныеЗаписи.Следующий() Цикл
       
ВозвратТекДолжности=ВыборкаДетальныеЗаписи.ТекущаяДолжность;
    КонецЦикла;

    Возврат
ВозвратТекДолжности;

КонецФункции
Пример 3:
&НаСервереБезКонтекста
Функция ДолжностьСотрудника(Сотрудник) // Через типовую функцию

   
Сотрудники = Новый Массив;
   
Сотрудники.Добавить(Сотрудник);

   
Сведения = КадровыйУчет.КадровыеДанныеСотрудников(Истина,Сотрудники,"Организация,Должность");
    Если
Сведения.Количество()>0 Тогда
       
ТекДолжность = Сведения[0].Должность;
    Иначе
       
ТекДолжность = ПредопределенноеЗначение("Справочник.Должности.ПустаяСсылка");
    КонецЕсли;

    Возврат
ТекДолжность;

КонецФункции
0
комментарии
____________________
Copyright©, «Программист 1С в г.Минске», 02.08.2020
Перепечатка текста и фотографий разрешена при наличии прямой ссылки на источник
Яндекс.Метрика
Защищенное соединение ssl
visa
mastercard
Maestro
Яндекс деньги
Назад к содержимому