Forum Discussion
mikihiir
Helper III
9 years agoPower bi javascript api data refresh
How do u refresh data in power bi javascript api when using direct query ? There used to be a refresh function, now it is removed.
- 9 years ago
So far the refresh is not avaible for a production PowerBI Javascript release, you can check Missing a “Refresh” method to efficiently refresh a report/tile. You shall wait for the release.
You can try to re-embed the report to do the refresh, this would refresh the data from directquery based on my test.
<html> <script src="https://microsoft.github.io/PowerBI-JavaScript/demo/bower_components/jquery/dist/jquery.js"></script> <script src="https://microsoft.github.io/PowerBI-JavaScript/demo/bower_components/powerbi-client/dist/powerbi.js""></script> <script type="text/javascript"> var embedConfiguration = { type: 'report', accessToken: 'yourTokenHere', id: '4c42a9f6-3ef4-xxxxxxxxxd5d6ebdac79d', embedUrl: 'https://app.powerbi.com/reportEmbed?reportId=4c42a9fxxxxxxxxx-91f5-d5d6ebdac79d' }; var report; window.onload = function () { var $reportContainer = $('#reportContainer'); report= powerbi.embed($reportContainer.get(0), embedConfiguration); } function reloadreport(){ var $reportContainer = $('#reportContainer'); powerbi.embedNew($reportContainer.get(0), embedConfiguration); }; </script>
<button onclick="reloadreport()">Click me to refresh</button> <div id="reportContainer"></div> </html>
Eric_Zhang
Microsoft Employee
9 years agoSo far the refresh is not avaible for a production PowerBI Javascript release, you can check Missing a “Refresh” method to efficiently refresh a report/tile. You shall wait for the release.
You can try to re-embed the report to do the refresh, this would refresh the data from directquery based on my test.
<html>
<script src="https://microsoft.github.io/PowerBI-JavaScript/demo/bower_components/jquery/dist/jquery.js"></script>
<script src="https://microsoft.github.io/PowerBI-JavaScript/demo/bower_components/powerbi-client/dist/powerbi.js""></script>
<script type="text/javascript">
var embedConfiguration = {
type: 'report',
accessToken: 'yourTokenHere',
id: '4c42a9f6-3ef4-xxxxxxxxxd5d6ebdac79d',
embedUrl: 'https://app.powerbi.com/reportEmbed?reportId=4c42a9fxxxxxxxxx-91f5-d5d6ebdac79d'
};
var report;
window.onload = function () {
var $reportContainer = $('#reportContainer');
report= powerbi.embed($reportContainer.get(0), embedConfiguration);
}
function reloadreport(){
var $reportContainer = $('#reportContainer');
powerbi.embedNew($reportContainer.get(0), embedConfiguration);
};
</script>
<button onclick="reloadreport()">Click me to refresh</button>
<div id="reportContainer"></div>
</html>
mikihiir
Helper III
9 years agothanks