Power BI switching between datasources - powerbi

I am new to using Power BI gateways. I have created a dashboard using Power BI Desktop connecting to the Test server. Now I have been asked to switch to Production but they wont give me access to the Production. Instead they have setup a data source using Manage Gateways in PBI Service and they are asking me to consume it in my reports. I am so confused if it is actually possible to switch my reports to Production without having access to it. I believe we cannot link PBI Desktop with the DS setup in the Gateway connections directly.
I tried parameterizing database connection so that they can switch to Live and publish it. But they raised a question if they change the password one day and there are many reports published, will they have to go through each of these reports and update with the new password.
Can anyone please provide me a solution for this?

I didn't try this approach, but you can try and check this works for you or not.
In your local Power BI file, In Data Source Settings provide the Production server name.
Give a dummy User ID and Password
Now publish the report to the Power BI Service
Ask your admin now to add appropriate Gateway to the data source. While adding gateway to the data source, the admin should asked for database Credentials and after providing information, it should work.
As I said this is not tested here, I can just hope for the best :)

Related

JIRA PowerBI Service data refresh not working

In my PowerBI desktop, I created a Jira dashboard report, and it works perfectly. On the Power BI desktop report, I can view all of my requested data.
Now, when I publish the report https://app.powerbi.com/ the report gets published successfully, however, when I am trying to schedule the refresh, I keep getting below error.
Failed to update data source credentials: The credentials provided for the Web source are invalid. (Source at https://jira.tools.com/.)
When I try to connect straight to my Jira, I know my credentials are accurate and working properly, and the same is true in Powerbi Desktop.
What could be the reason?
Your Jira server might be inside the firewall/inside a private network.
So, the first thing I suggest to try is setting up a Power BI Gateway. Then configure your Power BI Service refresh via that Gateway.
Useful links:
https://learn.microsoft.com/en-us/data-integration/gateway/service-gateway-install
https://learn.microsoft.com/en-us/power-bi/connect-data/service-gateway-data-sources
You'll want to do that on a Server inside your firewall & ensure Proxy settings are correctly setup - to access Internet.
If that doesn't do it - it's probably a more subtle cause (anywhere from the network configuration to how Active Directory is tied to Jira). Let us know, we'll take it from there.

Power BI Embedded – This content isn’t available

We recently have some trouble setting up a Power BI Embedded solution and we hope that someone had some more luck with the example from the official documentation or might point us in the right direction.
We are trying to embed some Power BI reports for an Azure App Service by choosing the “embed for your customers application” (app owns data)-approach and following the Microsoft Documentation Embed content in your Power BI embedded analytics application - Power BI | Microsoft Docs. We choose the Service Principal as authentication method and the Python framework. We are using a supported browser (Edge) and made sure to fulfill the Prerequisites (AAD tenant, service principal, Power BI pro license and a Premium-Per-User license).
Following the steps in the documentation leads to the massage “This content isn’t available.”, when navigating to localhost:
Sample page for embedding with error message
We double checked that the parameters in the file, which we downloaded from GitHub - microsoft/PowerBI-Developer-Samples (linked in the documentation) are correct. The workspace and the report is published, the access is enabled for the Service Principal (SP) in the Power BI admin portal and the SP is added as an admin to my workspace.
The Python application appears to work fine with all modules from the requirements.txt installed. We also tried to embed alternative reports and workspaces, using alternative Service Principals, using security groups or making changes in the parametersfile. We are positive that the example works fine since changing the original code and messing withe config.py and the parameters leads to different (earlier) failure.
We don’t see why the WebApp is not able to access the embedded content. We feel that we checked everything mentioned in the documentation. However, there seems to be something (maybe even obvious) that we miss or that is not mentioned in the documentation.
Every hint is appreciated!

Error when trying to configure Power BI Data Gatwewy

Just installed Power BI Data Gateway on one of the companies servers.
The processes was smooth and very easy, I have assigned a name to the Data Gateway.
As it is linked to my email (I think this is going to be another problem when other employees trying to publish their reports), when I tried to configure datasource in my Gateway I get this error !
Unable to connect: We encountered an error while trying to connect to . Details: ""
Activity ID: 951737c3-eea2-43c3-b5d4-7bb03e247e5b
Request ID: b7c69cff-2be9-f965-2586-14b978802dd7
Cluster URI: https://wabi-australia-southeast-redirect.analysis.windows.net
Status code: 400
Error Code: DMTS_UpdateClusterDatasourceCredentialsErrorCode
Time: Mon Sep 02 2019 10:15:31 GMT+1000 (AUS Eastern Standard Time)
Version: 13.0.10599.151
PBIGateway: The on-premises data gateway's service account failed to impersonate the user.
I am sure that my user ID and password are both correct, not sure why it is not working!!
This one had me stumped for days. Why would the PBI desktop app allow connections, seamlessly on your desktop and yet when you publish a report to the web, bong-bong no authentication, no credentials, nothing! It was very frustrating, and no specific details other than a plethora of connection IDs which mean nothing.
In the end, we found the problem was between how we've set up the Power BI Gateway on-prem, and whether the gateway service account on the gateway had the permissions to access our data sources, both from SQL Server on-prem and an Excel table in Sharepoint.
When setting up your Gateway (not a personal GW, but a server side one), we've created the gateway using the Admin local account. That was our first mistake. We couldn't connect to any of our SQL Server databases, from Sharepoint. So we've re-installed it using an Admin O365 AD account. Our SQL Server access was ok, but anything in Sharepoint wouldn't work - even though the same account was used to put Excel files and CSV files into Sharepoint.
We then noticed that the gateway was defaulted to a service account under the NT Authority group. Again, another local account. Changed that to another O365 account, but again - nothing would allow us to connect to the Excel sharepoint file! How hard can this be, when the Excel file connected fine inside PowerBI desktop! It was very frustrating.
So we've re-installed the on-prem gateway again, but this time used one AD account for it's sign on, and another system AD account for it's service account. We also publish the PBI report to the cloud, but the dataset would be failing to connect to the Excel file in Sharepoint. WHY!!!???
It came to that User tab and putting our on-prem gateway service account in the User list of the connector to the Sharepoint file.
VOILA!! It worked.
In summary:
Create your PBI reports in desktop and point everything you need to what ever you need in the Get Data wizards
If you're referring to an Excel file, DO NOT point to a local / network Excel file. You're wasting your time.
Put the Excel/CSV or whatever in sharepoint in a Documents folder somewhere
Click Manage Permissions on the file and add the On-Prem service gateway to the list
Next, open the Excel file on the web
And go ahead and open it in your local desktop Excel as well
Go to FILE --> INFO
Click Copy Location to store the location of the file in the clipboard. Save this string in notepad
Close Excel on-prem
Close Excel online
Go to your PBI report and edit the M-Code via the Advanced Editor of your data source
Replace the C drive location of your Excel filepath with the one copied into your notepad
Now your query is pointing to the Excel file in sharepoint.
Publish your report
Go to app.powerbi.com and go to your report's dataset
Click the three dots and go to Settings
Go to Gateway Cluster and lick Manage Gateway link
Open up your gateway cluster and go to your Excel data connector
Select it and click the Users tab
Add your on-prem gateway service account again to this list
Save
Refresh your dataset
Voila! No more errors.
I hope this lengthy answer has been enough for your to realise [1] microsoft write great software, but crappy user-experience with it and [2] you need to pass on the credentials of the gateway to any datasource that uses it, in reference to any datasource that require a gateway between on-prem and cloud reports.
We have same problem in powerbi gateway. Turns out the database password is expired. After reset password. Problem solved.

How to share Power BI reports to clients via app.powerbi? Also what is the difference between report and dashboard in power bi app?

I'm a newbie in Power BI..
I need to develop a tabular report (no visualizations) in Power BI and publish it to powerbi app so that client can see live reports.
For that what are the settings we have to do in app.powerbi or powerbi cloud?
When I published a report in my pbi cloud, in the report section, there is an option to publish /embed code. But it says the content will be available to public. So how can we restrict access? Do the client need to have pbi account to share the reports? Please let me know what type of PBI account we have to purchase to meet this requirement.
Also is it mandatory to create dashboard in order to share it to the client? Because report option serves the purpose? Is there any advantages in creating dashboard over reports?
Or do you feel any other suggestions rather than Power BI?
Data format: txt, tab delimited
Type of data: Medical records
Any help on this is greatly appreciated.
Power BI world has different things:
Power BI Desktop (PBID)- this is fat desktop client to create reports. You can use it for free.
Power BI Services (PBIS)- this is SaaS application that allows you create reports and share it. When you open powerbi.com you work with this app. All you reports located in logical containers - workspaces. This container like folder, nothing more. You can publish report from Desktop here into specific workspace. You can embed report from there, but without authentication, thus everyone can see it.
Power BI Embedded (PBIE)- this is PaaS solution to embedded reports into you app. Reports anyway should be stored into some workspace at PBIS. But you app can implement auth and show only specific reports to particular users. All users in you app can see different content and reports, based on your app logic, because you manage access to report via PBIE SDK. Take a look at playground.
So when your users work with PBIS they work with Microsoft Web App, if you want embedded same reports into you app, use PBIE with provided SDKs.
As for licenses. In fact there is only one license type: PRO.
If your users want publish and share reports using PBIS they ALL must have PRO licenses. That the point. You can use all products free unless you want share you reports and analysis. If you need to share you have to pay.
Different thing for PBIE. You implement your app as you wish, you manage you users. They should not have PRO licenses. In fact, you need one license to store you reports. I call this like service account. This is regular PBIS user with PRO license. You use it only for publishing reports and storing it at PBIS and you app use it to load and embedded reports. If you have 1000 users, you can buy 1 license and use it to publish you work and all users will be authenticated in you app, authorization also will be done in your app.
Another thing, that once you go in prod you need to buy capacity - Power BI Embedded Services at Azure. The cost depends on renders. Read more docs on this.

Power BI Error: Alternate credentials for Windows authentication is not supported in DirectQuery mode

I have a problem when i want to use DirectQuery. I have a DomainController with installed SQL Server. I have installed Data Gateway and must modify the Service Account to Local System to be able to finish setup. i have setup the Data Gateway successfully in Enterprise Mode. In PowerBi.com everything looks fine and can see the Gateway and no errors.
When i now create a new File with a SQL connection and Mode "Import" and publish it to PowerBi.com, then it works fine and when i schedule a refresh, this works fine, too.
But i want to use DirectQuery on a Database table for example. For this scenario i have created a new Power BI File and selected the same database which i already created as DataSet in PowerBI.com under my Gateway. Then i load the data in the file and while trying to load it i am always receiving the following error message:
Create Connections
Alternate credentials for Windows authentication is
not supported in DirectQuery mode. Use your current windows
credentials, supply a database credential or switch to import mode.
In PowerBI.com under Gateways and Data source i have used Windows Authentication and used the Administrator account which has also permission on the Database. I dont know what this message means and i should change. Can someone help me?
it seems that your have a credential problem, I suggest you to go to File->Options and settings->Data source settings, then edit your data source [Edit Permissions...] and specify a valid Windows credential or database credential. After that, click "Refresh" button in the PBIX file.
Hope that helps!
If you cannot open the PBIX file, restart Power BI designer with an empty one and then go to the File, Options as explained above. You will find out that an "alternate" credential has been stored for your data source. Use your current credentials instead. Now, try to open the original PBIX file and it you will see that now Direct Query mode works.