AspnetwebFormpowerBiembed
Power BI (PBI) est intégré à ASP.NET Webforms en tant que modèle AppownsData
Le rapport est intégré à l'aide de la méthode "Principal de service" et non de la méthode "Master User"
Archiver ce référentiel car Microsoft encourage à utiliser de nouvelles technologies ASP.NET - MVC et Blazor. Pour les formulaires Web en particulier, Blazor est le recommandation - https://learn.microsoft.com/en-us/dotnet/architecture/blazor-for-web-formes-develovers/migration
J'ai créé cet exemple de solution dans Visual Studio 2017 et l'échantillon de rapport est tiré de https://github.com/microsoft/powerbi-desktop-samples/tree/master/2018
Pour cette démo, j'ai utilisé le fichier "2018SU04 Blog - April.pbix"
Il y a deux fichiers dans lesquels des rapports sont intégrés.
- Default.aspx - qui contient un rapport sans filtre
- PBIEMBEDDED.ASPX - qui contient un rapport avec le filtre
J'ai appliqué un filtre de base ici en javascript. Pour plus de filtres, veuillez consulter cette documentation https://github.com/microsoft/powerbi-javascript/wiki/Filters
La méthode d'implémentation est similaire à Power BI - l'application possède des données (MVC) - https://github.com/microsoft/powerbi-developer-samples/tree/master/app%20owns%20data
Les fichiers de classe sont les mêmes que celles mentionnées dans l'application possède des données (MVC).
À mesure que la méthode principale du service est utilisée, veuillez ajouter les valeurs aux choses suivantes dans la méthode web.config:
AppSettings
-applicationId
-workspaceId
-reportId
Service
-applicationSecret
-tenant
Avant d'intégrer, veuillez créer un rapport Power BI et publier pour Power BI O365 Workspace.
Pour une explication détaillée sur la façon de configurer le directeur du service, veuillez consulter cette vidéo https://www.youtube.com/watch?v=zhmfpdxliw0
Mais si la vidéo semble se longueur, veuillez vérifier la description ci-dessous sur la façon de le confgi ...
Aller au portail Azure
- Accédez à Azure Active Directory -> Repistrations d'applications
- Fournir un nom à l'application
- Pour le type de compte pris en charge, sélectionnez "Comptes dans n'importe quel répertoire organisationnel". Cette option est sélectionnée car, l'application où le PBI est intégré est hébergé indépendamment.
- Fournir un URI redirigé (facultatif) comme URL localhost
- Cliquez sur Register et vous obtiendrez les détails suivants - ID de demande (client), ID de répertoire (locataire), ID d'objet
- Pour le secret de la demande, sélectionnez "Certificats et secrets" -> "Nouveau client client". Pour les anciens portails Azure, ceux-ci portent le nom de "mot de passe".
- Fournir une description et le paramètre d'expiration et cliquez sur ajouter
- IMPORTANT - Dès que vous cliquez sur Ajouter, vous obtiendrez le secret de l'application à côté du nom de description. Copiez immédiatement le secret. Si vous pensez, vous pourrez obtenir le secret de la demande plus tard, ce ne sera pas possible. Vous devrez créer une nouvelle clé.
- Pour permettre à l'utilisateur de lire le fichier Power BI, vous devrez fournir des autorisations pour alimenter les API BI
- Accédez à des permssions API ou aux autorisations requises (Old Portal)
- Sous les autorisations d'API, cliquez sur "Ajouter une autorisation"
- Sélectionnez "Service Power BI"
- Sous "Autorisations déléguées" et "Autorisations d'application", pour l'instant, j'ai donné toutes les autorisations, mais je mettrai bientôt à jour sur les autorisations requises ou ce qui n'est pas.
- Maintenant à nouveau sous "Azure Active Directory" -> "Groupes" et cliquez sur "Nouveau groupe"
- Gardez le type de groupe par défaut et donnez un nom de groupe
- Sous les propriétaires, mentionnez qui sera le propriétaire du groupe
- Sous les membres, mentionnez le nom de l'application enregistré plus tôt
- Cliquez maintenant sur le bouton "Créer" pour créer un groupe
Allez au portail BI Power sous O365
- Accédez aux paramètres puis "portail d'administration"
- Dans le portail d'administration, accédez aux "paramètres des locataires" et dans ce "paramètres du développeur"
- Sous "Autoriser les directeurs de service à utiliser les API Power BI", a permis la fonctionnalité et mentionner le nom de groupe qui a été créé plus tôt et cliquez sur Appliquer
- Maintenant sous le portail d'administration, accédez à des espaces de travail
- Sélectionnez l'espace de travail et cliquez sur l'accès
- Mentionnez le nom du groupe et avec l'administrateur comme le rôle et cliquez sur Ajouter
- Maintenant, pour l'ID de l'espace de travail et l'ID de rapport, ouvrez n'importe quel rapport de l'espace de travail
- Dans l'URL, après le mot clé «Groupes», copiez le GUID qui sera votre ID d'espace de travail
- Dans l'URL, après le mot-clé «rapports», copiez le GUID qui sera votre ID de rapport
Mentionnez ces valeurs dans le web.config et le code restant aide à intégrer le rapport.
Codage heureux ...