Closed PerlAmutor closed 1 year ago
Согласен, что проверка избыточная, но платформа для неподходящих метаданных очень быстро возвращает результат. Все выполнения этой строки вместе идут 280мс на 14000 объектов. Значит 1700 ролей максимум где то 30мс занимают, а скорее всего 10мс. На фоне 10000мс+ твоего замера это кажется каплей в море.
В клиент-серверной базе оно конечно подольше идет.
Метод ПравоДоступа() не вызывает обращение к серверу. Поэтому в клиент-серверной базе должны быть те же затраты.
Сделай нормальный тест своей гипотезы - цикл чисто с ролями. И покажи результат его замера.
Сделал, судя по всему первый запуск долгий, т.к. все-таки идет какое-то обращение к серверу и затем это кэшируется.
643 мс. для первого запуска это не много но и не мало.
Думаю вопрос можно считать закрытым, т.к. роли я все равно будут обходить, и чисто вызовы ПравоДоступа(<Роль>) занимают мизерное время. Время тут в первом обходе уходит в основном на обращение к метаданным. Плохо что ты не показал построчный замер.
Информация для технической поддержки
Платформа: 8.3.20.1996 Режим БД: файловый Конфигурация. Название: 1С:ERP Управление предприятием 2 (2.5.12.28) Конфигурация. Основной режим запуска: Управляемое приложение Конфигурация. Вариант встроенного языка: Русский Конфигурация. Режим управления блокировкой данных: Управляемый Конфигурация. Режим совместимости: Версия8_3_17 Конфигурация. Режим использования синхронных вызовов: Использовать Конфигурация. Версия БСП: 301 Инструменты разработчика. Версия: Портативный 6.70.1p Инструменты разработчика. Инструмент: Редактор остатков Инструменты разработчика. Перехват клавиатурного ввода: Да Инструменты разработчика. Объекты на сервере: Да Инструменты разработчика. Серверный модуль: Да Клиент. Приложение: Обычное приложение 64б Клиент. Проверка модальных вызовов: Нет Клиент. Язык интерфейса конфигурации: ru Клиент. Язык интерфейса системы: ru Клиент. Отладка разрешена: Нет Клиент. Постоянный кэш метаданных: Да Клиент. ОС: Майкрософт Windows 10 Pro 64-разрядная Русский Клиент. ОС от имени администратора: Нет Клиент. ОС выполнение BAT: Да Клиент. ОС Текущая кодовая страница: 866В функции ДеревоОбъектовМД() ирПлатформа.epf происходит избыточная проверка ПраваДоступа() на Метаданные с типом Роль. В ERP таких ролей за 1700.