26.03.2019, 07:10 | #1 |
Участник
|
Фильтр Base Enums
Добрый день друзья. Похожие темы уже существуют на форуме но я для себя однозначного ответа не нашел. Задача следующая Есть форма которую открывают два разных menu items. На форме находиться grid у которого есть поле с типом base enums. Мне нужно что бы в зависимости от какого menu items была открыта форма в поле с типом Base Enums грида отображались те или иные элементы. Через класс SysFormEnumComboBox не удалось реализовать эту фильтрацию так как почему то с обычным combo box класс отрабатывает а с полем грида нет. Через Configuration Key тоже не получилось так как я создал два ключа конфигурации и навесил их на элементы расширенного типа но после того как форма открывается в init формы
указываю DictConfigurationKey ConfigurationKeyAgreement = new DictConfigurationKey(ConfigurationKeyNum(Agreement)); и затем у данного класса есть один подходящий метод ConfigurationKeyAgreement.enabled(); который включает конфигурационный ключ но он уже включен так как isConfigurationkeyEnabled(ConfigurationKeyNum(Agreement)); == true. А где его отключить не понятно так как в Администрировании\ контроль доступа \ уровни доступа я свои конфигурационные ключи не нашел. Вопрос: как организуется фильтрация элементов Base Enums что то типа lookup |
|
26.03.2019, 08:28 | #2 |
Злыдни
|
Чтобы не изобретать велосипед, посмотрите, как организована фильтрация по типам складских журналов. Устраивать танцы с конфигурационными ключами не надо, у пунктов меню есть параметр для Enum.
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании. Последний раз редактировалось KiselevSA; 26.03.2019 в 08:28. Причина: (очепятки) |
|
26.03.2019, 08:32 | #3 |
Участник
|
Не совсем понятно, но автор, похоже, хочет показать поле пользователю и дать его редактировать, при этом в выпадающем списке нужно спрятать часть значений. Т.е.не просто фильтрация записей.
__________________
Ivanhoe as is.. |
|
26.03.2019, 08:58 | #4 |
Участник
|
Именно так, к примеру тип содержит значения 1,2,3,4. Мне нужно что бы при открытии формы с одного menu item отображались и были доступны для выбора значения 1,2. А при открытии этой же формы с дугой менюшки в поле отображались значения 3,4
|
|
26.03.2019, 09:04 | #5 |
Участник
|
Ну перекрывайте lookup и пишите что нужно. Нашёл подобное на форме LedgerRRGCellTable_RU (АХ2009)
X++: public void lookup() { ; EnumLookup_RU::lookup(this, enumnum(LedgerRRGOperationType_RU), ledgerRRGOperationTable.validOperationTypes()); } |
|
|
За это сообщение автора поблагодарили: AlexSD (5). |
26.03.2019, 09:57 | #6 |
Участник
|
Цитата:
Кто мешает пользователю вручную ввести значение (текстом или цифрой)? Что мешает пользователю вставить из буфера? Придется еще и проверять введенные значения, а не только предлагать список для выбора. С base enum автоматической фильтрации и проверки по списку просто нет. Придется программировать (выбор, например, как предлагает Player1, проверки в обычных местах). |
|
26.03.2019, 12:23 | #7 |
Участник
|
Предложение хорошее. Но я столкнулся со следующей проблемой поле которому присвоен мой Enum Type типа Enum и на гриде перекрыв lookup поля он не отрабатывает как в принцыпе не отрабатывает перекрытый lookup поля в data sources наверно потому что это поле combo box
|
|
26.03.2019, 12:28 | #8 |
Участник
|
Должно же быть какое то решение. Просто создавать EDT с сылкой на таблицу не хочу так как исправляется уже существующая структура с данными и переподципить поле не получиться. Прейдется создавать новое и на него переарентировать все проверки что было на поле base enum. а этого так не хочеться
|
|
26.03.2019, 12:38 | #9 |
Участник
|
Недавно решал такую проблему.
Пришлось сделать строковый Edit метод на табличке (метод возвращает и принимает строку а пишет в поле с типом енум в табличке.) Его вывести в грид. Написать для него лукапы и валидации. Работало. Возможно получилось бы и через comboBox - но тогда что-то помешало. Детали не помню уже. |
|
26.03.2019, 13:25 | #10 |
Участник
|
Вы смотрели как сделано в той форме? там не поле таблицы, а edit-метод
|
|
27.03.2019, 08:46 | #11 |
Участник
|
|
|
|
За это сообщение автора поблагодарили: Player1 (1). |
Теги |
ограничение base enums, ограничение расширенного типа данных, фильтр base enums |
|
Похожие темы | ||||
Тема | Ответов | |||
Enum не в Base Enums а в EDT | 2 | |||
фильтр Base Enum-a | 15 | |||
axStart: Using base enums in your .net connector | 0 | |||
Base Enums | 2 | |||
Base Enums - все страньше и страньше! | 8 |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|