SUMMARY
This document outlines a scenario where a cross join is done in the VI when using Data Import dataset attributes which have a M-M data relationship. This behavior is as per the current working design in Strategy Analytics Enterprise 9.4.1 and has been explained in the document below.
SYMPTOM
In Strategy Analytics Enterprise 9.4.1, when creating a visual insight dashboard with two datasets, a cross join is done in the VI even when the grid attributes have a M:M relationship.
STEPS TO REPRODUCE
- Consider dataset1 which is a regular ROLAP report with attribute A1 and metric M.
- The second dataset is an Intelligent Cube created by importing an Excel file. The Excel file contains two attributes: A1 and A2.
- The attributes A1 and A2 have a M:M relationship in the project's schema.
- In the VI, drag attribute A2 and metric M to the grid, and notice that a cross join is done. This can be seen through the MCE trace as shown below.
select Sum()
from Report1
to Ex0_tempcube0
[MCE][Trace]
select
from Report1
[MCE][Trace]
select Attribute2
from Document
to Ex0_tempcube1
[MCE][Trace] CSIs for Empty Grid End
[MCE][Trace]
select *
from Cross Join(
Ex0_tempcube0,
Ex0_tempcube1
)
to Ex0_tempcube2
CAUSEThere is no product issue here and is working as designed. When importing data from an Excel file through Data Import, a relationship between attributes A1 and A2 is NOT automatically built. Even though the data points have a M:M relationship in the Excel file, they’ are considered unrelated.
Only 1:M relationship in the data is detected during the Data Import process. 1:1 or M:M relationships cannot be recognized and are treated as unrelated.
ACTIONIf the related attributes exist in the project's relational schema, a regular report can be built instead of using a data import cube. It is also possible for users to map the data import attributes to regular project attributes. Refer to
KB000039514 for further information regarding this.