Имя: Пароль:
1C
1С v8
ЗУП. Как получить актуальные записи из рег.Кадровая история сотрудников (по юл)?
0 KizerSoze
 
16.07.12
13:49
Здравствуйте,
Мне необходимо в запросе получить актуальные записи из регистра Кадровая история сотрудников (КИС). Если в запросе выбрать "КИС срез последних", то если заполнен реквизит "ПериодЗавершения" мы не получим корректную выборку (в общем случае).
Вот текст запроса, который хочу доработать.

Запрос = Новый Запрос;
Запрос.Текст="ВЫБРАТЬ
|    РаботникиОрганизаций.Сотрудник,
|    РаботникиОрганизаций.Период КАК Период,
|    РаботникиОрганизаций.ПериодЗавершения,
|    РаботникиОрганизаций.Организация,
|    РаботникиОрганизаций.ПодразделениеОрганизации,
|    РаботникиОрганизаций.Должность,
|    РаботникиОрганизаций.ЗанимаемыхСтавок
|ИЗ
|    РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизаций
|ГДЕ
|    И РаботникиОрганизаций.Период <= &ДатаОтчета
|    И (РаботникиОрганизаций.ПериодЗавершения >= &ДатаОтчета
|    ИЛИ РаботникиОрганизаций.ПериодЗавершения = &НеУказана)
|
|УПОРЯДОЧИТЬ ПО
|    Сотрудник,
|    Период УБЫВ";                    

Запрос.УстановитьПараметр("ДатаОтчета", ДатаОтчета);
Запрос.УстановитьПараметр("НеУказана", '0001.01.01');

Сначало я упорядочил записи по сотруднику, а затем по периоду.
Мне осталось выбрать по каждому сотруднику запись с максимальным значением реквизита "Период".
Возможен ли такой отбор в запросе?
1 HEKPOH
 
16.07.12
13:52
сначала делаешь ВТ по сотруднику и макс значением реквизита Период с условиями из ГДЕ.
потом сво
2 HEKPOH
 
16.07.12
13:53
й запрос соединяешь с ВТ
3 KizerSoze
 
16.07.12
14:00
ГЕНИАЛЬНО!!!
Сейчас попробую!
4 KizerSoze
 
16.07.12
14:19
Все получилось. Спасибо Вам большое.
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший