Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Регистр сведений Работники организаций
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.1 (8.0)
nogik
Помогите разобраться с запросом как из Регистра сведений Работники организаций с измерения приказ выбрать физ лицо с последней датой приказа???

ВЫБРАТЬ
    РаботникиОрганизацийСрезПоследних.Период,
    РаботникиОрганизацийСрезПоследних.Физлицо,
    ПРЕДСТАВЛЕНИЕ(РаботникиОрганизацийСрезПоследних.Физлицо),
    РаботникиОрганизацийСрезПоследних.Организация,
    ПРЕДСТАВЛЕНИЕ(РаботникиОрганизацийСрезПоследних.Организация),
    РаботникиОрганизацийСрезПоследних.Приказ,
    ПРЕДСТАВЛЕНИЕ(РаботникиОрганизацийСрезПоследних.Приказ),
    РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния,
    РаботникиОрганизацийСрезПоследних.Приказ.Дата
ИЗ
    РегистрСведений.РаботникиОрганизаций.СрезПоследних(, ) КАК РаботникиОрганизацийСрезПоследних
ГДЕ
    РаботникиОрганизацийСрезПоследних.Физлицо = &Физлицо


Получаеться у работника было 4 приказа на увольнение в разное время, но регистр сведений срез последних отбирает все 4 приказа, вместо приказа с последней датой.
Zaval
Тут срез последних нельзя использовать.
Посмотрите внимательно на измерения)
Срез последних будет работать только для нормальных. А для всяких "туды-сюды" эта трабла вылезет во многих местах конфы.
pablo
Добавьте сортировку по дате и выбирайте 1 запись
nogik
Цитата(Zaval @ 18.05.11, 9:46) необходимо зарегистрироваться для просмотра ссылки
Тут срез последних нельзя использовать

А как надо сделать???
pablo
ВЫБРАТЬ ПЕРВЫЕ 1
РаботникиОрганизацийСрезПоследних.Период,
РаботникиОрганизацийСрезПоследних.Физлицо,
ПРЕДСТАВЛЕНИЕ(РаботникиОрганизацийСрезПоследних.Физлицо),
РаботникиОрганизацийСрезПоследних.Организация,
ПРЕДСТАВЛЕНИЕ(РаботникиОрганизацийСрезПоследних.Организация),
РаботникиОрганизацийСрезПоследних.Приказ,
ПРЕДСТАВЛЕНИЕ(РаботникиОрганизацийСрезПоследних.Приказ),
РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния,
РаботникиОрганизацийСрезПоследних.Приказ.Дата
ИЗ
РегистрСведений.РаботникиОрганизаций.СрезПоследних(, ) КАК РаботникиОрганизацийСрезПоследних
ГДЕ
РаботникиОрганизацийСрезПоследних.Физлицо = &Физлицо
Упорядочить по РаботникиОрганизацийСрезПоследних.Приказ.Дата Убыв
Zaval
Написать свой "срез последних с пофигом на одно из Измерений".
Небольшой подзапросик(вложенный).
Кода под рукой нет.
Лучше напишите сами - он много где пригодится, там по "непоседам" будут проблемы со стажем, актуальной ставкой, учетом использования отпусков smile.gif
nogik
Цитата(Zaval @ 18.05.11, 9:57) необходимо зарегистрироваться для просмотра ссылки
Написать свой "срез последних с пофигом на одно из Измерений".
Небольшой подзапросик(вложенный).
Кода под рукой нет.
Лучше напишите сами - он много где пригодится, там по "непоседам" будут проблемы со стажем, актуальной ставкой, учетом использования отпусков smile.gif

Просто проблема возникает в том что есть один большой запрос в котором используються 2 регистра один регистр расчета ВзносыВФонды и второй по левому соединению Регистра сведений РаботникиОрганизаций возникает проблема в том что некоторых Физ лиц начинает двоить((((
Zaval
Знаю. Год назад сам с этим маялся. Проблема в том, что при каждом приеме на работу одного и того же ФизЛица создается новый Сотрудник.
И срезПоследних с отбором только по ФизЛицу возвращает все сочетания ФизЛицо/Сотр.
Поэтому и предлагаю самому повозиться.
Запустите Глобальный поиск по чему-то вроде "СотрудникиОрганизаций.Срез последних", найдите запрос попроще(чтобы конструктором открывался).
Постарайтесь сделать так, чтобы можно было просто заменять фрагмент текста(потом с запросом любой сложности проблем не будет).
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.