Content Links
- Name It
Along with attribute history, we have released action tracking! While action tracking will rely on your jobs' attribute history, it's a much more high-level, more easily digestible dataset for understanding who's responsible for which work was done in a job.
Think of Attribute History as a comprehensive audit for changes with attributes, whereas Action Tracking is a simplified perspective for who's responsible for the decision-making involved with different aspects of a job within the platform. This transparency is provided to increase trust within your team and to allow prompt feedback to continue to help build up your team and allow members to advance in their expertise.
Read more about the intention behind Action Tracking and how to use it for the health and betterment of your team with our Using Attribute History and Action Tracking To Level Up Your Team.
Where To Find It
Once you have your Action Tracking set up, you'll find Actions recorded on nodes and/or jobs, depending on how you set up your Actions.

If your Actions are set at the job level, you'll find them recorded in the Job Settings (which you can open from the gear icon on an opened job, circled in orange in the above screenshot). There will be an "ACTION TRACKING" section where you can find all Actions at the job level for that job.

When Actions are recorded at the node level, they can be found in the Node Info Panel, which appears when a node is selected. Again, they will be in the "ACTION TRACKING" section. These actions pertain to the specific node that they are found on, instead of to the job as a whole.
Where To Configure It

To define Actions that should be tracked in your jobs, you'll want to navigate to the Project Management page, which can be found in the App Tray (the nine-dot square menu to the top right of the toolbar).

Once you navigate to the Project Management page (as shown in the screenshot above), you'll want to choose the "Action Tracking" section. Any existing configurations will show up in a list in the center of the screen. To create a new configuration, click the blue "+" icon next to the search bar.
How To Configure It
Action Tracking is essentially built on Attribute History, and each Action is triggered by a change with attributes. Each Action Tracking configuration will pertain to specific job model(s), and then it can be filtered down further to specific jobs. Because of this specification of which job model(s) the Action Tracking configuration will be applied to, our team has often organized our configurations based on our market, workflow, or even combination of the two.
Name It

Upon creation, you will be prompted to name your Action Tracking.
Filter It

Next you will determine which job model(s) this Action Tracking will be applied to. You may select a single job model or multiple. Once you have selected your job model(s), you'll need to fill out the job filter using Custom Logic.

You can filter down further based on the job's metadata. Some basic examples would be filtering for whether a job has specific metadata, or if a specific piece of metadata has a certain value.
If you're filtering for jobs that have specific metadata, you'll use the "Exists" expression. Underneath that, you'll want to use the right data path. You could say that a job with any metadata will use this Action Tracking and simply enter 'metadata' in the data path, or you can use the debugger to determine specific pieces of metadata to check for. In the above example, one of the potential properties we could use is 'duplicated_job,' in which case the data path would be 'metadata.duplicated_job.'

If you want to filter for jobs that have a certain value for a specific piece of metadata, you'll want to use the "Equal" expression. You'll then want the correct data path, and then you'll also want a Literal block with the value you're checking for. For example, if we decided to run this Action Tracking on duplicated jobs, we could set the operator type to "Equal," set the data path to 'metadata.duplicated_job,' and then set the Literal block to be "Boolean" (because the Duplicated Job attribute is either "True" or "False"), and then set the Boolean value to "True." Our Custom Logic Editor Manual provides more detail for how to use the Logic Editor.
It's also possible to filter all the way down to a single job. In order to do that, you'll need the Job ID. To find the Job ID, you can open the job in Katapult Pro.

The Job ID will be the entire text after the hashtag seen above. In this case, the Job ID would be "-NgOnbjwYlpkhOqmdiem."

Then, using the Logic Editor, you'll want to select the "Equal" operator for the expression block, followed by a data block with the 'job_id' data path, and then a literal block that has a text type where you will enter that same Job ID.
Create Actions

Now we can get to the fun part. For the Actions you want to track, you'll name these in the input where the placeholder text says, "Action Name." Next to that is a downward carrot arrow; click on that to open the Action details.

In the Action details, you'll specify aspects of the trigger attribute, or the attribute that will be triggering the Action to be recorded. Choose whether this attribute is at the job or node level.
Once that is determined, you'll be given a dropdown of available attributes to use as a trigger in the "Attribute" input next to the "Attribute Type" you just filled out.
Continuing down the line of inputs, for "Trigger Type," you will have the options "Value" or "Any." Most likely you'll be using "Value," where you can specify for the Action to be recorded anytime the trigger attribute's value matches the value you specify. On the other hand, the "Any" option will record the Action whenever the user gives any value to the attribute.

For example, in this job model, we've created a "Pre-Design Done" attribute at the job level that is a checkbox. If we wanted to record a "Pre-Design Completed" Action that is recorded when the job has been pre-designed, we'd want this to be triggered when the user checks the "Pre-Design Done" attribute. Therefore, after selecting this "Pre-Design Done" attribute, we'll choose "Value" for the Trigger Type and make sure the "Value" is a checked checkbox.

For another example, let's say we want to record an "Extracted" Action every time someone is done extracting a pole. Since we check the "Done" attribute whenever we're done extracting a pole, we can use the "Done" attribute as the trigger attribute, meaning this would be at the "Node" level. Again, we want this Action to be recorded when "Done" is checked, so we'll make sure to choose "Value" for our Trigger Type and make sure the box under "Value" is checked.

