Changes to timesheet using PSI against Project 2013 not persisting...

Since we migrated from Project Server 2007 to 2013 we have been updating our custom code which mainly involves processing the timesheets. As has been stated in many places, the only way we could find to lock timesheets and prevent modification, recall, deletion,
etc after the timesheet has been approved is to set the TS_IS_PROCESSED value in the timesheet's header table to true as the code below does.
DataRow headerRow = headersTable.Rows[0];
headerRow[headersTable.TS_IS_PROCESSEDColumn] =
true;
GuidjobUid =
Guid.NewGuid();
GuidtimesheetUid = (Guid)headerRow[headersTable.TS_UIDColumn];
this.timesheetClient.QueueUpdateTimesheet(jobUid,
timesheetUid, timesheetData)
I wrote out the contents of the header table on one timesheet I was processing before and after executing the code above. Before the update, TS_IS_PROCESSED value is false, and after it's true. Great! But then if I process that same timesheet again,
I notice that the before and after values are false and true respectively again. Where/When is that TS_IS_PROCESSED value being reset back to false? We don't have any other code that is touching this stuff or even making calls to update the timesheets. All
other calls are reading data back...
I don't understand why I can't get the true value to persist?
Can anyone point me in the right direction?

Djwawa--
Please note that you are all volunteers that take on our
spare time to
kindly help the Project community. Thus there are
no ridiculous conclusion, we are just trying to understand concerns and propose various tracks to help Project users to solve issues.
Hope you'll find a solution for your issue.
Hope this helps,
Guillaume Rouyre, MBA, MCP, MCTS |

Similar Messages

  • How can you tell if a file is being used in your project or not?

    How can you tell if a file in your bin is being used in your project or not? My director dragged hundreds of reference files into my project and only used a few of them. I'd like to do some house cleaning and delete the ones that are not in use. This project file has 100 sequences in it, so it would be a tough manual hunt to figure this out.
    In Premiere Pro (or Flash for example), where all the information is in the Project Bin such as in/out times and duration, there is where it tells you how many times that piece of media has been used or if it hasn't been used yet.
    Can FCP tell me this info?
    Thanks for yout time!
    -Monty

    Monty,
    Within FCP, there is a menu item called "Media Manager" (depending on what version you are in). This would be worth your while to look into. It basically organizes your project by moving/archiving any used assets of a project and leaving out un-used assets. It saves a ton of disk space.
    For example, say you have a 5 minute clip with an in/out point that is just 30 seconds. Media Manager will "archive" just that 30 seconds, not the entire clip. There is even a setting that you can add additional "handles" time to the front andd back of the clip if you think you may need to add or change transition.
    Do a google search. I was just watching a few Youtube videos on this myself.
    Jonathan

  • Adobe Premiere Pro CS3 "The editing mode used by this project could not be loaded."

    Hello-
    I am encountering an issue with my Adobe Premier Pro CS3. I am trying to open up a project that another person has created on a different editing system. When I try to open, it comes up with the error "The editing mode used by this project could not be loaded. The project will be opened in Desktop mode." The next window is a Windows Explorer screen, that wants me to choose a file to open. If I cancel that, it brings up a blank looking project with no timeline or anything?
    A quick comparison of systems:
    Mine:
    HP dc7700s desktop
    Windows XP OS
    Adobe Master Collection CS3
    Hers:
    IBM compatible laptop
    Microsoft Vista
    Adobe Premiere Pro CS3
    Adobe Photoshop CS3
    I have googled the error message, but have not found anything to fix this. I have also verified from Help - About that we have the exact same versions of Adobe Premiere Pro CS3 installed.
    I need to be able to view this project on either computer. Any advice would be greatly appreciated!!!
    Thank you!

    >project will be opened in Desktop mode
    I have never used any non-standard files, but from reading here, desktop mode is used when the video files are not standard... in one way or another, but usually pixel dimensions
    What is the codec and properties of the files in that project?
    Are you sure they are 100% standard?

  • How to use PSI with Project online 2013

    There are some entities in project server that we cant interact with using Client side object model like views etc. We need to use PSI for them.
    If not, Is there any other approach to get entities such as views.

    Hello,
    You can use the PSI, this link for SharePoint Online claims auth will help you authenticate - this helped us :)
    http://msdn.microsoft.com/en-us/library/office/hh147177(v=office.14).aspx
    Paul
    Paul Mather | Twitter |
    http://pwmather.wordpress.com | CPS

  • ME51N - PR against Project  Network not yet released

    It appears that it’s possible to create a PR against a Network and an Activity for a Project that has not been released using ME51N. (PR with account assignment N – Network and Activity)
    However in MIGO you are not allowed to receive the parts ordered as long as the Project has not been released (makes sense).
    Is there an easy way of preventing the creation of PRs against Networks that has not been released yet?
    (In Project material demands registered as PRs will not be released into the system before the Project is released.. so it may look like there is some kind of inconsistency here)
    Any ideas?

    Manish,
    Your answer is the findings that I have stated in the question.
    What I'm looking for is a way to prevent users from creating PRs against Networks that have not been released yet.
    Can this be done?
    Kind regards,
    Are

  • Project 2013 not installing - Boot strapper error

    I have Office 2007 on my home PC, along with Lync 2010 - I need to edit Project 2013 files so have opted to download the 60 day trial image file - this has burnt to CD nicely, but when installing I get the Setup Boot Strapper has stopped working message.
    Has anyone worked out a way that allows a single product to be installed that doesn't require me to un-install my other office products?
    Thanks,
    Chris

    For the Project installation problem, I recommand that we perform General troubleshooting for installing Office 2013 and Office 365 as the following link:
    http://support.microsoft.com/kb/2822317/en-us
    Let me know the result, Thanks.
    Tony Chen
    TechNet Community Support

  • How to change field size using SQL against an oracle Database

    I am an admitted novice user, looking to become more proficient.
    I have a field in a table that I need to expand the field size. The table is called Inquiries. The data type is text. The current Field Size is 10. I want to increase it, to either the max, or somethign long enough to fit TECHNOLOGY LEADERSHIP PROGRAM.
    What is the SQL command to change the field size, and what is the max for a Text Field Size

    And/Or, an even better question might be,
    Do I need to use SQL*PLUS to do this, or are there better tools. I.e, I like how in Access, you can open up a database in Design view and just change the amount for the field size. Is there a similar "easy" method to do something like that with an Oracle database.
    My current version of the server/database is:
    Connected to:
    Oracle9i Enterprise Edition Release 9.2.0.6.0 - Production
    With the Partitioning option
    JServer Release 9.2.0.6.0 - Production
    I was thinking I had to do SQL commands to perform the action, but there may be another way that I am not thinking about with all of the tools at my disposal. When I installed Oracle on my desktop, I installed most of the management tools and networking services, if that helps

  • Restart project server workflow programmatically using psi 2010

    hi sir,
         I am working on project server 2010. I  want restart project server workflow using PSI. please suggest me
    vijay

    Hi,
    I think this might help:
    http://epmxperts.wordpress.com/2012/05/27/change-workflow-stage-using-psi-wcf/
    Paul

  • Project 2013 freezes in Team planner view

    Hi,
    While right clicking and changing assignments in a Project file the Team planner freezes and Project must be restarted, this happens all the time and too frequent. The first thing that happens is that the large info box which is shown on right click together
    with the smaller one with percentage etc. dissapears. Then the changes can still be saved but Project can not be shut down in the normal way but must be closed by shutting down the process in the Task manager. Then it is just to open the file and
    continue as the Team planner works normal again until it freezes again. This has been so since the very beginning, but did not happen in the 2010 version. It only happens in the 2013 version which of course is the one we use as the reports in it are so great.
    Any ideas to get rid of this annoying problem?
    Kind regards //Anders

    Hi Ben,
    Thanks for looking into it. Perhaps it is something wrong with the installation or the PC that it runs on, have not thought of that before. Should try to copy the file to another computer and download a trial version to run it on and see if the problem is
    still there. Otherwise Snag it seems like a good idea. The time for project to stop working varies a lot, normally everything from 3- 10 minutes. There is one thing that normally seems to get project to stop working sooner and that is when switching between
    the Team planner and the Gantt view.
    The work sequence is like this:
    -Open the project file
    -Expand all tasks in the Gantt view
    -Switch to Team planner, begin to drag & drop tasks between resources
    -Mark a task in the Team planner view and switch to Gantt view to check how the project where the marked task is located underneath is following the plan.
    -Switch back to Team planner, continue to switch tasks between resources
    -Mark a task in the Team planner view and switch to Gantt view to check how the Project is following the plan, as above.
    After a number of switches between the views project normally just stops working completely. Memory usage normally goes up to 140 MB, not much but still an increase towards the normal. The above sequence is the quickest way of getting Project to stop working.
    Would be interesting to see if you would get any problems repeating the sequence. If that would work for you for 10 minutes there must be something wrong with either the project installation or with the computer.
    Thanks and kind regards  //Anders

  • Project 2013 and Managing StakeHolders

    Is there a way for MS Project 2013 to:
    List all Stakeholders on a project
    List those stakeholders contact info (or link to Active Directory for email and phone if internal)
    Assign stakeholders to tasks or milestones.
    I know "resources" can be inventoried, but I'm distinguishing them from stakeholders who you would need to report to that don't perform any actual work (ex: C-level, other managers, etc.)
    Thanks in advance for any help you can provide

    rimmella --
    I do not get the impression that you are using Project Server 2013, but are only using the Microsoft Project 2013 desktop application.  If that is true, I believe you have another option.  What I would do is to create a custom Resource field that
    indicates whether a resource is primarily a team member or primarily a stakeholder.  Here is how to do that:
    Open a project and apply the Resource Sheet view.
    Click Project > Custom Fields.
    In the Custom Fields dialog, select the first available resource Text field, such as Text1 for example.
    Click the Rename button.
    In the Rename Field dialog, enter a friendly name like Resource Type, and then click the OK button.
    In the Custom Attributes section of the dialog, click the Lookup button.
    In the Edit lookup table dialog, enter three values: Team Member, Stakeholder, and Both.
    Click the Close button and then click the OK button.
    In the Resource Sheet view, right-click on the Type column header and select the Insert Column item on the shortcut menu.
    In the list of available resource columns, select the name of the new field you just created, such as Resource Type if you used that name.
    In the new Resource Type column, click the pick list for each resource and select whether they are a Team Member, a Stakeholder, or Both.
    This will now allow you to see who is a team member, who is a stakeholder, and who is a stakeholder who also functions as a team member.  In addition, if a stakeholder is a team member, you might want to specify a Standard Rate for that resource. 
    Just an additional thought.  Hope this helps.
    Dale A. Howard [MVP]

  • How to consume the Calendar Exception details from Project Server 2013 to an SSRS report using PSI ?

    Hello,
    Can anyone guide me how to access the calendar exception details from Project Server using PSI?
    I need to extract calendar details of enterprise resources , like exception name, exception type, exception start date and exception end date into my SSRS report hosted in SharePoint 2013 and 2010.
    I would be helpful if I can get a sample of this. I have read through many PSI documents in fact still going through ,what  PSI does and doesn't ,  PSI methods etc. from Project Server SDK and MSDN . Moreover, I
    am a beginner in .NET programming. I am confused and have lots of questions in my mind, like which PSI service should be used in my report(is it  just Calendar.svc), can we pull the details as XML type data source my SSRS report ,are
    there any other configuration settings apart from " setting up an event handler by installing an event handler assembly on each Project Server computer in the SharePoint farm, and then configuring the event handler
    for the Project Web App instance by using the Project Server Settings page in the General Application Settings of SharePoint Central Administration" (as per prerequisites for PSI in SDK) , how can I implement authentication settings
    -(when user with proper SharePoint permission
    can accesses the SSRS report  )
    Kindly bear with me if my questions are not appropriate .
    Please do guide me, and .
    Thanks in Advance!!
    Mridhula
    Mridhula.S

    Hi Brendan,
    Project server reporting database doesn't contain the calendar info. The only supported way to use the PSI to read the calendar info from Published database.
    See this
    reply from Amit.
    Hope this helps,
    Guillaume Rouyre, MBA, MVP, P-Seller |

  • Update Project Server using PSI

    I need to update a project server 2007 file (tasks and custom fields) using PSI on a weekly basis. How do I update a required custom field in the project using C# and PSI web services? I get the following error when I save the changes:
    false);
    projectSvc.QueueUpdateProject(jobId, sessionId, projectDs,
    Error:
    PSCLientError Output:CustomFieldRequiredValueNotProvided        mdpropuid:
    ============================
    System.Web.Services.Protocols.SoapException: ProjectServerError(s) LastError=Cus
    tomFieldRequiredValueNotProvided Instructions: Pass this into PSClientError cons
    tructor to access all error information
       at Microsoft.Office.Project.Server.WebService.Project.QueueUpdateProject(Guid
     jobUid, Guid sessionUid, ProjectDataSet dataset, Boolean validateOnly)
    Code:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data;
    using System.Web;
    using System.Web.Services.Protocols;
    using System.Threading;
    using PSLibrary = Microsoft.Office.Project.Server.Library;
    using IntegratedMasterSchedule.ProjectWebSvc;
    using IntegratedMasterSchedule.WebSvcLoginWindows;
    using System.Net;
    using System.Globalization;
    namespace IntegratedMasterSchedule
    public partial class MasterSchedule
    private static CustomFieldWS.CustomFields customFieldClient = new CustomFieldWS.CustomFields();
    [STAThread]
    static void Main()
    try
    #region Setup
    const string PROJECT_SERVER_URI = "http://ServerName/xxx";
    const string PROJECT_SERVICE_PATH = "_vti_bin/psi/project.asmx";
    const string QUEUESYSTEM_SERVICE_PATH = "_vti_bin/psi/queuesystem.asmx";
    const string SESSION_DESC = "Sample utility";
    Guid sessionId = Guid.NewGuid();
    Guid jobId;
    // Set up the Web service objects
    ProjectWebSvc.Project projectSvc = new ProjectWebSvc.Project();
    projectSvc.Url = PROJECT_SERVER_URI + PROJECT_SERVICE_PATH;
    projectSvc.Credentials = CredentialCache.DefaultCredentials;
    QueueSystemWebSvc.QueueSystem q = new QueueSystemWebSvc.QueueSystem();
    q.Url = PROJECT_SERVER_URI + QUEUESYSTEM_SERVICE_PATH;
    q.Credentials = CredentialCache.DefaultCredentials;
    //Get the project
    Guid projectId = GetProjectUidFromProjectName(projectSvc, "Project Name");
    // Read the project you want
    Console.WriteLine("Reading project from database");
    ProjectWebSvc.ProjectDataSet projectDs = projectSvc.ReadProject(projectId, ProjectWebSvc.DataStoreEnum.WorkingStore);
    #endregion
    #region Change task name and update
    // Check out the project
    Console.WriteLine("Checking out project");
    projectSvc.CheckOutProject(projectId, sessionId, SESSION_DESC);
    // Make changes
    // - Note: Task 0 is the summary task which can't be changed.
    projectDs.Task[1].TASK_NAME += " Changed";
    // Save the changes
    Console.WriteLine("Saving changes to the database");
    jobId = Guid.NewGuid();
    projectSvc.QueueUpdateProject(jobId, sessionId, projectDs, false);
    WaitForQueue(q, jobId);
    #endregion
    #region Check in
    // Check in the project
    Console.WriteLine("Checking in the project");
    jobId = Guid.NewGuid();
    projectSvc.QueueCheckInProject(jobId, projectId, false, sessionId, SESSION_DESC);
    WaitForQueue(q, jobId);
    #endregion
    #region Exception Handling and Final
    catch (SoapException ex)
    PSLibrary.PSClientError error = new PSLibrary.PSClientError(ex);
    PSLibrary.PSErrorInfo[] errors = error.GetAllErrors();
    string errMess = "==============================\r\nError: \r\n";
    for (int i = 0; i < errors.Length; i++)
    errMess += "\n" + ex.Message.ToString() + "\r\n";
    errMess += "".PadRight(30, '=') + "\r\nPSCLientError Output:\r\n \r\n";
    errMess += errors[i].ErrId.ToString() + "\n";
    for (int j = 0; j < errors[i].ErrorAttributes.Length; j++)
    errMess += "\r\n\t" + errors[i].ErrorAttributeNames()[j] + ": " + errors[i].ErrorAttributes[j];
    errMess += "\r\n".PadRight(30, '=');
    Console.ForegroundColor = ConsoleColor.Red;
    Console.WriteLine(errMess);
    catch (WebException ex)
    string errMess = ex.Message.ToString() +
    "\n\nLog on, or check the Project Server Queuing Service";
    Console.ForegroundColor = ConsoleColor.Red;
    Console.WriteLine("Error: " + errMess);
    catch (Exception ex)
    Console.ForegroundColor = ConsoleColor.Red;
    Console.WriteLine("Error: " + ex.Message);
    finally
    Console.ResetColor();
    Console.WriteLine("\r\n\r\nPress any key...");
    Console.ReadKey();
    #endregion
    static private void WaitForQueue(QueueSystemWebSvc.QueueSystem q, Guid jobId)
    QueueSystemWebSvc.JobState jobState;
    const int QUEUE_WAIT_TIME = 2; // two seconds
    bool jobDone = false;
    string xmlError = string.Empty;
    int wait = 0;
    //Wait for the project to get through the queue
    // - Get the estimated wait time in seconds
    wait = q.GetJobWaitTime(jobId);
    // - Wait for it
    Thread.Sleep(wait * 1000);
    // - Wait until it is done.
    do
    // - Get the job state
    jobState = q.GetJobCompletionState(jobId, out xmlError);
    if (jobState == QueueSystemWebSvc.JobState.Success)
    jobDone = true;
    else
    if (jobState == QueueSystemWebSvc.JobState.Unknown
    || jobState == QueueSystemWebSvc.JobState.Failed
    || jobState == QueueSystemWebSvc.JobState.FailedNotBlocking
    || jobState == QueueSystemWebSvc.JobState.CorrelationBlocked
    || jobState == QueueSystemWebSvc.JobState.Canceled)
    // If the job failed, error out
    throw (new ApplicationException("Queue request " + jobState + " for Job ID " + jobId + ".\r\n" + xmlError));
    else
    Console.WriteLine("Job State: " + jobState + " for Job ID: " + jobId);
    Thread.Sleep(QUEUE_WAIT_TIME * 1000);
    while (!jobDone);
    static public Guid GetProjectUidFromProjectName(Project proj, string projectName)
    Guid result = Guid.Empty;
    ProjectDataSet dsProjectList = new ProjectDataSet();
    dsProjectList = proj.ReadProjectList();
    for (int row = 0; row < dsProjectList.Project.Count; row++)
    if (projectName == dsProjectList.Project[row].PROJ_NAME.ToString())
    result = dsProjectList.Project[row].PROJ_UID;
    break;
    return result;

    Hi cochocip,
    your projectDataSet has no custom field (required) set
    The md_prop_uid is the uid for this custom field).
    If your custom field is not based on lookup table, you can use a code like this:
    Log to CustomFields webservice
    Get Custom field's md_prop_uid using ReadCustomFields.....
    and add this code after
    // Make changes
    // - Note: Task 0 is the summary task which can't be changed.
    projectDs.Task[1].TASK_NAME += " Changed";
    WebSvcCustomFields.CustomFieldDataSet newCF = customFieldsWS.ReadCustomFieldsByMdPropUids(new Guid[] {
    p_md_prop_uid }, false);
    WebSvcProject.ProjectDataSet.TaskCustomFieldsRow a = projectDs.TaskCustomFields.NewTaskCustomFieldsRow();
    a.SetDUR_FMTNull();
    a.SetFLAG_VALUENull();
    a.SetINDICATOR_VALUENull();
    a.SetNUM_VALUENull();
    a.SetDUR_VALUENull();
    a.SetDATE_VALUENull();
    a.CUSTOM_FIELD_UID = Guid.NewGuid();
    a.MD_PROP_UID = p_md_prop_uid;
    a.MD_PROP_ID = newCF.CustomFields[0].MD_PROP_ID;
    a.PROJ_UID = p_prjDS.Project[0].PROJ_UID;
    a.TASK_UID = p_taskGuid;
    a.FIELD_TYPE_ENUM = newCF.CustomFields[0].MD_PROP_TYPE_ENUM;
    switch (newCF.CustomFields[0].MD_PROP_TYPE_ENUM)
    case 21: //String
             a.TEXT_VALUE = p_value;
                    break;
    case 15: //number
             a.NUM_VALUE = Convert.ToDecimal(p_value);
                    break;
    case 4: //DAte
             a.DATE_VALUE = Convert.ToDateTime(p_value);
                    break;
                    default:
    projectDs.TaskCustomFields.AddTaskCustomFieldsRow(a);
    where p_value is the value that you want save in this field.
    I hope this code can help you
    Cheers,
    Paolo

  • Sharepoint 2013, MS Project 2013 - Task List not updating when the project file is changed

    Hi
    I have created a SharePoint task list and timeline from a MS Project 2013 file on my PC. I have then created a new Project file from that task list which then places the new project file in the site asset folder and provides me with a synced copy. I now
    only use the SharePoint copy of the project file in my MS Project as any change I make to the project file should be reflected in the Task list and vice-versa
    However if I add some tasks into the middle of the project with MS project, the SharePoint Task list is not updated to show these additional tasks. If I open the SharePoint task list with MS Project - from the task list toolbar - the project file shows the
    added tasks.....so the MS Project file in the site asset folder is correct  but the tasks in the SharePoint task list is not being updated
    Anyone seen this before ?
    Thanks
    Geoff

    Hi Esben,
    According to your description, the error occurred when opening the task list with the content approval enabled in Project.
    Per my knowledge, when we enable the content approval for the task list, the field named Approval Status which is required will be created in the list.
    However, if a project plan doesn’t contain a field that is required in SharePoint, the plan won’t sync.
    The error occurs because of the required field Approval Status when the content approval is enabled in the task list, so we need to add the required field as a custom field in Project.
    More information:
    Sync with a SharePoint tasks list:
    http://office.microsoft.com/en-in/project-help/sync-with-a-sharepoint-tasks-list-HA102828524.aspx
    Best regards.
    Thanks
    Victoria Xia
    TechNet Community Support

  • G'day.  I am using iMovie 11 and need to clear disk space.  How can I do that using an external drive, leaving me the option to go back and make changes or access old events or projects from that external drive?

    G'day.  I am using iMovie 11 and need to clear disk space.  How can I do that using an external drive, leaving me the option to go back and make changes or access old events or projects from that external drive?

    The slightly bigger question is whether you want to move all movie content to the external drive (essentially meaning that drive will always need to be attached when you're working with your videos), or whether you just want to archive older videos off to the external drive.
    If you want to move all videos, then just move the 'Movies' folder in your home directory to the external drive, then create an alias of the external 'Movies' back in to your home directory. Now the 'Movies' icon in your home directory will point to the external drive and everything will just work (as long as the external drive is attached when you launch iMovie)
    If you want to archive older movies then each Movie should have its own subdirectory within your Movies folder. These can easily be moved off to the external drive, and moved back should you ever need to work on those movies again.

  • Issues using Project 2013 with SharePoint 2010

    I'm a SharePoint Admin and a few users have come to me with issues related to checking in Project 2013 files. The scenario they describe is this:
    Project 2013 file is saved and checked in to a document library
    User opens the file and selects edit from the dialog menu.
    The time the document is open varies, from a few minutes to over an hour
    User is logged in as [email protected]
    They can close the file, select check in, and update the file in the library
    Once they try to open the file again, they are given a message saying that the file is checked out to server\user and asks whether they want to view a read only copy
    Saving is disabled because it is read only
    If the user tries to close the file, they are given the option to check in the file
    Sometimes the file will check in and other times it will not.
    Has anyone run into issues like this before?

    Hi CjMOrr85,
    Second time when you open the project file, which option do you select. "Read-only" of "Check-out to Edit". If you are using "Check-out" option, you should not have any issues.
    Happy troubleshooting....
    Vikram Daruru - MSFT

Maybe you are looking for