Тема: TDMS и MS Projeсt: Календарное планирование проектов

Всем доброго времени суток. Клиентов интересует вопрос календарного планирования проектов в связке с TDMS. Насколько я читал в справке TDMS поддерживает эту возможность через интерфейс с MS PROJECT (там даже руководство пользователя прилагается). Где его можно скачать для TDMS 3.0 (ну или хотя бы какой-нибудь), чтобы понаблюдать все это в деле? Заранее спасибо.

Re: TDMS и MS Projeсt: Календарное планирование проектов

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

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

Re: TDMS и MS Projeсt: Календарное планирование проектов

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

Re: TDMS и MS Projeсt: Календарное планирование проектов

Mishaf пишет:

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

На самом деле, это неправда.
Решение существует и правильно функционирует (выполняет поставленные задачи).

Правда в том, что нет "коробочного" решения, которое подойдёт под все существующие настройки, т.к. разные организации могут преследовать совершенно разные цели в такой "простой" задаче "Планирование в MsProject"

(изменено: McZag, 29 апреля 2009г. 14:23:25)

Re: TDMS и MS Projeсt: Календарное планирование проектов

Учитывая столь полярные оценки:

Решение существует и правильно функционирует (выполняет поставленные задачи)
и
На данный момент подобного решения для TDMS 3.0 не существует

я подолью масла в огонь и постараюсь объяснить явно озадаченному посетителю форума, что же тут на самом деле правда.

Правда в том, что существует интерфейс (техническое решение) обеспечивающее связь TDMS 2.0 и Microsoft Project. Старожилы помнят то время, когда этот интерфейс присутствовал в прайс-листе. Но сейчас такой позиции нет, и трудно не согласится с Mishaf, который говорит, что решения нет.

Куда это делась? Правда-матка состоит в том, что только единицы организаций готовы начать внедрение системы управления проектами. Microsoft Project это всего лишь инструмент, который в рамках данной системы может использоваться как приложение к системе управления проектным производством. Как калькулятор, визуализатор и аналитическое средство. Но вовсе не как источник данных или система управления потоками работ (задач).

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

Т.е. организация на вопрос "что вы хотите?" должна ответить не "планировать в Project", а что-то более осмысленное. Например, "хотим оценивать риски", или "хотим оценивать эффективность" и т.д. И уже точно сформулировав задачу, двигаться к ее решению.

Почему же интерфейс TDMS 2.0 не воспроизведен в виде коробочного решения в TDMS 3.0? Да потому, что фронтальное сращивание этих двух систем лишено коммерческого смысла. Ну и что с того, что работы и ресурсы одной системы перетариваются в работы и ресурсы другой? Одного технического инструмента тут явно недостаточно. И самая большая нехватка - отсутствие административного рычага в организации.

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

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

Вот так это все выглядит с моей колокольни  :)

Re: TDMS и MS Projeсt: Календарное планирование проектов

Спасибо всем за ответы. =)

Теперь ситуация для меня в этом плане немного прояснилась. Хотелось бы сказать, что для нашего нового заказчика разговор о планировании собственно и не начинался с MS Project. Как пояснило мне начальство в лице Ген. директора, что оно хотело бы эффективно распределять временные ресурсы сотрудников, затрачиваемые на проектирование, повышать экономическую эффективность. Директор сам обмолвился, что неплохо бы все это сводить в некий план - график. Я уже читал в статьях и обновленной справке про интерфейс интеграции TDMS и MS PROJECT и поэтому предложил ему использовать в качестве аналитического инструмента и средства визуализации именно MS PROJECT. Пока разговор был весьма поверхностным, я думаю еще более детально узнать, что хочет заказчик смогу позже.

У меня возникает вопрос к вам уважаемые разработчики: могу ли я все-таки в дальнейшей нашей беседе с заказчиком опираться на возможность использования MS PROJECT или же вы полностью отвергаете в ближ. перспективе возможность использовать TDMS 3(!) в паре с MS PROJECT для решения задач календарного планирования? Заранее спасибо за ответ.

Re: TDMS и MS Projeсt: Календарное планирование проектов

Driver пишет:

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

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

То, о чем вы говорите заработает в организации только после того как будет решена проблема учета трудозатрат, нормирования и накоплена приличная база знаний (не менее чем за полгода).

Так что если вы начнете прямо завтра, то вы подойдете к ресурсному планированию где-то месяцев через восемь-десять  :)

Интерфейс с Project легко поднять до 3.0 и 4.0. Думаю, что к тому моменту, когда в нем появится физическая необходимость, он уже будет. Такие планы у нас есть, поскольку интерес к этому решению не только у вас.

Re: TDMS и MS Projeсt: Календарное планирование проектов

Интерфейс с Project легко поднять до 3.0 и 4.0.

Это радует.   :rolleyes: Будем работать дальше с заказчиком, там будет все конкретнее и яснее. )

Re: TDMS и MS Projeсt: Календарное планирование проектов

Как показала практика (и то, о чём мы усиленно пытаемся Вам намекнуть....), большинство заказчиков(потенциальных) данного интерфейса понятия не имеют о том, что хотят в итоге получить - ответ "Хочу планировать", как Вы понимаете, совсем не подходит. Не каждый понимает, что такое "Календарное и ресурсное планирование.... учёт трудозатрат", да и саму разницу.

могу ли я все-таки в дальнейшей нашей беседе с заказчиком опираться на возможность использования MS PROJECT или же вы полностью отвергаете в ближ. перспективе возможность использовать TDMS 3(!) в паре с MS PROJECT для решения задач календарного планирования

Можете уже сейчас,  даже можете уже заключать договор! Просто нужно определиться с Заказчиком, что есть это самое "планирование"...

PS Подробнее в личку, либо на мыло, либо на телефон.

Re: TDMS и MS Projeсt: Календарное планирование проектов

Здравствуйте. Где взять справочные материалы по интеграции MS Project и TDMS?
Основная задача стоит в определении сроков работы по проекту в проджекте.
Задача простая: Нужно открыть документ проджект , лежащий в Папке ТДМС. Найти необходимую запись, по имени объекта.  Взять дату и записать ее в атрибут объекта. ну или проверить соответствие.

Re: TDMS и MS Projeсt: Календарное планирование проектов

API проджекта Вам в помощь  :) (Кнопочки: Alt+F11, затем F1)

Re: TDMS и MS Projeсt: Календарное планирование проектов

Anatoly пишет:

API проджекта Вам в помощь  :) (Кнопочки: Alt+F11, затем F1)

Ну это понятно что F1 всему ответ. А готового решения интерфейса разве нет? как везде в рекламе расписано?
Просто не хочется лишний раз заморачиваться и тратить время на создание того, что уже есть, и судя по заверением есть давно и прекрасно работает.
ТДМС 3

Re: TDMS и MS Projeсt: Календарное планирование проектов

Kirzaa пишет:

Ну это понятно что F1 всему ответ. А готового решения интерфейса разве нет? как везде в рекламе расписано?
Просто не хочется лишний раз заморачиваться и тратить время на создание того, что уже есть, и судя по заверением есть давно и прекрасно работает.
ТДМС 3

Напишите на support@tdms.ru, я вышлю вам краткое описание интерфейса. А вы уже сами решите, подойдет вам интерфейс или нет. Но если исходить из вашей задачи:
Основная задача стоит в определении сроков работы по проекту в проджекте:
нужно открыть документ проджект , лежащий в Папке ТДМС.
Найти необходимую запись, по имени объекта.
Взять дату и записать ее в атрибут объекта.
ну или проверить соответствие.

то скорее всего, вам придется сделать это самостоятельно. Интерфейс работает на соверщенно других принципах. Он динамически строит дерево проекта по данным, которые хранятся в TDMS.

Re: TDMS и MS Projeсt: Календарное планирование проектов

McZag пишет:

то скорее всего, вам придется сделать это самостоятельно. Интерфейс работает на соверщенно других принципах. Он динамически строит дерево проекта по данным, которые хранятся в TDMS.

Вот вот, это сейчас и требуется. Извиняюсь, забыл пояснить.
Связь Project -> TDMS я реализовал, вполне неплохо получается.
Сейчас требуется обратная связь, для подготовки различных отчетных графиков с расчетом трудозатрат, на основе выполненного процента работ. Ну, это одна из задач. А так я думаю, их будет много. И хотелось строиться на готовом, базовом решении.
Например, вторая задача, это внесение изменений в документ проджекта, на основе изменений в базе. Здесь осталось только со связями разобраться, т.е. с выявлением предшествующей задачи. Ну это так, к примеру.
А просто на почту интерфейс можете выслать? А там я думаю, сам разберусь, что из него вырастить  :). Всё лучше строить на основе базового алгоритма.

Re: TDMS и MS Projeсt: Календарное планирование проектов

Kirzaa пишет:

Связь Project -> TDMS я реализовал, вполне неплохо получается.
Сейчас требуется обратная связь, для подготовки различных отчетных графиков с расчетом трудозатрат, на основе выполненного процента работ. Ну, это одна из задач. А так я думаю, их будет много.
А просто на почту интерфейс можете выслать? А там я думаю, сам разберусь, что из него вырастить  :). Всё лучше строить на основе базового алгоритма.

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

