Страницы: 1
RSS
Экспорт из Power Query, Как обменяться информацией между Excel с большим кол-м строк и Qlik Sense
 
Всем привет.
В поиске что-то находил, но решения проблемы не нашел.
Проблема следующая. Есть обработка нескольких таблиц в Power Query с итоговым количеством строк более 5млн. И постоянно увеличивается. Всю эту простыню мне необходимо загнать в Qlik Sense. Он принимает множество форматов, в т.ч. CSV. Прямого экспорта в csv либо другие форматы из PQ или PP нет. Пробовал костыль DAXStudio, он в CSV экспортирует, но около 4-х часов и в итоге вместо кириллицы получаю иероглифы. Помимо этого Qlik ругается, что файл слишком большой (около 300мб, максимум возможно только 50)
Вопросов несколько.
1. Какие возможные варианты экспорта модели данных
2. Может быть как-то настроить промежуточный костыль Access, через который в другой формат экспортнуть
3. Другие варианты подружить модель данных и Qlik
Заранее благодарю за ответы и советы
 
Экспортируйте через ДаксСтудию за определенные периоды, а не все сразу. Время экспорта 4 часа скорее всего связана со слабым хардом. У меня на SSD экспорт 1 млн занимает порядка 15 минут. Касаемо иероглифов - без примера не никто не подскажет.


зы: что это за версия клика такая с ограничением в 50мб? Вы наверное прикрепляете файл к запросу, а не используете файл как источник данных
 
Выгрузить из модели в csv можно попробовать и макросом. А вот что с кликом делать - уже не подскажу.
Вот горшок пустой, он предмет простой...
 
Suvik, https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=130680&a...
Добрый день. Я выгрузку делаю на сервер SQL.
От туда можно забрать данные тем же PQ уже из другого файла, или из Bi.
Других простых вариантов тоже не нашел.
Хотя случаются сложности с выгрузкой, и ничем не объяснимые глюки. На малых объемах этого не видно, но если от тысячи строк и далее, возможны сложности, то строки задвоятся, то выгрузка не пройдет.
Не знаю пока как с этим побороться, похоже что никак.
Но, в реальном проекте, уже год выгрузка отрабатывает, по тысячи строк в день примерно. Просто приходится проверять, чтобы все выгружаемые таблицы дошли до сервера.

Хочу добавить, что при огромных выгрузках, 100 000 строк и более, глюки могут усугубиться, поэтому в реальном проекте выгрузка на сервер происходит каждый день и по чуть чуть.
Изменено: lostandleft - 29.06.2021 11:58:34
 
mechanix 85, хард точно нормальный. Нашел метод как ускорить процесс. Сейчас попробую. Как потом добавлять данные в готовый файл csv? При добавлении нового месяца думал просто заменять его на новый.
С что делать с кириллицей?
Во вложении скрин полученного CSV
Изменено: Suvik - 29.06.2021 11:41:33
 
PooHkrd,Макрос пробовал. Какую-то ошибку выдает, решения не нашел, поэтому начал пробовать DAX
P.S. В тулсах все подключения галочки проставлял.
 
Цитата
mechanix 85 написал:
зы: что это за версия клика такая с ограничением в 50мб? Вы наверное прикрепляете файл к запросу, а не используете файл как источник данных
Пока не настроили путь в "расположение файлов" пытаюсь просто файлом загрузить данные. Вот и ругается. Может быть и с этим связано
 
Suvik, клик также может собирать файлы с папки. просто вместо пути //файл.csv указывайте //*.csv ну или с доп. маской. Поэтому формируйте файлы помесячно или поквартально. (но клик в десятки раз быстрее загружает данные, непонятно для чего двойная работа)

Пришлите лучше файл excel с парой строк в модели данных, гляну у себя через Студио
 
mechanix 85, декабрь - исходник с моделью данных, таблица - полученный через DAX csv
 
Кириллицу победил путем написания кода в DAX
https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=96224&am...
 
Suvik, если мысль опоздала, можно дополнить предыдущее сообщение
 
и теперь чтобы не прогружать старые данные в ДаксСтудио код будет:
Код
EVALUATE

FILTER('Продажи';'Продажи'[Дата накл.]>=date(2021;4;1))

таблицы и названия полей с вашей модели

 
Цитата
mechanix 85 написал:
и теперь чтобы не прогружать старые данные в ДаксСтудио код будет:
Спасибо. Нужная штука. Только теперь другая проблема. С кириллицей и экспортом разобрался. При экспортировании он текстовые ячейки заключает в кавычки, дату тоже текстом проставил и пишет её мне текстом вплоть до секунд. Соответственно в клике потом нечитаемая чушь с большим количеством ненужных кавычек. Название месяца тоже в кавычках все. Как этот недочет исправить можно?
 
