Показать сообщение отдельно
Старый 15.03.2021, 12:40   #7  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1234 (44) ++++++++
Регистрация: 11.04.2008
1. Вносим правку в стандартный метод \Classes\SysOpenNewWindowApplObject\runsysContextMenu
X++:
void runsysContextMenu(SysContextMenu _sysContextMenu)
{
    TreeNode aNode = _sysContextMenu.first();
    TreeNode treeNodeToOpen;

    // Open multi fix, 15/03/2021, EVGA -->
    List                treeNodelList = new List(Types::Class);
    ListEnumerator      le;
    // Open multi fix, 15/03/2021, EVGA -->

    while (aNode)    // only single....?!
    {
        treeNodeToOpen = this.usingTreeNode(aNode);

        if (treeNodeToOpen)
        {
            // Open multi fix, 15/03/2021, EVGA -->
            /*
                treeNodeToOpen.AOTnewWindow();
            */
            treeNodelList.addEnd(treeNodeToOpen);
            // Open multi fix, 15/03/2021, EVGA <--
        }

        aNode = _sysContextMenu.next();
    }

    // Open multi fix, 15/03/2021, EVGA -->
    le = treeNodelList.getEnumerator();

    while(le.moveNext())
    {
        treeNodeToOpen = le.current();

        if (treeNodeToOpen)
        {
            treeNodeToOpen.AOTnewWindow();
        }
    }
    // Open multi fix, 15/03/2021, EVGA <--
}
2. Создаем проект, добавляем туда таблицу
3. Выделяем все поля и из контекстного меню открываем всем EDT
Нажмите на изображение для увеличения
Название: 15.03.png
Просмотров: 62
Размер:	25.3 Кб
ID:	13140

4. Все открывшиеся EDT перетягиваем в свой проект и экспортируем.

* Как верно подметили, талица может ссылаться не только на EDT, а также на многое другое: другие таблицы, классы, enums, maps. Те, в свою очередь, могут аналогично ссылаться на что-то ещё. Поэтому задача рекурсивная. Если ее решить в лоб, то с большой степенью вероятности, на выходе вы получите почти все элементы слоя (модели), поэтому проще выгрузить весь слой.
Но на практики таких задач не возникает. Но иногда, что решается лишними +15..+30 минтуми времени. Т.е. волшебной кнопки не существует.
За это сообщение автора поблагодарили: trud (10).