|
Запросик | ☑ | ||
---|---|---|---|---|
0
sdfqwe
24.12.12
✎
14:59
|
1С 8.2 ЗУП
Необходимо получить табличку данных запросом: "ВЫБРАТЬ | СостояниеРаботниковОрганизаций.Период, | СостояниеРаботниковОрганизаций.Сотрудник, | СостояниеРаботниковОрганизаций.ПериодЗавершения, | РаботникиОрганизацийСрезПоследних.Период КАК ДатаПриема, | РаботникиОрганизацийСрезПервых.Период КАК ДатаУвольнения........... " Соответственно необходимо для каждой строки в регистре Сведений "СостояниеРаботниковОрганизаций" получить дату увольнения и приема Сотрудника. Как бы это сделать одним лишь запросом без использования внешних ТаблицЗначений? Достаточно написать в общем или немного кодинга. Заранее благодарен. |
|||
1
ХочуСказать
24.12.12
✎
15:02
|
это же просто
|
|||
2
Axel2009
24.12.12
✎
15:03
|
(0) так наоборот срезпервых - прием
|
|||
3
DrShad
24.12.12
✎
15:03
|
(0) рановато ты в ЗУП полез
|
|||
4
tdm
24.12.12
✎
15:04
|
там вроде есть поля - СостояниеРаботниковОрганизаций.Сотрудник.ДатаУвольнения без второй таблицы
|
|||
5
ХочуСказать
24.12.12
✎
15:04
|
||||
6
kosts
24.12.12
✎
15:07
|
СостояниеРаботниковОрганизаций.Сотрудник.ДатаПриема,
СостояниеРаботниковОрганизаций.Сотрудник.ДатаУвольнения, |
|||
7
sdfqwe
24.12.12
✎
15:08
|
(5) Спасибо. Хороший ответ. Телебот отдыхает.
|
|||
8
samozvanec
24.12.12
✎
15:40
|
(2) = Ложь;
|
|||
9
Axel2009
24.12.12
✎
16:23
|
(7) а зачем на каждую дату тебе это писать? у тебя от каждой даты ниче не поменяется, и дата будет одна и таже. зачем усложнять себе жизнь и думать, что ты научился писать срез последних на каждую дату?
|
|||
10
Axel2009
24.12.12
✎
16:23
|
(8) ну поведай почему ложь, то?
|
|||
11
sidalexsandr
24.12.12
✎
16:56
|
(0) Чем не устраивает Справочник.Сотрудники. Вот тебе запросик:
|
|||
12
sidalexsandr
24.12.12
✎
16:56
|
ВЫБРАТЬ
СотрудникиОрганизаций.Наименование, СотрудникиОрганизаций.Физлицо, СотрудникиОрганизаций.Должность, СотрудникиОрганизаций.ДатаНачала, СотрудникиОрганизаций.ДатаОкончания ИЗ Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций |
|||
13
sidalexsandr
24.12.12
✎
16:58
|
Вот лови, через регистр:
ВЫБРАТЬ СостояниеРаботниковОрганизаций.Сотрудник, СостояниеРаботниковОрганизаций.Сотрудник.ДатаПриемаНаРаботу, СостояниеРаботниковОрганизаций.Сотрудник.ДатаУвольнения ИЗ РегистрСведений.СостояниеРаботниковОрганизаций КАК СостояниеРаботниковОрганизаций |
|||
14
sidalexsandr
24.12.12
✎
16:58
|
(0) Все просто, когда есть консоль запросов.
|
|||
15
sdfqwe
24.12.12
✎
17:22
|
Выкладываю запросик. Убивайте) авось научите уму разуму.
"ВЫБРАТЬ | СостояниеРаботниковОрганизаций.Сотрудник, | МАКСИМУМ(РаботникиОрганизаций.Период) КАК ДатаПриема |ПОМЕСТИТЬ ПериодыПриема |ИЗ | РегистрСведений.СостояниеРаботниковОрганизаций КАК СостояниеРаботниковОрганизаций | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизаций | По СостояниеРаботниковОрганизаций.Сотрудник = РаботникиОрганизаций.Сотрудник И | СостояниеРаботниковОрганизаций.Период >= РаботникиОрганизаций.Период |ГДЕ | РаботникиОрганизаций.ПричинаИзмененияСостояния = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.ПриемНаРаботу) |СГРУППИРОВАТЬ ПО | СостояниеРаботниковОрганизаций.Сотрудник |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | СостояниеРаботниковОрганизаций.Сотрудник, | МИНИМУМ(ЕСТЬNULL(РаботникиОрганизаций.Период, ДАТАВРЕМЯ(1,1,1))) КАК ДатаУвольнения |ПОМЕСТИТЬ ПериодыУвольнения |ИЗ | РегистрСведений.СостояниеРаботниковОрганизаций КАК СостояниеРаботниковОрганизаций | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизаций | По СостояниеРаботниковОрганизаций.Сотрудник = РаботникиОрганизаций.Сотрудник И | СостояниеРаботниковОрганизаций.Период < РаботникиОрганизаций.Период |ГДЕ | РаботникиОрганизаций.ПричинаИзмененияСостояния = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение) |СГРУППИРОВАТЬ ПО | СостояниеРаботниковОрганизаций.Сотрудник |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | СостояниеРаботниковОрганизаций.Период, | СостояниеРаботниковОрганизаций.Сотрудник, | СостояниеРаботниковОрганизаций.ПериодЗавершения, | ПериодыПриема.ДатаПриема, | ПериодыУвольнений.ДатаУвольнения |ИЗ | РегистрСведений.СостояниеРаботниковОрганизаций КАК СостояниеРаботниковОрганизаций | ЛЕВОЕ СОЕДИНЕНИЕ ПериодыПриема КАК ПериодыПриема | ПО СостояниеРаботниковОрганизаций.Сотрудник = ПериодыПриема.Сотрудник | ЛЕВОЕ СОЕДИНЕНИЕ ПериодыУвольнений КАК ПериодыУвольнений | ПО СостояниеРаботниковОрганизаций.Сотрудник = ПериодыУвольнений.Сотрудник |ГДЕ | ТИПЗНАЧЕНИЯ(СостояниеРаботниковОрганизаций.Регистратор) = ТИП(Документ.ПереносДанных) | И СостояниеРаботниковОрганизаций.Регистратор.Комментарий ПОДОБНО ""ОТК"""; |
|||
16
sdfqwe
24.12.12
✎
17:27
|
(6), (12), (13) Так просто уже давно нельзя( Хитрости ЗУПа.
|
|||
17
sdfqwe
24.12.12
✎
17:35
|
Пользоваться этим запросом стоит только не для Сотрудников а для ФизЛиц. Тему под снос.
|
|||
18
Axel2009
24.12.12
✎
17:50
|
ВЫБРАТЬ
РаботникиОрганизаций.Сотрудник, МИНИМУМ(ВЫБОР КОГДА РаботникиОрганизаций.ПричинаИзмененияСостояния В (ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.ПриемНаРаботу)) ТОГДА РаботникиОрганизаций.Период ИНАЧЕ NULL КОНЕЦ) КАК ДатаПриема, МАКСИМУМ(ВЫБОР КОГДА РаботникиОрганизаций.ПричинаИзмененияСостояния В (ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)) ТОГДА РаботникиОрганизаций.Период ИНАЧЕ NULL КОНЕЦ) КАК ДатаУвольнения ПОМЕСТИТЬ Периоды ИЗ РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизаций ГДЕ РаботникиОрганизаций.ПричинаИзмененияСостояния В (ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.ПриемНаРаботу), ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)) СГРУППИРОВАТЬ ПО РаботникиОрганизаций.Сотрудник ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ СостояниеРаботниковОрганизаций.Период, СостояниеРаботниковОрганизаций.Сотрудник, СостояниеРаботниковОрганизаций.ПериодЗавершения, Периоды.ДатаПриема, Периоды.ДатаУвольнения ИЗ РегистрСведений.СостояниеРаботниковОрганизаций КАК СостояниеРаботниковОрганизаций ЛЕВОЕ СОЕДИНЕНИЕ Периоды КАК Периоды ПО СостояниеРаботниковОрганизаций.Сотрудник = Периоды.Сотрудник ГДЕ ТИПЗНАЧЕНИЯ(СостояниеРаботниковОрганизаций.Регистратор) = ТИП(Документ.ПереносДанных) И СостояниеРаботниковОрганизаций.Регистратор.Комментарий ПОДОБНО "ОТК" |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |