I'm having an issue where I can refresh a PowerBI report from the desktop app however when I try to schedule the report or refresh within PowerBI itself I get the failure message that appears below.
"Microsoft Access: The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine. The 64-bit version of the Access Database Engine 2010 Access Database Engine OLEDB provider may be required to read 'Asda Sales Data.mdb'. To download the client software, visit the following site: https://go.microsoft.com/fwlink/?LinkID=285987."
Looking at the article below, I noticed that Access isn't one of the supported sources although it does state file as a suitable input. Therefore my question is, is it possible to schedule refresh a PowerBI report with an Access source?
"https://learn.microsoft.com/en-us/power-bi/refresh-desktop-file-onedrive"
Related
I want certain reports to execute as a super user, but when I change the Credentials section for the .rdl embedded Data Sources, these changes do not propagate through to the web server. That is, users still have to enter their username/password on the web server, and run into permissions issues.
The current workaround is to "Manage" the report on the web server (using the ellipses...) and telling each report to log into the data source "Using the following credentials..." and putting the super user creds.
But this means that everytime we redeploy the report, we need to do this. We would prefer if the settings we have in the actual .rdl in SSRS actually show up on the web server after deployment.
I suggest to use shared datasources for your reports. For each database a report needs access to, create one such shared datasource. The default project settings for Report Server projects in Visual Studio is to not overwrite datasources that already exist on the server when deploying the project. This way, you will have to set the credentials in the Web Portal for each datasource only once, and you don't have to care about that when deploying updated reports.
I'm running SQL Server 2016 and have local reporting services running.
I can run my SSRS reports up fine and display them to screen.
I can also export them to PDF or to CSV but if I try to export to Word, PP or EXCEL I get:
Reporting Services Error
An error occurred during rendering of the report. (rrRenderingError)
An error occurred during rendering of the report.
The type initializer for 'MS.Utility.EventTrace' threw an exception.
Requested registry access is not allowed.
the same report works fine on other peoples machines in the office so I know it's not to do with the report itself.
I've tried
Has anyone else had this issue or know how I can shift it?
I just spent hours troubleshooting this in a fresh install of SSRS 2019 using an updated database from a prior version.
I'm using an execution account with low permissions and did not want to make it a full Local Admin permanently but I tried adding it, unsuccessfully.
I removed the account from unattended execution in Report Services Configuration Manager and suddenly was able to export to XLSX. I was not sure what the fallout would be for existing reports, so I was not satisfied with this solution either.
Elsewhere I saw a recommendation to use Process Monitor (procmon) to watch for registry key access denials, you can download it here procmon.
It was difficult to search all of the output but you can filter by registry key access, then look for the RS executables or the result ACCESS DENIED.
In my case, it was HKU\%service account sid%\Software\Microsoft\Avalon.Graphics, and granting the execution account (not the account that runs the service) Read access to this key resolved the issue.
I got the same issue. Check in the URL (once you click on excel) whether the format is EXCELOPENXML. If yes change it to EXCEL.
Then it will download and work correctly.
You can enable it to 'EXCEL' by default by changing the 'rsserverconfig' file under reporting services. It will download in 'xls' format not 'xlsx'
NOTE: This solution is a common workaround when rendering extensions fail to work due to your deployment configuration or environment.
RSServerConfig
C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\ReportServer\rsreportserver.config
Look for the Render section, enable or disable the export formats that you want your users to have access to. see Rendering Extensions Overview on SQLDocs for more information on individual extensions.
<Render>
<Extension Name="WORDOPENXML" Type="Microsoft.ReportingServices.Rendering.WordRenderer.WordOpenXmlRenderer.WordOpenXmlDocumentRenderer,Microsoft.ReportingServices.WordRendering"/>
<Extension Name="WORD" Type="Microsoft.ReportingServices.Rendering.WordRenderer.WordDocumentRenderer,Microsoft.ReportingServices.WordRendering" Visible="false"/>
<Extension Name="EXCELOPENXML" Type="Microsoft.ReportingServices.Rendering.ExcelOpenXmlRenderer.ExcelOpenXmlRenderer,Microsoft.ReportingServices.ExcelRendering" Visible="false"/>
<Extension Name="EXCEL" Type="Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer,Microsoft.ReportingServices.ExcelRendering" Visible="true"/>
…
<Render>
I had the same issue in SSRS2016 on a clean install of Windows Server 2016 & SQL 2016 with SSRS with all SP's & CU's and windows updated applied.
To confirm my fix, the execution account was not a member of the local administrators group on the SSRS server, once added and stop/start of SSRS, I am now able to export to Excel & Word, not the most secure way of getting it working but better than enabling the depreciated Excel 2003.
I had the same issue in SSRS 2019, and the fix was quite easy.
In Report Server Configuration Manager > Service Account, I had it set to "Use built-in account" = "Virtual Service Account".
I changed to "User another account", and selected a local users who is part of the Administrators group.
NOTE: This is NOT the Execution Account. This is for the Service Account.
You could be getting this error in Excel because the maximum number of rows that can be put in an excel sheet is 65536. If your data has more rows than that it will throw that error.
I have SQL Server 2008 on window server 2008 that is my report server.
My web application is in vs2010 which is on the other system. When I tried to show the report in report viewer it giving the following error:
The request failed with HTTP status 401: Unauthorized.
I used the ProcessingMode.Remote.
I want to use the database credential for accessing the report (please keep in mind that I don’t want to use windows credential).
I have set the following authentication in reportserver.config file.
<Authentication>
<AuthenticationTypes>
<RSWindowsNegotiate/>
<RSWindowsNTLM/>
</AuthenticationTypes>
<EnableAuthPersistence>true</EnableAuthPersistence>
</Authentication>
And on data source I have selected the “Credential stored securely in the report server” option.
More over when I use the window server 2003 report server its working fine and report viewer showing the report successfully, It create problem on window server 2008.
Please someone help me to overcome this problem. Is report server required some specific configuration for window server 2008?
Generally this occurs on the web server not keeping correct credentials to your data source. Start by going to the SSRS site: h ttp://(servername)/(Reports) by default.
There are a few questions you should ask:
Is this a report accessed by many so should I set up a domain account for it?
Or is this report only available to a few people and they should be prompted?
Generally you can go into the problem report. It will fail credentials. You can click it's hyperlink, click data sources on the left pane. You will see credentials set up. If you want to store them as you said you did, they should appear here under the radio button 'credentials stored in report server'. However many times an account should be listed here as a 'Windows account' or vice versa and is not.
I would also ensure once you get your data source down ensure your deployment settings are set to false for 'override data source'. Hope this helps.
I get the following error when trying to run reports:
The current action cannot be completed. The user data source credentials do not meet the requirements to run this report or shared dataset. Either the user data source credentials are not stored in the report server database, or the user data source is configured not to require credentials but the unattended execution account is not specified. (rsInvalidDataSourceCredentialSetting)
By the way I am running it from VS2010 with SQL Server 2008 Reporting Services.
How do I solve this issue?
Yes, I've seen this. You can set the Credential and Connection Information such that a report is run impersonating the unattended user account. This article explains how to set up this type of report running. This setup is especially useful if you want to use the credentials inside a dynamic connection string (for example when you need to insert the credentials through a parameter).
If you don't want to run using the unattended user account, you should review your DataSource and connection string as defined in the report. Perhaps play around with the settings and different configurations for the datasource to create a different setup. The above links should be a start for some documentation.
In my case, it was because of some deployment parameters.
Go to Project Property by Right-clicking at the Project name in Solution Explorer and select Properties.
In Configuration Properties > General, change OverwriteDatasets and OverwriteDataSources in Deployment section to True for both parameters.
Click OK.
in my case, replacing linked server connections with local (fetched from remote locations and stored in local tables)data connections helped. we also checked this for ALL subreports/linked reports and it worked fine.
This happened to me today, it was because I was using the wrong datasource in my report. So I changed the datasource manually in Report manager and it worked. I guess another choice is to redeploy your report with the correct datasource.
This happened to me today. I am using Visual Studio 2019 for creating the reports for SQL Server 2014.
One of my reports had an embedded data source, but it was unconfigured/not configured properly. (You can see embedded data sources in the "Report data" pane under "data sources").
However, the embedded data source wasn't actually being used. I created the embedded data source earlier for debugging and forgot about it.
After deleting the unused embedded data source, the error went away.
This is from Microsoft:here
User Action
Change the settings for the current report so that it can run unattended, and then try to create the subscription or other scheduled operation again. Use the following steps to configure a report to run unattended:
1) Go to the Data Sources properties page of the report that you want to automate.
2) For the Connect Using option, select Credentials stored securely in the report server.
3) In User Name and Password, type credentials that can be used to access the database. If you are using SQL Server as the data source, the user name must be valid for both logging on to the server and for accessing the database that contains the data for the report.
4) If the user name and password are credentials for a Windows account, select Use as Windows Credentials. If the credentials are for a SQL Server user login, do not select this check box.
Do not select the check box Impersonate the authenticated user after a connection has been made to the data source, regardless of authentication type. This option cannot be used for reports that run unattended.
In SSRS Report Server (SQL Server 2008 R2), I have a shared data source with data source type of XML. I have a report that uses a shared data set based off of the shared data source. The XML endpoint is living in an IIS-hosted Windows authentication app, and my development server is on a domain.
In Report Server, if I set the shared data source Connect Using option to Windows integrated security, the report renders quickly and as expected.
If I set Connect Using option to Credentials stored securely in the report server (with either domain or local account as configured account), the report rendering hangs indefinitely. There is no error. The "Loading... cancel" popup never goes away. The last line in the Report Server log file says:
library!ReportServer_0-6!19a4!11/22/2011-10:59:27:: i INFO: RenderForNewSession('/Test1/MyReportThatHangs')
Since Report Server caching does not work with "Connect Using" = "Windows integrated security", I'd really like to use "Credentials stored securely in the report server". Is it possible that option is not supported with the XML data source type?
The problem was SSRS was trying to load BCMLogon.dll which it didn't have permission to.
For full thread, see here: http://social.msdn.microsoft.com/Forums/en-US/sqlreportingservices/thread/928cd523-9eeb-49ce-a145-e0885c76adba
I guess I didn't wait long enough to get the error this guy did:
http://completedevelopment.blogspot.com/2009/01/network-provider-issues-and-sql-server.html
Renaming c:\windows\system32\BCMLogon.dll to BCMLogon-RENAMED.dll
fixed the problem (I'm working off of a Dell laptop). I can't believe
I didn't try that before... Anyhow, I still think it's odd that
there was a System.Data.SqlClient.SqlException: Timeout expired
exception when checking "Impersonate the authenticated user after a
connection has been made to the data source" with an XML data source
(unless SqlDataClient has some mode where it can load XML from urls).
Also, it seems that reporting services isn't properly notifying
clients that the HTTP request failed and instead leaves the client
hanging (but perhaps http.sys does not allow a response that after 15
minutes).