Re: TDMS и MS Projeсt: Календарное планирование проектов

olaf пишет:

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

Друзья! Я при всем желании этого сделать не смогу. Продукт защищен (нужна лицензия), но его уже нет в прайс-листе и торговой базе. Я не смогу вам его "отгрузить", хоть в почту, хоть на диске. Отдавать продукт в каком-то другом виде я тоже не имею права.

Если вы хотите использовать проджект только для рисования диаграмм Ганта, то подождите немного. До конца этого года выйдет новая версия редактора отчетов list labels, встроенного в TDMS. В этой новой версии будет возможность построения диаграммы Ганта.

Re: TDMS и MS Projeсt: Календарное планирование проектов

McZag пишет:

Друзья! Я при всем желании этого сделать не смогу. Продукт защищен (нужна лицензия), но его уже нет в прайс-листе и торговой базе. Я не смогу вам его "отгрузить", хоть в почту, хоть на диске. Отдавать продукт в каком-то другом виде я тоже не имею права.

Если вы хотите использовать проджект только для рисования диаграмм Ганта, то подождите немного. До конца этого года выйдет новая версия редактора отчетов list labels, встроенного в TDMS. В этой новой версии будет возможность построения диаграммы Ганта.

А в тройке этот редактор будет доступен?

Re: TDMS и MS Projeсt: Календарное планирование проектов

Lilya пишет:

А в тройке этот редактор будет доступен?

К сожалению нет. Нам приходится за это платить компании производителю. Обновлять старые версии своих продуктов чужим платным ПО могут только настоящие аристократы или дегенераты  :).

Re: TDMS и MS Projeсt: Календарное планирование проектов

olaf пишет:

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

Реализуйте стандартный алгоритм работы с приложением офис... все. Пишите команду на всю базу. Прогоняите все оъекты в коде, считывайте статус, и на основе статуса усьтанавливайте процент выполнения. Далее все эти данные выгружаются в проджект. Задача простая, как и реализация. Код правда большой.
У меня эта задача реализована для Excel'я. С учетом преодов(Месяц, квартал, или любое другое колличество), для бугалтерии. Вот тут пришлось повозиться. Нужно было выдирать статусы по датам из истории объекта. Ну собственно, самоя большая проблемма таких отчетов - оформление wacko2. Все своим цветом, шрифтом и так далее и тому подобное. Ну еще подсчет шел по отделам и исполнителям. Как то так.

Реализуемо почти все такими методами без лишних кнопок в том же проджекте, хотя и не хватает.

Re: TDMS и MS Projeсt: Календарное планирование проектов

