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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 15.11.2006, 12:18   #1  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Display methods in AutoLookup, EntireTable
Читаю "Inside Axapta 4.0", вспомнил одну коллизию и захотел поделиться.

АКС позволяет добавлять вычисляемые поля в группу AutoLookup и показывать их в выпадающем списке. Как-то раз надо было реализовать поведение, типичное для SAP - многоязычные описания. Есть простая таблица TableX.TypeXId, TableX.Descrption. Только Descrption нужно выводить на польском, английском или немецком в зависимости от языка интерфейса. Best practice - это присоединить таблицу LanguageTxt, связав ее по RecId. Написал display-метод для основной таблицы, который читает описания из LanguageTxt на нужном языке. Добавил метод в AutoLookup, открываю, а поле пустое.

Как выяснилось, ядро системы слишком умное. Оно читает для выпадающего списка только те поля, которые показывает, т.е. только TableX.TypeXId, а мне нужно еще TableX.RecId, чтобы правильно отработал display-метод.

Решение для коротких таблиц - кеширование. К сожалению, режим CacheLookup=Found не помогает, поскольку в lookup'ах, как известно, создается два курсора TableX.TypeXId < "controlText" и TableX.TypeXId >= "controlText". На условиях ">" или "<" кэш не срабатывает, ему нужно "==".

Только при CacheLookup=EntireCache ядро передает в список lookup все поля, включая RecId, при всех условиях выборки.
За это сообщение автора поблагодарили: gl00mie (3), longson (2).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
axaptapedia: Table Methods Generator Blog bot DAX Blogs 0 13.02.2009 02:05
axaptapedia: Display method Blog bot DAX Blogs 0 29.08.2007 16:30
Grid и display-метод Russland DAX: Программирование 20 09.04.2007 09:25
Говорят вышел SP2 для Axapta 3. Кто нибуть что знает на эту тему? soin DAX: Прочие вопросы 10 13.10.2003 10:43
edit и display методы Maxim Gorbunov DAX: База знаний и проекты 4 15.01.2002 12:58

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 14:15.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.