Project
672 TopicsNotification not working on projects for the web
Hello! My team of 12 part-time employees and I recently switched from MS Planner to Projects on the web. As they have been updating/combining Planner and Projects we have found we are no longer receiving notifications when a task/project is complete in Projects. We have checked our settings to no avail. Any tips?Solved22Views0likes2CommentsExcel Reporting : Can't connect to calendars with OData anymore (v2)
Hello everyone, Some of you may remember my previous thread about the same-ish issue (https://techcommunity.microsoft.com/t5/project/excel-reporting-can-t-connect-to-calendars-with-odata-anymore/m-p/4132119) that ended up being solved by a Project Online patch. But somehow, the issue returned. Not the same cause, since it has nothing to do with authentication this time, but the same symptoms : trying to fetch Calendar Exceptions data from an Excel OData query doesn't work anymore. When trying to get the data, I am getting "Error 400 : Cannot get a CSOM-compatible PJContext for an HTTP request that started outside of CSOM." It seems the issue started this morning on my client's tenant. Has anyone else experienced the same issue ?Solved259Views0likes8CommentsLimiting Resources
I have a project that has two types of resources. One can provide 100% effort to the project (Resource A), and another only 80% (Resource B). I am setting the work effort, and trying to ensure that the durations are appropriate. For example, an 80-hr task for Resource A should take 2wks, but the same task for Resource B should take 2.67wks based on the availability. I've tried setting various calendars (such as a 7hr day for Resource B), and availabilities in the resource tabs, but I'm guessing I'm doing those wrong as no matter what the duration remains at 2wks. Appreciate any help!Solved54Views0likes5CommentsNew Flow Templates for Project for the web
We have released two new Power Automate Flow templates for Project Managers and Team Members to help you be more productive with Project for the web. You can also use these templates to explore how to build more Flows with data from Project for the web.25KViews5likes36CommentsInconsistent Values from PWA Custom Field Formula
Hello community. Greetings from first time poster. I created the following formula (“FY Project Completion”) to assign a Financial Year value based on Project Finish Date (“Finish”): if the project ends on or before June 30, 2024, Financial year will be FY24, if the project end date falls between Jul 1, 2024 and June 30, 2025, the Financial Year will be FY25, and so on. IIf([Finish] >= CDate(#7/1/2024#) And [Finish] <= CDate(#6/30/2025#), "FY25", IIf([Finish] >= CDate(#7/1/2025#) And [Finish] <= CDate(#6/30/2026#), "FY26", IIf([Finish] >= CDate(#7/1/2026#) And [Finish] <= CDate(#6/30/2027#), "FY27", IIf([Finish] >= CDate(#7/1/2027#) And [Finish] <= CDate(#6/30/2028#), "FY28", "FY24")))) Surprisingly, the formula gives inconsistent FY values, even for projects with same Finish Date: sometimes it is blank, other times it assigns different FY values. I am attaching a representative listing of about 40 projects, 23 of which have wrong FY value. I will very much appreciate it if somebody can please guide me where I need to make change in the formula to get correct values? Dummy Project Name Start Finish FY Project Completion Project in Row 2 11/13/2018 4/30/2021 FY24 Project in Row 3 3/24/2023 3/24/2023 FY25 Project in Row 4 12/14/2020 3/29/2023 Project in Row 5 3/2/2020 7/31/2023 FY24 Project in Row 6 10/25/2023 11/22/2023 FY25 Project in Row 7 1/3/2022 12/31/2023 FY25 Project in Row 8 4/6/2020 2/9/2024 FY24 Project in Row 9 9/7/2023 3/1/2024 FY25 Project in Row 10 1/3/2023 3/29/2024 FY24 Project in Row 11 4/1/2024 4/1/2024 FY24 Project in Row 12 4/1/2024 4/1/2024 FY24 Project in Row 13 4/8/2024 4/8/2024 FY24 Project in Row 14 4/8/2024 4/8/2024 FY24 Project in Row 15 3/29/2024 5/9/2024 FY24 Project in Row 16 5/16/2024 5/16/2024 FY25 Project in Row 17 11/14/2023 5/28/2024 FY24 Project in Row 18 6/11/2024 6/11/2024 FY25 Project in Row 19 7/26/2023 6/28/2024 FY24 Project in Row 20 1/3/2023 6/28/2024 FY25 Project in Row 21 1/2/2024 6/28/2024 FY25 Project in Row 22 1/3/2023 6/28/2024 FY25 Project in Row 23 1/3/2023 6/28/2024 FY24 Project in Row 24 1/3/2023 6/28/2024 FY24 Project in Row 25 1/3/2023 6/28/2024 FY26 Project in Row 26 1/3/2023 6/28/2024 FY24 Project in Row 27 7/27/2023 6/28/2024 FY25 Project in Row 28 1/24/2024 6/28/2024 FY25 Project in Row 29 1/3/2023 6/28/2024 FY24 Project in Row 30 1/3/2023 6/28/2024 FY26 Project in Row 31 1/3/2023 6/28/2024 FY24 Project in Row 56 1/3/2023 6/28/2024 Project in Row 57 1/3/2023 6/28/2024 FY26 Project in Row 58 1/3/2023 6/28/2024 FY26 Project in Row 59 5/24/2023 6/28/2024 FY24 Project in Row 60 1/17/2023 6/28/2024 FY26 Project in Row 61 1/3/2023 6/28/2024 FY26 Project in Row 62 9/1/2022 6/28/2024 FY26 Project in Row 63 1/23/2023 6/28/2024 Project in Row 64 7/3/2023 6/28/2024 Project in Row 65 10/28/2020 6/28/2024 FY25Solved88Views0likes8CommentsFont to "Finish" tab becomes white on Project for the web
This is something I noticed very recently on Project For The Web. I noticed that dates on my Finish column becomes white if the task is not marked100% complete. The date becomes visible again once the task is marked completed. (see below) Anyone has any idea on how to fix this? Would definitely need to see the finish dates of my incomplete tasks!67Views1like5CommentsYou don't have permission to access items on this site
Hi All, One of my users is facing an issue with the Roadmaps feature in Microsoft Project. The user is assigned a Project Plan 3 license. I have the following settings enabled. However, when the user tries to use this feature, they encounter the following error: ": https://contoso.sharepoint.com/sites/pwa. Change your default PWA site or request permission to this site." I am not familiar with this site. When I checked the SharePoint active sites, I found this site with the following details: Site Name: Project Web App Site Address: https://contoso.sharepoint.com/sites/pwa Do I need to provide access to this site for the user to use the Roadmaps feature? Please guide me.40Views0likes1CommentProject Online (CSOM): Encountering 'User Not Found in Active Directory or Project DB'
Issue We are attempting to access Project Online data in Project Permission mode using app-only authentication, specifically to bypass MFA for programmatic access, as we aim for continuous, automated access without any user-interaction. We are using CSOM, using Microsoft.ProjectServer.Client.ProjectContext in .NET 4.8 to connect to Project Online. Despite following several documented approaches with client certificates, client secrets, and OAuth configurations, we keep encountering errors like 401 Unauthorized and User not found in Active Directory or in project db. Below is a summary of our steps. Despite multiple attempts, we consistently receive errors blocking access. We have followed recommended documentation for client credentials, certificates, and permissions but still face access issues. Technology Project Online CSOM in .NET 4.8 Microsoft.ProjectServer.Client.ProjectContext Azure AD (Entra ID) Solutions Attempted Client Certificate Authentication: Configuration: Registered an app in Azure AD (Entra) with a client certificate and set permissions including Sites.FullControl.All. NOTE: we could not select Project permissions (Project.Read, etc.) in the Application Permissions screen, only within the delegated permissions screen. Token Acquisition: We acquired an access token using az account get-access-token --resource=https://.sharepoint.com. Request Attempted: URL:https://.sharepoint.com/sites//_api/ProjectData/Projects Outcome: {"error":"invalid_request","error_description":"App is not allowed to call SPO with user_impersonation scope"} Client Secret with Client Credentials: App Registration: Configured client ID and client secret in Azure AD with permissions for Project.ReadWrite.All and Sites.Selected. Token Acquisition: Called the token endpoint: Endpoint:https://login.microsoftonline.com/{TENANT_ID}/oauth2/v2.0/token Parameters: client_id, scope=https://.sharepoint.com/.default, client_secret, grant_type=client_credentials Access Attempt: URL:https://.sharepoint.com/sites//_api/ProjectData/Projects Response: HTTP/1.1 401 Unauthorized Response Body: "" Outcome: Despite obtaining a valid token, the request returns a “Please sign in” page, rather than an access token. SharePoint AppPermissionRequest Configuration using /sites/pwa/layouts/15/appinv.aspx: Configuration: Set up AppPermissionRequest XML in SharePoint for permissions like: Outcome: This configuration did not make any differences, and did not grant the required permissions in Project Permission mode, as SharePoint app permissions do not seem to cover Project-specific access, it seems. Project Online access remains blocked. <AppPermissionRequest Scope="[http://sharepoint/content/sitecollection]" Right="FullControl"/> Microsoft Graph API Exploration: Goal: Investigated Graph API as an alternative. Outcome: Microsoft Graph lacks Project Online-specific permissions, limiting access to SharePoint and directory data, which does not meet our need for project-specific data access. Microsoft.Identity.Client and client certificate Configuration: CSOM using the following code to login: Outcome: Access fails withUser:<customercontent></customercontent> not found in Active Directory or in project db public static void Login(this ProjectContext context) { var clientId = "xxx"; var clientSecret = "xxx"; var authority = "https://login.microsoftonline.com/xxx"; var scope = "https://xxx.sharepoint.com/.default"; var certificate = new X509Certificate2("c:\\temp\\cert.pfx", "xx"); var app = ConfidentialClientApplicationBuilder.Create(clientId) .WithCertificate(certificate) .WithAuthority(new Uri(authority)) .Build(); AuthenticationResult result = TaskHelper.BlockingAwait(() => app.AcquireTokenForClient(new[] { scope }).ExecuteAsync()); string accessToken = result.AccessToken; context.ExecutingWebRequest += (sender, e) => { e.WebRequestExecutor.RequestHeaders["Authorization"] = "Bearer " + accessToken; }; } Key Questions: Is there a method for app-only authentication in Project Online in Project Permission mode__ that bypasses MFA for automated access? Has anyone succeeded in applying app-only credentials for Project Online access__, specifically in Project Permission mode? Are there any alternative permission configurations__ (like Azure AD settings, conditional access policies, or app permissions) that could facilitate this access? Thank you in advance! Edit: Sorry for the bad formatting.33Views0likes0CommentsMS Project Online (CSOM) read Assignment history
I need to get status of approvals of the assignments in MS Project Online I want to look at History, find latest record and see its approval status. I use following code to retrieve History: TimePhase timePhase1 = employee._mspStatusAssignments.GetTimePhase(Start.Date, End.Date); _projectContext.Load(timePhase1); _projectContext.Load(timePhase1.Assignments); _projectContext.ExecuteQuery(); StatusAssignment statusAssignment1 = timePhase1.Assignments.FirstOrDefault(x => x.Id.ToString() == ID); _projectContext.Load(statusAssignment1.History); _projectContext.ExecuteQuery(); But this code throws exception at ExecuteQuery when attempt to retrieve History when history has more than 0 items: Exception Message: The type of data at position 642 is different than the one expected. StackTrace: at Microsoft.SharePoint.Client.JsonReader.ReadDateTime() at Microsoft.ProjectServer.Client.StatusAssignmentHistoryLine.InitOnePropertyFromJson(String peekedName, JsonReader reader) at Microsoft.SharePoint.Client.ClientObject.FromJson(JsonReader reader) at Microsoft.SharePoint.Client.JsonReader.ReadJsonObject(Type fallbackType) at Microsoft.SharePoint.Client.JsonReader.ReadObject(Type fallbackType) at Microsoft.SharePoint.Client.JsonReader.ReadObjectArray(Type fallbackElementType) at Microsoft.SharePoint.Client.ClientObjectCollection`1.ReadChildItems(JsonReader reader) at Microsoft.SharePoint.Client.ClientObjectCollection.InitOnePropertyFromJson(String peekedName, JsonReader reader) at Microsoft.SharePoint.Client.ClientObject.FromJson(JsonReader reader) at Microsoft.SharePoint.Client.ClientRequest.ProcessResponseStream(Stream responseStream) at Microsoft.SharePoint.Client.ClientRequest.ProcessResponse() at Microsoft.SharePoint.Client.ClientRequest.ExecuteQueryToServer(ChunkStringBuilder sb) at Microsoft.SharePoint.Client.ClientContext.ExecuteQuery() Can anyone suggest what could be causing this problem? Thank you19Views0likes0Comments