Имя: Пароль:
1C
 
Перенести элементы формы 1с 8.3
0 DmitriyDI
 
10.04.15
13:06
Пытаюсь обойти элементы формы и перекинуть их делаю так:
для каждого элт из элементы цикл
Элементы.Переместить(элт ,НужнаяГруппа)
конеццикла;

обходит половину элементов и идет дальше, пришлось делать обратный обход по количеству:

для а=0 по колстрок цикл
элемент.переместить(откудаперемещаем(колстрок-а),НужнаяГруппа)
конеццикла;

тогда заработало

почему так происходит?
1 DmitriyDI
 
10.04.15
13:07
элементы - соответственно группа моих элементов (называется переменная конечно не элементы, это пример)
2 DrShad
 
10.04.15
13:07
выборка сбивается - классика
3 Fish
 
гуру
10.04.15
13:08
(0) Потому что нужно понимать, как работать с коллекциями, которые ты изменяешь в цикле.
4 DmitriyDI
 
10.04.15
13:08
(2) ясно, спасибо)
5 DmitriyDI
 
10.04.15
13:09
(3) изменять с конца)
6 DrShad
 
10.04.15
13:13
(5) ил не в пределах текущей выборки
7 ЧеловекДуши
 
10.04.15
13:20
(0) Не далей этого
Это медленный механизм, чрезмерно тормознут :)

Лучше Прятать и показывать, быстрее работает... ;)
8 ЧеловекДуши
 
10.04.15
13:21
+(0)Лучше рассмотри другой метод интерфейса :)
9 ЧеловекДуши
 
10.04.15
13:24
+ Я вот так делал...

    //ИмяСтраницы = СтрокаТЗ.ИмяСтраницы;
    //
    //ГруппаОбщаяДляИнформацииПоЭН = Форма.Элементы.Найти("ГруппаОбщаяДляИнформацииПоЭН");
    //пЭлементСтраница = Форма.Элементы.Найти(ИмяСтраницы);
    //
    //Форма.Элементы.Переместить(ГруппаОбщаяДляИнформацииПоЭН,пЭлементСтраница);
    //
    ////Добавим элемент, который потом бум Прятать
    //пЭлементНадпись = Форма.Элементы.Найти("Надпись"+ИмяСтраницы);
    //пЭлементНадпись.Видимость = Ложь;
    //
    //Если СтарТекущаяСтраницаПоЭН <> Форма.рТекущаяСтраницаПоЭН Тогда
    //    СтрокаТЗ = ТЗ_ЭН[СтарТекущаяСтраницаПоЭН];
    //    ИмяСтраницы = СтрокаТЗ.ИмяСтраницы;
    //    
    //    пЭлементНадпись = Форма.Элементы.Найти("Надпись"+ИмяСтраницы);
    //    пЭлементНадпись.Видимость = Истина;
    //КонецЕсли;
10 ЧеловекДуши
 
10.04.15
13:24
В итоге пришел к выводу, что проще перезаполнять 10-ки реквизитов на диалоге, чем так перемещать :)