Изменение данных в ТаблицеЗначений запросом
Есть таблица значений, в которой вместо строки со значением реквизита Исключая = Истина, нужно подставить строки со всеми другими значениями Ширины. Базовое свойство это ПВХ, а значение в подчиненном справочнике. И сделать это нужно в запросе, куда Таблица Значений передается как параметр. Подскажите пожалуйста каким способом реализовать данный запрос
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
ничего, кроме как крутить всякими соединениям временные таблицы в запросе, на ум не приходит
а вот как крутить, зависит от того что есть на входе и что надо получить на выходе
т.е. входную таблица поместить в запрос как временную
дальше через соединения получить результирующую с нужным данными
а вот как крутить, зависит от того что есть на входе и что надо получить на выходе
т.е. входную таблица поместить в запрос как временную
дальше через соединения получить результирующую с нужным данными
(4)
как-то так, похожий пример давали и в (2)
если по свойству нет связи, то можно только по Исключая = Истина, тогда таблИсходная соединится со всем строками из выборки спр
но при этом для всех спр получится одинаковая ширина
ВЫБРАТЬ
тз.Свойство,
тз.Ширина,
тз.Исключая
ПОМЕСТИТЬ таблИсходная
ИЗ
&таблица как тз
;
/////////
ВЫБРАТЬ
таблИсходная.Ширина,
спр.Длина,
спр.Высота
ИЗ
справочник.Параметры КАК спр
ЛЕВОЕ СОЕДИНЕНИЕ таблИсходная КАК таблИсходная
ПО таблИсходная.Исключая = ИСТИНА
И спр.Свойство = таблИсходная.Свойство
Показатькак-то так, похожий пример давали и в (2)
если по свойству нет связи, то можно только по Исключая = Истина, тогда таблИсходная соединится со всем строками из выборки спр
но при этом для всех спр получится одинаковая ширина
(5)
Получилось сначала ТЗ загрузил во временную таблицу,
вторым действием получил строки с Истина и поместил во временную таблицу,
третье из справочника выбрал значения кроме тех что были со значением Истина и тоже поместил во временную таблицу,
И четвёртым действием соединил полную таблицу и таблицу с обратными значениями справочника,
установил связи и ключевое Выбор Когда
дал необходимый результат, хотя понимаю что обратные значения справочника можно было получить проще.
Параметры
Спасибо за помощь, таблица значений первоначально содержала больше колонок, не писал об этом, т.к. нужен был алгоритм, запрос подправил вручную, поэтому могут быть неточности но алгоритм правильный, в итоге получилось так:
"ВЫБРАТЬ
| ТабЗависимыеЗначения.БазовыеСвойство,
| ТабЗависимыеЗначения.БазовыеЗначения,
| ТабЗависимыеЗначения.Исключая
|ПОМЕСТИТЬ ПолнаяТаблица
|ИЗ
| &ТабЗависимыеЗначения КАК ТабЗависимыеЗначения
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ПолнаяТаблица.БазовыеСвойство,
| ПолнаяТаблица.БазовыеЗначения
|ПОМЕСТИТЬ БазовыеСвойстваДляПолученияПолногоСписка
|ИЗ
| ПолнаяТаблица КАК ПолнаяТаблица
|ГДЕ
| ПолнаяТаблица.Исключая
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| Справочник.Ссылка,
| Справочник.Владелец
|ПОМЕСТИТЬ ЭлементыСпрОбратные
|ИЗ
| БазовыеСвойстваДляПолученияПолногоСписка КАК БазовыеСвойстваДляПолученияПолногоСписка
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Справочник КАК Справочник
| ПО (Справочник.Владелец = БазовыеСвойстваДляПолученияПолногоСписка.БазовыеСвойство)
| И (Справочник.Ссылка <> БазовыеСвойстваДляПолученияПолногоСписка.БазовыеЗначения)
|ГДЕ
| НЕ Справочник.Ссылка В
| (ВЫБРАТЬ
| БазовыеСвойстваДляПолученияПолногоСписка.БазовыеЗначения
| ИЗ
| БазовыеСвойстваДляПолученияПолногоСписка КАК БазовыеСвойстваДляПолученияПолногоСписка)
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ПолнаяТаблица.БазовыеСвойство,
| ВЫБОР
| КОГДА ПолнаяТаблица.Исключая = ИСТИНА
| ТОГДА ЭлементыСпрОбратные.Ссылка
| ИНАЧЕ ПолнаяТаблица.БазовыеЗначения
| КОНЕЦ КАК БазовыеЗначения,
| ПолнаяТаблица.Исключая
|ИЗ
| ПолнаяТаблица КАК ПолнаяТаблица
| ПОЛНОЕ СОЕДИНЕНИЕ ЭлементыСпрОбратные КАК ЭлементыСпрОбратные
| ПО ПолнаяТаблица.БазовыеСвойство = ЭлементыСпрОбратные.Владелец
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|УНИЧТОЖИТЬ ПолнаяТаблица
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|УНИЧТОЖИТЬ БазовыеСвойстваДляПолученияПолногоСписка
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|УНИЧТОЖИТЬ ЭлементыСпрОбратные";
ПоказатьПолучилось сначала ТЗ загрузил во временную таблицу,
вторым действием получил строки с Истина и поместил во временную таблицу,
третье из справочника выбрал значения кроме тех что были со значением Истина и тоже поместил во временную таблицу,
И четвёртым действием соединил полную таблицу и таблицу с обратными значениями справочника,
установил связи и ключевое Выбор Когда
дал необходимый результат, хотя понимаю что обратные значения справочника можно было получить проще.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот