Имя: Пароль:
1C
1С v8
1С:ЗУП, ОтчетыПоСотрудникам, Несовместимые типы ВЫБОР
0 Ogonechek
 
18.03.22
15:02
Добрый день, коллеги!

Типовой отчет ЗУП 3.1 ОтчетыПоСотрудникам скопирован (не мной) и дописан в части вывода новых полей в отчет.
Задача стоит такая: если по сотруднику есть "подготовленный" простой, т.е. документ имеет статус Подготовлен (дописанное поле), то выводить ему состояние из этого документа. В противном случае оставить то, что было. (Подготовленные документы не делают движения по регистру Состояний, поэтому и не попадают в изначальный вариант отчета).
Пишу условие, которое обрабатывает конечную таблицу:

ВЫБОР
  КОГДА ЕСТЬNULL(ВТПростои.Состояние,ЗНАЧЕНИЕ(Перечисление.СостоянияСотрудника.ПустаяСсылка)) = ЗНАЧЕНИЕ(Перечисление.СостоянияСотрудника.ПустаяСсылка) ТОГДА
       Представления_КадровыеДанныеСотрудников.Состояние
  ИНАЧЕ
       ВТПростои.Состояние
КОНЕЦ

При этом, если я выберу любое другое поле вместо Представления_КадровыеДанныеСотрудников.Состояние, ошибки несовместимости не будет. Не понимаю, в чем проблема.
Судя по тому, на что подменяется текст в СКД, данные берутся из регистра СостоянияСотрудников, а там у ресурса Состояние тип только один.
Подскажите, пожалуйста, куда копать.
1 Ненавижу 1С
 
гуру
18.03.22
15:10
вероятно Представления_КадровыеДанныеСотрудников.Состояние является составным типом, надо анализировать все входящие, например строки неограниченной длины
2 Ogonechek
 
18.03.22
15:17
(1) А анализировать каким образом? Попробовала внутрь добавить еще условие:

ВЫБОР КОГДА ТИПЗНАЧЕНИЯ(Представления...) = ТИП(Строка) ТОГДА ВЫРАЗИТЬ(Представления... КАК Строка(500)) ИНАЧЕ Представления... КОНЕЦ

НО на любые попытки ВЫРАЗИТЬ с этим полем выходит уже ошибка на несовместимые типы ВЫРАЗИТЬ.
3 КнОпка
 
18.03.22
19:11
(2) видимо это поле лишь Представление объекта
4 Said_We
 
18.03.22
20:41
(0) Если <Представления_КадровыеДанныеСотрудников> по факту равно строке "болеет", то при обращении к полю ".Состояние" у типа строка что будет происходить?

Может просто <КадровыеДанныеСотрудников.Состояние> ?