Вход | Регистрация
 

Вопрос по НайтиСледующий()

Вопрос по НайтиСледующий()
Я
   Momus
 
09.06.21 - 13:06
Два запроса:
Выбрать Ссылка
и
Выбрать Ссылка, Номенклатура, Количество

ВыборкаПоДокуметам = РезультатЗапроса[0].Выбрать();
ВыборкаПоТЧ = РезультатЗапроса[1].Выбрать();

Пока ВыборкаПоДокументам.Следующий() Цикл
    ...
    Пока ВыборкаПоТЧ.НайтиСледующий(Новый Структура("Ссылка", ВыборкаПоДокумента.Ссылка)) Цикл
        ...
    КонецЦикла;
КонецЦикла;

Нужно ли сбрасывать ВыборкаПоТЧ по окончанию шага цикла по ВыборкаПоДокументам? Результат второго запроса может быть неупорядоченным.
   lubitelxml
 
1 - 09.06.21 - 13:08
Почему не сделать 1 запрос?
   lubitelxml
 
2 - 09.06.21 - 13:09
Я обычно не использую НайтиСледующий, а использую НайтиСтроки()
   Momus
 
3 - 09.06.21 - 13:12
(1) хочу знать, как работает НайтиСледующий(). По логике надо сбрасывать, но не проверял
   Momus
 
4 - 09.06.21 - 13:23
Не проверял, но посмотрел в типовой. Нужно сбрасывать
   Dzenn
 
5 - 09.06.21 - 13:29
(0) да, однозначно нужно сбрасывать, даже если кажется, что всё упорядоченно
   Михаил Козлов
 
6 - 09.06.21 - 13:36
Почему бы не использовать итоги и выбирать по группировкам?
   Serg_1960
 
7 - 09.06.21 - 13:40
(3) Логика проста: методы Следующий() и НайтиСледующий() - последовательный поиск от текущей записи и далее, если найдут запись - позицируются на ней. Следовательно, если изменяется структура поиска - поиск надо проводить заново (т.е - сбрасывать текущую позицию). Пример из типовой конфигурации:

Пока ВыборкаПоНДСПродукция.Следующий() Цикл
   СтруктураПоискаВыпуск = ПолучитьСтруктуруПоискаСтрокВыпускаПродукции(СтруктураШапкиДокумента, ВыборкаПоНДСПродукция);
      ВыборкаПоВыпуску.Сбросить();
         Пока ВыборкаПоВыпуску.НайтиСледующий(СтруктураПоискаВыпуск) Цикл
   AlexTim03
 
8 - 09.06.21 - 13:43
Надо сбрасывать.
Либо обе выборки одинаково упорядочивать (по ссылке документа)
   Momus
 
9 - 09.06.21 - 13:49
(7) проверил себя на случай, если что-то не так понял :)
(6) мой пример немного упрощенный, нужен поиск по нескольким полям (номенклатура, характеристика, склад). Использование итогов по-моему для этой задачи не подойдет.
   mistеr
 
10 - 09.06.21 - 13:58
(0) Запрос-то покажи!

Все такие телепаты, как вы это делаете?
   lodger
 
11 - 09.06.21 - 14:01
(10) вполне конкретный вопрос, зачем тебе запрос?
(3) работает согласно логике, проверял.
   mistеr
 
12 - 09.06.21 - 14:14
(11) Не понятно, как связаны две выборки.

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.