PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV (versões anteriores) → Champ HTML (Affichage PowerBI) dans Windev 26
Champ HTML (Affichage PowerBI) dans Windev 26
Iniciado por Darkryse, jul., 25 2024 3:31 PM - 2 respostas
Publicado em julho, 25 2024 - 3:31 PM
Bonjour à tous,

J'aimerai intégrer un rapport PowerBI dans un élément HTML Windev. Cependant, j'ai des problèmes d'affichages étonnant.

Pour afficher un rapport PowerBI, je dois exécuter une fonction de la bibliothèque JS PowerBI.min.js, powerbi.embed()

Lorsque j'ajoute mon code dans l'éditeur visuel du champ Windev, le JS charge et l'affichage du rapport fonctionne. Lorsque je mets ce même code depuis le code de ma fenêtre, rien ne charge.

Quelles sont les modifications à apporter à mon code ? Je suis un peu perdu.

Merci de vos réponses

Voici le code HTML principal :

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Power BI Embedded Report</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/powerbi-client/dist/powerbi.min.js"></script>
<style>
#dashboardContainer {
width: 100%;
height: 100vh;
}
</style>
</head>
<body>
<div id="dashboardContainer"></div>
<script type="text/javascript">
window.onload = function () {
var models = window['powerbi-client'].models;

let accessToken = 'DDDDDDDDD';

let embedUrl = 'CCCCCCCC';

let embedReportId = 'ZZZZZZZZ';

let config = {
type: 'report',
tokenType: models.TokenType.Embed,
accessToken: accessToken,
embedUrl: embedUrl,
id: embedReportId,
settings: {
panes: {
filters: {
visible: true
},
pageNavigation: {
visible: true
}
},
bars: {
statusBar: {
visible: true
}
}
}
};

var $reportContainer = $('#dashboardContainer');
var report = powerbi.embed($reportContainer.get(0), config);
}
</script>
</body>
</html>
Membro registado
4.111 mensagems
Publicado em julho, 25 2024 - 4:42 PM
Bonjour,
Merci de mettre les balises de code

--
Il y a peut être plus simple, mais, ça tourne
Publicado em julho, 25 2024 - 5:01 PM
Bonjour,

Voici le code complet

Procedure MaFenêtre()

HTM_RapportBI = [
<html>
<head>
<meta charset="UTF-8">
<title>Power BI Embedded Report</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/powerbi-client/dist/powerbi.min.js"></script>
<style>
#dashboardContainer {
width: 100%;
height: 100vh;
}
</style>
</head>
<body>
<div id="dashboardContainer"></div>
<script type="text/javascript">
window.onload = function () {
var models = window['powerbi-client'].models;

let accessToken = 'XXXXXXXX';

let embedUrl = 'XXXXXXXX';

let embedReportId = 'XXXXXXXX';

let config = {
type: 'report',
tokenType: models.TokenType.Embed,
accessToken: accessToken,
embedUrl: embedUrl,
id: embedReportId,
settings: {
panes: {
filters: {
Visible: True
},
pageNavigation: {
Visible: True
}
},
bars: {
statusBar: {
Visible: True
}
}
}
};

var $reportContainer = $('#dashboardContainer');
var report = powerbi.embed($reportContainer.get(0), config);
}
</script>
</body>
</html>