General Integration Advice

K

Karl Horner

Our business is new to MS Project and I need some advice on the integration
strategies for MS Project 2007 for a small Project Management application.

Can you customise MS Project to control the Save As function to ensure all
projects are saved to a database rather than a MPP file as this will allow us
to integrate with our application more natively. Rather than writing a
connector as many people have done for importing and exporting data to MPP
format

Can you embed the Project Task\Gant control into applications? If not are
there any control vendors that have a web based control that writes native
MPP files
 
J

Jim Aksel

A macro can be written to intercept certain events. I just tried the
Project_BeforeSave() event using Save As...

What happens is the Save As... Dialog box opens and collects file name/type
information prior to execution of the code I wrote into the Macro. I suppose
you could override that information as part of the macro you write.

Unfortunately, P2007 desktop does not support saving to a database (Access)
file format. P2003 did have this support. P2007 will support <XML> which is
readily understood by datase systems such as SQL and Access. You can try
creating an ODBC connection to establish the file and then see what that will
do for you.


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

Jim Aksel, MVP

Check out my blog for more information:
http://www.msprojectblog.com
 
K

Karl Horner

Thanks

If we intecept using Project_BeforeSave() event can we show our own UI that
allows customers to either invoke standard Dialogue or force them to save to
a specifc ODBC Source nominated by our appication

Similary i assume we can intercpt the Open event and show our own dialgu
that offers the projects in the ODBC source we again nomionate


After reviewing Project server documentation last night working dircetly
inside Project seems to be the more flexible offereing.
 
J

Jim Aksel

Well, sort of. Maybe Rod will weigh in on this, he's the guru's guru on the
programming.

From what I can tell, the event I described will always open the Microsoft
dialog box first. It will collect necessary information from the user and
then perform the actions of the code steps written in the Project_BeforeSave
subroutine.

Of course you can launch your own UI from there and have it do nearly
anything. I am not sure how Project will interpret the save you generate
with your UI and the save that is "Microsoft In Process"

When I tested it prior to my origninal post, I had it change parameters
internal to the file (the status date) and that worked fine. I will ping my
peers to see if they have any different ideas. It may be a day or so.
--
If this post was helpful, please consider rating it.

Jim Aksel, MVP

Check out my blog for more information:
http://www.msprojectblog.com
 
K

Karl Horner

Thanks for the Help

My idea is to use the database to store all of the projects data as this
will allow much easier integration (the projects will not be big - it is
being used to manage minor facilities projects like moving staff from one
building to another or minor refurbishment work). By keeping it in the
datbase i can simply the reporting process by joining inmy other data easier.
Also by having th eprojects in teh datbase i can monitor changes and and
budget overuns. I do not know why but i have noticed lots of companies have
written connectors (basicly big old imports and exports to MPP) and i am
wondering why no one is using th ODBC route. I am sure i will find out soon
......
 
R

Rod Gill

Your long term problem is that Project 2007 no longer supports saving to
ODBC databases. My recommendation therefore is to add a macro to "Publish"
required data to a database and keep your projects in .mpp file format. This
is quick to run as only the data you need, in the format you need is saved.
This solution works for all current versions of project and should continue
to work for as long as writing to databases from VBA is supported.

For extra robustness, this code can be converted to a Project Add-in using
Visual Studio 2008. If it's any help I have Project VBA code developed for
my customers that provides the "Publish" functionality where a .txt file
provides the list of Fields for Tasks, Resources, Assignments and Time
Phased data. Edit the text file and click Build to create the tables for the
database for all fields and the Publish action automatically exports the
fields in the txt file. This isn't available for free, but will be much
cheaper than developing anything from scratch!

By preventing saving to anything but the db, you prevent users taking files
away on laptops unless they File, Save as back to .mpp format. The danger is
then that they save as back into the db as a new file name, or save date
stamped copies to the db which will duplicated Resource workloads etc. I
prefer the idea of saving in .mpp all the time and only saving to db the
data you need for multi-project reporting. Any Database problems, or you
need to change the fields saved, and the db can be re-built as all master
data is in the .mpp files. Re-publish all projects and the db is renewed!

--

Rod Gill
Microsoft MVP for Project

Author of the only book on Project VBA, see:
http://www.projectvbabook.com
 

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