Cognos Analytics

Cognos Analytics

Connect, learn, and share with thousands of IBM Cognos Analytics users! 


#Product
#Analytics
#CognosAnalytics
#Analyticstools
#TechXchange Partner
#TechXchange Session
#TechXchange Presenter
#AI
 View Only
  • 1.  Error Message Question

    Posted 01/13/20 02:43 PM
    ​Hello,

    I have not found a good way to search this group so I apologize if this was already asked.

    Does anyone have an "English" explanation of the following error code?

    Cross joins (between query subjects: [Report Tables].[Dim_Rpt_Minutia], [Report Entry Tables].[Dim_Rpt_Entry_Custom_Lang], [Report Entry Tables].[EXPENSE_Dim_Expense_Type_Lang], [Report Entry Tables].[Fct_Expense_Journal], [Report Entry Tables].[FCT_EXPENSE_JOURNAL Dim_Attendee_Type_Lang], Query3, Query2) are not permitted for the user who has the identity '*'.

    ------------------------------
    Kenneth Yung
    ------------------------------

    #CognosAnalyticswithWatson


  • 2.  RE: Error Message Question

    Posted 01/13/20 04:22 PM
    Hi Kenneth,
    The query ends up using a collection of tables/queries that are not connected via a relationship/join.
    [Report Tables].[Dim_Rpt_Minutia],
    [Report Entry Tables].[Dim_Rpt_Entry_Custom_Lang],
    [Report Entry Tables].[EXPENSE_Dim_Expense_Type_Lang],
    [Report Entry Tables].[Fct_Expense_Journal],
    [Report Entry Tables].[FCT_EXPENSE_JOURNAL Dim_Attendee_Type_Lang],
    Query3,
    Query2
    It seems that the query in question pulls data from the model as well as from other queries in the report.
    There is no way to create a relationship from querySubjects/tables in the  model with Queries in the report. Instead you would create a Query in the report that references querySubjects in the model that are related, call it for example QueryABC. Then you would relate that QueryABC to either Query3 or Query2 or one of the queries that Query3 or Query2 depend on.
    When relationships are missing the implied relationship would be a crossjoin, which is acceptable in only a very few limited cases.
    Hopefully this explanation sheds a bit more light on this issue.

    // Henk

    ------------------------------
    HENK CAZEMIER
    ------------------------------



  • 3.  RE: Error Message Question

    Posted 01/14/20 01:53 AM

    The query engine has detected that a request for data is trying to retrieve data from two or more tables where no relationship can be found between them.

    For example, in SQL you can write "SELECT * from CUSTOMER, SALES" which would ask the database to produce the cross-product (join) of the two tables.

    In most cases, cross joins produce unwanted result sets and can be extremely slow when executed.

    Hence, by default the product disallows queries that combine tables where no relationships can be found.

    You should look at how you have expressed your BI-queries in the report along with the query subjects in the model.

    Should you bypass the governor to disallow cross-joins, you could look at the Cognos SQL to see which ones fall into this trap.

    https://www.ibm.com/support/knowledgecenter/en/SSEP7J_11.1.0/com.ibm.swg.ba.cognos.ug_cog_rlp.doc/c_cog_rlp_governors.html



    ------------------------------
    NIGEL CAMPBELL
    ------------------------------



  • 4.  RE: Error Message Question

    Posted 01/14/20 12:40 PM
    In the Reporting interface, you can either connect the queries in question using a Join object in the Queries work area, or you can also simulate the same by creating a detail filter in the "parent" query that references one more items from the "child" query.  Let me know if you'd like more help, I can guide you through this pretty quickly

    ------------------------------
    Albert Valdez
    albert@intelalytics.com
    ------------------------------