Skip to main content

User task deadlines

User tasks

Many user tasks in EVA make use of deadlines. These can be either indicative (expected) deadlines or hard deadlines. While the former only informs you of the desired time to either start or complete it, the latter are enforced. When enforced, it means that you will be unable to close your store's day.

The two indicative deadlines are called 'ExpectedStartTime' and 'ExpectedCompletionTime'. Whether or not these two are displayed in your User tasks depends on the setting UseExpectedCompletionTimeOnReceiveShipmentTask. By setting it to true, they will be displayed.

There are two more relevant properties you can set for each task. By going to Management User Tasks in Admin 1.0, you can specify these:

  • Required: if the task type is set to required, it means that it will block the day's closing if not completed
  • Ignore for period closing: tasks with deadlines will not block the closing of the day if this option is set for it

If you do not enable the indicative deadlines, the task's own Deadline property will be used. These deadlines can also block you from closing the day, unless you set Ignore for period closing.

The times for the specific deadlines cannot be manually set currently. These are set automatically based on the creation of the task. In the case of Receive shipment for example, the deadlines will be automatically created based on the shipment's date/time (the expected delivery date).

Existing tasks

Take note that enabling this will only work for new tasks of that type.

User task expiration

The setting StockReplenishmentTasks:ExpirationTimeInHours adds an expiration to these tasks and defaults to 524 hours. Whenever a task is created, an ExpireDate is calculated and added to the Data* object of the user task. If for some reason you’d like to see or show this, it will be returned from your normal ListAvailableUserTasks service.

An automatic, un-alterable system task will be scheduled that runs 7 minutes past every whole hour to check this ExpireDate and deactivate those that are expired. There’s no similar backup check when starting such task - we considered this as fail-safe.

note

The expiration date is not modified when an existing task is modified (e.g. quantity increment upon sale). User Tasks that have been started or assigned, will not be cleaned up after expiring.

User task grouping

The setting StockReplenishmentTasks:GroupProductProperty will define a single product property which will be exposed in the GetApplicationConfiguration as UserTasks:StockReplenishmentTasks:GroupProductProperty.

info

For all intents and purposes, the StockReplenishmentTasks:GroupProductProperty setting will be treated as though part of the plural StockReplenishmentTasks:ProductProperties setting.

Below is a Grouping example response of ListAvailableUserTasks. Notice how this response tells you through the Aggregations that there are 3 possible values for the product_group, with their respective values and number of items with this value.

{
"AvailableTasks": [
{
"ID": 576731,
"TypeID": 11,
...
"Data": {
"Quantity": 1,
"Type": 0,
"Zone": null,
"Product": {
"product_id": 42059,
"display_value": "...",
"custom_id": "...",
"backend_id": "AB1305976",
"product_group": "Shoes", <----------------------------------
"primary_image": {
"blob": "d38dccc9-7b8c-4897-9928-3e178f304efg",
"name": "...",
"type": "image/png"
}
}
}
},
...
],
"Aggregations": {
"StockReplenishment": {
"product_group": [
{
"Name": "product_group",
"Value": "Shoes",
"Count": 2
},
{
"Name": "product_group",
"Value": "Shirts",
"Count": 3
},
{
"Name": "product_group",
"Value": "Stroopwafels",
"Count": 1
}
]
}
}
}