Диаграмма Ганта и Бизнес-процесс, установка связи

Здравствуйте уважаемые коллеги!

Хотела бы с вами посоветоваться и проконсультироваться, как можно реализовать поставленную задачу.

Тематика моя связана с проектным управление портфелем проектов и ведение проектов для ИТ компании.

1. Задача была, построить бизнес-процессы 3х категорий проектов. (Я их сделала)
2. Задача состоит в том чтобы отслеживать стадии проекта, а именно распределить проекты по степени сложности и за какой период выполнились задачи. И нужно как-то объединить "действия" бизнес-процесса с "задачу", "стадию" и "Работу" диаграммы Ганта. Что вы можете посоветовать?

Скришоты прикрепляю.
Диаграмма Ганта : Изображено для проекта 1 категории.
Бизнес-процесс: Опредление потребностей для проекта 1 категории.

Может я даже допустила ошибки про постороении диаграммы Ганта, к сожалению я их ранешь не строила.

Заранее спасибо!

Нравится

14 комментариев

Здравствуйте, Валентина.

Прежде всего, хотелось бы обратить Ваше внимание на то, что по своей сути диаграмма Ганта является визуальным отображением проектов, которые ведутся в системе. То есть, сроки выполнения проектов/работ/стадий, их последовательность, проценты выполнения и прочая информация, которая наглядно видна на диаграмме Ганта, берется из карточек соответствующих элементов, а редактирование этой информации из окна диаграммы, в свою очередь приводит к изменению ее в карточке.
Если эти элементы создаются у Вас в системе по БП, то для их отображения на диаграмме Ганта это не важно. Добавление проекта для отображения в этой вкладке осуществляется просто нажатием на кнопку "Добавить в диаграмму Ганта".
Исходя из всего написанного выше, не совсем понятна Ваша задача: что имеется ввиду под возможностью

"Капустина Валентина" написал:объединить "действия" бизнес-процесса с "задачу", "стадию" и "Работу" диаграммы Ганта

Во вложении Вы также найдете руководство пользователя в котором в разделе 4.1.2 (стр.244) описаны принципы работы с диаграммой Ганта. Пожалуйста, ознакомьтесь с данным руководством, а если у Вас возникнут дополнительные вопросы, мы обязательно на них ответим.

Инна Безверхняя,
II линия службы поддержки Terrasoft.

Спасибо за информацию. Постораюсь объяснить более понятным образом. Наверное дело в том, что я не могу пока себе представить как это сделать. Но суть такая: у меня есть к примеру бизнес-процесс по проекту (2-ой категрии). У этого проекта есть действия, которые необходимо выполнить ответственным. Разработав бизнес-процесс я его запускаю, и могу только видеть в разделе "Анализ", "Процессы", на какой стадии сейчас мой бизнес-процесс и какие определенные действия выполняются и в каком находятся состоянии. И мне необходимо отобразить все действия бизнес-процесса в диаграмме Ганта, причем, если у меня несколько бизнес-процессов и чтобы они отображались в диаграмме и было наглядно видно какие действия выполнены, а какие действия отстаются в режиме ожидания. Т. е. Необходимо создать синхронность выполнения бизнес-процесса с диараммой Ганта.
Это необходимо сделать, чтобы визуально было видно какие проекты (бизнес-процесс) и действия (из бизнес-процесса) за какой период были выполнены или наоборот не выполнены еще. Я понимаю, что можно в разделе Проекты, добавить этот же проект в ручную, но вот нужно сделать так чтобы автоматически проект был включен в раздел Проекты и изображен на диграмме Ганта. Вот как.

Я пока сейчас нахожусь в поисках как это сделать, но пока есть сложности.

Высылаю вам бизнес-процессы I , II и III категории проектов. Также в документе приложены скрипты, в которых у меня вызываются необходимые документы при определенных действиях, которые подразумевают работу с документами. Но это не относится к задачи с диаграммой Ганта. Высылаю вам эти скрипты, чтобы вам была ясна вся картина.

Благодарю за помощь.

Валентина, для того, чтобы организовать такое отображение, придется связывать этапы проекта с этапами бизнес-процесса.

Для того, чтобы это сделать, необходимо создать параметр по которому мы будем их связывать.

Это должен быть идентификатор стадии конкретного-бизнес-процесса, который будет одинаков для специфической стадии отдельного бизнес-процесса.

Фактически, необходимо создать Перечисление (enm_) для конкретного бизнес-процесса, куда внести каждую его стадию. Затем при переходе на новый этап в скрипте бизнес-процесса присваивать идентификатор стадии.

По данному идентификатору можно будет связать конкретный элемент бизнес-процесса с конкретным элементом проекта.

Реализовать это можно либо вручную (выпадающий список стадий бизнес-процесса) либо скриптами неявно, в зависимости от логики проектов.

Вопрос визуализации элемента бизнес-процесса на диаграмме Ганта следует рассмотреть отдельно.

Alimova Anna
Спасибо большое за подробное описание и за идеи, основываясь на них я попытаюсь начать.
Я решила на примере простого бизнес-процесса ("Заключение контракта") попробовать реализовать, поставленную задачу.
Итак, как я начала и что я сделала.
1. Создала перечесления для конкретного бизнес-процесса ("Заключение контракта"):
enm_ConclusionOfaContract
-Заполнения контракта (Код:FillTheContract);
-Анализ контракта (Код:AnalysisoftheContract);
-Встреча с заказчиком (Код:MeetingWithCustomer).
2. Для элементов:
-Заполнения контракта
-Анализ контракта
-Встреча с заказчиком
в бизнес-процессе я создала параметры "Перечсиление" и определела для каждого Значение. Фактически я связала определенные этапы бизнес-процесса с идентификаторами стадии. А Вы предлагали создать скрипт с помощью, которого присвоить индентификатор стадии. "Фактически, необходимо создать Перечисление (enm_) для конкретного бизнес-процесса, куда внести каждую его стадию. Затем при переходе на новый этап в скрипте бизнес-процесса присваивать идентификатор стадии." Правильно ли сделала? И правельно ли я Вас поняла?

Валентина,

попробую расписать алгоритм определения стадии бизнес-процесса. Файл в приложении.

Анна, спасибо за подробное описание, определения стадии бизнес-процесса.
В соответствии с документом выполнила. Прикрепляю документ, с реализацией.

Валентина,

видимо, я недостаточно подробно объяснила: такой параметр должен быть один. И его значение должно меняться на каждом этапе схемы, а не присваиваться новой переменной.

Дело в том, что мы всякий раз будет обращаться к переменной (в моем примере StageID) чтобы получить текущую стадию БП.

Т.е. скрипт должен выглядеть так:

// wd_ConclusionOfaContractScript
//-----------------------------------------------------------------------------
//Заполнения контракта
function wda_ContractFillingOnBeforeExecute(ActionItem) {
	StageID=FillTheContract;
	}
//Анализ контракта
function wda_ContractReviewOnBeforeExecute(ActionItem) {
	StageID=AnalysisoftheContract;
	}
function wda_MeetingWithCustomerOnBeforeExecute(ActionItem) {
	StageID= MeetingWithCustomer;
	}

А затем значение переменной StageID можно будет вытянуть по идентификатору БП и строить нужную диаграмму.

Анна, я вас поняла и все исправила.

Для того чтобы реализовать графически БП на диаграмме, начала рыться в коде, нашла маленькие намеки. Сложно идет...может я ищу не там...в общем рассматриваю скрипт wnd_ProjectGanttAreaScript.

Предлагаю вам рассмотреть функцию btnAddToGanttOnClickи с wnd_ProjectGanttAreaScript