привет!
не сдвинулось вдруг что-нить по интерфейсу? а то вдруг возникла необходимость.  :(

Re: TDMS и MS Projeсt: Календарное планирование проектов

Что касательно интерфейса, практика показывает практически его полное игнорирование.даже я так не работаю. просто потому что неудобнона данный момент. Выкладываю пример кода по связи прямой и обратно. Как оказалос это самое простое. Затыки как всегда в людях, чтоб ГИПы создавали графики в проджекте.
Пример создания структуры коталогов в ТДМС на основе файла проджекта.

'Предварительно необходимо подключить библиотеку Microsoft Project 12.0 Library (цифра зависит от версии MS Project - у меня, например, 2007-й) 
'Запускаю MS Project и создаю новый проект 

'вызывем функцию открытия и чтения графика
Call ReadFileProj(ThisObject, "FILE_PROJECT", CreateObject("MSProject.Application"))

Sub ReadFileProj(Obj, FDefSysName, appProj)
DIM ParentProject, ParentStage, PCode, PName
'Set appProj = CreateObject("MSProject.Application")
'appProj.Application.FileOpen "c:\Project.mpp"
'диалог открытия
    Set SelFileDlg = ThisApplication.Dialogs.FileDlg
    SelFileDlg.Filter = "Все файлы (*.mpp)|*.mpp||"
    RetVal = SelFileDlg.Show
    If RetVal <> TRUE Then Exit Sub
'получаем объект открытого файла
    appProj.Application.FileOpen SelFileDlg.FileName
    Set aProg = appProj.ActiveProject
'Msgbox aProg.Tasks.count ' количество записей
'перебираем записи
    For Each mytask In aProg.Tasks

     TName = mytask.Name 'наименование
     Code = mytask.Text1
     SDate = mytask.Start 'дата начала
     EDate = mytask.Finish 'дата окончания
     Duration = mytask.Duration 'длительность
     OutlineLevel = mytask.OutlineLevel 'уровень
'выбираем проект     
     If OutlineLevel = 1 Then
'создаем проект     
        Set Project = CreateChildObject("OBJECT_PROJECT",Obj)
'заполняем атрибуты
          Project.Attributes("здесь атрибут объекта").Value = Code
          Project.Attributes("здесь атрибут объекта").Value = TName
' добавляем файл в состав объекта
          Set NewFile = Project.Files.Create("FILE_PROJECT")
          NewFile.CheckIn SelFileDlg.FileName
'Добавляем права
            CreatGeneralRole(Project)
'Выбираем ГИПа                    
    GIPSelected = False
    Do While Not GIPSelected
 'процедура выбора ГИПа
    Loop
'передаем проект в переменную для стадии    
Set ParentProject = Project
PCode = Code
PName = TName
'Создаем стадию с составом
     Elseif OutlineLevel = 2 Then 'здесь бегаем по уровням в файле проджекта и в зависимости от него, создаем тот или иной обект структуры по нисходящей
     Set ParentStage = CreateStage(ParentProject, PCode, PName, TName)
     Elseif OutlineLevel = 3 Then
     Set ParentSite = CreateSite(ParentStage, PCode, PName, TName)
     Elseif OutlineLevel = 4 Then
     Set ParentObj = CreateObj(ParentSite, Code, TName) 
     Elseif OutlineLevel = 5 Then
     End if
'msgbox TName & "-" & SDate & "-" & EDate & "-" & Duration & "-" & OutlineLevel
    Next 

'msgbox TName & "-" & SDate & "-" & EDate & "-" & Duration & "-" & OutlineLevel
appProj.Application.Visible = True 
Set appProj = Nothing

Обратная связь. При  корректировке в ТДМС вносим поправки в файл проджекта:

Sub EditGrafik(Album, BeginTimeLimit, EndTimeLimit)
  Set Project = ProjectNameObject(Album)
  Set appProj = CreateObject("MSProject.Application")
'коллекция файлов проекта
  Set Files = Project.Files
  Set File = Files.item(0)
'Выгружаем файл
  Project.CheckOut
'Порлучаем путь
  WorkPath = File.WorkFileName
  appProj.Application.FileOpen WorkPath
  Set aProg = appProj.ActiveProject

'Имена родителя
   StageName = атрибут наименования
   ObjectName = атрибут наименования
   CodeObject = атрибут наименования
   TypeAlbum = атрибут наименования
   
' у объектов 4й уровень. проверяем стадию и ищем первое вхождение шифра, после чего проверяем тип альбома на уровне ниже.
    
    n=2
    
For Each mytask In aProg.Tasks
     TName = mytask.Name '
     Code = mytask.Text1
     SDate = mytask.Start 'дата начала
     EDate = mytask.Finish 'дата окончания
     Duration = mytask.Duration 'длительность
     OutlineLevel = mytask.OutlineLevel 'уровень
     ID = mytask.ID
        Select Case n
          Case 2 ' ищим нужную стадию
            If OutlineLevel = n Then
               if TName = StageName Then
               'если стадия найдена меняем уровень поиска на объектный
'               msgbox TName
                  n=4
               End if 'TName = StageName
            End If 'TName = StageName
          Case 4
            If OutlineLevel = n Then
               if TName = ObjectName AND Code = CodeObject Then
               'если объект найден меняем уровень поиска на площадочный
'               msgbox TName
                  n=5
               End if
            End If         
          Case 5
            If OutlineLevel = n Then

                  Set oTask = aProg.Tasks.Add(TypeAlbum,ID)
                  appProj.Application.SetTaskField "Начало", BeginTimeLimit, False, False, oTask.ID    'начало
                  appProj.Application.SetTaskField "Окончание", EndTimeLimit, False, False, oTask.ID   'окончание
                  appProj.Application.SetTaskField "Текст1", CodeObject, False, False, oTask.ID        'шифр
'добавить ресурс
DivCode = ThisObject.Attributes("атрибут").Classifier.Code
appProj.Application.SetTaskField "Названия ресурсов", DivCode & "[100%]", False, False, oTask.ID

                  appProj.Application.FileSave 
                  Project.UnlockCheckIn 1
                  appProj.Application.Quit
                  Project.Checkin 
                  Set appProj = Nothing 

                  exit sub

            End If   
        End Select
next

appProj.Application.Quit 
Set appProj = Nothing 
Project.UnlockCheckIn 1
'File.Checkin WorkPath 'записать файл в базу
End Sub