SAP Knowledge Base Article - Public

2548907 - Error: 'Logon Failed. Unexpected error from external database driver' when refreshing a report based on MS Excel in Crystal Reports and in SAP BI LaunchPad

Symptom

  • DAO Connection to Excel fails.
  • ODBC connection to MS Excel fails.
  • Same report used to refresh successfully few days ago.
  • When refreshing a report in Crystal Reports connecting to a MS Excel spreadsheet, it fails with the error:
        
       Logon Failed. 
       Details: DAO Error Code: 0xccb
       Source: DAO.Workspace
       Description: Unexpected error from external database driver (1)
             
  • In SAP BI LaunchPad, when refreshing a report based of an Excel speadsheet, it prompts for the user name and password.
  • Reports scheduled in SAP BusinessObjects BI Sever, connecting to MS Excel are failing with the same error.
      
         
  • Note: Images and data in this SAP Knowledge Base Article is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental.

Environment

  • SAP Crystal Reports 2011
  • SAP Crystal Reports 2013
  • SAP Crystal Reports 2016
               
  • SAP BusinessObjects Business Intelligence Platform 4.0
  • SAP BusinessObjects Business Intelligence Platform 4.1
  • SAP BusinessObjects Business Intelligence Platform 4.2
          
  • SAP Crystal Server 2011
  • SAP Crystal Server 2013
  • SAP Crystal Server 2016
          
  • MS Windows 7
  • MS Windows 8
  • MS Windows 10
  • MS Windows Server 2012

Reproducing the Issue

  • In Crystal Reports:
      
    1. In Crystal Reports, open a report based of a MS Excel spreadsheet.
    2. When attempting to refresh the report, it fails with the error: "Logon Failed. Unexpected error from external database driver (1)"    
         
  • In SAP BI LaunchPad, or in the Central Management Console (CMC):
        
    1. View or schedule a report based off MS Excel in SAP BI LaunchPad 
    2. It fails with the error:  "Logon Failed. Unexpected error from external database driver (1)"   

Cause

  • Microsoft Windows Security updates caused the MS Excel connectivity issue for any application using the Jet Engine 4.0 
  • In other words, it is not a Crystal Reports product defect, but an issue with the Microsoft JET Database Engine caused by a Microsoft Security update.
  • For reference, and more details, see the Microsoft blog on the Microsoft JET Database Engine connectivity issue 

Resolution

  • The best recommended solution provided by Microsoft is to use the latest Microsoft Acess Database Engine OLE DB Provider to connect to MS Excel.     
         
    1. Download the latest Microsoft Access Database Engine 2016 Redistributable from Microsoft.
         
      • 1.1  Go to the following Microsoft Access Database Engine 2016 Redistributable download link:
          
                  https://www.microsoft.com/en-us/download/details.aspx?id=54920
      •         
             
      • 1.2  On the Microsoft Access Database Engine 2016 Redistributable page, click "Download"
          
                  Excel Connectivity - 01.png
                    
            
      • 1.3  In "Choose the download you want" select "AccessDatabaseEngine.exe", and click "Next" to start the download.
          
                 Excel Connectivity - 02.png
              
      •           
            
    2. Install the Microsoft Access Database Engine 2016 Redistributable.
           
          
    3. Update the report to use the Microsoft Office 16.0 Access Database Engine OLEDB Provider.
          
      • 3.1  In Crystal Reports designer, open the report based off the MS Excel spreadsheet.
             
      • 3.2  Under the menu "Database", select "Set Datasource Location…"
               
      • 3.3  In "Set Datasource Location" window,  under "Replace with:" expand "Create New Connection"
            
      • 3.4  Under "Create New Connection", double click on "OLE DB (ADO)"
          
                Excel Connectivity - 03.png
             
                 
      • 3.5  In "OLE DB (ADO)" window, select the OLE DB Provider: "Microsoft Office 16.0 Access Database Engine OLEDB Provider", and click "Next"
          
               Excel Connectivity - 04.png
              
            
      • 3.6  In the "Connection Information" screen, fill the information for the following options:
          • Data Source: Select the path to your MS Excel spreadsheet.
          • Office Database Type: Select "Excel"
              
            Excel Connectivity - 05.png  
                   
              
      • 3.7  Then click "Finish" to create the connection.
            
      • 3.8  Back the "Set Datasource Location" window, select the OLE DB Connection to the MS Excel spreadsheet you just created
               under "Replace with", and click the button "Update"
            
                Excel Connectivity - 06.png
               
           
      • 3.9  Once the connection is updated, click "Close"
             
            
    4. Save the report.
         
      Now, the report will refresh successfully in Crystal Reports designer.
        
    5. Repeat step 3 to 4, for each report that connect to a MS Excel spreadsheet.
                        
    6. If your report is saved and used on the SAP BusinessObjects Business Intelligence Platform server,  the next step will be to install the Microsoft Office 16.0 Access Database Engine OLEDB Provider, on the SAP BusinessObjects Business Intelligence platform server. 
            

See Also

Keywords

Database Access Engine, DAO, CR, Cannot logon, Excel, xls, xlsx , KBA , BI-RA-CR , Crystal Reports designer or Business View Manager , Problem

Product

SAP Crystal Reports 2011 ; SAP Crystal Reports 2013 ; SAP Crystal Reports 2016