Имя: Пароль:
1C
1С v8
(ЗУП) Объединение таблиц Сотрудники и ЗначенияСвойствОбъектов
0 vechiy
 
13.02.12
17:41
Пытаюсь сделать запрос, выводящий сотрудников с группировкой по свойству, добавленному на закладке "дополнительно" формы элемента "сотрудники". У ряда сотрудников это свойство не заполнено, и в отчёте они не выводятся(т.к. их нет в регистре "значения свойств объектов"). Надо, чтобы выводились. Не соображу, что не так

ВЫБРАТЬ
   ЗначенияСвойствОбъектов.Значение,
   ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник,
   ДополнительныеНачисленияРаботниковОрганизаций.Результат
ИЗ
   РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрРасчета.ДополнительныеНачисленияРаботниковОрганизаций КАК ДополнительныеНачисленияРаботниковОрганизаций
       ПО (ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник = ЗначенияСвойствОбъектов.Объект
               ИЛИ ЗначенияСвойствОбъектов.Объект = НЕОПРЕДЕЛЕНО)
ГДЕ
   ЗначенияСвойствОбъектов.Свойство = &Регион
   И ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.ВидДоговора = &ВидДоговора
   И ДополнительныеНачисленияРаботниковОрганизаций.ВидРасчета В(&ВидыРасчета)
1 Жан Пердежон
 
13.02.12
17:43
sql-ex.ru ждет тебя
2 hhhh
 
13.02.12
17:50
(0) вот это что за бред?

ГДЕ
   ЗначенияСвойствОбъектов.Свойство = &Регион

Если значение не заполнено, зачем ты у него регион проверяешь?
3 Zubek
 
13.02.12
17:51
Попробуй так:

ВЫБРАТЬ
   ЗначенияСвойствОбъектов.Значение,
   ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник,
   ДополнительныеНачисленияРаботниковОрганизаций.Результат
ИЗ
   РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
       ПРАВОЕ СОЕДИНЕНИЕ РегистрРасчета.ДополнительныеНачисленияРаботниковОрганизаций КАК ДополнительныеНачисленияРаботниковОрганизаций
       ПО ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник = ЗначенияСвойствОбъектов.Объект
               
ГДЕ
   ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.ВидДоговора = &ВидДоговора

А дальше отборы выставляй
4 vechiy
 
13.02.12
17:57
(2) потому что там кроме свойства "регион" может быть свойство "вид_должности" и т.д.
5 vechiy
 
14.02.12
10:07
(3) так не катит.
Вот так заработало:

ВЫБРАТЬ
   ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник,
   ДополнительныеНачисленияРаботниковОрганизаций.Результат,
   ВложенныйЗапрос.Поле1
ИЗ
   РегистрРасчета.ДополнительныеНачисленияРаботниковОрганизаций КАК ДополнительныеНачисленияРаботниковОрганизаций
       ПОЛНОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
           ВЫБОР
               КОГДА ЗначенияСвойствОбъектов.Значение = НЕОПРЕДЕЛЕНО
                   ТОГДА ""
               ИНАЧЕ ЗначенияСвойствОбъектов.Значение
           КОНЕЦ КАК Поле1,
           ЗначенияСвойствОбъектов.Объект КАК Объект
       ИЗ
           РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
       ГДЕ
           ЗначенияСвойствОбъектов.Свойство = &Регион) КАК ВложенныйЗапрос
       ПО ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник = ВложенныйЗапрос.Объект
ГДЕ
   ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.ВидДоговора = &ВидДоговора
   И ДополнительныеНачисленияРаботниковОрганизаций.ПериодРегистрации МЕЖДУ &Дата1 И &Дата2
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.