Имя: Пароль:
1C
1С v8
Вложенные циклы
,
0 Пользователь1104
 
24.08.16
11:29
Здравствуйте! Как можно увеличить скорость работы вложенных циклов? Очень медленно работает, когда много элементов.

ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
ВыборкаСотрудники = Справочники.Сотрудники.Выбрать();
    
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл        
    
Пока ВыборкаСотрудники.Следующий() Цикл    
Если ВыборкаСотрудники.ФизическоеЛицо = ВыборкаДетальныеЗаписи.Ссылка Тогда
ВыборкаСотрудники.ПолучитьОбъект().Адрес = ВыборкаДетальныеЗаписи.АдресПоПрописке;
КонецЕсли;
КонецЦикла;
    
КонецЦикла;
1 Горогуля
 
24.08.16
11:31
нарисовать другой текст запроса
2 RomanYS
 
24.08.16
11:31
ВыборкаСотрудники.ПолучитьОбъект() - оно вообще работает?

Тормоза явно здесь "....ПолучитьОбъект()".
3 Горогуля
 
24.08.16
11:32
и иногда записывать объекты, подлежащие записи
4 RomanYS
 
24.08.16
11:32
(3) тогда ещё медленнее будет)))
5 DDwe
 
24.08.16
11:33
(3) Ой,ой,ой...я тебя умоляю, ну зачем?
6 DDwe
 
24.08.16
11:33
(4) Вот, товарищ дело говорит, ты его послушай.
7 Пользователь1104
 
24.08.16
11:33
То есть получить объект вне цикла?
8 akaBrr
 
24.08.16
11:34
ВыборкаДетальныеЗаписи.Ссылка.ПолучитьОбъект()
9 Горогуля
 
24.08.16
11:35
(7) а не получить бы данные, таким образом, чтобы необходимость в двойном цикле показалась жалкой и никчёмной?
10 DDwe
 
24.08.16
11:35
А можно вопрос задать?
11 akaBrr
 
24.08.16
11:35
вложеный цикл не нужен
12 akaBrr
 
24.08.16
11:35
вложенный цикл не нужен
13 Горогуля
 
24.08.16
11:36
(10) здесь вопросы задаёт ТС!
14 Fish
 
24.08.16
11:36
(7) Переписать запрос и сразу получить выборку тех, где физлицо = ссылка.
15 Пользователь1104
 
24.08.16
11:36
(10)?
16 DDwe
 
24.08.16
11:36
(12) Еще раз, пожалуйста.
17 DDwe
 
24.08.16
11:36
(13) Ну, один.... ну, пожалуйста....
18 Горогуля
 
24.08.16
11:37
(17) ну хорошо, разрешаю
19 DDwe
 
24.08.16
11:37
(18) Спасибо!
20 DDwe
 
24.08.16
11:37
(15) Зачем?
21 Горогуля
 
24.08.16
11:42
контрольный в голову: какая задача стоит?
22 DDwe
 
24.08.16
11:43
(21) Мдя... кажись опоздал
23 Горогуля
 
24.08.16
11:45
ну нам не привыкать...

необходимо выставить у некоторых сотрудников адрес равным адресу по прописке. о великие гуру, подскажите, как это сделать, а то я дуб-дубом, даже код с двойным циклом стыжусь показать
24 DDwe
 
24.08.16
11:47
(23) Ты растешь, по части предсказаний и чтения мысли.
25 Горогуля
 
24.08.16
11:47
(24) недавно осознал, что сортировка по-пользовательски - это отбор
26 CMblCL
 
24.08.16
11:50
(25) А что есть тогда отбор по пользовательски?
27 Горогуля
 
24.08.16
11:50
(26) фильтр, например. зависит от гороскопа
28 Lexey_
 
24.08.16
11:52
(25) осознай, что есть еще "сортировка отбора"
1С 8.2: сортировка отбора регистра в форме списка
29 Пользователь1104
 
24.08.16
12:04
(21) Нужно каждому сотруднику присвоить адрес из другого справочника.
30 Горогуля
 
24.08.16
12:07
вот это я дал маху...
получи таблицу вида "ссылка - нужный_адрес" и вперёд
31 DDwe
 
24.08.16
12:08
(30) Лучше бы ты Маху дал....
32 Горогуля
 
24.08.16
12:09
(31) из Мах я знаю только "обнажённую" Гойи и соседку из пятого подъезда
33 DDwe
 
24.08.16
12:12
(32) Я о соседке.
34 Горогуля
 
24.08.16
12:17
что-то я запутался, кто с кем и в каком положении
35 DDwe
 
24.08.16
12:21
(34) Плюнь.