v7: Как сделать цикл в справочнике после спр.НайтиПоРеквизиту(...) #564473


#0 by IgorTrifonov
Всем Здрастьте! Как бы перебрать записи после найденной использовать спр.ВыбратьЭлементыПоРеквизиту боюсь будет очень медленно т.к. в спр-ке миллион записей т.е. справочник выглядит так: деталь состав 12345   абвгд 12345   лмноп 66789   что-то другое 66789   ещё что-то подскажите пожалуйста
#1 by ДенисЧ
запрос некошерен?
#2 by andrewks
а что, по-твоему, "после"?
#3 by vtolga
ПорядокРеквизита(<?>); Синтаксис: ПорядокРеквизита(<ИмяРеквизита>) Назначение: Установить порядок выборки элементов справочника по возрастанию значения реквизита. Параметры: <ИмяРеквизита> - строка с именем реквизита, по возрастанию значений которого выполняется выборка. Замечание: Метод может использоваться только для реквизита с установленным признаком Сортировка. Метод вызывается до вызова метода ВыбратьЭлементы. Метод  можно использовать только для объектов, созданных функцией СоздатьОбъект. Подробнее см. в документации, глава 'Работа со Справочниками'
#4 by vtolga
если , то "После"- это именно то, что нужно
#5 by IgorTrifonov
надо находить много деталей и узнавать их состав т.е. я нахожу в спр-ке деталь 12345 и должен прочитать сотав этой детали, т.е абвгд ежзик и т.д. но деталей искать буду много
#6 by Mashinist
НайтиПоРеквизиту нормально работает реквизит для этого должен быть индексирован Ну запрос 1С всяко медленнее будет Прямой запрос - самое оно Но это если религия позволяет ВК использовать
#7 by IgorTrifonov
поэтому фильтровать ВыбратьЭлементыПоРеквизиту каждый раз справочник с миллионом записей будет дико медленно
#8 by vtolga
Ну и не фильтруй. Найди и бери те, что "После"
#9 by IgorTrifonov
а как перебирать после найденной
#10 by IgorTrifonov
если бы это был файл dbf. я бы написал спр.Следущая
#11 by FN
Проверил? Вообще-то ВыбратьЭлементыПоРеквизиту  достаточно шустро работает, но если мало скорости используй прямой запрос.
#12 by FN
+ прямой запрос -
#13 by Ёпрст
быстро, даже на большем количестве элементов.
#14 by IgorTrifonov
В общем вы все правы, видимо ВыбратьЭлементыПоРеквизиту не фильтрует, а делает то же и я хотел - найти по индексу (отсортированному полю) - и далее перемещаться пока значения индексированного поля совпадает с искомым Спасибо!
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С