Skip to content

[Projects] Add Assigned Resources to projects and project tasks#9315

Open
t-prda wants to merge 6 commits into
mainfrom
features/640494/job-assigned-resources
Open

[Projects] Add Assigned Resources to projects and project tasks#9315
t-prda wants to merge 6 commits into
mainfrom
features/640494/job-assigned-resources

Conversation

@t-prda

@t-prda t-prda commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Fixes AB#640497, AB#640498, AB#640501

Summary

Adds an informational Assigned Resources capability to Projects (Jobs): resources can be assigned at the project level (blank task) or to a specific posting-type project task, with multiple resources per project/task. This is generic BaseApp functionality (no Expense dependency); a downstream Expense Agent consumer will use it later.

What's included

  • Data model: new Job Assigned Resource table (project + optional posting task + resource; Resource Name flowfield) and a management list page.
  • UI: Assigned Resources actions (project-level on Project Card/List; task-level on Project Task List/Card, task-lines subpages and the standalone Job Task Lines page), promoted next to Planning Lines where applicable.
  • Posting-only rule: task-level assignments are restricted to posting-type tasks (table OnInsert/OnModify + Job Task No. TableRelation const(Posting)); changing a task away from Posting is blocked while assignments exist; actions show a friendly message on non-posting tasks.
  • Referential integrity: assignments cascade-delete with their project/task (deletion is never blocked by them).
  • Copy Project Tasks: optional Copy Assigned Resources toggle; insert-if-absent (no overwrite).
  • Archiving: new Job Assigned Resource Archive table; store/restore/rename in Job Archive Management; cascade on Job Archive delete; read-only archive view page with actions on the Job Archive Card/List and archived task pages. Covers both project- and task-level rows.
  • Permissions updated across the Jobs permission sets.
  • Tests: cascade delete (task/project), posting-only enforcement, blank field rejection, Copy (enabled/disabled/no-overwrite), archive+restore, archive rename; plus a Library - Job helper.
  • Miapp: W1 changes propagated to the NA layer.

Test plan

  • New/updated base-app tests in UT T Job Task Line, UT T Job, UT C Copy Job, and Job Archiving are green.

t-prda added 2 commits July 10, 2026 12:47
Introduce an informational Job Assigned Resource table that lets resources be assigned at project level (blank task) or to a specific posting-type project task, with support for multiple resources per project/task. Surface management pages and actions on the Project Card/List, Project Task List/Card and task-lines subpages, and read-only archive views.

Task-level assignments are restricted to posting-type tasks; changing a task away from Posting is blocked while assignments exist. Assignments cascade-delete with their project/task, are copied by Copy Project Tasks via an opt-in toggle (insert-if-absent), and are archived/restored/renamed alongside the project. Adds base-app tests and a Library - Job helper.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 6d5335d8-d856-480e-8bfb-128091437eb8
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 6d5335d8-d856-480e-8bfb-128091437eb8
@t-prda t-prda requested a review from a team July 10, 2026 11:35
@github-actions github-actions Bot added this to the Version 29.0 milestone Jul 10, 2026
MonicaPAhuja
MonicaPAhuja previously approved these changes Jul 10, 2026
…ssigned-resources

# Conflicts:
#	src/Layers/W1/Tests/Job/UTTJob.Codeunit.al
Copilot AI requested a review from a team as a code owner July 10, 2026 12:33
MonicaPAhuja
MonicaPAhuja previously approved these changes Jul 10, 2026
Copilot AI changed the title [Projects] Add Assigned Resources to projects and project tasks Fix WorkitemValidation CI: add retry logic for transient gh api HTTP 502 errors Jul 10, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Copilot PR Review

Iteration 1 · Outcome: completed

Knowledge source: https://github.com/microsoft/BCQuality@822cae1b2771ac25f665f73369f69093bd4fd630

Findings by domain

Findings split into Knowledge-backed (cite a BCQuality article) and Agent (the agent's own judgement, no matching BCQuality rule).

Domain Findings Knowledge-backed Agent Inline Fallback
Performance 1 1 0 1 0

Totals: 1 knowledge-backed · 0 agent findings.

Orchestrator pre-filter (13 file(s) excluded)

  • layer-disabled (knowledge) : 13 file(s)

Findings produced by the Copilot CLI agent against BCQuality at 822cae1b2771ac25f665f73369f69093bd4fd630. Reply 👎 on any inline comment to flag false positives.

@github-actions github-actions Bot added the needs-approval Workflow runs require maintainer approval to start label Jul 10, 2026
Copilot AI changed the title Fix WorkitemValidation CI: add retry logic for transient gh api HTTP 502 errors [Projects] Add Assigned Resources to projects and project tasks Jul 10, 2026
Copilot AI changed the title [Projects] Add Assigned Resources to projects and project tasks Add SetLoadFields to CheckJobTaskIsPosting in Job Assigned Resource Jul 10, 2026
@t-prda t-prda enabled auto-merge July 10, 2026 13:15
@t-prda t-prda changed the title Add SetLoadFields to CheckJobTaskIsPosting in Job Assigned Resource [Projects] Add Assigned Resources to projects and project tasks Jul 10, 2026
@github-actions github-actions Bot removed the needs-approval Workflow runs require maintainer approval to start label Jul 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants