Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

In many situations, end users are interested in statistics about aggregates.
For instance, regarding all person-aggregates, how many men and how many women are currently present?

To make this possible, the container AQ_Statistic_Aggregate is available. This The AQ_Statistic_Aggregate container will provide statistics about aggregates and always result in an a positive integer (zero or more0, 1 ,2 etc).
Multiple containers of this type can then be , that can be used together with in the container Container type: AQ_StatisticsStatistic_Visualization [9.6]

Finding an aggregate means that the Id is not known at the moment, retrieving it means that the Id is known and the aggregate can be read from the aggregate database directly.
However, when an end user enters an application (or logs in), the application may not know which aggregates belong to or are applicable for this end user.

Therefore, the AQ_Aggregate_Search service is available, that finds aggregate Ids, given one or more parameters.

Screen

Image Removed


Configuration screenshot

Image Added


Parameters

Parameter
Direction
Value
Description
Required
Aggregate typeInputModule element AggregateSelect the aggregate type to
searchTrueTarget entityOutputNon-singleton entitySelect an entity for which you want to create an instance for each found aggregateTrueTarget attribute for aggregate IdOutputAttribute of aforementioned entitySelect an attribute of the aforementioned entity on which attribute you want to store the found aggregate IdTrueTarget attribute for version IdOutputAttribute of aforementioned entitySelect an attribute of the aforementioned entity on which attribute you want to store the found version Id

False

Only search for latest versionsInputCheckbock, checked by defaultCheck when only latest versions of versioned aggregates are searchedFalseMaximum resultsInputIntegerThe maximum number of results, the system will stop after reaching this numberFalseSearch criteriaInputStandard and custom metadata fieldsSpecify the search criteria, based on standard and custom metadata fields
create a statistic for.Yes
Search criterium lineInputLineCreate lines for each condition.Yes

SearchCriteriaInputStandard metadata or Custom metadataChoose between the two types of metadata fields.Yes

MetadataInputStandard or Custom metadata fieldThe field that is part of the search criterium.Yes

OperatorInputSee table belowThe operator that connects the field and the value.Yes

ValueInputExpressionThe expression used in the search criterium.Yes
True


Search criteria

The search criteria are all triples that adhere to the pattern <metadata><operator><value><MetadataField><Operator><Value>. The value can be single or multi, depending on the operator. See the list below.

Operator
Used with metadata of type
Value can be
EqualsAll single-valued datatypesSingle value
Not equalsAll single-valued datatypesSingle value
Less thanAll single-valued datatypesSingle value
Less than or equalsAll single-valued datatypesSingle value
Greater thanAll single-valued datatypesSingle value
Greater than or equalsAll single-valued datatypesSingle value
LikeStringSingle value
Not likeStringSingle value
InAll multivalued datatypesMultivalued
Not inAll multivalued datatypesMultivalued

Events

This service uses two events for a commit and one for an exception:

  • FoundNoAggregates: typically this node will go to a page with a not-found-message and is of type Rollback.
  • FoundOneAggregate: typically this note will continue in flow with the found aggregate and is of type CommitSkipSkipValidate (default exit).
  • FoundMultipleAggregates: typically this node will result in an aggregate list containing all found aggregates and is of type CommitSkipValidate.

Tracing

...


When these containers are placed within Container type: AQ_Statistic_Visualization, the result in runtime looks like this in the Runtime:

Image Added