In enterprise, when applications are defined at project level, they take precedence on the ones that were previously defined at task level (and when the project does not contain any)

In the reports, the primary applications set at task level are still displayed instead of the ones defined in the project, because the engine takes the information directly from the Data Sources DS_TASK (to display application set at task level) and DS_Project (to display application set at project level).

Each of these data provider will get the Primary Item defined for each specific level.



To display the primary application set for tasks and projects as in Enterprise, a new custom field is needed that will display:
- the primary application of the project for task and project, if a value is defined at project level
- the primary application of the task, if it is only defined at task level and not at project level,
- No value, if nothing is defined at task or project level

the expression could be like :
CASE WHEN ISNULL([Task.Primary product], '') = '' THEN [Task.Primary product] ELSE [Project.Primary product] END