Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Инверсия внутреннего соединения

Инверсия внутреннего соединения
Я
   AkimovEv
 
19.03.19 - 11:19
Здравствуйте.
Подскажите как сделать инверсию внутреннего соединения.
Есть Спр.Сотрудники и РегСведений.Отчёты. (поле Сотрудник)
Так вот при внутреннем соединении я выбираю всех Сотрудников из справочника, которые что-то записывали в регистр через заполнение документа.
А мне нужен список Сотрудников, которые ничего не создавали (документ) и в регистре их нет (т.е. они филонили).
Я никак не пойму как это сделать :/
 
 
   Nyoko
 
1 - 19.03.19 - 11:23
создай вложенный запрос, с теми кто сделал и справочником пользователи, Если есть null документ это и есть кто отфилонил..
   mistеr
 
2 - 19.03.19 - 11:25
(0) Левое соединение + ГДЕ Регистр.Сотрудник ЕСТЬ NULL
   Жан Пердежон
 
3 - 19.03.19 - 11:34
(0) это называется антиполусоединение
   palsergeich
 
4 - 19.03.19 - 11:35
(3) тихо, новичков всех отпугаешь
   AkimovEv
 
5 - 19.03.19 - 16:17
Пока так.

ВЫБРАТЬ
    БАМ_ОтветственныеПоКонтрагенту.Ответственный КАК Ответственный,
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ДебитЗадолжПоСотруднику.Регистратор) КАК Регистратор
ПОМЕСТИТЬ т1
ИЗ
    РегистрСведений.ДебитЗадолжПоСотруднику КАК ДебитЗадолжПоСотруднику
        ПОЛНОЕ СОЕДИНЕНИЕ Справочник.БАМ_ОтветственныеПоКонтрагенту КАК БАМ_ОтветственныеПоКонтрагенту
            ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.Остатки КАК ХозрасчетныйОстатки
            ПО БАМ_ОтветственныеПоКонтрагенту.Контрагент = ХозрасчетныйОстатки.Субконто1
        ПО ДебитЗадолжПоСотруднику.Сотрудник = БАМ_ОтветственныеПоКонтрагенту.Ответственный
ГДЕ
    ХозрасчетныйОстатки.Счет В ИЕРАРХИИ(&ВыбСчет)
    И ХозрасчетныйОстатки.СуммаОстатокДт > 0

СГРУППИРОВАТЬ ПО
    БАМ_ОтветственныеПоКонтрагенту.Ответственный
;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ
    т1.Ответственный,
    т1.Регистратор
ИЗ
    т1 КАК т1
ГДЕ
    т1.Регистратор = 0

Теперь буду пробовать по вашему варианту
   Александр Б
 
6 - 19.03.19 - 16:20
(0) НЕ В
Очень простой и понятный вариант.
   AkimovEv
 
7 - 20.03.19 - 08:43
(6) Александр, а где написать НЕ В ?
   AkimovEv
 
8 - 20.03.19 - 08:56
(2) ты мозг, а я пока нет :) твой вариант работает

Список тем форума
Рекламное место пустует  Рекламное место пустует
Компьютер — устройство разработанное для ускорения и автоматизации человеческих ошибок.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует