Имя: Пароль:
1C
 
Рассчитать колонку целиком
0 Олеся999
 
12.02.15
07:35
http://lvkr.ru/f/qsDgCg/1024.jpg

Подскажите пожалуйста как можно сделать, что бы при нажатии просчитывалась вся колонка сразу, а не как у меня при нажатии на кнопку расчет1 считалась каждая строка по отдельности?
Может есть пример?

Вот мой код что я написала
&НаКлиенте
Процедура Расчет1(Команда)

СтрокаТабличнойЧасти = Элементы.Таб1.ТекущиеДанные;
СтрокаТабличнойЧасти.РасчетноеКолВо = Объект.Коэф1* СтрокаТабличнойЧасти.Quantity;
    
    ТД=Элементы.Таб1.ТекущиеДанные;
    ТС=Элементы.Таб1.ТекущаяСтрока;
    Элементы.Таб1.ТекущаяСтрока=ТС+1;
    ЭтаФорма.Записать();

КонецПроцедуры
1 Повелитель
 
12.02.15
07:37
Цикл задействуй
2 smartu
 
12.02.15
07:38
перебор строк с обработкой
или
выгрузка в тз, перебор строк с обработкой, загрузка результата
или
выгрузка в тз, обработать в запросе, загрузка результата
3 smartu
 
12.02.15
07:40
тз только на &НаСервере
4 Олеся999
 
12.02.15
07:40
(1) что то вроде этого?
    Для каждого <Имя переменной 1> Из <Имя переменной 2> Цикл
    // Операторы
    [Прервать;]
    // Операторы
    [Продолжить;]
    // Операторы
    КонецЦикла;
5 Повелитель
 
12.02.15
07:42
(4) Да
6 Олеся999
 
12.02.15
08:03
Что то типа такого будет ?
СтрокаТабличнойЧасти = Элементы.Таб1.ТекущиеДанные;

Для каждого НоваяСтрока Из СтрокаТабличнойЧасти Цикл    
СтрокаТабличнойЧасти.РасчетноеКолВо = Объект.Коэф1* СтрокаТабличнойЧасти.Quantity;
     // Пока Цикл
     ТД=0;
    Пока ТД=Элементы.Таб1.ТекущиеДанные;
         ТС=Элементы.Таб1.ТекущаяСтрока;
         Элементы.Таб1.ТекущаяСтрока=ТС+1;
     КонецЦикла;
    
         КонецЦикла;    
    
Для ТД=0 По 1 Цикл
        Если ТД > 1 Тогда
            Прервать;
        КонецЕсли;
           КонецЦикла;
7 1Сергей
 
12.02.15
08:06
(6)

Для каждого СтрокаТабличнойЧасти Из ТабличнаяЧасть Цикл    
    //и т.д.
8 1976vas
 
12.02.15
08:08
(6) Для чего ты получаешь НоваяCтрока?
9 Олеся999
 
12.02.15
08:11
(7) Тогда уж так
       Для каждого СтрокаТабличнойЧасти Из Таб1 Цикл    
            СтрокаТабличнойЧасти.РасчетноеКолВо = Объект.Коэф1* СтрокаТабличнойЧасти.Quantity;
              ТД=0;
    Пока ТД=Элементы.Таб1.ТекущиеДанные;
         ТС=Элементы.Таб1.ТекущаяСтрока;
         Элементы.Таб1.ТекущаяСтрока=ТС+1;
     КонецЦикла;
    
         КонецЦикла;

+ еще прерывания надо
10 Олеся999
 
12.02.15
08:12
(8) Да я ошиблась
11 1976vas
 
12.02.15
08:22
Пока ТД=Элементы.Таб1.ТекущиеДанные;
         ТС=Элементы.Таб1.ТекущаяСтрока;
         Элементы.Таб1.ТекущаяСтрока=ТС+1;
КонецЦикла;
А это что у тебя делает?
12 Олеся999
 
12.02.15
08:27
(11) Строку перемещает
13 1976vas
 
12.02.15
08:29
Зачем? У тебя цикл перемещает
  Для каждого СтрокаТабличнойЧасти Из Таб1 Цикл
14 Олеся999
 
12.02.15
08:30
Точно ...а как прерывать цикл?
15 1976vas
 
12.02.15
08:31
Зачем? Встань отладчиком и посмотри в цикле что у тебя в СтрокаТабличнойЧасти
16 Олеся999
 
12.02.15
08:40
(15)    Для каждого СтрокаТабличнойЧасти Из Объект.Таб1 Цикл    
            СтрокаТабличнойЧасти.РасчетноеКолВо = Объект.Коэф1* СтрокаТабличнойЧасти.Quantity;
              КонецЦикла;
Вот так работает :)
17 1976vas
 
12.02.15
08:44
(16) Удивительно
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.