Store start/finish automatically before file save?

L

Luc Overdulve

I am working on a quite large project, which is to be devided in
several logical parts. For each part there is a seperate project-file
and where necessary there are cross-project-links between tasks of the
different files.

At last all seperate sub-project files have a series of important
milestones to be monitored in the master project file, where all sub-
project files are inserted as linked projects.

In the master project file each sub-project milestone is linked to a
kind of 'commission milestone', all with a Must Start On of Must
Finish On constraint to be referred to.

Now, when opening the master file in Microsoft Project, the planning
wizard dialog box may appear warning for a scheduling conflict on
changed sub-project-milestones linked to the 'mandatory' milestones.
These warnings simply can be ignored, choosing for the option
'Continue, allow scheduling conflict'.

There is also a cross-project-link dialog box. If there are any
differences caused by linked tasks in external projects , this box
will pop up immediately after opening your project file. You will be
able to accept or unlink, and that's just my problem. Of course I
don't want to unlink and so I will have to accept, but after accepting
I cannot see the differences anymore.
Now I am looking for some possiblity of automatically storing the
important (from external linked) tasks just (and only) before every
file save. Baseline Start1/Finish1 would be fine, but it has to be
done automatically.

Any suggestions?

Regards, Luc
 
R

Rod Gill

Hi,

VBA is your only solution here I think. You also need to be very, very
careful with those links (between tasks and project files. Do not ever,
rename files, move them or over-write them. Every time you do you'll throw
the file corruption dice. It's when, not files corrupt. You may have years
or days.

My personal solution is to use VBA to read milestone dates from files and to
create snapshot master files each week (no link). This eliminates all links
and corruption risk.

--

Rod Gill
Microsoft MVP for Project - http://www.project-systems.co.nz

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




Luc Overdulve said:
I am working on a quite large project, which is to be devided in
several logical parts. For each part there is a seperate project-file
and where necessary there are cross-project-links between tasks of the
different files.

At last all seperate sub-project files have a series of important
milestones to be monitored in the master project file, where all sub-
project files are inserted as linked projects.

In the master project file each sub-project milestone is linked to a
kind of 'commission milestone', all with a Must Start On of Must
Finish On constraint to be referred to.

Now, when opening the master file in Microsoft Project, the planning
wizard dialog box may appear warning for a scheduling conflict on
changed sub-project-milestones linked to the 'mandatory' milestones.
These warnings simply can be ignored, choosing for the option
'Continue, allow scheduling conflict'.

There is also a cross-project-link dialog box. If there are any
differences caused by linked tasks in external projects , this box
will pop up immediately after opening your project file. You will be
able to accept or unlink, and that's just my problem. Of course I
don't want to unlink and so I will have to accept, but after accepting
I cannot see the differences anymore.
Now I am looking for some possiblity of automatically storing the
important (from external linked) tasks just (and only) before every
file save. Baseline Start1/Finish1 would be fine, but it has to be
done automatically.

Any suggestions?

Regards, Luc

__________ Information from ESET Smart Security, version of virus
signature database 5022 (20100412) __________

The message was checked by ESET Smart Security.

http://www.eset.com

__________ Information from ESET Smart Security, version of virus signature database 5022 (20100412) __________

The message was checked by ESET Smart Security.

http://www.eset.com
 
J

Jim Aksel

This will do it:
Private Sub Project_BeforeSave(ByVal pj As Project)
BaselineSave All:=True, Copy:=0, Into:=1
End Sub

You can get there by ALT+F11. A new window opens. In that window find
"Microsoft Project Objects" and select it. It will expand. Then select
"This Project (Global.mpt)" ... paste the code above in the window on the
right.

This copies all start/finish dates to Start1/Finish1. If you only want
certain tasks, you will need a much more robust solution.

However, something scares me. You said:
"In the master project file each sub-project milestone is linked to a
kind of 'commission milestone', all with a Must Start On of Must
Finish On constraint to be referred to."

These constraint types are quite literal. If it is "Must Start On" .... it
means (to Project) ... "I don't care what the schedule logic says, this task
Must Start On this date so I will make it so. Might it be better for you to
use a Deadline Date (Task Properties Dialog box, advanced tab)? If the
Deadline Date is exceeded, then you get a red diamond in the indicators
column.





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

Jim Aksel, MVP

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

Luc Overdulve

However, something scares me.  

These constraint types are quite literal.  If it is "Must Start On" ..... it
means (to Project) ... "I don't care what the schedule logic says, this task
Must Start On this date so I will make it so.  

Thank you for answering and your suggestion!

These constraints are the last ones in the logic, so no real harmful
things are going to happen.
But thanks for you advise!

Luc
 
L

Luc Overdulve

My personal solution is to use VBA to read milestone dates from files and to
create snapshot master files each week (no link). This eliminates all links
and corruption risk.

I know that I have to be very careful with this, but you are scaring
me using the word 'corruption'. I met some corrupted files before...

So, I am very interested in your alternative. But I am sorry, I am not
a VBA specialist.

In the eighties I used to build our own planning application on
mainframe and later on for TOS and MS DOS running systems, but all
using Fortran77 and a very little bit of C++.

Luc
 
R

Rob Schneider

When you say "last ones in the logic", does this mean they are the last
tasks in the network model of the project? If this is the case, then my
hunch is you will have some trouble as you should *want* the last tasks
on the model in Project to move (be unconstrained)in response to changes
upstream (slow progress, faster-than-anticipated progress, changes, etc.).

You use the deadline field to allow Project to detect and report for you
when these completion dates are outwith the project plans for expected
completion.

I'm just guessing based on what you say, though. If you haven't taken a
look at how the deadline feature works in Project, take a look.


--rms

www.rmschneider.com
 
R

Rod Gill

Well the good news is that VBA is many times more productive than that. I've
just had to write a Project Add-in using C#. Just converting from VBA was a
real pain, Case sensitive, idiosyncratic syntax, ongoing cryptic error
messages for Africa and more!

Links and saving to a network location over a dodgy network are the main
culprits for file corruption.

My alternative uses a separate store for milestone data, saved by a macro in
the source project and read by another macro in the consuming project. The
store can be a text or Excel file, or of course a database such as SQL
Server or Access.

--

Rod Gill
Microsoft MVP for Project - http://www.project-systems.co.nz

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




Luc Overdulve said:
I know that I have to be very careful with this, but you are scaring
me using the word 'corruption'. I met some corrupted files before...

So, I am very interested in your alternative. But I am sorry, I am not
a VBA specialist.

In the eighties I used to build our own planning application on
mainframe and later on for TOS and MS DOS running systems, but all
using Fortran77 and a very little bit of C++.

Luc


__________ Information from ESET Smart Security, version of virus
signature database 5024 (20100413) __________

The message was checked by ESET Smart Security.

http://www.eset.com

__________ Information from ESET Smart Security, version of virus signature database 5024 (20100413) __________

The message was checked by ESET Smart Security.

http://www.eset.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