Есть задача.
Вывести запросом сотрудников, которые работали в организации в течении выбранного периода времени.
Что я делаю не так ?
Вывести запросом сотрудников, которые работали в организации в течении выбранного периода времени.
ВЫБРАТЬ
РаботникиОрганизацийСрезПоследних.Сотрудник,
РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния КАК Причина
ИЗ
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&КонецПериода, ) КАК РаботникиОрганизацийСрезПоследних
ГДЕ
(РаботникиОрганизацийСрезПоследних.ПериодЗавершения = &ПустаяДата
ИЛИ РаботникиОрганизацийСрезПоследних.ПериодЗавершения >= &НачалоПериода)
Что я делаю не так ?
По теме из базы знаний
- Отчет по уволенным сотрудникам (1С: ЗиК)
- Список сотрудников, работавших в подразделении организации в указанный период. ЗУП 2.5
- Отчет по кадрам (дни рождения, увольнения, прием, перевод) за период
- Принятые и уволенные сотрудники за период
- Заполнение ведомости на выплату в банк, когда у человека несколько зарплатных проектов (ЗУП 3.1)
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
ВЫБРАТЬ
РаботникиОрганизацийСрезПоследних.Сотрудник,
РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния КАК Причина,
РаботникиОрганизацийСрезПоследних.Сотрудник.ДатаУвольнения КАК ДатаУвольнения
ИЗ
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ДатаСреза, Активность) КАК РаботникиОрганизацийСрезПоследних
ГДЕ
РаботникиОрганизацийСрезПоследних.Сотрудник.ДатаУвольнения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
И НАЧАЛОПЕРИОДА(РаботникиОрганизацийСрезПоследних.Сотрудник.ДатаУвольнения, ДЕНЬ) <= НАЧАЛОПЕРИОДА(&ДатаСреза, ДЕНЬ)
УПОРЯДОЧИТЬ ПО
РаботникиОрганизацийСрезПоследних.Сотрудник
АВТОУПОРЯДОЧИВАНИЕ
Показать
(6)
прочитайте уже вопрос автора, там кажется русский язык используется. Автору как раз и нужны уволенные сотрудники.
Я не умничаю, я констатирую Факт, что в ответ на запрос Выбрать работающих сотрудников , вы предлагаете своим кодом не работающих , а уволенных!
прочитайте уже вопрос автора, там кажется русский язык используется. Автору как раз и нужны уволенные сотрудники.
(9) Т.к. автор в изначальном запросе использовал срез последних (не объяснив почему) я тоже использовал срез последних. И проверку делал с использование одной даты - даты среза. В моем варианте получим всех уволенных с не ограниченной даты начала.
Если всё же надо её ограничивать то тогда да, Ваше условие будет верное.
Если всё же надо её ограничивать то тогда да, Ваше условие будет верное.
Если нужны те кто успел хоть день отработать в указанном периоде, то такое условие
ГДЕ
( (СотрудникиОрганизаций.ДатаПриемаНаРаботу < КОНЕЦПЕРИОДА(&ДатаОкончания, ДЕНЬ
И СотрудникиОрганизаций.ДатаУвольнения = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) )
ИЛИ
( (СотрудникиОрганизаций.ДатаПриемаНаРаботу< КОНЕЦПЕРИОДА(&ДатаОкончания, ДЕНЬ)
И СотрудникиОрганизаций.ДатаУвольнения >=НАЧАЛОПЕРИОДА(&ДатаНачала, ДЕНЬ) )
ГДЕ
( (СотрудникиОрганизаций.ДатаПриемаНаРаботу < КОНЕЦПЕРИОДА(&ДатаОкончания, ДЕНЬ
И СотрудникиОрганизаций.ДатаУвольнения = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) )
ИЛИ
( (СотрудникиОрганизаций.ДатаПриемаНаРаботу< КОНЕЦПЕРИОДА(&ДатаОкончания, ДЕНЬ)
И СотрудникиОрганизаций.ДатаУвольнения >=НАЧАЛОПЕРИОДА(&ДатаНачала, ДЕНЬ) )
(14) Задание для ЗУП 2.5 . В нём нету такого регистра,который Вы указали.
Сделал по Вашему примеру. Но что то не так помоему. Выводит вообще всех сотрудников.
Сделал по Вашему примеру. Но что то не так помоему. Выводит вообще всех сотрудников.
ВЫБРАТЬ
РаботникиОрганизацийСрезПоследних.Сотрудник,
РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния КАК Причина
ИЗ
РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ДатаОкончания, ) КАК РаботникиОрганизацийСрезПоследних
ГДЕ
(РаботникиОрганизацийСрезПоследних.Сотрудник.ДатаПриемаНаРаботу < КОНЕЦПЕРИОДА(&ДатаОкончания, ДЕНЬ)
И РаботникиОрганизацийСрезПоследних.Сотрудник.ДатаУвольнения = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
ИЛИ РаботникиОрганизацийСрезПоследних.Сотрудник.ДатаПриемаНаРаботу < КОНЕЦПЕРИОДА(&ДатаОкончания, ДЕНЬ)
И РаботникиОрганизацийСрезПоследних.Сотрудник.ДатаУвольнения >= НАЧАЛОПЕРИОДА(&ДатаНачала, ДЕНЬ))
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот