Select to view content in your preferred language

Auto Calculations in Tasks for Field Maps

636
2
Jump to solution
01-14-2026 02:10 PM
apgis16
Frequent Contributor

What I am trying to do is theoretically very simple but once try clicking "start" in field maps to start the task, I keep getting stuck in a loop between the layout filters and calculated expressions in ArcGIS Field Maps Designer. All I am trying to do is have the esritask_assignee be a required field and have the esritask_status field automatically calculate as assigned once the user selects an assignee. It doesn't make sense for the user to have to switch the status to assigned manually when they pick an assignee in the same form. What is the correct configuration to do this? I don't need the ability to have any tasks be unassigned at all. I also didn't add anything different from the default configuration that they offer when you enable tasks on a layer. 

0 Kudos
1 Solution

Accepted Solutions
ChrisDunn1
Esri Contributor

Hi @apgis16 ,

What you're describing is achievable, but I think the best approach is going to depend on if you are creating new task features from scratch, or if you enabled tasks on an existing layer, and therefore already have lots of features that are now tasks-enabled.

If users will be creating new task features from scratch, I think the simplest approach will be to use the form. You can set the esritask_assignee field as required in the form, so it has to be filled in when a new task is created, and then set a calculated expression on the status field that sets the status to "Assigned" when the assignee field is not null. That should get the behavior you're looking for.

If you are using existing features and want to use the layout feature actions, then you can add an Edit Action to the layout and add a "manual and automatic update" to the edit action. The manual update should be the assignee field, and the automatic update should set the status field to assigned. So when someone uses that button to pick an assignee for the task, they can manually choose the assignee and the status will get updated automatically.

I hope that helps, I'm happy to provide more guidance if you're still stuck.

Chris

View solution in original post

2 Replies
ChrisDunn1
Esri Contributor

Hi @apgis16 ,

What you're describing is achievable, but I think the best approach is going to depend on if you are creating new task features from scratch, or if you enabled tasks on an existing layer, and therefore already have lots of features that are now tasks-enabled.

If users will be creating new task features from scratch, I think the simplest approach will be to use the form. You can set the esritask_assignee field as required in the form, so it has to be filled in when a new task is created, and then set a calculated expression on the status field that sets the status to "Assigned" when the assignee field is not null. That should get the behavior you're looking for.

If you are using existing features and want to use the layout feature actions, then you can add an Edit Action to the layout and add a "manual and automatic update" to the edit action. The manual update should be the assignee field, and the automatic update should set the status field to assigned. So when someone uses that button to pick an assignee for the task, they can manually choose the assignee and the status will get updated automatically.

I hope that helps, I'm happy to provide more guidance if you're still stuck.

Chris

apgis16
Frequent Contributor

This is what I ended up doing, as recommended by Esri:

When you use a calculated expression to automatically populate an attribute like Assignee, that expression will be the only way that attribute is calculated. So for instance, if I use an Arcade expression like this to change Status to Assigned when there the Assignee field has been populated:

IIf(!IsEmpty($feature.esritask_assignee), "Assigned", "Unassigned")

I will not be able to change the Status to "In Progress" from Field Maps when I pick up the job because I've set this expression to be the exclusive way that field is calculated.

The work around here is to have the Status set to "Assigned" as a default value when you create a new Task. You can do this under the Template tab in Field Maps Designer. That way you won't have any Tasks with Status = "Unassigned" and it can continued to be updated throughout the lifecycle of the Task.


I know it's not ideal, but right now I think that's the best option. Let me know if you have any other questions, and I'll be sure to pass this feedback to the Field Maps team.

0 Kudos