Использование менеджера временных таблиц в консоли запросов
|
|
7OH | Дата: Вт, 22.07.2025, 17:40:31 | Сообщение # 1 |
Подполковник
Группа: Пользователи
Сообщений: 144
Репутация: 88
Статус: Оффлайн
|
Есть желание переиспользовать менеджер временных таблиц консоли запросов в обработчике консоли запросов "Перед выполнением запроса" на сервере.
Сценарий простой - повторить типовой код, когда выполняется одна часть большого запроса с созданием некоторого количества ВТ, потом выполняются функции, в которых дозаполняются ВТ запросами и в конце выполняется финальная часть запроса по итогам прошлых расчетов.
Для этого создаю один запрос (начальный) и второй (финальный). Во втором вызываю функции конфигурации, в которые передаётся менеджер временных таблиц. По итогу получаю в этих функциях ошибку, что некоторые ВТ не найдены. В функцию прилетает вместо менеджера - НЕОПРЕДЕЛЕНО, если стоит галка "На сервере". Если галку не ставить - то уже обратно на клиент не может вернуться менеджер с ошибкой сериализации "Отсутствует отображение для типа 'МенеджерВременныхТаблиц'".
|
|
| |
tormozit | Дата: Вт, 22.07.2025, 18:36:57 | Сообщение # 2 |
Генералиссимус
Группа: Администраторы
Сообщений: 6975
Репутация: 187
Статус: Оффлайн
| Сделай пример - файл консоли запросов, который можно открыть и выполнить шаги теста. Если требуется, добавь в тест общий модуль.
|
|
| |
7OH | Дата: Вт, 22.07.2025, 19:26:11 | Сообщение # 3 |
Подполковник
Группа: Пользователи
Сообщений: 144
Репутация: 88
Статус: Оффлайн
| Добавил CF от демки платформенной (27-я версия) и добавленным модулем и функцией для примера. В файле запросов 2 папки - для варианта с функцией и без.
|
|
| |
tormozit | Дата: Вт, 22.07.2025, 20:53:11 | Сообщение # 4 |
Генералиссимус
Группа: Администраторы
Сообщений: 6975
Репутация: 187
Статус: Оффлайн
| Ты читал подсказку к кнопке "На сервере"?
|
|
| |
7OH | Дата: Вт, 22.07.2025, 21:30:23 | Сообщение # 5 |
Подполковник
Группа: Пользователи
Сообщений: 144
Репутация: 88
Статус: Оффлайн
| Читал. Но очень хочется иметь возможность вызывать типовые куски, которые собирают данные. Если есть возможность на клиенте "воссоздавать", может быть можно в обратную сторону так же сделать ?
|
|
| |
tormozit | Дата: Вт, 22.07.2025, 21:40:27 | Сообщение # 6 |
Генералиссимус
Группа: Администраторы
Сообщений: 6975
Репутация: 187
Статус: Оффлайн
| Цитата 7OH (  ) Читал Почему тогда тему создал в разделе Проблемные ситуации? Кажется что поведение соответствует описанию в этой подсказке. Если не согласен, опиши несоответствие. Иначе предлагаю переместить тему в раздел Прочее, т.к. это явное пожелание новой возможности.
|
|
| |
7OH | Дата: Вт, 22.07.2025, 21:46:32 | Сообщение # 7 |
Подполковник
Группа: Пользователи
Сообщений: 144
Репутация: 88
Статус: Оффлайн
| Проблемные, потому что ошибку получаю. На клиенте - сериализацию на выходе, на сервере - другую, так как не дочитал сразу. По наитию - с возможностью изменять текст запроса - просто просится изменение и временных таблиц. Если это в целом можно сделать - можно переместить в хотелки тему.
|
|
| |
tormozit | Дата: Вт, 22.07.2025, 21:52:10 | Сообщение # 8 |
Генералиссимус
Группа: Администраторы
Сообщений: 6975
Репутация: 187
Статус: Оффлайн
| Передача менеджера временных таблиц между клиентом и сервером - очень затратная операция при большом объеме данных. После выполнения обработчика "Перед выполнением" я могу четко понять, что в менеджер были добавлены таблицы и потому нужно его передавать на клиент. А вот на клиенте менеджер почти всегда непустой и часто в нем сидит даже больше таблиц чем нужно будет самому запросу и тем более чем нужно будет обработчику "Перед выполнением". Поэтому безусловная передача с клиента на сервер будет сильно замедлять выполнение запроса и к тому же без пользы.
|
|
| |
7OH | Дата: Вт, 22.07.2025, 21:54:46 | Сообщение # 9 |
Подполковник
Группа: Пользователи
Сообщений: 144
Репутация: 88
Статус: Оффлайн
| Я понимаю - тут должно быть по осознанному выбору пользователя. Отдельной галкой -"Передавать данные менеджера на сервер". Данных может быть не много (у нас как раз их мало, а должно быть больше намного), а может и много, но очень надо раскурить проблему - сервер разработчика потерпит.
|
|
| |
tormozit | Дата: Ср, 23.07.2025, 00:24:11 | Сообщение # 10 |
Генералиссимус
Группа: Администраторы
Сообщений: 6975
Репутация: 187
Статус: Оффлайн
| Создал задачу https://www.hostedredmine.com/issues/1006672
|
|
| |
tormozit | Дата: Вс, 27.07.2025, 22:08:31 | Сообщение # 11 |
Генералиссимус
Группа: Администраторы
Сообщений: 6975
Репутация: 187
Статус: Оффлайн
| Сделано в 7.86
|
|
| |