Это такая фича Студио. Эти поля можно легко переименовать в клике по типу

[Дата`накл.] as [Дата накл.]

и дополнительно преобразовать текстовые даты с секундами в нормальную дату:
Код
date(left([Дата`накл.],10),'DD.MM.YYYY') as [Дата накл.]
Изменено: mechanix 85 - 29.06.2021 14:01:08
 
Цитата
mechanix 85 написал:
1date(left([Дата`накл.],10),'DD.MM.YYYY') as [Дата накл.]
Это в самом клике в скрипт прописывать? Или в DAX?
 
Это уже скрипт клика
 
Цитата
mechanix 85 написал:
date(left([Дата`накл.],10),'DD.MM.YYYY') as [Дата накл.]
По синтаксису сможете прокомментировать? Что-то ругается
 
на что именно? вместо [Дата`накл.] указать свое поле из csv

формат даты после Студио такой же как на скрине?
 
Цитата
mechanix 85 написал:
формат даты после Студио такой же как на скрине?
Да. Клик только недавно начал изучать. В скрипты толком не лез. В какую строку его добавлять нужно?
Во вложении скрин скрипта загрузки
 
Вместо Дата
Код
date(left([Дата],10),'DD.MM.YYYY') as [Дата]
Только почему у вас Студио не заменил шапку файла, которые содержали пробелы на апостроф  ` ? Скорее всего это изначальный код загрузки таблицы, сейчас там таких полей нет вот клик и матюкается
 
Цитата
mechanix 85 написал:
Вместо Дата
Получилось, спасибо. Есть ли варианты не в скрипте это исправлять? Дело в том, что этот файл-исходник будет лежать в папке, видимой кликом. И добавлять я его буду "расположением фалов". Есть сомнения, что в таком случае данные в самом клике обновляться не будут. Или будут?.. Т.к. при текущей ситуации, когда я просто закинул туда файл, потом этот файл на компе поменял, но в клике ничего не изменилось
 
Цитата
Suvik написал:
Спасибо. Нужная штука. Только теперь другая проблема. С кириллицей и экспортом разобрался. При экспортировании он текстовые ячейки заключает в кавычки, дату тоже текстом проставил и пишет её мне текстом вплоть до секунд. Соответственно в клике потом нечитаемая чушь с большим количеством ненужных кавычек. Название месяца тоже в кавычках все. Как этот недочет исправить можно?
В EVALUATE используйте SELECTCOLUMNS, что переименовать столбцы удобоваримо, а также преобразовать их в нужный формат, как даты.
Чтобы значения не заключались в кавычки, в настройках DAX Studio нужно снять галочку см.скриншот. И при сохранении выбирать Custom Export Format
А вобще, чтобы не городить огород, лучше все, что вы делаете в PQ перенести в скрипт загрузки Клика. У него очень продвинутые возможности, но да к сожалению все писать только ручками
Изменено: StepanWolkoff - 29.06.2021 16:55:25
 
Цитата
StepanWolkoff написал:
SELECTCOLUMNS, что переименовать столбцы удобоваримо, а также преобразовать их в нужный формат, как даты.
Наверно достал уже)) Но с синтаксисом проблемы. Первый аргумент - таблица, потом название столбца, потом на что меняем этот столбец. Если всё правильно понял. Но как прописать формат даты в этой функции?
Буду признателен, если полный код в DAX пропишите по выгрузке с форматом даты
Изменено: Suvik - 29.06.2021 17:19:17
 
Suvik, да пожалуйста. Еще раз выделил желтым, чтобы не забывали выбирать Custom Export Format, чтобы убрать кавычки вокруг текста

Код
EVALUATE
SELECTCOLUMNS (
    Orders,
    "CustomerName", Orders[Customer Name],
    "OrderDate1", FORMAT ( Orders[Order Date], "YYYY-MM-DD" ),
    "OrderDate2", FORMAT ( Orders[Order Date], "DD.MM.YYYY" )
)
Изменено: StepanWolkoff - 29.06.2021 17:30:09
 
Цитата
StepanWolkoff написал:
Suvik , да пожалуйста. Еще раз выделил желтым, чтобы не забывали выбирать Custom Export Format, чтобы убрать кавычки вокруг текста
Новый день новые проблемы. Путем выполнения запроса экспорт ведется в кодировке, которая не воспринимает кириллицу. Если сохранять не дефолтным форматом, а выбирать нужную кодировку, то появляются кавычки. В принципе их можно будет убрать потом общей заменой в блокноте. Если в запросе это можно будет прописать, то тоже хорошо
UPD. Вопрос закрыт. Всем спасибо за содействие и помощь!
Изменено: Suvik - 30.06.2021 16:24:42
Страницы: 1
Наверх