Имя: Пароль:
1C
1С v8
Прогресс-бар и Сортировать()
0 Gangar
 
29.12.15
12:38
Доброго дня, уважаемые!
Есть ТЗ (~10000 строк номенклатуры).
ТЗ сортируется по Уровень().

Можно ли в обычном приложении выводить индикацию прогресса данной операции?
1 ДемонМаксвелла
 
29.12.15
12:47
(0) если сортируешь своим алгоритмом, то почему нет. Присваивай во внешнем цикле индикатору выполнения что-то типа счетчикЦикла/КоличествоСтрок*100

А вообще возможно будет быстрее отсортировать в запросе.
2 Gangar
 
29.12.15
13:06
(1) Зачем своим? Сортирую ТЗ.Сортировать("Уровень"), где Уровень = Ссылка.Уровень() (а его в запросе нельзя получить, ЕМНИП).
3 PRO100 NigGaZ
 
29.12.15
13:08
(2) (0)  нет
4 ЧеловекДуши
 
29.12.15
13:14
(0) Можно. Создаешь колонку "Число", в которой единичка.
Единичка только у Номенклатуры, т.е. элементов.
Получаешь Итого Единичек.

А дальше в Цикле с промежутком " Сч % 10 = 0 " обновляешь диалог на форме, типо Прогресс бар :)
5 ЧеловекДуши
 
29.12.15
13:15
+ Группа, не есть нужное... и побоку на него :)
6 ЧеловекДуши
 
29.12.15
13:16
(2) Ну вот, самокат и потер. времени на эту феньку ты уже истратил. А допетрить на другое почему-то не сумел :)
7 ЧеловекДуши
 
29.12.15
13:17
Хотя зачем все это? Не проще ли запросом получить то, что надо. А уже одним циклом все обработать. Можно сформировать Пакет запросов.
8 ДемонМаксвелла
 
29.12.15
13:29
(2) в запросе уровень можно получить через выбор и сравнение родителя с пустой ссылкой

И да, ТЗ.Сортировать() на индикатор не вывести