Hryv
0 / 0 / 0
Регистрация: 24.07.2008
Сообщений: 658
|
|
1 | |
Оптимизация работы с ТЗ21.09.2009, 15:56. Просмотров 17631. Ответов 12
Метки нет Все метки)
(
Есть две ТЗ
Они, можно сказать, связаны один-к-многим При формировании печатной формы идет перебор строк ТЗ1 и для каждой ее строки надо получить все строки ТЗ2 совпадающие по этому реквизиту. Можно, конечно каждый раз перебирать все строки ТЗ2 и выполнять сравнение, но это как-то некрасиво и будет тормозить при больших таблицах Как это можно оптимизировать? PS путем сортировки нельзя
0
|
|
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
|
21.09.2009, 15:56 |
Ответы с готовыми решениями:
12
Оптимизация Работы С Тз Оптимизация работы склада 8.3 Упр.прил. - Оптимизация работы с переменными ? Типы оптимизация: черная оптимизация, серая оптимизация и белая оптимизация Оптимизация работы |
puh14
0 / 0 / 0
Регистрация: 07.07.2008
Сообщений: 1,401
|
|
21.09.2009, 16:39 | 2 |
Если совпадающих строк больше одной - то кроме перебора ничего нету. Тз.Найти() находит тебе первый и на этом усё.
0
|
kyr
0 / 0 / 0
Регистрация: 04.12.2005
Сообщений: 1,588
|
|
21.09.2009, 16:39 | 3 |
А по НайтиЗначение() тоже не катит?
0
|
puh14
0 / 0 / 0
Регистрация: 07.07.2008
Сообщений: 1,401
|
|
21.09.2009, 16:44 | 4 |
а нафиг две ТЗ, может лучше один запрос? ;-)
или если так уж приперло, внешняя функция в запросе.
0
|
21.09.2009, 16:44 | |
Hryv
0 / 0 / 0
Регистрация: 24.07.2008
Сообщений: 658
|
|
21.09.2009, 16:53 | 5 |
![]() Сейчас ТЗ1 формируется запросом, а ТЗ2 через Рег.ВыбратьДвижения(); Пока Рег.ПолучитьДвижение() = 1 Цикл ...
0
|
kyr
0 / 0 / 0
Регистрация: 04.12.2005
Сообщений: 1,588
|
|
21.09.2009, 16:56 | 6 |
а зачем ты результаты запроса выгружаешь в ТЗ? ведь сразу в цикле можно обрабатывать их...
0
|
Hryv
0 / 0 / 0
Регистрация: 24.07.2008
Сообщений: 658
|
|
21.09.2009, 17:01 | 7 |
KiR, долго объяснять и к сути вопроса это значения не имеет, так как не повлияет на число проходов по втрой таблице
0
|
puh14
0 / 0 / 0
Регистрация: 07.07.2008
Сообщений: 1,401
|
|
21.09.2009, 17:07 | 8 |
Объясни идею что надо - что за структура регистра, какие данные нужно вытащить, есть ли обращения к другим регистрам. Покажи тот запрос что у тебя есть.
0
|
Hryv
0 / 0 / 0
Регистрация: 24.07.2008
Сообщений: 658
|
|
21.09.2009, 17:13 | 9 |
Сейчас напишу в ветке про запрос
0
|
vbs
0 / 0 / 1
Регистрация: 22.06.2013
Сообщений: 9
|
|
21.09.2009, 18:02 | 10 |
![]() Выгрузить ТЗ32 в ТЗ33, последнюю отсортировать по необходимой колонке, найти в ней первое нужное значение и перебирать ее, пока оно совпадает
0
|
puh14
0 / 0 / 0
Регистрация: 07.07.2008
Сообщений: 1,401
|
|
21.09.2009, 18:27 | 11 |
0
|
vbs
0 / 0 / 1
Регистрация: 22.06.2013
Сообщений: 9
|
|
21.09.2009, 20:12 | 12 |
![]()
0
|
puh14
0 / 0 / 0
Регистрация: 07.07.2008
Сообщений: 1,401
|
|
21.09.2009, 23:53 | 13 |
Ааа - а я подумал объеденить две таблицы и уже их мучать.
0
|
21.09.2009, 23:53 | |
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
|
21.09.2009, 23:53 |
Оптимизация работы с БД
Оптимизация работы макроса Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |