Understand the Entity Build Process

This section describes at a high level how the Entity Build process generates data for derived entities. 

About Entity Build Fields

The entity build process involves defining Entity Build fields. Entity Build fields must be built for each field that may be included in a report.

For example, a Quantity field is used in reports. How is this field calculated for a composite?

You would create an Entity Build field called Quantity and define it as a Sum. When the Entity Build process is run, all of the Entity Build fields are calculated. The Quantity Entity Build field would sum the quantity fields from each of the portfolios within the entity to create a new number. When the Quantity field is added to the report, and a Composite entity is included in the report, it retrieves the information based on the value in that Quantity Entity Build field.

In addition to Sum, Entity Build fields may also be calculated using an aggregation of Average or Weighted Average. The Sum aggregation is commonly used on fields such as Market Value, Quantity, Par Value, and Accrued Interest. The Weighted Average aggregation is commonly used on fields such as Unit Cost Value, Rate, and Yield. The Average aggregation is also available, although it is not widely used.

Review the following important guidelines so that the Entity Build Process is done correctly:

  • You must have Entity Build Field Attributes (EBFAs) to build an Entity. At least one EBFA must exist to begin the build process.

  • Normally, you build records in the POSITION_DETAIL table, but you may use other tables. For Sub-Portfolios that you configure to additionally build cash activity, the process builds records to the CASH_ACTIVITY table. 

  • Only build EBFAs that are numerical; the result is an Average, Weighted Average, or Sum.

  • Do not build off of fields like indexing records, such as POSITION_DETAIL_ID or CASH INT (if the build is for Sub-Portfolios that include cash).

In summary, the Uploader loads the data into the Position, Position Detail, CASH_ACTIVITY tables for the portfolios. Then the entity build process creates the Position and Position Detail records for the Composites, Aggregates, and Sub-portfolios. It can also generate cash activity records for the sub-portfolios. These numbers are pre-calculated and ready to use in reports. Thus the Entity Build fields should be built based on the reporting needs, although this is, of course, based on what is available from the fields that are populated by the Uploader.

About Entity Build Engine Optimizations

The system optimizes the Entity Build engine processing time in two ways:

  • Reduces the number of connections used by the engine. This reduces any extra connections used by the engine when querying for information relevant to the build processes such as entity build attribute details, entity and entity detail information, and holdings data. Connection reduction allows for additional Data Management processing to use available connections across the system.

  • Generate a single query for the retrieval of position detail data for all underlying constituent entities of a given entity being built. This ensures that only one query is used to select holdings data across all three entities.