how to integrate ms project 2003 with a 3rd party system?

U

urgent!!

I’m developing a system which is a complimentary tool for Microsoft Project
2003. This system will be able to assists project managers in making accurate
decision with an optimal usage of resources such as man-day and number of
skilled people. Such resources will eventually be converted into the cost of
the project. However, there are few approaches to implement this system which
is still under research

The system will integrate with Microsoft Project 2003 in which the required
data (task name, start date, end date, man-day, predecessor task, successor
task, cost, task duration and etc.) is directly retrieved from Microsoft
Project 2003 database. The changes made to these data will be reflected to
its original data and the results will be shown in Microsoft Project 2003.
 
J

Jim Aksel

You will probably get a more robust response by posting to a sister news
group dedicated to Development in MS Project:
microsoft.public.project.developer
The group is primarily dedicated to answering questions about software
development from within the MS Project application -- but there are plenty of
other issues addressed there as well.

I am not sure I fully understand your question, since you say you are
already in development. Here is some general information. If you wish more,
please post a more specific quesiton.

You can create a stand alone Windows application using any desired
development environment. I have personally done it using VB.NET and Visual
Studio 2005. C# is also very commmon and is sometimes even preferred. You
can reference the MS Project libraries directly in VS. This allows you to do
anything in VB.NET (Visual Studio) or C# that you could do in project, plus a
whole lot more. You could even develop MS Project if you wanted to.

If you have VS, open a new Windows application, then add a reference to the
MS Project libraries.

Other things are possible using Flash, Adobe Flex, Microsoft Sharepoint and
the like.
--
If this post was helpful, please consider rating it.

Jim

Visit http://project.mvps.org/ for FAQs and more information
about Microsoft Project
 
U

urgent!!

Thanks for you answer. Actually I'm still investigating whether such approach
can be done or not. I'm doing this project for my degree level. The stand
alone system I want to develop does not interfer with MS Project but it uses
MS Project as a main interface for user input (Gantt chart). So the system is
able to retrieve the required data from MS Project and if there is any
changes made to the data it will reflect to the original data. That's why I'm
not sure whether can this be done or not. If can I would like to know how.
 
J

Jim Aksel

I don't understand what you mean by "The stand
alone system I want to develop does not interfer with MS Project but it uses
MS Project as a main interface for user input (Gantt chart). "

If you are using MS Project as the main interface for user input, then you
are using MS Project. "Does not interfere" is what baffles me.

Ways to go...
1. Open a project file (Project1.mpp) in MS Project. Using Visual Basic For
Applications (it is already inside of MS PRoject), you can create user forms
and routines to do a lot of things. This is using MS Project as the main
interface. Your code and created forms would become part of either
Project1.mpp or the master template for all Project files on that computer
(Global.mpp). There is plenty you can do with VBA, but it is not nearly as
full featured as an independent development environment. Anything you do to
change the data in Project1.mpp will be reflected in Project1.mpp when you
save it.

In this regard, the user would have to open the file in MS Project before
they could do anything with the custom forms you created.

There is a good book on this topic called VBA Programming for Microsoft
Office Project Versions 98 through 2007, by Rod Gill. ISBN 0-9759828-7-7.
It's absolutely outstanding and I recommend it highly.

To access the Visual Basic for Application development environment (called
the Visual Basic Editor - VBE), open MS Project and press ALT+F11, or,
Tools/Macros/Visual Basic Editor

You can program this to make any type of output you want...export to Excel,
Powerpoint, a Text file, a new Project file.... wake up Word. If you are
tricky you can even get it to make a PDF.

2. Create a stand alone Windows Application using a tool like Visual Studio.
Here, you would have to specify the name of the MS Project file you want to
manipulate-- such as C:\Folder Name\myProjectFile.mpp, it can be done with a
standard OpenFile Dialog Box. Or, you could create a new Project1.mpp file
programmatically. You can have the new application wakeup MS Project in
either a visible or invisible mode. If you do it "silently" then no one will
see the MS Project application GUI... only your GUI. If you make it visible,
then your GUI and MS Project will show.

From within this new stand alone application, with a specific project.mpp
file as a target, you can do anything you could do in MS Project: Add tasks,
edit task information, create links, take %Complete. You could also do it on
the main project file. When your new application closes, you can decide (or
ask the user) if they want to save changes made by your program to the
myProjectFile.mpp. Your new application can make other calculations that you
desire limited only by your imagination. Most of that can be done in VBA as
well.

3. You can save files from MS Project out to various formats. Once such
format is XML. If you do that, then you can write anything you want to
manipulate the data and display it in a broswer such as Internet Explorer.
Once your XML transform saves the file back, you could re-open the XML file
in MS Project and your changes would become visible in the MS Project display.


--
If this post was helpful, please consider rating it.

Jim

Visit http://project.mvps.org/ for FAQs and more information
about Microsoft Project
 
U

urgent!!

Thanks for your opinion. Actually I'm a student who is doing this project for
my final year degree. I only have basic knowledge on MS Project and I have
limited knowledge on technical and development stuff but I'm willing to learn
so I hope that you could assist me if I have any question on MS Project.

Anyway regarding my project, I'm incorporating OO concepts in developing the
system. What I want my system can do is:
• Allowing project managers to reschedule the engaged resources
• Allowing project manager to conduct “what if†analysis
• Allowing flexibility to the project managers in managing the resources
• Allowing project managers to view the past performances projects records
• Allow project managers to do prediction of possible crisis
• Able to notify the project managers for which task that lies on the
critical path is affected by the crisis
• Allow project managers to generate a report of the solution to solve the
crisis
• Allow project manager in monitoring, controlling and tracking the project
with optimal usage of resources.

So I would like to gain opinion from you which suggested way is most
suitable for me to choose? Also which way is the easiest to implement due to
time and skill constraint?
 
J

Jim Aksel

** in line ***
urgent!! said:
Thanks for your opinion. Actually I'm a student who is doing this project for
my final year degree. I only have basic knowledge on MS Project and I have
limited knowledge on technical and development stuff but I'm willing to learn
so I hope that you could assist me if I have any question on MS Project.

Anyway regarding my project, I'm incorporating OO concepts in developing the
system. What I want my system can do is:
• Allowing project managers to reschedule the engaged resources

** Project does this out of the box **
• Allowing project manager to conduct “what if†analysis
** Project 2007 does this out of the box **
• Allowing flexibility to the project managers in managing the resources

** too vague
• Allowing project managers to view the past performances projects records

** Open a completed project file. Actually, a database of this information
might be helpful. You could have tables for Control Account Managers, and
their tasks. You could analyze how they did compared to baseline estimates. **
• Allow project managers to do prediction of possible crisis

** Project already does this... monitor Schedule Performance Index and Cost
Performance Index. Plot BCWS and BCWP. Project 2007 does this out of the
box in conjunction with Excel **More deatail below
• Able to notify the project managers for which task that lies on the
critical path is affected by the crisis

** Once you calculate (or devine) what tasks are "in crisis" then set a flag
such as Flag1="yes" then filter on Critical=yes and Flag1="yes". Typical
scenario in my buisiness is SPI or CPI differs from 1.00 by more than +/-0.10
and SV or CV is greater than $25,000 US. This would be a good one to
program, especially if you made the numbers configurable and optional **
• Allow project managers to generate a report of the solution to solve the
crisis

** Project does not provide solutions, only evidence **
• Allow project manager in monitoring, controlling and tracking the project
with optimal usage of resources.

** Rather vague, but project already does most of this. What might be nice
would be to have skills grouped together by skill code (Project does this).
Then, you could solve a minimizatin program to find the minimum cost to
complete the program and assign the resources accordingly. Trust me (and I
teach graduate school computer science) this last one is a tremendous
undertaking and should not be attempted alone ***
 
U

urgent!!

what do you mean by "Project does this out of the box" ? so means that what I
want my system to do basically MS Project can do?? I'm not fully developing
the system, more like a prototype. Moreover I'm not so familiar with using MS
Project 2003. I'm doing this project just for my academic purpose. So does
that means is not worth developing the system that I want? By the way I'm
using MS Project 2003 as the interface though MS Project 2003 has more
features.
 
J

Jim Aksel

"Out of the box" means MS Project already has this feature.
Suggestion - unless you truly understand what the software does and can
schedule some simple projects using the full features of the product, I would
suggest you select something else. There is no sense in developing
additional software if MS Project already performs the functions desired.

If you wish to do some type of scheduling project, might I suggest that you
survery about 100 people who use MS Project and ask them what additional
features it might need that would make it more useful, then code that. If
you decide to survey users, make sure they are "robust users" ... people that
use the product and most of its features... talking to some casual user will
be worthless unless they know what project can really do.
--
If this post was helpful, please consider rating it.

Jim

Visit http://project.mvps.org/ for FAQs and more information
about Microsoft Project
 
U

urgent!!

how about assisting project manager in making almost accurate decision with
the optimal usage of resources whenever a project crisis occur? Can MS
Project does this? At this moment of course is better to change the project
topic but I'am already in the middle of my degree course and according to my
supervisor it is not advisable to change to a new topic at this moment.
Moreover, my project mid-point is in 3 weeks time. Anyway thanks for your
advices. It helps me a lot.
 
U

urgent!!

"Create a stand alone Windows Application using a tool like Visual Studio.
Here, you would have to specify the name of the MS Project file you want to
manipulate-- such as C:\Folder Name\myProjectFile.mpp, it can be done with a
standard OpenFile Dialog Box. Or, you could create a new Project1.mpp file
programmatically. You can have the new application wakeup MS Project in
either a visible or invisible mode. If you do it "silently" then no one will
see the MS Project application GUI... only your GUI. If you make it visible,
then your GUI and MS Project will show.

From within this new stand alone application, with a specific project.mpp
file as a target, you can do anything you could do in MS Project: Add tasks,
edit task information, create links, take %Complete. You could also do it on
the main project file. When your new application closes, you can decide (or
ask the user) if they want to save changes made by your program to the
myProjectFile.mpp. Your new application can make other calculations that you
desire limited only by your imagination. Most of that can be done in VBA as
well."

hi, I would like to ask if I want to do it this way, is there any difference
if I use VB 2005 of VB .NET??
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top