Tasks DataSet missing validation

C

Claudio Hidetoshi

When you set the TASK_UID to a new task based on a existing task (in another
project or template), PSI does not alert that the TASK_UID is used by another
task. PSI allow it.

But, if you try to assign a value to a custom field for this new task (using
TaskCustomFields dataset), PSI shows an the error
"CustomFieldRowAlreadyExists". So you can't assign a value to the task custom
field.

I think that Tasks dataset must block duplicated TASK_UID values.

walkthrough:
-Via PSI, create a new task to a project assignning an existing TASK_UID.
PSI will create the task with no problem.
Now, try to assign a value to a task custom field and you will get the error.

The Project Server 2007 is using SP1.

Cláudio Hidetoshi
Rio de Janeiro - Brazil

----------------
This post is a suggestion for Microsoft, and Microsoft responds to the
suggestions with the most votes. To vote for this suggestion, click the "I
Agree" button in the message pane. If you do not see the button, follow this
link to open the suggestion in the Microsoft Web-based Newsreader and then
click "I Agree" in the message pane.

http://www.microsoft.com/office/com...e42c298&dg=microsoft.public.project.developer
 
R

Rod Gill

I don't program PSI, but I think there is a create task call that returns
the new GUID. As GUIDs are (and must be) unique for the whole database, you
should never attempt to create your own, but let Project Server create it
for you.

--

Rod Gill
Microsoft MVP for Project

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

Claudio Hidetoshi

Hi Rod,

In PSI World, you have to set the new Guid manually. Project does not create
it for you.
Like this:
newTask.TASK_UID = Guid.NewGuid();

Like you said, TASK_UID must be unique. but Task datatable is not applying
this role, like TaskCustomFields datatable does.
 
C

Claudio Hidetoshi

I was making a little test and, by mistake, I used an existing Guid that was
created in another project.

Task datatable accepted the duplicated Guid.

But, when I tried to set a custom field value for that task,
TaskCustomFields datatable did not accept, saying that
"CustomFieldRowAlreadyExists".

My intention is to alert MS PSI developers to insert the validation in Task
datatable.

Cláudio Hidetoshi.
Rio de Janeiro - Brazil
 

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