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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 13.04.2012, 18:35   #1  
Pustik is offline
Pustik
Участник
 
807 / 372 (14) ++++++
Регистрация: 04.06.2004
Еще одна бага.Символ * и метод modified(). АХ2009 RU5
Не знаю может быть здесь уже об этом говорилось, но я не слышал и по поиску ничего не нашел.
Предположим, у нас в справочнике складов хранятся такие склады : Склад, Склад-1,Склад-2.Теперь на форме создаем контрол, который ссылается на справочник складов - InventLocationId. Открываем форму и в этом контроле выбираем (можно через лукап) : Склад. Сходим с контрола. Метод modified() отработает. Возвращаемся на наш контрол. В конце добавляем символ : *. Автоматически срабатывает многим не нужный лукап с фильтром на "Склад*". Но мы хотим, чтобы в контроле осталось значение: Склад*, поэтому не трогая лукап просто сходим с контрола. В этом случае метод modified() (как впрочем и validate()) не отработает. Не буду подробно объяснять зачем это нам понадобилось. Скажу кратко : значение контрола мы используем как Range для своих целей. Нам символ * очень в этом помогает. И метод modified() на контроле тоже во всем этом учавствует.
Конечно все дело в лукап-е. Если его не выводить все работает как часы. Можно еще проверять символ * перед событием лукап и т.д. Свои костыли и залепухи конечно мы сделали так, чтобы это более менее работало нормально без дискомфорта для пользователей.
Мое личное мнение(как и мнение коллеги) это баг.
__________________
-Ты в гномиков веришь?
-Нет.
-А они в тебя верят, смотри, не подведи их.
Старый 13.04.2012, 21:33   #2  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от Pustik Посмотреть сообщение
Мое личное мнение(как и мнение коллеги) это баг.
Баг в чём? В том что validate блокирует такое значение?

К сожалению relation на EDT не умеет по другому ... в отличии от relation на таблицах!
Чтобы реализовать то что вы хотите нужно использовать расширенный тип данных без связи, а связь настроить на уровне таблицы. Дело в том что на табличном relation есть свойство validate, которое можно установить в No.
На самом деле в использовании "не родного" EDT есть смысл ещё и потому, что для хранения нескольких критериев (записанных через запятую) длины стандартного типа данных может попросту не хватить. Тут к месту будет упомянуть свойство ReplaceOnLookup.

P.S.: Offtop: так что это не баг, баг это вот это Аксапта ограничивает размер строки-маски в операторе like размером фильтруемого поля

Последний раз редактировалось S.Kuskov; 13.04.2012 в 21:43.
За это сообщение автора поблагодарили: Pustik (2).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ax2009 RU5: класс CustVendAutoSettlement_Cust_RU, метод description() Damn DAX: Программирование 4 18.12.2010 15:42
На диалоговом поле метод Modified Poleax DAX: Программирование 19 22.03.2010 00:02
Можно ли динамически созданному контролу CheckBox прикрутить метод modified? Poleax DAX: Программирование 4 31.03.2009 19:58
метод Modified к stringControl Poleax DAX: Программирование 15 21.07.2008 18:39
Транзакция в modified Gad DAX: Программирование 1 29.11.2005 19:54

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

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

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