Имя: Пароль:
1C
1С v8
Удаление элементов формы
0 Ayvengo
 
30.01.13
16:48
Интересно, это у меня одного такая ерунда. Что бы удалить все элементы формы, нужно сделать следующее:
   Для каждого Элемент Из Элементы.ЛистыЭксель.ПодчиненныеЭлементы Цикл
       Элементы.Удалить(Элемент);
   КонецЦикла;
   Для каждого Элемент Из Элементы.ЛистыЭксель.ПодчиненныеЭлементы Цикл
       Элементы.Удалить(Элемент);
   КонецЦикла;


С первого раза не удаляется .. что за ...
1 Reset
 
30.01.13
16:49
Это же классика - удаление элементов коллекции в цикле Для Каждого
2 Wobland
 
30.01.13
16:49
&НаСервере
Процедура УдалитьКолонки(Н)
   УдаляемыеРеквизитыТЗ=Новый Массив;
   ОставляемаяКолонка="ОстатокНаСкладе"+Формат(Н, "ЧЦ=2; ЧВН=");
   ТЗ=Объект.ТЗ.Выгрузить();
   й=ТЗ.Колонки.Количество();
   Пока й>3 Цикл
       й=й-1;
       ТекКолонка=ТЗ.Колонки.Получить(й).Имя;
       Если ТекКолонка<>ОставляемаяКолонка Тогда
           ТЗ.Колонки.Удалить(й);
           УдаляемыеРеквизитыТЗ.Добавить("Объект.ТЗ."+ТекКолонка);
       КонецЕсли;
   КонецЦикла;
   ИзменитьРеквизиты(, УдаляемыеРеквизитыТЗ);
   Объект.ТЗ.Загрузить(ТЗ);
КонецПроцедуры
3 Ayvengo
 
30.01.13
16:50
Ааа. твою ж мать ))) Все, туплю! спасибо:)
4 Ayvengo
 
30.01.13
16:50
МассивНаУдаление = Новый Массив;
   Для каждого Элемент Из Элементы.ЛистыЭксель.ПодчиненныеЭлементы Цикл
       МассивНаУдаление.Добавить(Элемент);
   КонецЦикла;
   Для каждого Элемент Из МассивНаУдаление Цикл
       Элементы.Удалить(Элемент);
   КонецЦикла;