How are cusotm field values displayed in Microsoft Project?

O

Omar

Hello All,
I am wondering, how does Microsoft Project retrive the custom values of
a particular project? I have a custom Enterprise Text Field which I
want to modify directly so that when user opens Microsoft Project, they
can see it. But it seems it only displays previous values. Is there
some checking done from other tables besides MSP_TEXT_FIELDS?

Alternately, what is the proper way/sequence to update an enterprise
custom text field value through SQL. (the cusomt field is not using a
value list)

Regards,
Omar
 
S

Stephan Steiner

Yes there is a check done. There are various fields that tell the
project client if certain types of information has been edited by an
external program. E.g. if I update task enterprise fields, the last
statement I execute is

UPDATE ProjectServer.dbo.MSP_PROJECTS SET PROJ_EXT_EDITED = 1,
PROJ_EXT_EDITED_TEXT = 1, PROJ_EXT_EDITED_NUM =1,
PROJ_EXT_EDITED_DATE = 1, PROJ_EXT_EDITED_DUR = 1, PROJ_EXT_EDITED_FLAG
= 1 WHERE PROJ_ID = @proj_ID

This tells the project client that 1) the project has been edited
(PROJ_EXT_EDITED), that I've edited a text EF (PROJ_EXT_EDITED_TEXT),
as well as a numerical EF (PROJ_EXT_EDITED_NUM), as well as a date EF
(PROJ_EXT_EDITED_DATE), a duration field (PROJ_EXT_EDITED_DUR), and a
flag EF (PROJ_EXT_EDITED_FLAG).

If editing outline codes, you also need to set PROJ_EXT_EDITED_CODE= 1

Finally, if you write RTF notes, you have to write into the task table:
TASK_HAS_NOTES = 1

There's also the EXT_EDIT_REF_DATA field that I think you should set to
"1" without quotes but it seems to work without it as well.

Of course I'm assuming you're using Project Server 2003.. in the 2007
version you're not supposed to write into the DB anymore.

Regards
Stephan
 
O

Omar

Sorry, I think I accidentally clicked on Reply to Author last time
instead of Reply.

----- Original Message -----
From: "Omar" <[email protected]>
To: "Stephan Steiner" <[email protected]>
Sent: Wednesday, January 24, 2007 4:13 PM
Subject: Re: How are cusotm field values displayed in Microsoft
Project?
 
O

Omar

And here is the reply...Sorry once again.

Hi Omar,

Anyway, all the stuff I mentioned only goes for regular EFs and the
notes.
BTW the EXT_EDITED_REF data actually needs to be set by one of
ProjectServer's stored procedure.. there's one that takes a proj_id
and
task_uid and writes the proper content into that field.. I just don't
recall
the name right now and I'm not at work (this is my private email
address)..
the name betrays it though and I think it's pretty high up in the list
of
SPs if you open the ProjectServer DBA in the SQL management studio.

As far as the RBS is concerned I'm not quite sure. We have at least
one RBS
I'm aware of that actually is based on Outline Codes and when I update
Outline codes (there's also a flag there to indicate to project that
an OC
has been updated) it works as expected. We also have Teams as RBS but
those
are static so I can't tell you how I'd update them. I would suspect if
there's anthing not OC and not regular EF there'd be another flag on a
project level to indicate to project client that a change has been
made.. if
you look at the DB schema and look at all the fields in the
MSP_PROJECTS
table I'm sure you'll find something if something is there.

Cheers
Stephan
 
O

Omar

It turns out the problem is because some of the records which I was
trying to modify had no related entries in MSP_CODE_FIELDS. Each
resource whose RBS was to be modified externally needed to have an
entry in MSP_CODE_FIELDS, and I managed to resolve the issue by
deleting any RBS entry for that resource ini that table and insert the
new row. As for the stored procedure, I will look into that in future.

Thanks for all your help

-Omar
 

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