You might have noticed the "Duplicate Actions" line underneath those Trigger Attribute options we just covered. The options next to "Duplicate Actions" are options for how to handle multiple triggers of the Action. "Overwrite Existing Action" will mean that only the most recently triggered Action will be kept on record. For the previous examples, "Pre-Design Complete" and "Extracted," we'll select this option because there's typically only one person expected to complete that Action. If someone else completes the Action, they most likely were making corrections to the pre-design or extraction and will be held responsible for any mistakes they may have missed.

"Prompt for Duplicate Actions," when selected, will provide a prompt if the Action was already initially triggered, asking the user if they want to "Replace" the initial Action or if they want to "Add Duplicate" to the Action Tracking log. (If the user selects "Cancel," the new value for the trigger attribute they entered will be saved, however, the Action for that new value will not be recorded. This is intentional functionality; our team has used this in instances where a user intends to temporarily change the value of the attribute and therefore keep the initial Action. For more audit-oriented purposes, Attribute History should be used.)
"Allow Duplicate Actions" will record the Action every time it is triggered.

Whenever this "Allow Duplicate Actions" option is chosen, an optional "Store Delta for Value" setting will appear. For numeric attributes, the value recorded will be the numeric difference between the previous value of the trigger attribute and newest value of the trigger attribute instead of the newest numeric value of the trigger attribute itself.
How To Backfill It

The beauty of using Attribute History as the basis for Action Tracking is that this allows you to Backfill Actions. If you want the Action you just configured to be recorded back before the moment you configured it, you can specify a timeframe for which this Action will be recorded (as long as Attribute History was enabled during that timeframe), and the software will check the Attribute History for when the Action would have been recorded. As seen in the above screenshot, click the three-dot menu next to the Action you want to backfill.

A window will open, and here you can specify the timeframe in which you want to have that Action recorded. Once you have the start time and end time you want, click "Search for Actions."

The software will search Attribute History for the trigger attribute that fulfills the criteria for triggering the Action you are backfilling.

It will then display any 'candidate' Actions. You'll see the avatar of the user responsible for the Action, the job in which it occurs, and the name of the Action and its corresponding trigger attribute's value. (The job name is also a hyperlink to allow easy navigation to the job in question in case you'd like to further inspect the job and its context.)
When you click "Insert Actions," all Actions listed that are checked will be recorded within their corresponding jobs. While backfilling Actions, if there are some that you want to exclude, you may uncheck the checkbox so that those Actions are not recorded.
How To Leave Feedback On It
Similar to leaving feedback on nodes or pieces of Attribute History, you may leave feedback on an Action.

You'll want to find the individual Action that you want to start a conversation about, click the three-dot menu next to it, and click "Show Conversation."
You can leave comments, open issues, and include other users (other than the user tied to the Action) by tagging them (to do so -- type "@" followed by the user's name; as you type, a list of users in your company matching what you type will display and you may choose one of them).
Read more about leveraging feedback in our Leveraging Feedback in Katapult Pro instructions.
How To Edit It
Sometimes technology works too well where it does exactly what you tell it to do but not what you mean for it to do. Maybe you didn't configure your Action to prompt the user to decide how to handle the duplicate Action when triggered, and it instead overwrote the initial Action - something you didn't want. Or they accidentally edited an attribute and changed it back to its original value, but the Action Tracking shows them responsible for the Action (and shows that it was performed more recently than when it was truly performed).

When editing Actions, you can use the full Attribute History for reference. (Clicking the clock icon will show the complete timeline for the Attribute History.) Click on the three-dot menu next to the Action you want to edit, click "Edit," and make the necessary changes. You can change the user linked to the Action as well as the date and time the Action took place. However, you cannot change the Action that took place itself or the value recorded.
How To Disable It
If you don't need to track specific Actions for a time, instead of deleting it, you may disable the Action. From the same three-dot menu where you found the "Backfill Actions" option, you will find the "Disable Action" option. This will disable the Action, preventing it from being tracked, and (visually) remove it from the list of Actions for that specific Action Tracking configuration.

If you want to see your disabled Action(s) in your list of Actions, click on the eye icon (circled in orange in the screenshot above) to toggle on or off the view that includes the disabled Actions.

Toggling on the view that includes disabled Actions will grant you the option to re-enable that Action, which can be found when you click on the three-dot menu for that disabled Action.
Deleting Action Tracking

To delete a single Action that is being tracked, there is a "Delete Action" option in the three-dot menu next to that Action. Be careful when deleting Actions - there is no prompt to confirm the deletion. It will be deleted as soon as you click "Delete Action" from the three-dot menu.

To delete your entire Action Tracking configuration, there is a red "Delete" button towards the top of the page when you have the configuration open. When it comes to deleting the entire configuration, you will be asked to confirm the deletion in a dialog window. The deletion will be finalized when you click the Delete button from this confirmation window. Had you accidentally clicked the "Delete" for the first time at the top of the page, you may click the "Cancel" to cancel the deletion.
Disabling an Action, deleting an action, and deleting an Action Tracking configuration will only prevent Actions from being recorded from that moment forward. Those Actions that were recorded previously will not be deleted.

If you want to delete tracked Actions, you will have to navigate to the node and/or job they were recorded on and delete them individually from there. Be careful when deleting Actions from the Action Tracking records - there is no prompt to confirm the deletion. It will be deleted as soon as you click "Delete Action" from the three-dot menu.
Thanks for reading! If you run into any issues or have any questions, contact us at support@katapultengineering.com. How can we improve our documentation? Let us know in the comments below!
Kommentare