|
|||||||
Время создания: 18.07.2020 21:35
Текстовые метки: Power Query
Раздел: !Закладки - MSO - Excel - Power Query
Запись: xintrea/mytetra_db_adgaver_new/master/base/1595097339cs8w6dws2l/text.html на raw.githubusercontent.com
|
|||||||
|
|||||||
Импорт данных из OneDrive и SharePoint в Power Query / BI 1336 12.06.2020 Скачать пример Если вы или ваша компания храните данные в облаке OneDrive или на корпоративном портале SharePoint, то напрямую подключиться к ним с помощью Power Query в Excel или из Power BI может оказаться непростой, как это ни странно, задачей. Когда я в своё время столкнулся с подобным вопросом, то с удивлением обнаружил, что не существует "законных" способов для её решения. В списке доступных источников данных в Excel и даже в Power BI (где набор коннекторов традиционно шире) почему-то отсутствует возможность подключения к файлам и папкам OneDrive. Так что все предлагаемые ниже варианты - в той или иной степени "костыли", требующие небольшой, но ручной "доводки напильником". Но у этих костылей есть большой плюс - они работают :) А в чём проблема? Короткая вводная для тех, кто последние 20 лет провел в коме не в теме. OneDrive - это облачное хранилище данных от Microsoft, доступное в нескольких вариантах:
Частным случаем OneDrive for Business является хранение данных на корпоративном портале SharePoint - в таком сценарии OneDrive выступает, по сути, одной из библиотек SharePoint'а. Доступ к файлам возможен либо через веб-интерфейс (сайт https://onedrive.live.com либо корпоративный сайт SharePoint) либо путем синхронизации выбранных папок с вашим ПК:
Обычно эти папки хранятся в профиле пользователя на диске С - путь к ним выглядит примерно как C:\Users\ИмяПользователя\OneDrive). За актуальностью файлов и синхронизацией всех изменений следит специальная программа - Агент OneDrive (синее или серое облачко в правом нижнем углу экрана):
А теперь главное. Если нам нужно загрузить данные из OneDrive в Excel (через Power Query) или в Power BI, то мы, конечно, можем указать в качестве источника локальные синхронизируемые файлы и папки обычным образом через Получить данные - Из файла - Из книги / Из папки (Get Data - From file - From workbook / Folder), но это не будет прямой ссылкой на облако OneDrive. То есть в будущем, при изменении, например, файлов в облаке другими пользователями, нам потребуется сначала выполнить синхронизацию (это бывает долго и не всегда удобно) и только потом обновлять наш запрос Power Query или модель в Power BI. Естественно, возникает вопрос: как импортировать данные из OneDrive / SharePoint напрямую, чтобы загрузка данных происходила непосредственно из облака? Вариант 1. Подключение к книге из OneDrive for Business или SharePoint
Дальше всё как при обычном импорте книги - выбираем нужные листы, умные таблицы для импорта и т.д. Вариант 2. Подключение к файлу из OneDrive Personal Для подключения к книге в личном (некорпоративном) облаке OneDrive подход будет уже другим:
В итоге из исходного кода должно получиться такое:
Вариант 3. Импорт содержимого целой папки из OneDrive for Business Если нужно залить в Power Query или Power BI содержимое не одного файла, а сразу целой папки (например, с отчетами), то подход будет чуть попроще:
Примечание: при наличии большого количества файлов на портале SharePoint этот способ будет существенно медленее двух предыдущих. Ссылки по теме |
|||||||
Так же в этом разделе:
|
|||||||
![]() |
|||||||
|
|||||||
|