Форум программистов, компьютерный форум, киберфорум
Наши страницы
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.55/98: Рейтинг темы: голосов - 98, средняя оценка - 4.55
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
Ответы с готовыми решениями:

Оптимизация Работы С Тз
Есть две ТЗ с одинаковыми колонками: Товар, Цена, День, НачО, КонО, Приход, Расход Если в ТЗ1 и...

Оптимизация работы склада
Задача такая у организации есть склад нужно оптимизировать набор товаров. Один товар может лежать...

8.3 Упр.прил. - Оптимизация работы с переменными ?
Все на клиенте: Одна процедура заполняет массив неизвестного размера, другая должна его...

Типы оптимизация: черная оптимизация, серая оптимизация и белая оптимизация
Много много лет назад, на заре становления профессии "оптимизатора" в какой то умной книжке был...

Оптимизация работы
Есть большой файл с множеством формул массива, работа с ним довольно затруднительно. Вопрос такой,...

12
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
Цитата Сообщение от puh14
а нафиг две ТЗ, может лучше один запрос? ;-)

или если так уж приперло, внешняя функция в запросе.
Вот в соседней ветке пытаюсь решить этот вопрос
Сейчас ТЗ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
Цитата Сообщение от Hryv
PS путем сортировки нельзя
Тогда может быть так :
Выгрузить ТЗ32 в ТЗ33, последнюю отсортировать по необходимой колонке, найти в ней первое нужное значение и перебирать ее, пока оно совпадает
0
puh14
0 / 0 / 0
Регистрация: 07.07.2008
Сообщений: 1,401
21.09.2009, 18:27 11
Выгрузить ТЗ32 в ТЗ33, последнюю отсортировать по необходимой колонке, найти в ней первое нужное значение и перебирать ее, пока оно совпадает
Да - так катит! надо только колонки привестив соответствие и будет работать.
0
vbs
0 / 0 / 1
Регистрация: 22.06.2013
Сообщений: 9
21.09.2009, 20:12 12
Цитата Сообщение от puh14
надо только колонки привестив соответствие и будет работать
после ТЗ32.Выгрузить(ТЗ33) сами встанут, как надо
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

Оптимизация работы с БД
Прошло 5 недель, как я перешёл на веб-разработку. У меня много вопросов касающихся оптимизации....

Оптимизация по времени работы
Помогите пожалуйста, нужно оптимизировать код так, чтобы время сократилось раза в полтора....

Оптимизация работы макроса
Ребят всех с наступающим поздравляю! Ребят, написал программу, работает быстро, не тормозит....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.