Имя: Пароль:
1C
 
Вопрос с простейшим циклом
, ,
0 maptbln
 
30.08.18
11:40
Есть следующий цикл

КоличествоСтрокФин = тпБюджетныеОперации.Количество()-1;

Для НС = 0 по КоличествоСтрокФин-1 Цикл
    Для НС1 = 1 по КоличествоСтрокФин Цикл
        Если тпБюджетныеОперации[НС][1] = тпБюджетныеОперации[НС1][1] и тпБюджетныеОперации[НС][2] = тпБюджетныеОперации[НС1][2] Тогда
            тпБюджетныеОперации.Удалить(НС1);
            КоличествоСтрокФин = тпБюджетныеОперации.Количество()-1;
        КонецЕсли;
            КонецЦикла;
КонецЦикла;    

Но он вечно вылетает индексом за пределы массива и не удаляет в итоге то , что нужно
подскажите пожалуйста,как привести его в правильные вид
1 Волшебник
 
30.08.18
11:41
удалять за пределами цикла
2 maptbln
 
30.08.18
11:44
(1) сформировать массив для удаления потом его пройти , так что ли?
3 Волшебник
 
30.08.18
11:44
(2) Да
4 Быдло замкадное
 
30.08.18
11:45
обходить с зада вперед.
5 Buster007
 
30.08.18
11:47
(4) +
6 maptbln
 
30.08.18
12:04
КоличествоСтрокФин = тпБюджетныеОперации.Количество()-1;
МассивУдаления =Новый Массив();

Для НС = 0 по КоличествоСтрокФин-1 Цикл
    Для НС1 = 1 по КоличествоСтрокФин Цикл
        Если тпБюджетныеОперации[НС][1] = тпБюджетныеОперации[НС1][1] и тпБюджетныеОперации[НС][2] = тпБюджетныеОперации[НС1][2] Тогда
        МассивУдаления.Добавить(тпБюджетныеОперации[НС1]);        
        КонецЕсли;
            КонецЦикла;
КонецЦикла;    

КЭМ = МассивУдаления.ВГраница();
сч = КоличествоСтрокФин;
Пока КЭМ >= 0 Цикл
    Пока сч >= 0 Цикл
        Если МассивУдаления[КЭМ] = тпБюджетныеОперации[сч] тогда
            тпБюджетныеОперации.Удалить(сч);
        КонецЕсли;
        сч = сч-1;
        КонецЦикла;
    КЭМ = КЭМ-1;
КоличествоСтрок = тпБюджетныеОперации.Количество();
сч = КоличествоСтрокФин-1;    
КонецЦикла;

и снова не попадаю
7 Рэйв
 
30.08.18
12:09
(0)Для троля тебе следует открыть для себя...
Для Каждого..
8 maptbln
 
30.08.18
12:30
(7) если б , а как можно при помощи для Каждого реализовать проверку моего условия?
9 Вафель
 
30.08.18
12:30
гугли тему удаление строк в тз
10 Пуля
 
30.08.18
12:36
Ты свернуть таблицу не пробовал?
11 maptbln
 
30.08.18
12:38
(9) Понял, (10) нет пока
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.