AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 21.11.2007, 11:34   #8  
Alex_KD is offline
Alex_KD
Участник
AxAssist
MCBMSS
Соотечественники
 
522 / 362 (14) ++++++
Регистрация: 06.07.2006
Адрес: Melbourne, Down Under
Цитата:
Сообщение от mazzy Посмотреть сообщение
Нет.
Разве что таким способом http://axapta.mazzy.ru/lib/aoscash/
но кто-то должен будет следить за кэшем
Так не устраивает по понятным причинам - утилита должна работать сама по себе. А так получается надо напрягать пользователя-программиста-админа.

Цитата:
Но обсуждаемая приблуда напрочь сразу перебирает все объекты, при этом загружая их на клиента (и увеличивая трафик - там ведь около полугигабайта тянется).
Насчет пол гига сильно сомниваюсь. ИМХО, 99% от этих "полгига" - это код методов и он не грузится в ДиктКлассах.
Проверю.

Цитата:
Может стоит подгружать по мере необходимости, а не делать свой кэш?
Неполучится. Мне надо знать какие обьекты есть в системе ДО того как программер начинает кодить. Чтобы понять, что QBDS - это QueryBuildDataSource надо сначала получить это имя (QueryBuildDataSource), затем распарсить до Акронима (QBDS). Если это делать в момент ввода - список подсказок будеть грузиться долго.

Цитата:
Вариант 1: читать только включенные конфигурационными ключами объекты.
Вариант 2: читать только перечисленные в настройках приблуды объекты.
Вариант 3: работать по перекрестным ссылкам (но проблема одновременной работы нескольких программистов в этом варианте останется)
Вариант 4: разобраться как ядро работает с мастер-кэшем в разных сервис-паках и заставлять администраторов периодически обновлять его на программистских компьютерах.
Вариант 1 и 2 - мысль полезная...очень даже. Не факт, что такой подход ускорит работу, но то, что Акронимы будут более полезны это 100% (что не используется, то не будет отображатся в cписке подсказок).
В варианте 4 мне не нравится "Заставлять администраторов". Если выбирать между "заставлять" и временем загрузки 1-2 мин, второе предпочтительнее.

Если мыслить глобальнее - синхронизация все равно какая-то будет. Я не умею програмно отслеживать действия по добавлению нового типа/обьекта/таблицы и тп. Так же не умею отслеживать изменение существующего названия. Теоритически это реально отследить, но доработка будет трудоемка.

И всетаки чем не нравится свой кэш?
1. Это файл размером ~200-300Кб. (надо ведь только названия).
2. Это ускорит загрузку - в своем "кэше" можно хранить данные в уже готовом виде (мне надо сортировать элементы).
3. Оставить синхронизацию в виде доп. кнопки, а не делать ее перед запуском.
Синхронизацию все равно надо - новые элементы не попадают.
4. Возможность усовершенствования Акронимов - была идея хранить историю использования и сортировать в списке подсказок опираясь на историю. Т.е. если часто используется тип InventTable - предлагать его первым по акрониму IT (актуально когда по акрониму предлагает кучу мусора, а то что реально используется где-то там в конце списка).

Минусы. Если возможно сделать синхронизацию за 5-20 сек., то лучше делать это принудительно перед запуском утилиты AxAssist.
__________________
AxAssist 2012 - Productivity Tool for Dynamics AX 2012/2009/4.0/3.0
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Оптимизация класса Tax Lihgt DAX: Программирование 43 27.05.2022 11:05
Список измененных (новых) объектов. Оптимизация. Alex_KD DAX: Программирование 2 29.02.2008 12:36
Оптимизация отчета Главная книга vasiliy DAX: Программирование 2 23.06.2006 07:00
Оптимизация производственного планирования Fisher DAX: Прочие вопросы 19 16.04.2005 11:57
Оптимизация запросов Mystery DAX: Программирование 3 25.02.2004 13:12

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 19:21.