SAP Knowledge Base Article - Public

1228341 - Database Connector Error: 'If tables are already linked then the join type cannot change' when refreshing a report in Crystal Reports

Symptom

  • Error when refreshing a report.
  • After changing table linking between two tables, it fails to refresh.
  • In Crystal Reports, when refreshing a report, it fails with the error: 
      
    "Error: Failed to retrieve data from the database.
     Database Connector Error: 'If tables are already linked then the join type cannot change' "

Environment

  • Crystal Reports XI
  • Crystal Reports XI R2
  • SAP Crystal Reports 2008 
  • SAP Crystal Reports 2011

Reproducing the Issue

  1. In Crystal Reports, open a report.
  2. In the Database Expert, add tables to the report, or modify the links between tables.
  3. When refreshing the report, it fails with the error:  
        
    "Database Connector Error: 'If tables are already linked then the join type cannot change' "

Cause

  • Limitation of the query engine caused by the requirement of having multiple links between two tables.
  • By design, the linking between the tables needs to be using the same join type.

Resolution

  • The solution is to link the tables using the same join type.
        
  • Workarounds:
    • Use a View, where are the links are done on your database side; or
    • Use a Stored Procedure; or
    • Use 'Add Command'. This option allows you to write your own SQL Query. 

Keywords

CR , KBA , BI-RA-CR , Crystal Reports designer or Business View Manager , Problem

Product

Crystal Reports 2008 V0 ; SAP Crystal Reports 2011 ; SAP Crystal Reports XI ; SAP Crystal Reports XI R2