Hi! You've described a classic set of symptoms that point to two well-documented root causes in Power Apps + SharePoint: delegation limits and Patch function behavior with stale records.
Root Cause 1 — Delegation limit (most likely culprit)
Your SharePoint list has ~4,500 records. By default, Power Apps only retrieves the first 500 records from SharePoint when a query is nondelegable. This means users selecting a Project ID may be seeing a truncated list — accidentally picking a value that maps to the wrong project. You can raise the limit to 2,000 in Settings > Advanced Settings > Data row limit, but for 4,500 rows the correct fix is to use only delegable functions (e.g., Filter on indexed columns with supported operators).
Root Cause 2 — Patch function overwriting with stale data
The Patch() function updates only the fields you explicitly specify — but if the Patch call is built from a form or local collection loaded before another user saved changes, the values patched may be stale. This can cause one user's Patch to overwrite another's changes (same SharePoint Item ID, different values), and mandatory fields can become blank if a variable was never initialized before Patch runs.
Root Cause 3 — Unindexed columns
Columns not indexed in SharePoint can return inconsistent results on large lists. Ensure your Project ID and Month-Year columns are indexed in the SharePoint list settings.
Recommended investigation steps:
1. Check all Filter() / LookUp() calls for delegation warnings (yellow triangles in Power Apps Studio)
2. Raise the data row limit to 2,000 and index key columns in SharePoint
3. Audit every Patch() call — ensure it always includes the ID field and that variables are initialized on screen load
4. Add Notify(FirstError().Message) error handling around Patch calls to surface hidden failures
5. Check if any Power Automate flows are also writing to the same SharePoint list in parallel
Found this helpful? Please mark ✅ "Does this answer your question?" so others searching for the same issue can find it quickly. A 👍 on "Was this reply helpful?" or a ♥ Like is also much appreciated!