Any Adobe Workfront Workflow package and any Adobe Workfront Automation and Integration package
Workfront Ultimate
Workfront Prime and Select packages, with an additional purchase of Workfront Fusion.
Adobe Workfront licenses
Standard
Work or higher
Product
If your organization has a Select or Prime Workfront package that does not include Workfront Automation and Integration, your organization must purchase Adobe Workfront Fusion.
When an Aggregator module executes, it does the following:
Accumulates all the bundles from a single source module’s operation.
Outputs a single bundle with an array containing one item per accumulated bundle. The content of the array’s items depends on the particular Aggregator module and its setup.
The following image shows a typical setup of the Aggregator module :
The module where the bundle aggregation starts. The source module is usually an iterator or a search module that outputs a series of bundles.
When you setup the aggregator's source module (and close the aggregator's setup), the route between the source module and the aggregator module are wrapped in a grey area, so that you can see clearly the start and the end of the aggregation.
For more information on search modules see Search modules in Module overview.
Target structure type
(Applicable only for the Array aggregator module.)
The target structure where the data is aggregated. The default option, Custom, enables you to choose items that should be aggregated into the Array aggregator's output bundle's Array item:
After you connect more modules after the Array aggregator module, and return to the aggregator module's setup, the Target structure type drop-down menu contains all following modules and their fields that are `Array of Collections` type.
In this example, the Attachments field of the Slack >Create a Message module appears in the Array aggregator > Target structure type field.
Aggregated fields
The fields that you want to include in the aggregator module output.
Group by
Using the Group by field, you can define an expression containing one or more mapped items. The aggregated data will be then separated into Groups by the value of the expression. Each Group outputs as a separate bundle, containing a Key and an array of data. By grouping results, you can use the Key as a filter in subsequent modules.
Each bundle contains two items:
Key: The value that you are grouping by.
Array: The aggregated data from the bundles for which the formula evaluated to the Key value.
Stop processing after an empty aggregation
By default, the Aggregator module outputs the result of the aggregation even when no bundles reached the Aggregator module (for example, because they have been all filtered out of the path that includes the aggregator). If the option Stop processing after an empty aggregation is enabled, the Aggregator module does not produce any output bundle when there are no input bundles. Instead, the flow stops.
note note
NOTE
Bundles generated by modules between the source module and the Aggregator module are not output by the Aggregator module. These bundles are not accessible by the modules in the flow after the Aggregator. If you need any data from a bundle outputted by a module between the source module and the Aggregator module, make sure to include the given item in the Aggregator module’s setup (such as in the Aggregated fields field in the setup of the Array aggregator module).
Example scenario of how aggregators work
This example scenario shows how to zip all email attachments and uploading the ZIP to Dropbox.
The scenario below shows how to:
The first module watches a mailbox for incoming emails. The Email >Watch emails trigger outputs a bundle with item Attachments[], which is an array containing all the email’s attachments.
The second model iterates the email’s attachments: Email >Iterate attachments iterator takes the items from the Attachments[] array one by one and sends them further as separate bundles.
The third module is the aggregator. It aggregates the bundles outputted by the Email >Iterate attachments module. Archive >Create an archive aggregator accumulates all the bundles it receives and outputs a single bundle containing the ZIP file.
The last module uploads the resulting ZIP file to Dropbox. Dropbox > Upload a file obtains the ZIP file from the Archive > Create an archive module and uploads it to Dropbox.
Below is a sample setup of the Archive > Create an archive aggregator: