Имя: Пароль:
1C
1С v8
Выборка неработающих сотрудников...
0 Darhon
 
18.07.13
08:08
Доброе утро всем! Подскажите мне пожалуйста, у меня есть такой вот запрос:

    Запрос.Текст="ВЫБРАТЬ
                 |    РаботникиОрганизацийСрезПоследних.Сотрудник.Должность.Наименование КАК Должность,
                 |    РаботникиОрганизацийСрезПоследних.Организация.Ссылка,
                 |    РаботникиОрганизацийСрезПоследних.Сотрудник.Ссылка КАК Сотрудник,
                 |    РаботникиОрганизацийСрезПоследних.Сотрудник.Физлицо.Ссылка КАК Физлицо
                 |ИЗ
                 |    РегистрСведений.РаботникиОрганизаций.СрезПоследних КАК РаботникиОрганизацийСрезПоследних
                 |";
                 



Как сделать так чтобы он выбирал сотрудников которые работали в организации в заданный период? То есть не попадали уволенные до начала периода и не принятые на работу до конца периода...Заранее спасибо :)
1 RomaH
 
naïve
18.07.13
08:16
два заспроса - один на работающих на начало периода
второй - на имеющих прием в периоде
2 SeraFim
 
18.07.13
08:17
а за ".Ссылка" тут могут и побить :)
3 RomaH
 
naïve
18.07.13
08:17
(0) - выкинуть его (запрос) и написать правильный
4 SeraFim
 
18.07.13
08:18
Подскажу: там есть РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния
это можно сравнить с:
ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)
ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.ПриемНаРаботу)
5 Darhon
 
18.07.13
12:44
(4) Сравнить можно, но ведь СрезПоследних получает результат на определенную дату, а не в течение периода. Мне интересно как сделать чтобы выводились реально работающие в данный период...
6 Darhon
 
18.07.13
13:25
Вот в таком виде запрос все равно работает кривовато :((

    Запрос.Текст="ВЫБРАТЬ
                 |    РаботникиОрганизацийСрезПоследних.Сотрудник.Ссылка КАК Сотрудник,
                 |    РаботникиОрганизацийСрезПоследних.Сотрудник.Наименование,
                 |    РаботникиОрганизацийСрезПоследних.Сотрудник.Физлицо.Ссылка КАК ФизЛицо,
                 |    РаботникиОрганизацийСрезПоследних.Организация.Ссылка КАК Организация,
                 |    РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния.Ссылка,
                 |    РаботникиОрганизацийСрезПоследних.Сотрудник.Должность.Наименование КАК Должность
                 |ИЗ
                 |    РегистрСведений.РаботникиОрганизаций.СрезПоследних(&НачПериода, ) КАК РаботникиОрганизацийСрезПоследних
                 |ГДЕ
                 |    РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния.Ссылка <> &Увольнение
                 |    И РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния.Ссылка = &Прием";
7 Darhon
 
18.07.13
13:41
Народ, самому недопетрить, а сделать сегодня надо (( Подскажите где кроме ДНК и профессии ошибка :)
8 Aprobator
 
18.07.13
13:46
открой документ Начисление заработной платы сотрудникам организаций и посмотри как там получается список работающих сотрудников. Тебе это надо чуть чуть видоизменить и все.
9 SeraFim
 
18.07.13
13:55
в (1) всё расписали
//...
ИЗ
   РегистрСведений.РаботникиОрганизаций.СрезПоследних(&НачПериода, ) КАК РаботникиОрганизацийСрезПоследних
ГДЕ
   РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния.Ссылка <> &Увольнение

ОБЪЕДИНИТЬ

//...

ИЗ
   РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизаций
ГДЕ
   РаботникиОрганизаций.ПричинаИзмененияСостояния.Ссылка = &Прием
   И РаботникиОрганизаций.Период > &НачПериода
   И РаботникиОрганизаций.ПричинаИзмененияСостояния.Ссылка <= &КонПериода
10 SeraFim
 
18.07.13
13:57
тьфу, поторопился:
//...

ИЗ
   РегистрСведений.РаботникиОрганизаций.СрезПоследних(&НачПериода, ) КАК РаботникиОрганизацийСрезПоследних
ГДЕ
   РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния <> &Увольнение

ОБЪЕДИНИТЬ

//...

ИЗ
   РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизаций
ГДЕ
   РаботникиОрганизаций.ПричинаИзмененияСостояния = &Прием
   И РаботникиОрганизаций.Период > &НачПериода
   И РаботникиОрганизаций.Период <= &КонПериода
11 RomaH
 
naïve
18.07.13
14:03
и задайте себе воппрос - что там за реквизиты "Завершения"