function btnAddToGanttOnClick(Control) {
	var Container = Self.ParentContainer;
	if (!Assigned(Container)) {
		return;
	}
	var SelectedIDsArray = GetArrayByCollection(grdData.SelectedIDs);
	var ProjectIDsArray = GetProjectIDsArrayBySelectedIDs(SelectedIDsArray, dlData.Dataset);
	var Workspace = Container.ParentWindow;
	var GanttWindow = Workspace.ComponentsByName('wndGanttArea').Window;
	var GanttProjectIDsArray = GetProjectIDsArray(GanttWindow);
	DoArrayJunction(GanttProjectIDsArray, ProjectIDsArray);
	GanttWindow.Attributes('DatasetWasRefreshed') = false;
}

, по аналогии написать аналогичную функцию и вызывать ее в элементе Скрипт в SelectedIDsArray передавать ID элементов проекта, в ProjectIDsArray передавать ID проекта по БП.
Вместо Workspace.ComponentsByName('wndGanttArea').Window; попробуйте задать явный вызов окна диаграммы Ганта

Дело в том, что при ранее созданых параметров в БП, тип которых-"Перечсиление". При запуске БП результат задачи пустой, потому что я не указала взаимосвязь между элементрами. И не могу проверить, активируется ли моя функция или нет. И при изменении типа, у меня ничего не получается. А связать элементы друг с другом в БП, не получается из-за того что тип "перечисление" не совподает с тем типом, которые необходимо объединить. Вот и в ступоре...

function btnAddToGanttOnClick(Control) {
        var Container = Self.ParentContainer;
       if (!Assigned(Container)) {
              return;
       }
    var SelectedIDsArray = '{F6D163DE-405B-4726-9C30-33882FBB8DEF,5B8E83E0-99BA-4474-A79E-AA661074FA87, 416D0752-4453-4296-B16F-A57C2B4B8E2E, 7DB326FC-03AC-4D0C-BB93-CA295136F66F}';
    var ProjectIDsArray = OfferID;
    var Workspace = Container.ParentWindow;
    var GanttWindow =('wnd_ProjectGanttArea');
    var GanttProjectIDsArray = GetProjectIDsArray(GanttWindow);
    DoArrayJunction(GanttProjectIDsArray, ProjectIDsArray);
    GanttWindow.Attributes('DatasetWasRefreshed') = false;
}

"SelectedIDsArray передавать ID элементов проекта"-правельно ли я Вас поняла, что "ID элементов проекта", это элементы которые я указала в перечисление (enm_ConclusionOfaContract) или это ID элементы которые находят в закладке "проект"?

Здравствуйте!
Вопрос такой.

Необходимо отобразить в д.Ганта, вместо одной линии продолжительности проекта, три линии:
1. Черный:Фактическая продолжительность
2. Синий: Плановый продолжительность
3. Красный: Сдвиги (это разница между план. и факт.)

Как изменить временную шкалу на денежную, что бы использовать Д.Ганта для изображения финансовых показателей?

"Капустина Валентина" написал:И не могу проверить, активируется ли моя функция или нет.

Для того, чтобы проверить, отрабатывает ли скрипт, необходимо в функцию добавить строку debugger;
Это вызовет отладчик в момент захода в функцию. Убедитесь также, что у Вас активирован отладчик.

"Капустина Валентина" написал:"перечисление" не совподает с тем типом

А почему оно не совпадает? Следовало создать в ds_Project поле, связанное с тем же перечислением.

"Капустина Валентина" написал:Необходимо отобразить в д.Ганта, вместо одной линии продолжительности проекта, три линии:
1. Черный:Фактическая продолжительность
2. Синий: Плановый продолжительность
3. Красный: Сдвиги (это разница между план. и факт.)

Для этого нужно существенно переделать базовый функционал, т.к. на данный момент в атрибуты окна диаграммы передается только один параметр - идентификатор процесса, а Вам необходимо извлекать и обрабатывать массив.

"Капустина Валентина" написал:Как изменить временную шкалу на денежную, что бы использовать Д.Ганта для изображения финансовых показателей?

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

В любом случае, подобные проектные решения не могут быть реализованы средствами технической поддержки, т.к. требуют дополнительного анализа и тестирования.

Показать все комментарии