Имя: Пароль:
1C
 
Два менеджера временных таблиц в одном запросе
,
0 Прохожий
 
05.09.23
08:44
Все как пример написано плоско, на самом деле разные МВТ приходят из различных общих модулей, но должны подружиться в одном запросе. То есть в Запросе нужно сделать, например, полное соединение таблиц ВТ_ТаблицаДети из обеих МВТ.
...

ЗапросМуж = Новый Запрос;
МВТМуж = Новый МенеджерВременныхТаблиц;
ЗапросМуж.МенеджерВременныхТаблиц = МВТМуж;
ЗапросМуж.Текст = "Выбрать
|.....
|ПОМЕСТИТЬ ВТ_ТаблицаДети
|;
|.....
|ПОМЕСТИТЬ ВТ_ТаблицаРодители";

ЗапросМуж.Выполнить();

МВТЖен = Новый Запрос;
МВТМуж = Новый МенеджерВременныхТаблиц;
ЗапросЖен.МенеджерВременныхТаблиц = МВТЖен;
ЗапросЖен.Текст = "Выбрать
|.....
|ПОМЕСТИТЬ ВТ_ТаблицаДети
|;
|.....
|ПОМЕСТИТЬ ВТ_ТаблицаРодители";

ЗапросМуж.Выполнить();

Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = ЗапросМуж.МенеджерВременныхТаблиц;
//И как теперь вторую МВТ подключить при том, что гарантированно временные таблицы называются одинаково.
1 Прохожий
 
05.09.23
08:45
Вторая часть такая же как первая, правильно так:

МВТЖен = Новый Запрос;
МВТЖен = Новый МенеджерВременныхТаблиц;
ЗапросЖен.МенеджерВременныхТаблиц = МВТЖен;
ЗапросЖен.Текст = "Выбрать
|.....
|ПОМЕСТИТЬ ВТ_ТаблицаДети
|;
|.....
|ПОМЕСТИТЬ ВТ_ТаблицаРодители";

МВТЖен.Выполнить();
2 Прохожий
 
05.09.23
08:49
В общем есть подсистема, Скопированная с другой. Все запросы сохранены максимально. Дальше временные таблицы передаются типа в отчеты и прочее где окончательным запросом группируется и итожится. Теперь надо две МВТ смешать в один и его туда отправлять. Как правильнее поступить?
3 Прохожий
 
05.09.23
08:53
Ну, я могу в ТаблицыЗначений Выгрузить и отдельно запихать в другую МВТ, но надо внутри запросов
4 unenu
 
05.09.23
09:41
мда, что будет с миром технологий дальше - когда "опытные" специалисты не умеют формулировать мысли?

с иичатами будет еще хуже, ведь там просто нет мыслей и формулируется бред тех кто пытался мысль хотя бы родить.
5 Кир Пластелинин
 
05.09.23
09:58
можно подождать 8.3.25. там обещали завезти добавление данных в уже созданные временные таблицы)
6 AlexeyKh
 
05.09.23
10:08
присоединяюсь, просто подождать платфорку 8.5....
там все это будет! запрос с несколькими МВТ и с одинаковыми именами временных таблиц

примерно так

Выбрать
...
из
МВТ1.вт_Дети как вт_Дети1

соединение

МВТ2.вт_Дети как вт_Дети2

по ...


(все просто)
7 Йохохо
 
05.09.23
10:11
"разные МВТ приходят из различных общих модулей, но должны подружиться в одном запросе"
выглядит так, как будто рефакторинг не довели до конца. Надо или довести, или во все тяжкие
8 elCust
 
05.09.23
10:39
(0) Перепоместить в свой МВТ со своими алиасами как вариант.
9 Прохожий
 
05.09.23
10:53
(8) Через выгрузку в ТаблицуЗначений я и сам могу
10 Прохожий
 
05.09.23
10:54
(7) Блин, какой рефакторинг. Ну если есть типовой ЗУП1. Есть типовой ЗУП2. Есть третья база, которая по СОМ тягает. Какой тебе там рефакторинг?
11 Прохожий
 
05.09.23
10:57
Ком не совсем удачный пример ,те МВТ вообще между собой ни за что не склеить. Но когда-нибудь дойдем и до этого.
12 Прохожий
 
05.09.23
11:00
А пока надо две МВТ, содержащие очень сложные разработочные таблицы склеить с точно такой же МВТ, но другой. Выгрузить а ТЗ и потом перезагрузить я могу сам написать. Пока задача категорически простая - идентичные наборы таблиц у каждой МВТ.
13 elCust
 
05.09.23
14:11
(9) Зачем. ВЫБРАТЬ ИЗ ВТ... ПОМЕСТИТЬ ВТ_СвоеИмя Потом соединяйте их.
14 НЕА123
 
05.09.23
14:14
может в СКД... объект может быть резельтатом запроса, вроде.
15 Eiffil123
 
05.09.23
16:44
(0) нормального решения нет. только выгружать временные таблицы в ТЗ и загружать в новом запросе через параметр
16 Прохожий
 
06.09.23
04:41
(15) Вот вот...
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.