14

When printing a report, the user sometime have the following error:

CrystalDecisions.CrystalReports.Engine.LogOnException:  
Error in File C:\DOCUME~1\carolec\LOCALS~1\Temp\temp_b117cc2e-c184-4556-a493-e04e6d4126fb {388C2B55-114E-4087-A22D-9289902AFDEB}.rpt:  
Unable to connect: incorrect log on parameters. ---> System.Runtime.InteropServices.COMException (0x8004100F): 
Error in File C:\DOCUME~1\carolec\LOCALS~1\Temp\temp_b117cc2e-c184-4556-a493-e04e6d4126fb {388C2B55-114E-4087-A22D-9289902AFDEB}.rpt:
Unable to connect: incorrect log on parameters.
   à CrystalDecisions.ReportAppServer.Controllers.ReportSourceClass.GetLastPageNumber(RequestContext pRequestContext)
   à CrystalDecisions.ReportSource.EromReportSourceBase.GetLastPageNumber(ReportPageRequestContext reqContext)
   --- Fin de la trace de la pile d'exception interne ---
   à CrystalDecisions.ReportAppServer.ConvertDotNetToErom.ThrowDotNetException(Exception e)
   à CrystalDecisions.ReportSource.EromReportSourceBase.GetLastPageNumber(ReportPageRequestContext reqContext)
   à CrystalDecisions.CrystalReports.Engine.FormatEngine.PrintToPrinter(Int32 nCopies, Boolean collated, Int32 startPageN, Int32 endPageN)
   à CrystalDecisions.CrystalReports.Engine.ReportDocument.PrintToPrinter(Int32 nCopies, Boolean collated, Int32 startPageN, Int32 endPageN)

Any ideas on a solution?

Configuration: C# (2008), WinForm, Crystal Report 10, SQL Server 2008 Express (local)

izokurew
  • 448
  • 1
  • 4
  • 15

6 Answers6

12

For anyone having the same problem, also check if your report's Datasource provider is "SQL Native Client". If yes, this wont work in your Production server which doesn't have SQL client installed. It has to be "SQLOLEDB" for it work in machines where there is no SQL client installed.

This was the reason why my report worked on my test server(which had SQL server client) and did not work in my production server

Arshad Mohammad
  • 399
  • 3
  • 7
  • 2
    This was the problem for me. Crystal Reports was set up to use SQL Server Native Client (SQLNCLI11) as the data provider. It was not installed on the server which was trying to process reports. You can tell if it is installed by looking for "sqlncli11.dll" in C:\Windows\System32 and C:\Windows\SysWOW64. The actual installer download is hard to find, it is here, buried under the "Install instructions" section about half way down. http://www.microsoft.com/en-us/download/confirmation.aspx?id=29065 – Truisms Hounds Jul 14 '16 at 15:02
  • We had a mix of Crystal Reports using `SQLOLEDB` (a.k.a. "_Microsoft OLE DB **Provider** for SQL Server_") and `MSOLEDBSQL` (a.k.a. "_Microsoft OLE DB **Driver** for SQL Server_") as their Provider. They both worked fine on our localhost, but when we deployed to another environment, the ones with `MSOLEDBSQL` threw this error. We figured the drivers were either not installed or corrupted, so we switched all reporting to use `SQLOLEDB` for consistency across all Environments. Thank you for helping us figure this out! – MikeTeeVee Sep 01 '20 at 20:04
  • In fact, that was the problem for me. Strange that the error message says nothing about `sqlncli11.dll`. – W.M. Aug 28 '21 at 19:03
11

Haven't used Crystal Reports for a bit, but generally an error along the lines of "LogOn Exception" may actually have nothing to do with security at all, Crystal Report errors can be a bit random.

Its possible it may be an error related to memory issues.

Or...

It might be report specific, a sub-report maybe trying to logon using credentials stored within the report, rather than the credentials you've passed into it via the code; You need to loop through all sub-reports rather than just the main report setting the login information.

I remember having this particular error when I used a workaround to install a dynamic logo for a report (that got pulled from a binary field within another database table) except there was a slight error in which it pulled the logo data for each row of data; After a certain amounts of rows returned it died resulting in a similar error.

Phill
  • 1,325
  • 10
  • 14
3

I have same problem but has solved.

The problem is in odbc connection. Just install SQL native driver to add connection in odbc. Download link https://support.fotoware.com/hc/en-us/articles/208664385-Microsoft-SQL-Native-Client-fails-to-download-during-FotoWeb-setup

khamami
  • 33
  • 3
0

If you have had a report that used to work fine, but then suddenly stopped working... AND you are using SQL Server Authentication... check your Password Expiration date on the Login Account. :)

Anthony Griggs
  • 1,469
  • 2
  • 17
  • 39
0

For me I created a new instance for a wrong report object. The problem is solved when I changed to correct one. It wasn't related to connection.

NewVehicleLicense report = new NewVehicleLicense();
report.SetDataSource(vehicleLiceseData);
Majid Omar
  • 51
  • 4
0

In my case it was that I had two connections in the report by accident. You can go to Database->Update Connections on the main page to see if you have more than one.