Fact and Fact Item¶
This page provides detailed information about metadata related to the Fact and the Fact Item entities as well as about all related Fact entities.
Note: Technical entity names are used in the contents section.
XlrFact¶
This entity defines general fact information and supports the following attributes:
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact, information source. Recommended to prefix with FACT_ . Unique. |
Descripton | String | Description of the fact, what it represents, where data is fetched from etc. |
InstallationName | String | The Prog display name of the fact suggested during installation of fact meta data. This text will during translation handling be transferred to the translation framework. |
ViewHandlingType | Enumeration | Defines what type of view to be used when accessing this information source; the standard one, the optional one or the alternative one. For more information see information object XlrFactSource. The value can be one of:
|
WriteBackSupported | Boolean | Enabled if the Information Source supports write back. |
TreatNullAsZero | Boolean | Selected if NULL values of measure attributes in the fact should be treated as zero (0) when retrieving data. Note: Only affects the selection from the database |
SupportsUrlNavigation | Boolean | Selected if the fact supports URL navigation to IFS Cloud. |
DrillDownSource | String | Identity of a fact that is a child data source to the current fact. Note that a drill down data source represents detail information (transaction level) while the master (current fact) represents aggregated transaction information. |
LovDistinctSearch | Boolean | Selected if List of Values functionality should perform a distinct select of values. It is recommended to select the attribute for dimensions and leave it cleared for facts. |
LovMaxLimit | Integer | Max number of rows to be retrieved when collecting List of values. For facts this can be set to a rather small number, like e.g. 100. |
Module | String | Name of the module that owns the data source. |
EnabledSourceType | Enumeration | Defines the enabled/supported data access type(s). If not defined it will be set to a NotDefined type. The general idea is to always develop on line support for an Information Source and then the Online type should be used. If Data Mart support is also developed and available then the Data Mart type can be used. It is also possible to use an All type that defines that both Online and Data Mart is supported. After an upgrade from a previous version the NotDefined type will be set. The value can be one of:
|
In the Meta Data file this entity is represented by the following section:
XlrFactWriteBackInfo¶
This entity defines Write Back related attributes for a Fact but should only be specified if the Fact (Information Source) supports write back. Else nothing has to be defined or use the default settings according to the template.
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact (data source). Parent key. |
WriteBackCategory | Enumeration | Defines the write back category category as either general or advanced:
|
WriteBackSupportStoreFile | Boolean | Selected if the module specific write back functionality for this fact takes care of the Excel book/file. If so the complete work book (or file) will during write back be saved in the database to enable module specific handling of it. Default value is selected. |
WriteBackInterface | String | Name of the PL/SQL API to be called after having posted all write back information. The API is specified according to <PackageName>.<ProcedureName> API details per category:
|
StopWbProcessingOnError | Boolean | The attribute is only applicable for write back category Xlr_Meta_Util_API.WB_GENERAL_TYPE _ , i.e. general write back.If selected it means that the write back processing will be stopped/aborted as soon as an error occurs in the write back API. The complete write back will be rolled back. If not selected it means that all transactions/records will be processed. An error reported by the write back API will lead to a write back row error and all database operations handled for the current transaction/record will be rolled back. |
WriteBackFeatureUrl | String | URL string enabling the possibility to navigate to IFS Cloud client after having processed the write back. Currently NOT Supported. |
WriteBackFeatureUrlText | String | Name of the write back URL to be visible to the end user after write back processing is ready. Currently NOT Supported. |
SupportModifiedWriteback | Boolean | Selected if modified write back is supported. This option only applies to advanced write back. It will allow write back of only modified values instead of doing a complete write back, which is the default behavior. |
In the Metadata file this entity is represented by the following section:
XlrFactSource¶
This entity defines information about available source views for each supported data access type and supports the following attributes:
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact (data source). Parent key. |
SourceType | Enumeration | Data access type, i.e. On Line or Data Mart. The value can be one of:
|
DefaultSourceType | Boolean | Selected for the data access type that is considered to be the default one if the framework doesn't get any information about data access type to use for the current fact/information source. |
ViewName | String | Standard view name for the fact for current data access type. It is used if the ViewHandlingType attribute in the XlrFact is defind to Xlr_Meta_Util_API.VIEW_HANDLING_STD_TYPE_ . |
OptionalViewName | String | Defines the name of an optional view for the fact that is used if the ViewHandlingType attribute in the XlrFact is defined to Xlr_Meta_Util_API.VIEW_HANDLING_OPT_TYPE_ .It is important that the optional view supports the same columns as the standard view. A typical usage is a fact view without row level security. Row level security implementation can cause performance problems and if the customer accepts usage of a fact without this security then a switch can be made to the optional view. |
HintDefinition | String | An optimizer hint definition to be added to the SELECT statement when retrieving Information Source information. Opens up the possibility to performance trim/enhance executions for this data access type.Examples: /*+ STAR_TRANSFORMATION */ /*+ dynamic_sampling(4) */ |
In the Meta Data file this entity is represented by the following section, with one sub section per data access type:
XlrFactParent¶
This entity defines information about parent dimension items associated with the fact and it is used by the List of values functionality. Parent information for facts always means specifying one or more visible/available dimension items that have to be defined in the client to be able to supply accurate List of values for fact items.
Looking at an example. The data source FACT_GL_BALANCE contains accounting balances for financial companies. If we want to show List of values for an item in this data source, the company identity must be known to make the data meaningful. In the fact itself only the unique Company identity is available but not visible and to be able to refer to this identity we have to make use of the the dimension DIM_COMPANY to indirectly gets the identity of the company. A natural choice in this case is the dimension item corresponding to the company code. The only dimension that should have a visible company code attribute is the dimension DIM_COMPANY so for that reason we define the dimension item DIM_COMPANY.CODE. After having supplied this information in the Meta Data, the client will always try to make sure that the company code has been specified before creating the List of values.
The following attributes are supported:
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact (data source). Parent key. |
ItemNo | Integer | Parent item number (row number). Key |
ParentDimensionItemId | String | The identity of a dimension item that must be available in the client to enable parent identification of a fact. |
HierarchicalOrder | Integer | Hierarchical order of the defined fact parent keys. Lowest number has the highest rank. |
In the Meta Data file this entity is represented by the following section:
XlrFactItem¶
This entity defines information for fact items and it supports the following attributes:
Attribute | Data Type | Description |
---|---|---|
FactItemId | String | Identity of the fact item. Unique. Normally defined as <FactId>.<ViewColumnName> e.g. FACT_GL_BALANCE.BALANCE |
FactId | String | Identity of the fact that owns the item. |
Description | String | Description of the fact item, what it represents etc |
InstallationName | String | The Prog name of the fact item suggested during installation of fact item meta data. This text will during translation handling be transferred to the translation framework. |
ColumnName | String | Column name in the fact view(s) that represents the fact item. |
DataType | String | Data type for the item. Can be one of the following values:
|
Nullable | Boolean | Selected if the item can be null in the data source |
IsFact | Boolean | Selected if this is a fact item, i.e. a measurable item. Cleared if it is a light item, i.e. a non-measurable item |
DisplayInClient | Boolean | Selected if the item should be visible to the end user in the client. All dimension references should have the this attribute cleared. |
WriteBackType | Enumeration | The enumeration specifies the requirements that the write back interface has on each item. The following values are supported:
|
WriteBackIdentity | String | Identity of the fact item id that can be interpreted by the API that has the responsibility to process the write back data, e.g. an attribute name in a LU specific attribute string. |
ZoomInDisplayItem | Boolean | Selected if the fact item should be displayed when generating Zoom In details. By default a fact supports Zoom In to itself. |
DrillDownDisplayItem | Boolean | Selected if the fact item should be displayed when generating Drill Down details. Note: If the current fact (data source) can act as a Drill Down data source then fact items should most likely be displayed, else the attribute DrillDownDisplayItem is always cleared |
SupportsZoomIn | Boolean | Selected if the fact item supports Zoom In, i.e. if the client should enable Zoom In design controls for this item. Should always be cleared if the item is a non-measurable item ( IsFac t attribute cleared) |
SupportsDrillDown | Boolean | Selected if the fact item supports Drill Down, i.e. if the client should enable Drill Down design controls for this item. Note: This item can be selected only if there is a natural drill down source available for the current fact. Should always be cleared if the item is a non-measurable item ( IsFact attribute cleared) |
DrillDownKey | Boolean | Selected if this item represents a key column in the original data source behind the fact view (and MV) that must be known to be able to handle some special cases when it comes to Drill Down functionality. This key column in the master fact source must also be available as a column in the drill down data source. |
DrillDownSourceItemId | String | Fact item identity of a column in the drill down data source that corresponds to the fact item in the current data source. There are two usages for this item:
|
DisplayOrder | Integer | The order that the item will appear in the source navigator among fact items for the fact. Normally the pure fact items are placed first, starting with 1 and the light items are placed last and given a higher start order number starting with e.g. 101 |
WbDisplayOrder | Integer | The display order for this item in Write Back controls. Note: This attribute should be synchronized with WbDisplayOrder available for write back dimension items associated with the current fact. |
DrillDownDisplayOrder | Integer | Display order of Drill Down items in design controls and when presenting Drill Down result in new work sheet. Should be synchronized with DrillDownDisplayOrder available for dimension item detail handling associated with a fact. Suggested:
|
ZoomInDisplayOrder | Integer | Display order of Zoom In items in design controls and when presenting the Zoom In result in new work sheet. Should be synchronized with ZoomInDisplayOrder available for dimension item detail handling associated with a fact. Suggested:
|
DisplayFolder | String | Defines a sub folder in the source navigator where the fact item will appear. Specified as e.g.\Budget Items The character \ is used to define a sub folder. But it only one sub folder level is defined for the item the back slash \ is not necessary. Default value for DisplayFolde r is NULL . |
In the Meta Data file this entity is represented by the following section:
More information about fact items is found in General Development Concepts.
XlrFactDimension¶
This entity defines information about dimensions that the fact (IS) supports, i.e. connected dimensions.
The following attributes are supported:
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact (data source). Parent key. |
DimensionId | String | Dimension identity. Key |
AssociatedFactItemId | String | Fact item identity that defines the column in the fact table that contains the unique identifier of an instance of an associated dimension. This item is used for standard join between a fact and a dimension. It is joined with the Key Column of the connected dimension |
HasZoomInDetails | Boolean | Selected if zoom in details are specified in XlrFactDetailDimItem .Note: By default the current fact always supports Zoom In to itself. Dimension details does not have to be defined but normally are |
HasDrillDownDetails | Boolean | Selected if drill down in details are specified in XlrFactDetailDimItem .Note: If the current fact can act as a drill down data source then the attribute can be selected. Else the attribute is always cleared |
DisplayOrder | Integer | Display order of the dimension in the Source Navigator in the client. |
DimensionAlias | String | This value is used as the Alias of the Dimension view when the join between Information Source view and Dimension view is built. Cannot be null when dimensions of type Xlr_Meta_Util_API.DIM_INHERITED_TYPE_ are connected. |
In the Meta Data file this entity is represented by the following section:
XlrFactDimIdDef¶
This entity keeps information about fact item identities that indirectly defines the dimension identity definition.
A dimension identity is normally defined according to <column1>^<column2>...<columnN>, which means that the columns that builds the identity has to be defined.
If e.g. a fact has a dimension identity item that is named dim_account_id we should specify the fact items that indirectly represent the key values of the dimension identity. Now assume that in the fact view the dim_account_id is defined as <company>^<account>, and then <company> is represented by the column COMPANY_KEY that has the item identity FACT_XYZ.COMPANY_KEY and <account> is represented by column ACCOUNT that has the item identity FACT_XYZ.ACCOUNT. So we have to specify these two fact items as the ones being represented in the dimension identity column for DIM_ACCOUNT.
Note: It might be the case that the dimension identity is not built according to
<column1>^<column2>...<columnN>
but it should be made sure that is is still possible to specify the columns that then indirectly defines the dimension identity.
The information is important when it comes to supporting automatic access view creation, views that are used as read source for Analysis Model related Tabular Models.
The following attributes are supported:
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact (data source). Parent key. |
DimensionId | String | Dimension identity. Key |
DimIdColumnItemId | String | Fact item identity that defines a column in the fact views that represents a part of the dimension identity. |
IdItemSeqNo | Number | The sequence number of the fact item column in the dimension identity. |
IdItemExpression | String | Can be used to specify how the definition of the column is really expressed, i.e. including functions used. Examples: TO_CHAR(<column_id>, '999.99') TO_DATE( <column_id>, 'YYYY-MM-DD', 'NLS_CALENDAR=Gregorian') Note: If this attribute is used, it must contain a reference to the attribute itself and this can be done in one of the following ways: " <true_column_name> ", "<item_column> ", "<ITEM_COLUMN> "The string "<COLUMN_NAME>" means the true column name, e.g. "<CONTRACT> " or "<CUSTOMER_ID> " |
In the Meta Data file this entity is represented by the following section:
XlrFactDimJoin and XlrFactDimJoinItem¶
The entity XlrFactDimJoin defines special join information that is normally only necessary for the Online data access type. Generally a join between a dimension and a fact is performed by use of the following columns:
- The ID column in the entity XlrDimension
- The column corresponding to AssociatedFactItemId in entity XlrFactDimension
To get good performance in an Online scenario its normally necessary to specify special join information. The join information is in this case based on the key columns in the mains source table of the dimension. Corresponding columns must exists in the fact to be able to define the join.
The entity XlrFactDimJoinItem keeps the join detail information, i.e. it defines one or more connections between a dimension item and a fact item.
The following attributes are supported:
XlrFactDimJoin
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact the join info applies to |
DimensionId | String | Identity of the connected dimension the join info applies to |
SourceType | Enumeration | Data access type i.e. on line or data mart. The value can be one of:
|
ExactJoin | Boolean | Selected if there is always an exact match between a dimension row identity and a transaction row, else define it cleared. |
XlrFactDimJoinItem
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact the join info applies to |
DimensionId | String | Identity of the connected dimension the join info applies to |
SourceType | Enumeration | Data access type, i.e. on line or data mart. The value can be one of:
|
JoinNo | Number | Join counter |
DimensionItemId | String | Identity of the dimension item that should be joined |
FactItemId | String | Identity of the fact item that should be joined with the dimension item |
In the Meta Data file this entity is represented by the following section:
XlrFactDetailDimItem¶
This entity defines information about dimension items to be displayed when performing Zoom In and Drill Down. When Zoom In or Drill Down is performed then the items to be displayed are either fact items or dimension items. Any dimension item associated with dimensions connected to the fact can be selected as display items.
Note: If the current fact (data source) can act as a drill down data source then dimension items should most likely be displayed, else the attribute DrillDownDisplayItem is always selected.
- Zoom In With Zoom In we mean displaying the transactions in the actual data/information source that are associated with one source value, e.g. a cell in IFS Business Reporter. If a IFS Business Reporter cell displays the sum of values from e.g. GL Balances, then Zoom In will show the transactions in GL Balance that are associated with this specific cell value.
- Drill Down With Drill Down we mean displaying the detail transactions in the drill down data source that are associated with a source value, e.g. a cell in IFS Business Reporter. If a IFS Business Reporter cell displays the sum of values from e.g. GL Balances, then Drill Down will show the transactions in the source GL Transactions that are associated with the specific cell value.
The entity supports the following attributes:
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact (data source). Parent key. |
DimensionId | String | Dimension identity. Parent key |
DimensionItemId | String | Dimension item identity. Key |
ZoomInDisplayItem | Boolean | Selected if the dimension item should be displayed when generating Zoom In details |
DrillDownDisplayItem | Boolean | Selected if the dimension item should be displayed when generating Drill Down details |
ZoomInDisplayOrder | Integer | Display order of Zoom In items in design controls and when presenting the Zoom In result in a new work sheet in IFS BR. Should be synchronized with ZoomInDisplayOrder defined for fact items. Suggestion:
|
DrillDownDisplayOrder | Integer | Display order of Drill Down in design controls and when presenting Drill Down result in new work sheet in IFS BR. Should be synchronized with DrillDownDisplayOrder defined for fact items. Suggestion:
|
In the Meta Data file this entity is represented by the following section,
XlrFactWbDimItem¶
The entity keeps information about dimensions items associated with Write Back functionality. Each receiving write back interface can handle a given number of items, fact items or dimension items. This section specifies the dimension items.
The following attributes are supported:
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact (data source). Parent key. |
DimensionId | String | Dimension identity. Parent key |
DimensionItemId | String | Dimension item identity. Key |
WriteBackType | Enumeration | The enumeration specifies the requirements that the write back interface has on each item. The following values can be supplied:
|
WriteBackIdentity | String | Identity of the dimension item id that can be interpreted by the API that has the responsibility to process the write back data, e.g. an attribute name in a LU specific attribute string. |
WbDisplayOrder | Integer | The display order of the item in Write Back client controls. Note: This attribute should be synchronized with WbDisplayOrder availabnle for fact items. |
WriteBackSelectable | Boolean | Selected if the dimension item can be selected as a write back item, i.e. an item that is possible to input from the client. Normally the dimension items for write back are read-only. NOT YET SUPPORTED. |
In the Meta Data file this entity is represented by the following section:
XlrFactUrl¶
The enity keeps information about URLs that the fact supports. The URLs are used when navigating from Zoom In or Drill Down level to the IFS Cloud client.
The following attributes are supported:
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact (data source). Parent key. |
UrlNo | Integer | URL number ( row number). Key |
UrlLink | String | URL string to be executed when navigating to IFS Cloud clients. An URL string is defined in the following: > E.g.: page/GLVoucherRowsAnalysis/List |
UrlText | String | This is the Prog text to be displayed as RMB option in Zoom In or Drill Down details, enabling the URL navigation. The text is transferred to the translation framework. |
Note | String | A note about the purpose of this URL |
TranslationKey | String | A string that is used as identification in the translation framework, e.g. a translation key. If several data sources have the same URL then the translation key should be the same. |
In the Meta Data file this entity is represented by the following section:
XlrFactUrlItem¶
This entity keeps information about URL details for each supported URL. The details specifies items, fact or dimension items, that must be available after having performed Zoom In or Drill Down to enable the URL navigation. The values of this items will also be used as query parameters in the URL string.
The the following attributes are supported,
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact (data source). Parent key. |
UrlNo | Integer | URL number (row number). Parent key |
ItemNo | Integer | Item number. Key |
FactItemId | String | Fact item identity if the current item is represented by a fact item, else NULL. Make sure that this item is visible to the end user in the client. |
DimensionItemId | String | Dimension item identity if the current item is represented by a dimension item, else NULL. Make sure that this item is visible to the end user in the client. |
QueryName | String | This is the name of the field in the aurena client that the URL refers to, used as query condition in the complete URL. |
Assume that the UrlString is &AURENA_URL/page/GLVoucherRowsAnalysis/List
&AURENA_URL refers to the system parameter URL for IFS Aurena Client
Also assume that the URL requires the following items:
- Dimension item
DIM_COMPANY.CODE
with Query Name=Company
- Dimension item
FACT_GL_TRANSACTION.YEAR
with Query Name=AccountingYear
- Dimension item
VOUCHER_TYPE.CODE
with Query Name=VoucherType
If these three items are available in the e.g. the Zoom In detail sheet, then the URL will be enabled in Business Reporter as an RMB option that will execute the following URL string:
&AURENA_URL/page/GLVoucherRowsAnalysis/List$filter=Company eq 'value' and AccountingYear eq value and VoucherType eq 'value'
where <value> is the value for each item found on the current detail transaction row.
In the Meta Data file this entity is represented by the following section:
XlrFactSourceHintItem¶
This entity defines performance related information about fact items per data access type and the following attributes are supported:
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact that owns the item. |
SourceType | Enumeration | Data access type, i.e. on line or data mart. The value can be one of:
|
FactItemId | String | Identity of the fact item that the information applies to. |
HintType | Enumeration | Type of hint; either a derived item (defined via e.g. a sub select or a function call) or an indexed item. The value can be one of:
|
In the Meta Data file this entity is represented by the following section, with one sub section per data access type:
XlrFactSourceIx¶
This entity defines information about fact source indexes per data access type, and the following attributes are supported:
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact that owns the item. |
SourceType | Enumeration | Data access type, i.e. on line or data mart. The value can be one of:
|
IndexName | String | Name of a source table index. All indexes in all tables that defines the fact, with index columns represented as fact items should preferably by defined. |
In the Meta Data file this entity is represented by the following section, with one sub section per data access type:
XlrFactSourceIxItem¶
This entity defines the source index details, i.e. the fact items that are indexed. The following attributes are supported:
Attribute | Data Type | Description |
---|---|---|
FactId | String | Identity of the fact that owns the item. |
SourceType | Enumeration | Data access type, i.e. on line or data mart. The value can be one of:
|
IndexName | String | Name of a source table index. |
FactItemId | String | Identity of the indexed fact item. |
ColumnPosition | Number | Column position in the index according to Oracle. |
In the Meta Data file this entity is represented by the following section, with one sub section per data access type:
XlrFactItemFunctions¶
This entity defines references from a fact item to BR Parameter Functions. One fact item may reference many BR Parameter Functions. The functions are used in IFS Business Reporter when for a given item an associated function based parameter is created.
The following attributes are supported:
Attribute | Data Type | Description |
---|---|---|
FactItemId | String | Identity of the fact item |
FunctionId | String | Identity of a BR Parameter Function that associated with the fact item |
In the metadata file this entity is represented by the following section, with one sub section per BR Parameter Function: