locked
Need to update Project Progress through timesheet rather than updating Tasks RRS feed

  • Question

  • Dear All,

    My client where i am implementing EPM has some unique requirement

    1. First of all client requires that its users will only fill timesheet and through timesheet all of its tasks will be updated according to the hours filled in the timesheet. There should be nothing like Task update and progress and its approval.

    2. Cleint requires that it only receives notification for filling timesheet to its users and no notification emails for task updates/ tasks approvals etc.

    I tried to search on internet but didn't find something appropriate as per the client requirement. Please reply me urgently.

    Thanks and regards,

    Maaz

     

    Saturday, January 1, 2011 1:49 PM

Answers

  • Maaz, the SEM (single entry sheet mode) will let you do exactly the way you required. Yours users dont have to import the timesheet to the My tasks. SEM, if turned on, will enable users to enter the task progress on one view i.e. in your case is Time sheet and it will get submitted to both.

    try this once and you will get a better idea of what i am talking about, also go through this for your reference: http://office.microsoft.com/en-us/project-server-help/overview-enter-time-and-task-progress-in-one-view-HA101884467.aspx

     

    Hope it helps.


    | Khurram Jamshed | Follow my blog about Enterprise Project Management Solution | http://khurramjamshed.blogspot.com |
    • Proposed as answer by Khurram Jamshed Sunday, January 2, 2011 7:16 AM
    • Marked as answer by MaazIbrahim Thursday, January 20, 2011 1:39 PM
    Sunday, January 2, 2011 7:16 AM
  • The system is working as designed.  Manual Tasks do not allow for the tracking of timephased work.


    Andrew Lavinsky [MVP] Twitter: @alavinsky
    • Marked as answer by MaazIbrahim Thursday, January 20, 2011 1:39 PM
    Sunday, January 2, 2011 10:37 AM
  • yea Maaz, this is how its design to work.

    The answer to your question is that If the system is not live yet, try convenience your client, decide upon one of the available options and roll out.

     

     


    | Khurram Jamshed | Follow my blog about Enterprise Project Management Solution | http://khurramjamshed.blogspot.com |
    Sunday, January 2, 2011 10:46 AM
  • go through this: http://msdn.microsoft.com/en-us/library/ms469450%28v=office.12%29.aspx

    it will give you a complete picture of your queries. follow the steps defined in the article and apply it to your code. It also explains how to setup the environment to create an event handler, debug and deployment.

    hope it helps.


    | Khurram Jamshed | Follow my blog about Enterprise Project Management Solution | http://khurramjamshed.blogspot.com |
    • Proposed as answer by Khurram Jamshed Monday, January 17, 2011 12:55 PM
    • Marked as answer by MaazIbrahim Tuesday, January 18, 2011 7:06 AM
    Monday, January 17, 2011 12:52 PM
  • Yes..Database is ProjectServer_Reporting.

    Sachin Vashishth MCTS
    • Marked as answer by MaazIbrahim Tuesday, January 25, 2011 5:53 PM
    Monday, January 24, 2011 6:18 AM

All replies

  • Are you deploying Project Server 2007 or 2010?  Could you provide more clarity around requirement #2?

    In 2007, you can implement the Timesheet Tied Mode, which is available from Codeplex.  In 2010, that feature is available out of the box. 

    Have you looked at that?  Here're a couple of links to get you started: http://blogs.msdn.com/b/chrisfie/archive/2010/03/09/microsoft-project-server-2010-timesheet-and-statusing-resources.aspx


    Andrew Lavinsky [MVP] Twitter: @alavinsky
    Saturday, January 1, 2011 1:56 PM
  • Hi,

    Thanks for replying back. I am using Project Server 2010.

    In my second point i want that, no alert/notification/reminder email will be received by any user, only Timesheet Notification email will be sent across all the users on weekly basis. The notification email is a custom made email and client requires that all users should receive this email on every weekend for filling their timesheet.

    For the first point, i would like you to please elaborate me how i will do this, I need it to be done through the following scenario;

    1. User who has been previously assigned to the project logs in to the PWA, -> Go to the timesheet -> its timesheet shows planned 8 hours per day for the whole week -> User fills actual hours and Press Send Timesheet button

    2. Upon submitting timesheet, the project hours should be updated according to the filled in hours in the timesheet.

    Regards,

    Maaz

    Saturday, January 1, 2011 2:48 PM
  •  

    hello Maaz,

    1. User who has been previously assigned to the project logs in to the PWA, -> Go to the timesheet -> its timesheet shows planned 8 hours per day for the whole week -> User fills actual hours and Press Send Timesheet button

    In project Server 2010, you can use the Timesheet SEM (single Entry mode) to avoid users to report the actual hours against the task in different places. So in your case you can completely ignore the My Task feature, and can simply let your users to report the actual for every day through your timesheet.

    2. Upon submitting timesheet, the project hours should be updated according to the filled in hours in the timesheet.

    Your point 2 requires bit more details.

    Is your client wants its users to enter the actual against the Project tasks?

    If yes, then to avoid the approval you can set the Task Approval rule in your My task page - set the rule to approve all the updates. and status manager wont receive any notifications also. but this you have to do for every status manager.

    If no, then you can configure the Administrative time settings - and the users can simply report against those administrative times. but then in this case there will not planned hours.

    And your timesheet notification to be sent weekly can be done through customization. you need to catch and modify one of the scheduling event of Project Server, such as CubeBuild, format your time sheet with the event and then send to all users. but if you are using CubeBuild event to do that then do make sure in your code that you are not sending the notification twice in a week, because you probably schedule your cube to be build every day.

    contact me in person, and i will send you the code to do this. i did this for one of my customer some time back.

    Let me know if this helps.


    | Khurram Jamshed | Follow my blog about Enterprise Project Management Solution | http://khurramjamshed.blogspot.com |
    Sunday, January 2, 2011 5:35 AM
  • Dear Khurram,

    Thanks for the detailed answer,

    For point 2, i meant that my client wants to only fill hours against tasks in Timesheet. Client doesnt want to go to the MY TASK section and fill in hours and send MY TASKS actual hours for approval, actually he doesnt want to go to Tasksheet/ MY Task Page. He requires that by filling hours in timesheet the project tasks should be updated automatically with the actuals.

     

    Sunday, January 2, 2011 6:51 AM
  • Maaz, the SEM (single entry sheet mode) will let you do exactly the way you required. Yours users dont have to import the timesheet to the My tasks. SEM, if turned on, will enable users to enter the task progress on one view i.e. in your case is Time sheet and it will get submitted to both.

    try this once and you will get a better idea of what i am talking about, also go through this for your reference: http://office.microsoft.com/en-us/project-server-help/overview-enter-time-and-task-progress-in-one-view-HA101884467.aspx

     

    Hope it helps.


    | Khurram Jamshed | Follow my blog about Enterprise Project Management Solution | http://khurramjamshed.blogspot.com |
    • Proposed as answer by Khurram Jamshed Sunday, January 2, 2011 7:16 AM
    • Marked as answer by MaazIbrahim Thursday, January 20, 2011 1:39 PM
    Sunday, January 2, 2011 7:16 AM
  • Another problem i am facing is that SEM seems like not working, i think because i have manual Task entries... please elaborate more on SEM... and how can i use it to resolve my issue.

    The problem of SEM for manually entered tasks is elaborated in the following forum;

    http://social.technet.microsoft.com/Forums/en/projectserver2010general/thread/a4c142fa-18d6-446e-a78a-9e6b8f65d680

    Sunday, January 2, 2011 8:21 AM
  • The system is working as designed.  Manual Tasks do not allow for the tracking of timephased work.


    Andrew Lavinsky [MVP] Twitter: @alavinsky
    • Marked as answer by MaazIbrahim Thursday, January 20, 2011 1:39 PM
    Sunday, January 2, 2011 10:37 AM
  • yea Maaz, this is how its design to work.

    The answer to your question is that If the system is not live yet, try convenience your client, decide upon one of the available options and roll out.

     

     


    | Khurram Jamshed | Follow my blog about Enterprise Project Management Solution | http://khurramjamshed.blogspot.com |
    Sunday, January 2, 2011 10:46 AM
  • Dear Khurram,

    Just a buzz.... to remind you for the Email notification work, need to know the steps.

    One thing i need to know is that in which Project Type i have to open the code in Visual Studio which you sent me.

    looking forward to your reply.

    Regards,

    Maaz

     


    Maaz Ibrahim
    Monday, January 17, 2011 11:51 AM
  • go through this: http://msdn.microsoft.com/en-us/library/ms469450%28v=office.12%29.aspx

    it will give you a complete picture of your queries. follow the steps defined in the article and apply it to your code. It also explains how to setup the environment to create an event handler, debug and deployment.

    hope it helps.


    | Khurram Jamshed | Follow my blog about Enterprise Project Management Solution | http://khurramjamshed.blogspot.com |
    • Proposed as answer by Khurram Jamshed Monday, January 17, 2011 12:55 PM
    • Marked as answer by MaazIbrahim Tuesday, January 18, 2011 7:06 AM
    Monday, January 17, 2011 12:52 PM
  • Hi Maaz,

    You can use below procedure to send timesheet alert from Database itself.

     

    create procedure [dbo]. [SendMail]

     as

    begin

    declare @to varchar ( 70)

    declare @recipient_name varchar ( 50)

    declare @weekdate varchar ( 11)

     DECLARE getUserDetail CURSOR

    FOR

    SELECT resourceemailaddress, r. resourcename, convert ( varchar ( 11), enddate) enddate

    FROM MSP_TimesheetPeriod_OlapView TP inner join MSP_Timesheet_OlapView T on TP. PeriodUID  = T. PeriodUID inner join MSP_TimesheetResource_OlapView RT on T. OwnerResourceNameUID = RT. ResourceNameUID

    inner join MSP_Epmresource_UserView R on RT. ResourceUID = R. ResourceUID

    where TimeSheetStatusId = 0 and   Enddate < getdate ()

    OPEN getUserDetail

     

    FETCH NEXT FROM getUserDetail

    INTO @to, @recipient_name, @weekdate

     

    WHILE @@FETCH_STATUS = 0

    BEGIN

     

    EXEC msdb. dbo. sp_send_dbmail @recipients = @to,

          @subject = 'Timesheet Alert' ,

        @body = 'You have not submitted your Timesheet for last week. <br> Warm Regards </br> <br> PS Admin </br>' ,

          @body_format = 'HTML'

         

          FETCH NEXT FROM getUserDetail

          INTO @to

     

    END

     

    CLOSE getUserDetail

    DEALLOCATE getUserDetail

    end


    Sachin Vashishth MCTS
    Monday, January 17, 2011 2:26 PM
  • Dear Khurram,

    Thanks for sharaing me the code and steps for timesheet email reminder. I will get back to you after trying this.

    Regards,

    Maaz


    Maaz Ibrahim
    Tuesday, January 18, 2011 4:57 AM
  • Khurram do you have any thoughts for doing this by using the above Stored Procedure (shared  by Sachin), i think we would need to configure sql server for sending emails.

    Regards,

    Maaz


    Maaz Ibrahim
    Tuesday, January 18, 2011 5:03 AM
  • Hi Maaz,

    Yes we need to do few configuration in sql server for sending mail from database itself.

    Like first we have to create a scheduler job (to execute this procedure) which will run at particular time.

    Then We need to provide mail server details at database server, and that is all.

    Which your DB team can easily do.


    Sachin Vashishth MCTS
    Tuesday, January 18, 2011 5:53 AM
  • I need to know how to create this scheduler job for executing this procedure, and what are the changes i will have to make in the above procedure.
    Maaz Ibrahim
    Thursday, January 20, 2011 1:41 PM
  • For creating scheduling jobs in sql you can go through with following link.

    http://msdn.microsoft.com/en-us/library/ms191439.aspx

    To configure Database to send email alerts follow below steps;

    You can check the configuration of the Database Mail profile and account using SQL Server Management Studio by right clicking Database Mail  and clicking the Configuration.

    Note : In SQL Server Surface area configuration  under  DatabaseMail "Enable Database mail stored procedure" must be checked.


    Fig 1.5


    Sachin Vashishth MCTS
    Thursday, January 20, 2011 2:49 PM
  • To run this procedure as per your requirement you have to do following things.

    1 You need to create a schedule job using above post, which will run on every weekend at particular time e.g.(Friday 2.00 PM).

    2 Then in SP you have to do following change in where clause.

    where TimeSheetStatusId = 0 and  

    Enddate = getdate ().

    Note: Here Enddate is your time sheet submission date.

    Kindly mark as answer, if above post helps you.

    Sachin Vashishth MCTS
    Thursday, January 20, 2011 3:08 PM
  • One quick question in which database this SP should be placed? ProjectServer_Reporting?
    Maaz Ibrahim
    Sunday, January 23, 2011 5:55 AM
  • Yes..Database is ProjectServer_Reporting.

    Sachin Vashishth MCTS
    • Marked as answer by MaazIbrahim Tuesday, January 25, 2011 5:53 PM
    Monday, January 24, 2011 6:18 AM
  • Database mail is configured successfully and i receive Test emails, and i have created a new job and also scheduled it. I want to know what are the configurations i need to make in Job Properties to run it properly, right now job is scheduled but it doesn't run, although the job appears in the Job Activity Monitor shows --> Last Run : Never, Last Run Outcome: Unknown...

     


    Maaz Ibrahim
    Tuesday, January 25, 2011 5:40 AM