Здравствуйте, подскажите пожалуйста.
Как можно получить у физического лица должность?
Вроде есть типовая функция, но я не могу ее найти(
Версия: Бухгалтерия предприятия КОРП, редакция 3.0 (3.0.82.24)
---
Это где? Вот текст функции КадровыйУчет.КадровыеДанныеСотрудников

```1c
    Функция КадровыеДанныеСотрудников(ТолькоРазрешенные, СписокСотрудников, КадровыеДанные, ДатаПолученияДанных = '00010101', ПоляОтбораПериодическихДанных = Неопределено, ФормироватьСПериодичностьДень = Истина) Экспорт

    // Подготовим Запрос и Менеджер временных таблиц.
    Запрос = Новый Запрос;
    Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;

    // Сформируем временную таблицу ВТКадровыеДанныеФизическихЛиц.
    СоздатьНаДатуВТКадровыеДанныеСотрудников(Запрос.МенеджерВременныхТаблиц, ТолькоРазрешенные, СписокСотрудников, КадровыеДанные, ДатаПолученияДанных, ПоляОтбораПериодическихДанных, ФормироватьСПериодичностьДень);

    // Выберем кадровые данные физлиц из временной таблицы.
    Запрос.Текст = "ВЫБРАТЬ КадровыеДанныеСотрудников.* ИЗ ВТКадровыеДанныеСотрудников КАК КадровыеДанныеСотрудников";
    КадровыеДанныеСотрудников = Запрос.Выполнить().Выгрузить();

    Возврат КадровыеДанныеСотрудников;

    КонецФункции
```
---
Нет, в вашем случае Должность = Таблица значений со всей информацией. Никто не обещал вам вернуть строчку с должностью, система понятия не имеет про вашу печатную форму и не оперирует строками. В хотели должность - вы получили ТАБЛИЦУ со всеми ССЫЛКАМИ на должности вашего физлица.

Попробуйте представить, что вы в МассивФизЛиц добавили две записи (Иванов и Петров) - какие данные вы ожидаете получить своим кодом? Какую строчку с должностью? Иванова или Петрова? В какой организации?

Поэтому вот это вот
```1c
    Должность = КадровыйУчет.КадровыеДанныеСотрудников(Истина, КадровыйУчет.СотрудникиФизическихЛиц(МассивФизЛиц), "Должность");
```
 в вашем конкретном случае может выглядеть как
```1c
    ДанныеОДолжностях = КадровыйУчет.КадровыеДанныеСотрудников(Истина, КадровыйУчет.СотрудникиФизическихЛиц(МассивФизЛиц), "Должность");
    ДолжностьСтрока = ДанныеОДолжностях[0].Должность.Наименование;
```
---
```1c
    МассивФизЛиц = Новый Массив;
    МассивФизЛиц.Добавить(<Ссылка на физ лицо>);

    ТаблицаКадровыхДанных = КадровыйУчет.КадровыеДанныеСотрудников(Истина,
    КадровыйУчет.СотрудникиФизическихЛиц(МассивФизЛиц),
    "Должность");
```
---
Это получается, я получу несколько сотрудников?
---
Смотря сколько их связано с физическим лицом, вроде бы все логично
---
Сейчас попробую
---
странная функция

```1c
    Функция ТекущиеКадровыеДанныеСотрудников() Экспорт

    Возврат
    "ДатаПриема,
    |ДатаЗавершенияРаботы,
    |ОформленПоТрудовомуДоговору,
    |ТекущаяОрганизация,
    |ТекущееПодразделение,
    |ТекущаяДолжность,
    |ТекущийВидЗанятости,
    |ОсновноеРабочееМестоВОрганизации,
    |ДатаУвольнения";

    КонецФункции
```
---
Это где? Вот текст функции КадровыйУчет.КадровыеДанныеСотрудников

```1c
    Функция КадровыеДанныеСотрудников(ТолькоРазрешенные, СписокСотрудников, КадровыеДанные, ДатаПолученияДанных = '00010101', ПоляОтбораПериодическихДанных = Неопределено, ФормироватьСПериодичностьДень = Истина) Экспорт

    // Подготовим Запрос и Менеджер временных таблиц.
    Запрос = Новый Запрос;
    Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;

    // Сформируем временную таблицу ВТКадровыеДанныеФизическихЛиц.
    СоздатьНаДатуВТКадровыеДанныеСотрудников(Запрос.МенеджерВременныхТаблиц, ТолькоРазрешенные, СписокСотрудников, КадровыеДанные, ДатаПолученияДанных, ПоляОтбораПериодическихДанных, ФормироватьСПериодичностьДень);

    // Выберем кадровые данные физлиц из временной таблицы.
    Запрос.Текст = "ВЫБРАТЬ КадровыеДанныеСотрудников.* ИЗ ВТКадровыеДанныеСотрудников КАК КадровыеДанныеСотрудников";
    КадровыеДанныеСотрудников = Запрос.Выполнить().Выгрузить();

    Возврат КадровыеДанныеСотрудников;

    КонецФункции
```
---
Вы о разных функциях...
---
на счёт этой функции хотел спросить,
Я получил данные такие https://prnt.sc/uyxzyz

Написал:
МассивФизЛиц = Новый Массив;
  МассивФизЛиц.Добавить(ДанныеЗаполнения.Ответственный.ФизическоеЛицо);
  ТаблицаКадровыхДанных = КадровыйУчет.КадровыеДанныеСотрудников(Истина,
      КадровыйУчет.СотрудникиФизическихЛиц(МассивФизЛиц), "Должность");

По идее результатом же должно быть только значение "Должность"?
Или не так?
---
Ну так вам и пришла только Должность. А ФизЛицо и Сотрудник - это идентификационные данные для этой должности. Потому что физлицо может работать на трех должностях в трех разных компаниях, соответственно у него будет и три карточки "Сотрудник", по которой вы сможете определить все остальные данные должности (организация, штатка, подразделение, оклад и т.д.)...
---
Например:
У меня есть реквизит "Должность" с типом строкой (это чисто для печ формы)

```1c
    МассивФизЛиц = Новый Массив;
    МассивФизЛиц.Добавить(ДанныеЗаполнения.Ответственный.ФизическоеЛицо);

    Должность = КадровыйУчет.КадровыеДанныеСотрудников(Истина,
    КадровыйУчет.СотрудникиФизическихЛиц(МассивФизЛиц), "Должность");
```

Таким образом у меня должность = ""
---
Нет, в вашем случае Должность = Таблица значений со всей информацией. Никто не обещал вам вернуть строчку с должностью, система понятия не имеет про вашу печатную форму и не оперирует строками. В хотели должность - вы получили ТАБЛИЦУ со всеми ССЫЛКАМИ на должности вашего физлица.

Попробуйте представить, что вы в МассивФизЛиц добавили две записи (Иванов и Петров) - какие данные вы ожидаете получить своим кодом? Какую строчку с должностью? Иванова или Петрова? В какой организации?

Поэтому вот это вот
```1c
    Должность = КадровыйУчет.КадровыеДанныеСотрудников(Истина, КадровыйУчет.СотрудникиФизическихЛиц(МассивФизЛиц), "Должность");
```
 в вашем конкретном случае может выглядеть как
```1c
    ДанныеОДолжностях = КадровыйУчет.КадровыеДанныеСотрудников(Истина, КадровыйУчет.СотрудникиФизическихЛиц(МассивФизЛиц), "Должность");
    ДолжностьСтрока = ДанныеОДолжностях[0].Должность.Наименование;
```
---
Понял, спасибо большое)
---
Как можно получить у физического лица должность?
Вроде есть типовая функция, но я не могу ее найти(
Версия: Бухгалтерия предприятия КОРП, редакция 3.0 (3.0.82.24)
Может у сотрудника, найденного по физическому лицу?
---
Ну или так
---
Обращаться нужно к регистру Текущие кадровые данные сотрудников, в нем хранятся данные по физическим лицам и сотрудникам, соответственно из него можно получить данные о должностях и организациях.
---
Сейчас посмотрю регистр
---
Вроде получилось через консоль запросов получить данные, сейчас буду пробовать