Команды удобно копировать из блога:
https://bi-tv.ru/video/23_updating_M_...
Редактирование кода скриптов Power Query в VS Code - решение Ben Gribaudo: https://bengribaudo.com/blog/2020/07/...
Устанавливаем VS Code https://code.visualstudio.com/Download. При установке ставим галку “Add to Path”.
В VS Code устанавливаем расширение “Power Query / M Language” (ctrl+shift+P - установить расширение - вводим название).
Устанавливаем PowerShell Core 7 c github: https://github.com/powershell/powersh....
Устанавливаем Data Mashup Cmdlet, для этого вводим PowerShell Core 7 команду:
Install-Module -Name DataMashup -AllowPrerelease
Если выдает ошибку - чтобы заработала возможность установки скриптов из галереи используем команду.
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Решение найдено здесь.
В скрипте функции заменяем code на путь до VS Code на вашем компьютере:
function Edit-DataMashup {
param (
[Parameter(Mandatory=$True, Position=0)]
[string]$File
)
$originalMashup = Export-DataMashup -Raw $File -ErrorAction Stop
$tempFile = New-TemporaryFile -ErrorAction Stop
try {
$tempFile = Rename-Item $tempFile ($tempFile.Name + ".m") -PassThru -ErrorAction Stop
$originalMashup | Out-File $tempFile -NoNewline -ErrorAction Stop
Start-Process "code" "`"$($tempFile)`"" -Wait
$postEditMashup = Get-Content $tempFile -Raw -ErrorAction Stop
if ($originalMashup -eq $postEditMashup) {
$successful = $true
return
}
Import-DataMashup -Raw $File -Experimental -Mashup $postEditMashup -ErrorAction Stop
$successful = $true
}
finally {
if ($successful -ne $true) {
Write-Error "Failed to Save Modified Power Query mashup:`r`n$($postEditMashup)"
}
Remove-Item $tempFile
}
}
Создаем файл Profile, чтобы положить в него функцию, чтобы после перезапуска Power Shell она была доступна
if (!(Test-Path -Path $PROFILE)) {
New-Item -ItemType File -Path $PROFILE -Force
}
Открываем файл Profile командой ниже, вставляем в notepad функцию из шага 6, сохраняем файл.
notepad $PROFILE
Перезапускаем PowerShell 7
Редактируем код Power Query XLSX и PBI файлов в VS Code командой:
Edit-DataMashup SomeFile.xlsx