Как поставить условие на соединение двух таблиц?
Есть две таблицы, одна с данными, вторая с условиями. Если условий нет, то просто необходимо из первой таблицы запросом выбрать все данные. Если условия есть, то в запросе соответственно надо еще использовать соединение с условиями.
то есть если вторая таблица пустая, то не делать соединения
то есть если вторая таблица пустая, то не делать соединения
ВЫБРАТЬ РАЗРЕШЕННЫЕ
ККТСправочник.Ссылка КАК Ссылка,
ККТСправочник.Наименование КАК Наименование,
ККТСправочник.СерийныйНомер КАК СерийныйНомер,
ЗарегистрированныеКассыСрезПоследних.РегистрационныйНомер КАК РегистрационныйНомер,
ЗарегистрированныеКассыСрезПоследних.ФН КАК ФН,
ЗарегистрированныеКассыСрезПоследних.ЮридическоеЛицо КАК ЮридическоеЛицо,
ЗарегистрированныеКассыСрезПоследних.ТорговаяТочка КАК ТорговаяТочка,
ЗарегистрированныеКассыСрезПоследних.ФН.Модель КАК ФНМодель,
ЗарегистрированныеКассыСрезПоследних.ФН.СерийныйНомер КАК ФНСерийныйНомер,
ЗарегистрированныеКассыСрезПоследних.ДатаОкончанияРегистрации КАК ДатаОкончанияРегистрации,
ЗарегистрированныеКассыСрезПоследних.ДатаНачалаДействияФН КАК ДатаНачалаДействияФН,
ЗарегистрированныеКассыСрезПоследних.ДатаОкончанияДействияФН КАК ДатаОкончанияДействияФН,
0 КАК РесурсФН,
ЗарегистрированныеКассыСрезПоследних.СрокИспользованияФН КАК СрокИспользованияФН
ИЗ
Справочник.ККТ КАК ККТСправочник
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗарегистрированныеКассы.СрезПоследних(, Клиент = &Клиент) КАК ЗарегистрированныеКассыСрезПоследних
ПО ККТСправочник.Ссылка = ЗарегистрированныеКассыСрезПоследних.ККТ
ГДЕ
ККТСправочник.Владелец = &Клиент
СГРУППИРОВАТЬ ПО
ЗарегистрированныеКассыСрезПоследних.ЮридическоеЛицо,
ККТСправочник.Ссылка,
ККТСправочник.Наименование,
ККТСправочник.СерийныйНомер,
ЗарегистрированныеКассыСрезПоследних.РегистрационныйНомер,
ЗарегистрированныеКассыСрезПоследних.ФН,
ЗарегистрированныеКассыСрезПоследних.ТорговаяТочка,
ЗарегистрированныеКассыСрезПоследних.ДатаОкончанияРегистрации,
ЗарегистрированныеКассыСрезПоследних.ФН.Модель,
ЗарегистрированныеКассыСрезПоследних.ФН.СерийныйНомер,
ЗарегистрированныеКассыСрезПоследних.ДатаНачалаДействияФН,
ЗарегистрированныеКассыСрезПоследних.ДатаОкончанияДействияФН,
ЗарегистрированныеКассыСрезПоследних.СрокИспользованияФН
ПоказатьПо теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(3) возможно вам необходимо собрать ваших юрлиц в Вт в привил. режиме в тз,
затем первым пакетом поместить в запрос ВтОтборЮл
а затем в основном запросе юзать
ГДЕ Т.ЮрЛицо В (Выбрать ВтОтборЮл.Ссылка)
это работает шустро даже на слоновых виртуальных таблицах оборотных рег.
затем первым пакетом поместить в запрос ВтОтборЮл
а затем в основном запросе юзать
ГДЕ Т.ЮрЛицо В (Выбрать ВтОтборЮл.Ссылка)
это работает шустро даже на слоновых виртуальных таблицах оборотных рег.
СрезПоследних(, &ВсеКлиенты ИЛИ Клиент = &Клиент)
ГДЕ
&ВсеКлиенты ИЛИ ККТСправочник.Владелец = &Клиент
Если ЗначениеЗаполнено(Клиент) Тогда
Запрос.Параметры.Вставить("ВсеКлиенты", Ложь);
Иначе
Запрос.Параметры.Вставить("ВсеКлиенты", Истина);
КонецЕсли;
ИЛИ тут допустимо и практически не влияет на произвд.
адепты вечного сияния чистого разума могут избавиться от ИЛИ через выбор когда
адепты лаконичности модифицруут текст запроса по условия.
я когда как, по пятницам юзаю параметр, по понедельникам модифицирую - те же яйца.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот