Имя: Пароль:
1C
1С v8
Передача выборки в функцию
0 sem4cnt
 
21.09.11
22:47
Есть такой код:

// какой-то код
Выборка = Запрос.Выполнить().Выбрать();
Выборка.Следующий();
П1 = Выборка.П1;        // одно значение
ОбходВыборки(Выборка);
П1 = Выборка.П1;        // новое значение!!!!! почему?

Процедура описывается следующим образом:

Процедура ОбходВыборки(Знач Выборка)
// в теле процедуры меняем положение в выборке
КонецПроцедуры

Вопрос: почему после отработки процедуры позиционирование в выборке меняется? Ведь этого быть не должно, т.к. я передаю выборку по значению, а значит, та выборка, которая в процедуре - эта копия исходной. Разве нет?

Вопрос2: Как мне вернуть после выполнения процедуры исходное позиционирование?
1 zak555
 
21.09.11
22:49
всё, что хочешь в конечном итоге распиши
2 sem4cnt
 
21.09.11
22:52
Хочу обойти сложную выборку. Для этого приходиться возвращаться к ранее обойденным местам выборки.
3 zak555
 
21.09.11
22:53
что ты в итоге с ней делаешь ?
4 sem4cnt
 
21.09.11
23:01
Для целей формирования файла выгрузки для передачи в интернет магазин я сформировал большой запрос. Требуется обойти этот запрос и определенным образом скомпоновать данный файл из результатов запроса.
5 Азазелло
 
21.09.11
23:40
1. Выгрузку результата запроса в ТЗ не предлагать?
2. Выборка как бы не совсем "переменная", содержащая значение.
6 sem4cnt
 
21.09.11
23:47
1. Можно и предложить))
2. Уже понял.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс