Quantcast
Channel: Developer topics
Viewing all articles
Browse latest Browse all 17893

Power bi embed html "This content isn't available."

$
0
0

Hello Community,

I have tried to implement a Power BI Embdeed webpage via this simple HTML sample below:

 

<html><script type="text/javascript">
        window.onload = function () {
            // client side click to embed a selected report.
            // handle server side post backs, optimize for reload scenarios
            // show embedded report if all fields were filled in.
            var accessTokenElement = document.getElementById('MainContent_accessTokenTextbox');
            if(null !== accessTokenElement){
                var accessToken = accessTokenElement.value;
                if ("" !== accessToken)
                    updateEmbedReport();
            }
        };

        // The embedded report posts message for errors to parent window.  listen and handle as appropriate
        function receiveMessage(event)
        {
            if (event.data) {
                try {
                    messageData = JSON.parse(event.data);
                    if (messageData.event === "reportPageLoaded")
                    {
                    }
                }
                catch (e) {
                    // do something smart
                }
            }
        }

        var valB = false;

        // update embed report
        function updateEmbedReport() {

            // check if the embed url was selected
            //var embedUrl = document.getElementById('tb_EmbedURL').value;
			var embedUrl="https://embedded.powerbi.com/appTokenReportEmbed?reportId=9xxxxx9c18"
            if ("" === embedUrl)
                return;

            // to load a report do the following:
            // 1: set the url
            // 2: add a onload handler to submit the auth token
            iframe = document.getElementById('iFrameEmbedReport');
            iframe.src=embedUrl;
            iframe.onload = postActionLoadReport;
        }

        
        // post the auth token to the iFrame. 
        function postActionLoadReport() {

            // get the access token.
            accessToken = document.getElementById('MainContent_accessTokenTextbox').value;

            // return if no a
            if ("" === accessToken)
                return;

            // construct the push message structure
            // this structure also supports setting the reportId, groupId, height, and width.
            // when using a report in a group, you must provide the groupId on the iFrame SRC
            var m = {
                action: "loadReport", accessToken: accessToken
                //oDataFilter: "Table/id eq 'B'",
                //filterPaneEnabled: "false"
            };
            //var m = { action: "loadReport", accessToken: accessToken };
            
            message = JSON.stringify(m);

             
            // push the message.
            iframe = document.getElementById('iFrameEmbedReport');
            iframe.contentWindow.postMessage(message, "*");;
             
        }

    </script><input id="MainContent_accessTokenTextbox" type="hidden" value="replace a valid token here"><iframe id="iFrameEmbedReport" src="" height="768px" width="1024px" frameborder="1" seamless></iframe><body></body></html>

 

-Have already have the EmbedToken, and the Embed URL from the Github Demo, However when I try to open the HTML file in a web browser I get the result below:  "This content isn't available. Learn more about Power BI."

large.png

How can I resolve this?

 

NOTE:

           -Report is imported into workspace.

           -Report works fine in the workspace collection

 

Thanks,

bdiouf

 

 


Viewing all articles
Browse latest Browse all 17893

Trending Articles