"save as" enterprise project w/out opening it

J

Jesse

I have a couple large published projects I'd like to "save as" on a daily
basis. The reason I want to do this is because if I need a file from tape
backup it often takes 1-2 weeks. The only way I know to "save as" a project
on the project server is to first open it. Is there a way to "access" and
"save as" the file w/out first opening it?
 
R

Rod Gill

The only way is to duplicate the file in the database, but if that isn't
done correctly, you will corrupt it.

For regular saves, try opening the file, then save a as a .mpp file.
 
J

Jeff Baril

I wrote a VBA script to do that very thing. I used MS Access to link to the
project server database and then used that link to determine which project
plans had been updated.

From that list I used VBA to open the project plan through an ODBC
connection, save it back to the database (to recalculate it) and then save it
to a file for distribution.

I call it my ghetto project server.
 
R

Rod Gill

Sounds good, but projects only ever get re-calculated when opened in Project
Professional. Project Server 2007 will have a built in calculation engine,
but Project Server 2003 does not. That's why projects need opening in
Project Professional after Timesheets have been accepted, so re-calculation
gets done.
 
J

Jeff Baril

Yea, that's what I am doing. I use VBA to kick off Project Professional to
open the project, calc, and save.

However, I'm not sure what would happen using project server software. I
kind of wrote our own version using the save as ODBC option. It's not as
clean, but allowed me to develop a custom timesheet entry process that would
merge Projects, Unicenter, Kronos, and Peoplesoft allowing for 1 point of
entry for all hours.

If the project is assigned to you, it shows up on your timesheet. If a
ticket is opened in Unicenter and assigned to you, it shows up on your
timesheet. The hours then flow back to those systems, as well as Kronos for
hourly employees.

Everything then gets merged into PS financials/hr. I still have a few bugs
to work out, and it does have some questionable areas. But if I get some
more time to work on it, I should have a nice full solution.

I coded the script in MS Access (VBA) using a link into the database where
the projects were stored. I don't know if it's any help, but it's purely
bare bones. It's one of those things where the PMs didn't want to download
the projects manually (only have 30 or so) and I only had a few hours to
dedicate to the task. It definately has some issues with error messages (bad
custom macros, contraint issues, etc.), but you just have to sit there and
hit OK for those.

Public Function ExportProjects()

Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
Dim sql, filename As String
Dim objPrj As Object

Set objPrj = CreateObject(Class:="MSProject.Application") 'Create an instance

sql = "select PROJ_NAME from PROJECT_MSP_PROJECTS WHERE PROJ_EXT_EDITED = 1"
rs.Open sql, CurrentProject.Connection, adOpenDynamic, adLockOptimistic

With rs
While Not .EOF

PrjFileName = "<DBID>\" + .Fields(0).Value
NewPrjFileName = "<PATH>\" + .Fields(0).Value

Call objPrj.Alerts(False)
objPrj.DisplayAlerts = False
objPrj.FileOpen Name:=PrjFileName, ReadOnly:=False, UserID:="<USERID>",
DatabasePassWord:="<PASSWORD>", noAuto:=True, openPool:=4
Call objPrj.FileSave
Call objPrj.FileSaveas(NewPrjFileName)
Call objPrj.FileClose
.MoveNext
Wend
End With

End Function
 

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