15.05.2008, 10:48 | #1 |
Участник
|
Подсвеченые и не подсвеченые объекты в AOT
B AOT есть объекты подсвеченые жирным шрифтом и не подсвеченые.
Текущий слой usr. Подсвеченые это те, которые есть в таблице UtilElements и слой usr. Проблема такая: беру не подсеченый объект, изменяю его, он подсветился, но в таблицу UtilElements информация что он теперь есть на слое usr не попала. Перезахожу в Axapt-у вижу он опять не подсвечен. Встаю на него подсветился. Ну и так до следующего перезахода. Обновление перекрёстных ссылок не помогает. Как вылечилось. Экспортирую объекты. Встаём на объект удаляем его. При этом удаляется только объект находящийся в usr слое. Теперь импортируем его. Всё теперь он в таблице UtilElements. А следовательно подсвечен. Ура. |
|
|
За это сообщение автора поблагодарили: ZVV (1). |
15.05.2008, 11:04 | #2 |
MCITP
|
Цитата:
Причём не для единичных объектов, а для множества, причём на абсолютно разных версиях, приложениях и базах. Получается, это только при импорте туда запись прописывается что ли?
__________________
Zhirenkov Vitaly |
|
15.05.2008, 11:12 | #3 |
Участник
|
Выходит.
Можно проект создать с помощью фильтра по usr слою, чтоб там были только нужные объекты. Экспортировать его. Из него всё удалить выделением. Потом импортировать. В принципе не так долго выйдет. Да insert программный не прокатывает. Пробовал. Последний раз редактировалось miklenew; 15.05.2008 в 11:16. |
|
15.05.2008, 13:37 | #4 |
Участник
|
Цитата:
Цитата:
При кэшировании могут появлятся эффекты подобного рода. я обычно включают отображение всех слоев в Сервис \ Параметры \ Разработка \ Слой прикладных объектов \ Все слои Проблем с подсветкой бывает меньше, но все равно бывает. |
|
15.05.2008, 13:40 | #5 |
Участник
|
Нет. Бывает так, что в текущем слое что-то есть и это видно, если нажать кнопку Слои или показать все слои. Но жирным не выделяется.
По-моему признак жирный/нежирный берется не из UtilElements (поскольку любое обращение к объекту в UtilElements в двухуровневой конфигурации приводит к тому, что страница AOD-файла с этим объектом передается на клиента). По-моему этот признак берется откуда-то из кэша. А кэш может содержать неактуальные данные. |
|
15.05.2008, 13:47 | #6 |
Banned
|
Я действую не так. Я выделяю все интересующие объекты. Запускаю поиск по несуществующей строке: "asdfsdkfsjkdhfjksdhf". За считанные секунды DAX загружает элементы в кеш и "подсвечивает".
|
|
15.05.2008, 13:48 | #7 |
MCITP
|
Цитата:
суть одна - объекты обновляются из кеша. Очень похоже что Маззи прав.
__________________
Zhirenkov Vitaly |
|
15.05.2008, 13:55 | #8 |
Участник
|
Цитата:
Цитата:
Сообщение от mazzy
По-моему признак жирный/нежирный берется не из UtilElements (поскольку любое обращение к объекту в UtilElements в двухуровневой конфигурации приводит к тому, что страница AOD-файла с этим объектом передается на клиента).
По-моему этот признак берется откуда-то из кэша. А кэш может содержать неактуальные данные. Эксперименты все проводил на локале ставил стандарт (без сервера). Просто первоначальные данные он как раз берёт из UtilElements. А когда мы кликаем на него как раз наверное идёт обращение к конфигурации и анализ объекта + коректировка уже имеющейся информации. Ну это только догадки, но на результаты экспирементов они хорошо легли. |
|
15.05.2008, 13:58 | #9 |
Участник
|
Цитата:
Вопрос то как раз в этом, чтоб они не исчезали. |
|
15.05.2008, 14:18 | #10 |
Боец
|
> Вопрос то как раз в этом, чтоб они не исчезали.
Предлагаю на это забить IMHO незначительная проблема |
|
15.05.2008, 14:27 | #11 |
Участник
|
Цитата:
Хотя я не настаиваю. Просто у меня есть большой проет, в нём много объектов и мне хочется видеть какие объекты я уже изменил, а до каких руки не дошли. Согласен, что предложеное решение не самое хорошее, но всё же решение. |
|
15.05.2008, 14:55 | #12 |
Member
|
Насколько я понял, сразу при запуске системы подсвечиваются только те объекты, которые модифицированы на верхнем уровне. Я имею в виду любые модификации в формах, отчетах, в определении таблицы (не полях и методах) в описании классов.
Если класс создан нами (на текущем слое), то он подсвечивается при загрузке. Если мы модифицируем метод в чужом классе, то он при загрузке не подсвечивается. Я так думаю, что при раскрытии узла в АОТ считывается только определение объекта. Чтобы подсветился класс, в котором мы поправили метод, нужно открыть его узел. Думаю, что тогда считываются все данные, имеющие к нему отношение. И, судя по всему, они остаются жить в кэше до "выйти и зайти". Это я к такому выводу для себя пришел исходя из опыта. Думаю, что этим объясняется и то, что пишет EVGL.
__________________
С уважением, glibs® |
|
15.05.2008, 14:57 | #13 |
Member
|
Создайте проект с объектам из определенного слоя. Серьезному разработчику не стоит анализировать объекты из полного списка в АОТе "на глазок" в приведенном вами примере.
__________________
С уважением, glibs® |
|
15.05.2008, 15:11 | #14 |
Участник
|
Цитата:
Я их заранее туда накидал, зная что могут пригодиться. Часть из них изменил, а часть нет. Вот и хочется видеть какие изменил, а какие нет. Понятно что проблема не смертельная, можно и поиск запустить как EVGL предложил, а можно и как я предложил экспортом импортом. Разница лишь в том кому как удобнее и кто что делает. Я хочу видеть результат всегда когда захожу в этот проект без запуска поиска. Поэтому для меня самый приемлимый тот о котором я писал. Просто, мож кому то этот вариант будет удобнее, поэтому и поделился. |
|
15.05.2008, 17:14 | #15 |
Member
|
Цитата:
Сообщение от miklenew
...
А я не говорил про AOT, я говорил про проект в котором много объектов. ... Цитата:
Сообщение от miklenew
...
Вот и хочется ... Была как-то тема про кэширование всех объектов из АОТ при запуске в отдельном потоке. Если очень хочется, покопайте в этом направлении. Но я бы таким заниматься не стал.
__________________
С уважением, glibs® |
|