...

Сохранение базового плана проекта

Тема в разделе "Примеры решений и дополнительных модулей", создана пользователем mochalov, 16 май 2024.

Метки:
  1. mochalov

    mochalov Участник

    На проектах сталкиваемся с требованием сохранения базового плана проекта и анализа его исполнения и изменения в течении жизненного цикла проекта.

    В стандартной конфигурации ELMA365 Проекты в диаграмме Ганта реализована функция "Сравнить с базовым", по умолчанию сравнение идет с текущей версией плана проекта. Основным сценарием использования является наложение отредактированного календарного плана с опубликованным.

    В виджете диаграммы Ганта заложена возможность преопределения поля для хранения базового плана.

    Предлагаю рассмотреть данную возможность на примере требования "Сохранить текущую опубликованную версию плана как базовый план для последующего сравнения и анализа".

    Для этого необходимо:
    1. Добавить в контекст приложения "Проект" добавить поле "Базовый план" (приложение "План проекта", Одиночное)
    2. В конструкторе формы просмотра в настройках диаграммы Ганта установить связь в поле "Базовый план" с полем, созданным на шаге 1
    upload_2024-5-16_15-15-56.png
    3. Добавить кнопку на форму просмотра Проекта для вызова скрипта сохранения базового плана
    upload_2024-5-16_15-17-26.png
    4. Добавить скрипт для сохранения базового плана проекта
    Код:
    
    async function save_base_plan(): Promise<void> {
        const 
    project await Application.search().size(10000).where(a=>a.__id.eq(Context.id)).first(); //поиск текущего проекта
        
    if (project && Context.data._current_plan){
        const 
    current_plan await Context.data._current_plan.fetch(); //получить текущий план
        
    project.data.base_plan current_plan//записать план в проект
        
    await project.save();
        }
    }
    Теперь мы имеем возможность в любой момент зафиксировать опубликованный план проекта как Базовый план.
    Наложение базового плана будет работать с добавленным в ходе реализации полем.

    Дополнительно на кнопку можно добавить отображение только для руководителя проекта.

    Также можно с помощью средств платформы решить более сложные требования по работе с базовыми планами: фиксировать любую версию плана проекта как базовый план, сохранять несколько базовых планов

    Вложения: