Archive for April, 2011

Sub WriteTimePhasedValue()
Dim TimeScaledvalues As TimeScaleValues
Dim TimeScaledValue As TimeScaleValue
Dim stdate, fsdate As Date
    With ActiveProject.Tasks(5) ‘ i have taken static task ID, you might wanna change
        stdate = Format(.Start, “Short date”)
        fsdate = Format(.Finish, “Short date”)
       Set TimeScaledvalues = .TimeScaleData(StartDate:=.Start, EndDate:=.Finish, Type:=pjTaskTimescaledActualWork, TimeScaleUnit:=pjTimescaleDays, Count:=1) ‘ You might wanna select task type to update

   End With

    For Each TimeScaledValue In TimeScaledvalues

        If Val( TimeScaledValue .Value) <> 0 Then
            MsgBox (ActiveProject.Tasks(5).Name & ”            ” & stdate & ”     ” & CStr( TimeScaledValue .Value / 60) & “h”)
             TimeScaledValue .Value = 240 ‘in minutes
        End If

    Next  TimeScaledValue

End Sub

Now at times you might get error 1100 : Check the server settings >> Operational policies >> Additional Server Settings >> Task Mode Settings >> “Automatically Scheduled”

Read Full Post »

This virtual machine demonstrates the integration of Team Foundation Sever 2010 with Project Server 2010. Included with this download are four walkthroughs that demonstrate using enterprise project plans in Project Server associated with team projects in Team Foundation Server….. For More Visit the Link below


Read Full Post »

I have been asked this question several times, “Where do i find Successor & predecessor” for tasks in project data set

Hence thought lets blog it, and share it with everyone, so essentially the predecessor & Succesor links lies within the Project Data Set itself, I can’t recall the Table name but its index is 4, so here is the code to get predecessor / successor UID which can be related back to task uid to get the task ID / name or related info

         private void button1_Click(object sender, EventArgs e)
            PWA_DevProjectWebSvc.ProjectDataSet TempDS = ReadAnySpecificProjectDetails(“60163fcd-5cdf-4556-898d-ce48a37f8037”);
            this.dataGridView1.DataSource = TempDS.Tables[4];
            /*Table 0 = project level Detail
             *Table 1 = Task level Details
             *Table 2 = Resource Details
             *Table 3 = Assignment Details
             * Table 4 = Link ID, Pred_ID,Succ_UID
             * Table 5 = Custom Fields Prop_ID,MD_PropUID
             * Table 6 = Task level Custom Field More Details
             * Table 7 =

        private PWA_DevProjectWebSvc.ProjectDataSet ReadAnySpecificProjectDetails( string PrjUid)
            PWA_DevProjectWebSvc.Project PrjWebSvc = new PWA_DevProjectWebSvc.Project();
            PrjWebSvc.Url = @http://Servername/pwa/_vti_bin/psi/project.asmx;
            NetworkCredential myCredential = new NetworkCredential(“username”, “Password”, “Domain”);
            PrjWebSvc.Credentials = myCredential;
            PWA_DevProjectWebSvc.ProjectDataSet PrjDS = new PWA_DevProjectWebSvc.ProjectDataSet();
            Guid prjguid = new Guid(PrjUid);
            PrjDS = PrjWebSvc.ReadProject(prjguid, PWA_DevProjectWebSvc.DataStoreEnum.PublishedStore);
            return PrjDS;


Read Full Post »

To help you determine when you have to scale up or scale out your Microsoft Project Server farm, use performance counters to monitor the health of the system. Use the information in the following tables to determine which performance counters to monitor, and to which process the performance counters should be applied, For more Information Refer to :


Read Full Post »

Project PrjWebSvc = new ProjectWebSvc.Project();
PrjWebSvc.Url = baseUrl + PROJECTWEBSERVICE;
NetworkCredential myCredential = new NetworkCredential(“Username”, “Password”, “Domain”);
PrjWebSvc.Credentials = myCredential;
ProjectWebSvc.ProjectDataSet PrjDS = new ProjectWebSvc.ProjectDataSet();
Guid prjguid = new Guid(“60163fcd-5cdf-4556-898d-ce48a37f8037”);
PrjDS = PrjWebSvc.ReadProject(prjguid,ProjectWebSvc.DataStoreEnum.PublishedStore);
this.dataGridView1.DataSource = PrjDS.Tables[1];
MessageBox.Show(“Project Name->” + PrjDS.Tables[1].Rows[0][3].ToString() + “%Comp” + PrjDS.Tables[1].Rows[0][36].ToString());

Read Full Post »



Yesterday when I returned from the office, I was very upset due to some unexpected turn of events there , World has seem gone slow. I was feeling low and uncertain, then opened up my mails…browsing them unintrestingly, gloomly…watching TV wherein all channels were gearing up to cover the ICC World Cup.

How fragile is human mind, that it tends to look at everything negatively when one thing goes unexpected…it starts to visualize everything falling down like pyramid of cards that falls with one miscalculated placement. Suddenly a mail popped, and it was from MS saying you have been tagged by MVP Status . LOL, the World flashed up…things catapulted in a second to high dais. I was recharged and jumped with excitement. Would commend again, the human mind which has capacity to flip emotions in a fraction with turn of events.

It’s a great achievement, that came with another India winning the World Cup after 28 years. Double cheers for me. I m thankful to all of you to have supported and trusted me while I took this journey of expertise from one level to another. Thank You all friends, colleagues, Forum links and my Wife 🙂 you all kept me going through all ups and downs of this mission. Special thanks to all for always coming up with difficult questions and giving me run for my mind 🙂 it helped me improvized, and heartiest thanks to all who gauged me along the lines and recommended / selected me.  

Thanks Friends, you rock!!!!!.

Read Full Post »