![]() |
#3 |
Участник
|
Цитата:
Сообщение от AngelDominantes
![]() Доброго времени суток, возникла необходимость создать дерево, раньше в Аксапте никогда с ними не сталкивался, но имею представление еще по опыту программирования на С++, с чего собственно начать, есть ли какой-то хелп по этому поводу, или хотя бы примеры в стандартном функционале. AX 2009, заранее благодарен!
форма tutorial_Form_TreeControl форма ProjTable а самый пример, который наглядно демонстрирует, что деревья использовать НЕ надо - форма SysUserGroupSecurity, вкладка Права. ======================================== Суть вопроса: дерево - это всего лишь способ фильтрации данных. Перечитайте еще раз. Когда речь идет о представлении данных в виде дерева, то это значит данных достаточно много И пользователю нужно предоставить способ сокращения отображаемых данных по неким наперед заданным правилам. Дерево - предоставляет единственно возможный способ фильтрации (обратите внимание как извращаются с несколькими способами фильтрации в форме SysUserGroupSecurity) Вместо дерева ПОЧТИ ВСЕГДА лучше использовать обычные фильтры по разным полям и реквизитам. А это Аксапта замечательно умеет делать в Grid'е Перечитайте еще раз. Дерево категорически противопоказано использовать там, где реальная структура - произвольный граф. Дерево можно использовать только там, где реальная структура - именно дерево (а такое бывает очень редко) ======================================== Технический аспект: аксапта содержит контрол TreeView. = данные в этот контрол могут загружаться сразу при открытии (что и делает форма SysUserGroupSecurity со всеми вытекающими последствиями для быстродействия) = данные в этот контрол могут загружаться по мере открытия веток пользователем (что усложняет программирование контрола на порядок) В ЛЮБОМ СЛУЧАЕ по дереву не предусмотрен интерфейс поиска пользователем. никакой. ни по какому реквизиту. Перечитайте в предыдущем абзаце "...то это значит данных достаточно много И пользователю нужно предоставить способ сокращения..." в результате поиск по дереву придется писать программисту (см. ту же самую злосчастную форму SysUserGroupSecurity), что усложняет программирование контрола еще на два порядка. ======================================== Поэтому: если у вас "возникла необходимость создать дерево" - измените техзадание и работайте с гридом ПЛЮС дайте пользователям возможность быстрой фильтрации. Возможно, для этого вам придется пересмотреть структуру таблиц. ======================================== мое личное бурчание, возможно не имеющее никакого отношения к вам: мой опыт подсказывает, что как только у кого-то "возникла необходимость создать дерево", то это первый признак того, что структура данных, заложенная архитектором-программистом, не совпадает со структурой реальных данных, которые находятся в голове у пользователей. Другими словами, запрограммировано не то, что ожидается людьми. поговорите с людьми. пересмотрите свою структуру данных. ======================================== http://axapta.mazzy.ru/lib/tree/ Последний раз редактировалось mazzy; 01.08.2011 в 05:47. Причина: добавил ссылку |
|
|
За это сообщение автора поблагодарили: AlGol (1), gl00mie (3), AngelDominantes (1). |
Теги |
дерево, как правильно |
|
![]() |
||||
Тема | Ответов | |||
Экспорт/Импорт прав доступа | 28 | |||
Дерево Tree | 7 | |||
Вопрос про Web Apps | 18 | |||
Дерево сопоставлений в SP2? | 4 | |||
дерево ФК | 1 |
|