Determines concept state after a transactional workflow is completed (meaning that the activity
has started). Also determines how the system reacts during any user interactions for the given activity
. For more information, see Transactional Workflows.
You must define this key and its child keys in an *.activity.bxb
file. This file should be located in the appropriate locale-specific resources
folder.
activity-support {
match {
Receipt (this)
}
time (statusRefreshTime)
states {
if (orderState == 'Ordered') {
state (Scheduled) {
expires(statusRefreshTime)
summary-view {
message {
template ("#{value(orderState)} #{value(order)}")
}
title {
template ("#{value(order)}")
}
details {
template ("#{value(orderState)}")
}
}
detail-view {
render {
layout-match (this) {
mode (Details)
}
}
}
}
} else-if (orderState == 'Shipped') {
state (Relevant) {
expires(statusRefreshTime)
summary-view {
message {
template ("#{value(orderState)} #{value(order)}")
}
title {
template ("#{value(order)}")
}
details {
template ("#{value(orderState)}")
}
}
detail-view {
render {
layout-match (this) {
mode (Details)
}
}
}
}
} else { //orderState == 'Delivered' || orderState == 'Cancelled'
state (Recent) {
summary-view {
message {
template ("#{value(orderState)} #{value(order)}")
}
title {
template ("#{value(order)}")
}
details {
template ("#{value(orderState)}")
}
}
detail-view {
render {
layout-match (this) {
mode (Details)
}
}
}
}
}
}
}
states required | Declares conditional mappings for various states of a transaction, which executes the first state that it finds |
time required | A required field that represents the point in time where you want to "anchor" the activity |
match optional | Use match patterns to dynamically lookup an appropriate root type for the current context |