Имя: Пароль:
1C
1С v8
v8: Добавление во временную таблицу
0 vam911
 
08.04.12
18:40
суть довольно проста: надо к временной таблице запроса добавить еще 5 строк - результат выборки.

Делается это просто
1. запрос на объединение начальных данных(100 000 строк и результатов запроса помещается (5 строк) помещается в новую временную таблицу.
2. старая временная таблица таблица удаляется.

НО:
создать таблицу на 100005 записей и уничтожить таблицу в 100000 записей ради 5 записей выглядит не слишком оптимальным решением.

Хотелось бы просто добавить 5 записей к уже существующи 100000
(без переброски туда-сюда)
1 hhhh
 
08.04.12
18:48
(0) 100000 это такая мелочь. Там миллиарды строк в выборках обычно.
2 vam911
 
08.04.12
19:00
Это все присходит в цикле.
1000 раз удалить и добавить 100000 строк получается весьма долго :((( счет идет на минуты там где должно работать по нажатию кнопки (допустимо 10-30 секунд)
3 vam911
 
12.04.12
22:11
Неужели ни у когого никаких идей!
В эскуэле ведь все просто. запрос на добавление и опаньки!
4 hhhh
 
12.04.12
22:46
(1) за запрос в цикле вообще-то расстреливают. Делайте запрос без цикла.
5 Immortal
 
12.04.12
22:48
(3)есть идея не использовать временную таблицу
6 vam911
 
15.04.12
21:05
(5) чем можно заменить?
7 mistеr
 
15.04.12
21:46
6 К тому запросу, который ранее формирует временную таблицу, прицепить эти 5 строк с помощью конструкции ОБЪЕДИНИТЬ ВСЕ?
8 Лефмихалыч
 
15.04.12
21:47
(2) да отсохнут руки, написавшие такой код
9 Immortal
 
16.04.12
22:06
(7)угу
10 vam911
 
21.04.12
18:11
(7) Результат должен быть сохранен во временной таблице.

Код нормальный. Это процедура разузловки состава. Быстрей чем рекурсия более чем в 10 раз.
11 aleks-id
 
21.04.12
18:14
>>Это все присходит в цикле.
марш в дворники
12 ILM
 
гуру
21.04.12
18:34
(10) Полная 1,5 тыс позиций, их разузловка до 8-ми уровней изделий, комплектующие в количестве свыше 15 тыс.позиций одним запросом получается выборка порядка 250 тыс элементов, включает продукт, полуфабрикат, уровень, уровень в ПФ, спецификацию номер строки в ней, тип воспроизводства и т.д.  Занимает около 30 секунд. Работа с результатами потом пара секунд. Что у вас там минуты считает непонятно?

Цикла нет... Одним пакетным запросом, правда строк в нем около 2500. И заточенно было для конкретной организации.
13 ILM
 
гуру
21.04.12
18:37
Через  соответствия программно вообще получается около 12 секунд, правда загружать соответствие в ТЗ отдельная песня...
14 vam911
 
21.04.12
23:22
(12) 8 уровней и у меня за 20 секунд :))).  (15 соответствия)+5 - цикл. А вот когда вложения вложение до 200 ступенек (про 1000 это я немного приувеличил :)).....
Элементов, правда довольно немного (около 300 тыс). Про здоровый запрос - это мысль неплохая (я так понимаю, вы цикл из 8 волжений в 1 запрос закидываете), но боюсь для 200 вложение запрос будет великоват, 1С не переварит :(. Да и цикл в таком случае кажется, все таки, может и более медленным но более правильным.

(13) а можно по подробней....