0
devochka_1c
25.07.14
✎
16:36
|
Добрый день!
УПП. Есть регистр сведений РаботникиОрганизаций. Так вот нужно получить данные по конкретному работнику: последнюю запись в регистре с пустым ресурсом "ПериодЗавершения". Пишу запрос:
ВЫБРАТЬ
РаботникиОрганизацийСрезПоследних.Сотрудник.Физлицо.СтраховойНомерПФР КАК GlobalEmpCode,
-1 КАК PosHierID,
РаботникиОрганизацийСрезПоследних.Сотрудник КАК Сотрудник,
РаботникиОрганизацийСрезПоследних.ПодразделениеОрганизации КАК ПодразделениеОрганизации,
РаботникиОрганизацийСрезПоследних.Должность
ИЗ
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&НаДату, Организация = &Организация) КАК РаботникиОрганизацийСрезПоследних
ГДЕ
НЕ(РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)
И РаботникиОрганизацийСрезПоследних.Период < &ПериодУвольнения14Дней)
И РаботникиОрганизацийСрезПоследних.Сотрудник = &Сотрудник
И РаботникиОрганизацийСрезПоследних.ПериодЗавершения = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
УПОРЯДОЧИТЬ ПО
РаботникиОрганизацийСрезПоследних.Сотрудник.Наименование
Он мне возвращает пустой результат.
Если убираю условие: РаботникиОрганизацийСрезПоследних.ПериодЗавершения = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
То результат возвращает последнюю запись, но у этой записи ПериодЗавершения заполнен.
А мне требуется получить не просто ПОСЛЕДНЮЮ ЗАПИСЬ регистра, А ПОСЛЕДНЮЮ ЗАПИСЬ С ПУСТЫМ ПЕРИОДЗАВЕРШЕНИЯ.
как это реализовать?
|
|
1
butterbean
25.07.14
✎
16:39
|
если ПериодЗавершения это не измерение, то делай запрос к таблице регистра с отбором по ПериодЗавершения = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0), вычисляй максимум(период), и потом соединяй
|
|