Чт, 07.08.2025, 03:18:20
Главная Регистрация RSS
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Предложения. Удаление объектов с контролем ссылок
SimolДата: Ср, 13.01.2016, 17:09:26 | Сообщение # 1
Полковник
Группа: Проверенные
Сообщений: 237
Репутация: 27
Статус: Оффлайн
Добрый день!
В базе сейчас помечено на удаление 600т объектов
Имею следующие предложения:
1) При открытии обработки до заполнения таблицы помеченными на удаление спросить типы объектов, которые заполнять. Так как 600т на удаление не будет запущено и будет запускаться частями, то нет необходимости ждать пока заполнится вся таблица. Через подбор набирать много руками тоже долго. Первое заполнение таблицы у меня
2) При заполнении таблицы Сделать Удалить = Ложь, когда помеченных не много, то проставить все в Истина одной кнопкой не долго. А когда объектов много. то снятие галок долго ждать
3) Когда отобрал определенные типы объектов и нажал снять галки Удалить, то не снимается у объектов, Которые с типом не удовлетворяющим отбору и внизу пишет помечено 600т, хотя в таблице вижу отобранных по типу только, например, 20.
4) Затраты на определение доступности кнопки Удалить 10% от времени обновления таблицы. При заполнении таблицы вызвалось 5 раз. Предлагаю либо сделать ее доступной постоянно либо проверять уже при ее нажатии либо цикл обвернуть условием

Код
Если УдаляемыеОбъекты.Найти(Истина, "Удалять") <> Неопределено
      И УдаляемыеОбъекты.Найти(Истина, "Удаляется") <> Неопределено Тогда

5) вПодсчитатьИтогУдаляемыеОбъекты() Тоже на большом количестве медленно считает, заменил на

Код
УдаляемыеОбъекты.НайтиСтроки(Новый Структура("Удалять, Удаляется", Истина, Истина));
      ВозможноУдалить = НайденныеСтроки.Количество();
Тем более вПодсчитатьИтогУдаляемыеОбъекты() вызывается из ОбновлениеОтображения, а не тогда когда галки меняются. Например псоел удаления части сток если менять актуализированную строку в таблице, то каждый раз считает.
6) Количество в "Пометить N" можно 999, маловато smile


Сообщение отредактировал Simol - Ср, 13.01.2016, 17:58:49
 
SimolДата: Ср, 13.01.2016, 17:37:36 | Сообщение # 2
Полковник
Группа: Проверенные
Сообщений: 237
Репутация: 27
Статус: Оффлайн
Вот замер первого открытия с выполненными пунктами 4 и 5.
Вижу 4 раза сортирует. 30 секунд можно выиграть
Прикрепления: 1727874.pff (370.3 Kb)


Сообщение отредактировал Simol - Ср, 13.01.2016, 17:42:15
 
SimolДата: Ср, 13.01.2016, 18:16:41 | Сообщение # 3
Полковник
Группа: Проверенные
Сообщений: 237
Репутация: 27
Статус: Оффлайн
Вот замер, где  4 и 5 отменил и сделал оригинальный код. но номера строк поплыли
Прикрепления: 2535398.pff (362.0 Kb)


Сообщение отредактировал Simol - Ср, 13.01.2016, 18:16:53
 
tormozitДата: Ср, 13.01.2016, 18:41:56 | Сообщение # 4
Генералиссимус
Группа: Администраторы
Сообщений: 6980
Репутация: 187
Статус: Оффлайн
Спасибо за информацию. В следующей версии эти функции будут оптимизированы и будет добавлена возможность ограничивать типы данных при заполнении кандидатов.
Замечу, что кнопки для снятия и установки всех пометок выполняют практически одинаковый путь кода. Поэтому есть сомнения в корректности замера разницы в скорости их работы.
 
SimolДата: Ср, 13.01.2016, 22:28:22 | Сообщение # 5
Полковник
Группа: Проверенные
Сообщений: 237
Репутация: 27
Статус: Оффлайн
Спасибо!
Два замера дал не для сравнения их между собой, а для анализа.
 
tormozitДата: Сб, 16.01.2016, 15:16:04 | Сообщение # 6
Генералиссимус
Группа: Администраторы
Сообщений: 6980
Репутация: 187
Статус: Оффлайн
Реализовано в 3.47
 
SimolДата: Пн, 18.01.2016, 14:03:21 | Сообщение # 7
Полковник
Группа: Проверенные
Сообщений: 237
Репутация: 27
Статус: Оффлайн
Спасибо, существенно лучше
 
  • Страница 1 из 1
  • 1
Поиск: