Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

MBAUG - Power BI REST API + PowerShell en action

265 views

Published on

Version [sans animation...] d'une session sur les options Power BI REST API + PowerShell que j'ai eu le plaisir de présenter au groupe MBAUG de Montréal

Published in: Software
  • Be the first to comment

  • Be the first to like this

MBAUG - Power BI REST API + PowerShell en action

  1. 1. Denys Chamberland Senior BI Developer © MBAU2018 – Denys Chamberland Power BI REST API + PowerShell en action
  2. 2. Agenda • Revue versions modules Powershell • Exemple d’une logique fictive à reproduire • Demo • Enregregistrement d’application AAD • Revue de logique du script ./copyWorkspace.ps1 Powershell • Exécution de code sur console Windows Powershell • Questions
  3. 3. Modules -MSOnline - Deprecated https://docs.microsoft.com/en-us/powershell/module/msonline/?view=azureadps-1.0 MSOnline
  4. 4. Modules - AzureAD https://docs.microsoft.com/en-gb/powershell/module/Azuread/?view=azureadps-2.0 AzureAD
  5. 5. Modules – Power BI REST APIs https://msdn.microsoft.com/en-US/library/mt147898.aspx Power BI REST API
  6. 6. Modules – MicrosoftPowerBIMgmt https://docs.microsoft.com/en-us/powershell/power-bi/overview?view=powerbi-ps Power BI REST API MicrosoftPowerBIMgmt
  7. 7. Options versions de modules PowerShell
  8. 8. Modèle de cycle de déploiement
  9. 9. DEV Workspace - Reports
  10. 10. DEV Workspace - Reports
  11. 11. DEV Workspace - Reports
  12. 12. DEV Workspace - Reports
  13. 13. DEV Workspace - Reports
  14. 14. DEV Workspace - Datasets
  15. 15. DEV Workspace - Datasets
  16. 16. DEV Workspace - Datasets
  17. 17. DEV Workspace - Datasets
  18. 18. DEV Workspace - Datasets
  19. 19. https://dev.powerbi.com/apps Option d’enregistrement: AAD [Azure Active Directory]
  20. 20. https://dev.powerbi.com/apps Option d’enregistrement: AAD [Azure Active Directory]
  21. 21. https://dev.powerbi.com/apps Option d’enregistrement: AAD [Azure Active Directory]
  22. 22. https://dev.powerbi.com/apps Option d’enregistrement: AAD [Azure Active Directory]
  23. 23. https://dev.powerbi.com/apps Option d’enregistrement: AAD [Azure Active Directory]
  24. 24. https://dev.powerbi.com/apps Option d’enregistrement: AAD [Azure Active Directory]
  25. 25. https://dev.powerbi.com/apps Option d’enregistrement: AAD [Azure Active Directory]
  26. 26. https://dev.powerbi.com/apps Option d’enregistrement: AAD [Azure Active Directory]
  27. 27. Option d’enregistrement:– MS Azure Portal
  28. 28. Option d’enregistrement:– MS Azure Portal
  29. 29. Option d’enregistrement:– MS Azure Portal
  30. 30. Option d’enregistrement:– MS Azure Portal
  31. 31. Option d’enregistrement:– MS Azure Portal
  32. 32. Option d’enregistrement:– MS Azure Portal
  33. 33. Option d’enregistrement:– MS Azure Portal
  34. 34. Option d’enregistrement:– MS Azure Portal
  35. 35. Option d’enregistrement:– MS Azure Portal
  36. 36. Edit Manifest:– MS Azure Portal !!?
  37. 37. Edit Manifest:– MS Azure Portal
  38. 38. Edit Manifest:– MS Azure Portal "availableToOtherTenants": true
  39. 39. Edit Manifest:– MS Azure Portal "availableToOtherTenants": false
  40. 40. Edit Manifest:– MS Azure Portal
  41. 41. Edit Manifest:– MS Azure Portal
  42. 42. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell PS> Install-Module -Name AzureRM.profile -RequiredVersion 4.1.1
  43. 43. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell PS> Install-Module -Name AzureRM.profile -RequiredVersion 4.1.1
  44. 44. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell PS> Install-Module -Name AzureRM.profile -RequiredVersion 4.1.1
  45. 45. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell PS> Install-Module -Name AzureRM.profile -RequiredVersion 4.1.1
  46. 46. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  47. 47. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  48. 48. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  49. 49. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  50. 50. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  51. 51. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  52. 52. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  53. 53. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  54. 54. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  55. 55. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  56. 56. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  57. 57. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  58. 58. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell Cette condition évite les redondances inutiles d’exportation de dataset lors de chaque exportation ultérieure de reports! # only export if this dataset hasn’t been seen
  59. 59. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  60. 60. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  61. 61. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  62. 62. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  63. 63. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  64. 64. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell # clone report if the underlying dataset already exists in the target workspace, but we haven’t moved the report itself yet Cette méthode de clonage évite toute redondance inutile de dataset lors de chaque exportation ultérieure de reports!
  65. 65. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  66. 66. ./copyWorkspace.ps1 - Comment ça marche https://github.com/Azure-Samples/powerbi-powershell
  67. 67. ./copyWorkspace.ps1 - Comment ça marche
  68. 68. ./copyWorkspace.ps1 - Comment ça marche
  69. 69. Exécution ./copyWorkspace.ps1 - console Windows Powershell
  70. 70. Exécution ./copyWorkspace.ps1 - console Windows Powershell
  71. 71. Exécution ./copyWorkspace.ps1 - console Windows Powershell
  72. 72. Exécution ./copyWorkspace.ps1 - console Windows Powershell
  73. 73. Exécution ./copyWorkspace.ps1 - console Windows Powershell
  74. 74. Exécution ./copyWorkspace.ps1 - console Windows Powershell
  75. 75. Exécution ./copyWorkspace.ps1 - console Windows Powershell
  76. 76. Exécution ./copyWorkspace.ps1 - console Windows Powershell
  77. 77. Exécution ./copyWorkspace.ps1 - console Windows Powershell
  78. 78. Exécution ./copyWorkspace.ps1 - console Windows Powershell
  79. 79. Exécution ./copyWorkspace.ps1 - console Windows Powershell
  80. 80. Exécution ./copyWorkspace.ps1 - console Windows Powershell
  81. 81. MBAUGTestWorkspace – Reports Yeeesss
  82. 82. MBAUGTestWorkspace – Reports Yeeesss
  83. 83. MBAUGTestWorkspace – Reports Yeeesss
  84. 84. MBAUGTestWorkspace – Reports Yeeesss
  85. 85. MBAUGTestWorkspace – Reports Yeeesss
  86. 86. MBAUGTestWorkspace – Datasets Yeeesss
  87. 87. MBAUGTestWorkspace – Datasets Yeeesss
  88. 88. MBAUGTestWorkspace – Datasets Yeeesss
  89. 89. MBAUGTestWorkspace – Datasets Yeeesss
  90. 90. MBAUGTestWorkspace – Datasets Yeeesss
  91. 91. N.B: Limites… • On ne peut ici reproduire que les données [datasets] générées a partir de Power BI Desktop – i.e. les données obtenues en streaming datasets, données accompagnant les exemples en ligne [Samples…], etc., ne sont pas prises en charge. • On doit disposer de droits d'édition relatifs au Workspace source, car des autorisations d'édition sont exigées pour l'exportation des fichier PBIX. • Le script de clonage PowerShell ne copie pas les cédules d'actualisation, les alertes, les abonnements ou les memberships relatifs à un Workspace - ceux-ci devront être recréés manuellement sur l'espace de travail Workspace ciblé.
  92. 92. Merci à tous!
  93. 93. Questions?
  94. 94. Liens de références utiles… https://powerbi.microsoft.com/en-us/blog/working-with-powershell-in-power-bi/ https://www.sqlshack.com/connect-query-power-bi-azure-using-powershell/ http://blogs.solidq.com/en/businessanalytics/ how-to-refresh-power-bi-dataset-from-an-on-premise-power-shell-script/ http://angryanalyticsblog.azurewebsites.net/index.php/2018/02/16/ power-bi-audit-log-analytics-solution/ https://www.c-sharpcorner.com/article/install-power-bi-powershell-in-your-machine https://github.com/Azure-Samples/powerbi-powershell/blob/master/rebindReport.ps1

×