Цитата:
Сообщение от
kitty
Нужно в гриде формы фильтровать base enum в зависимости от значения другого поля записи. То есть если значение одного поля А , то в другом поле вываливаются для выбора значения a, b, c, п если значение B, то в энуме должны появляться только b, d, e, f значения.
Способ 1
Вместо enum создайте справочник, содержащий два поля
1. Поле со значениями поля A
2. Поле со значениями enum'ов.
Создайте сложный relaion на таблице, который учитывает два поля
Пример - любой журнал, который показывает разные значения и даже разные таблицы в зависимости от выбранного типа счета
Способ 2
См. очень сложный для реализации, но уже готовый функционал для финансовых аналитик
http://axapta.mazzy.ru/lib/dimension_hierarchy/
Способ 3
Создайте два enum
enum1: a:1, b:2, c:3
enum2: b:2, d:4, e:5, f:6
при изменении значения в поле А подменяйте lookup в контроле.
Этот вариант требует очень внимательного программирования и соблюдения соглашений в дальнейшем при развитии системи.
например, если появится еще одно значение в A или в первом enum'е добавится элемент.
При всей кажущейся простоте этот способ самый рисковый с точки зрения труднообнаружимых багов в будущем.
Мне кажется, что будет конструктивным, если вы измените свое ТЗ и "другое поле" будет иметь тип код другого справочника, а не enum. реализовать будет намного легче