Имя: Пароль:
1C
1C 7.7
v7: Что работает эффективней запрос или перебор?
0 bizon2008
 
27.07.11
11:44
День добрый народ. Тема наверняка избитая. Но чего внятного не нашел.  Что работает эффективней запрос или перебор? Базы есть как и файловые так и скуль.
1 AeDen
 
27.07.11
11:44
1. смотря какой запрос
2. смотря какой набор данных.
2 vicof
 
27.07.11
11:44
в разных случаях по-разному
3 Fragster
 
гуру
27.07.11
11:45
прямой запрос
4 bizon2008
 
27.07.11
11:46
Ну к примеру, чеки за день. Если перебором, то табличную часть каждого чека тоже перебрать надо будет. Для итога.
5 miki
 
27.07.11
11:47
6 Shandor777
 
27.07.11
11:50
(0) "Практика - критерий истины" В.И. Ленин.
Иногда добавление всего одной внутренней переменной или условия в запросе очень значительно замедляет его выполнение.
7 toypaul
 
гуру
27.07.11
11:51
для дбф чаще перебор. для скл запрос
8 Shandor777
 
27.07.11
11:56
(4) Обычно использую запрос, тем более если указан диапазон дат документов. Если уж медленно выполняется, тогда можно попробовать перебором. В любом случае - только эксперимент даст фактический материал для сравнения.
9 Шёпот теней
 
27.07.11
13:27
если запросом получать много данных то это долго (например, все реквизиты справочника номенклатуры) ... поэтому обычно делаю так:

сначало запрос по небольшому количеству реквизитов (главное чтобы быстро); запрос в таблицу; (просто и наглядно - для меня по крайне мере - видно с чем работать) ...
дальше в таблице, перебором, добавляю необходимые реквизиты...

если по скорости хватает запроса - довольствуюсь одним запросом ...

... вот ...
10 Шёпот теней
 
27.07.11
13:28
(6), (7), (8) - !
11 1Сергей
 
27.07.11
13:29
(4) для таких целей существуют регистры и план счетов
12 Torquader
 
27.07.11
16:45
При одновременной работе нескольких пользователей в базе может получиться, что результаты запроса отличаются от данных в базе, а перебор можно сделать в транзакции (и заблокировать работу всех в базе).
(4) Итоги чего ?
Если товаров, то нужно делать свёртку табличных частей - перебором очень медленно и сложно (хотя, если нужно выполнить проверку корректности цен и т.п. - то только перебором).
Если общие итоги, то у вас что флажок "ИтогПоКолонке" специально снят ?
(11) Обычно данные в регистры и т.п. заносят при закрытии дня, когда уже ясно, что никакой из чеков не изменится, а до этого живут чеки и запись имеет смысл делать только для списания товара, а итоги можно и по чекам перебрать - они не так часто нужны.
P.S. когда с POS-ов выгружаешь список чеков, то там все транзакции в одном текстовом файле - и приходится перебирать построчно.
2 + 2 = 3.9999999999999999999999999999999...