Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Power Query сохранение старых данных при обновлении.
 
Коллеги, добрый день! В списке приемов у Николая есть подключение через power Query к текущему курсу валют.

Как сделать, чтобы power query импортировал курс валют на текущую дату, а при новой дате старую "Сохранял как значение", а новую добавлял.
Может макрос какой-нибудь. Есть какие-нибудь идеи?
Исследователь
 
Макрос "какой нибудь" у Николая есть в примерах:ссылка

P.S. тема похожа на плохую попытку пропиарить левую группу вконтакте. Чисто субъективное мнение - если человек с такими вопросами предлагает услуги по автоматизации в Excel, то стоит 2 или 3 раза задуматься о получении а уж тем-более об оплате таких услуг.
Изменено: Astroid1 - 28 Фев 2017 13:21:32
 
посмотрит тут
Через событие вариант, а Андрей  на Self Referencing Tables  рекомендовал.  
Изменено: БМВ - 28 Фев 2017 10:27:34
 
Идеи есть. Надо в запросе задавать интервал дат. Начальная - статичная, последняя - текущая. Как именно - не скажу, пока не приведете подпись в порядок, в соответствии с правилами форума.
Скрытый текст
Изменено: The_Prist - 28 Фев 2017 10:33:45
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Astroid1, Спасибо. Увидел макрос. Так и знал, что встретят на форуме меня с рапростертыми объятиями. Такая уж у нас культура, кстати, ничего не предлагал.
Цитата
Astroid1 написал: P.S. тема похоже на плохую попытку пропиарить левую группу вконтакте.

БМВ, большое спасибо!
The_Prist, спасибо! Начал изучать PQ в прошлом месяце.

Изменил подпись.
Исследователь
 
Запрос будет такой:
Код
let
    Источник = Web.Page(Web.Contents("http://cbr.ru/currency_base/dynamics.aspx?VAL_NM_RQ=R01235&date_req1=01.01.2017&date_req2="&DateTime.ToText(DateTime.LocalNow(), "dd.MM.yyyy")&"&rt=1&mode=1")),
    Data0 = Источник{0}[Data],
    #"Измененный тип" = Table.TransformColumnTypes(Data0,{{"Дата", type date}, {"Единиц", Int64.Type}, {"Курс", type number}})
in
    #"Измененный тип"


вернет таблицу с курсами USD от 1 января 2017 по текущую дату. Если нужна другая валюта, то надо изменить код - R01235. Например, на код EURO:
"http://cbr.ru/currency_base/dynamics.aspx?VAL_NM_RQ=R01239&date_req1=01.01.2017&date_req2="&DateTime.ToText(DateTime.LocalNow(), "dd.MM.yyyy")&"&rt=1&mode=1"
доступные коды можно найти на сайте ЦБР.
Так же можно для этого создать отдельный параметр.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Цитата
DoExcellent написал:
Так и знал, что встретят на форуме меня с рапростертыми объятиями. Такая уж у нас культура, кстати, ничего не предлагал.
Такая уж у нас культура - не читать Правила )
 
Всем привет. Ребят такой вопрос. Есть SQL сервер откуда через query выгружаются данные сразу в пивот, но вот в чем проблема, данные обновляются каждый день большим объемом. И чтобы просто обновить пивот тратиться драгоценное время. Можно ли как-нибудь сделать, чтобы добавлялись только новые данные, чтобы query не обращался к старым данным.
p.s. выгрузка около 12 млн строк.
знаю что в bi есть такая функция, и основываясь что он также работает на query, думаю может есть такая функция и в екселе.  
 
Если мне не изменяет мой склероз, то эта функция появилась буквально "на днях", и только в версии PBI Premium. А значит до Экселовского PP это если дойдет когда-нибудь, то вряд ли скоро.
 
Да ладно, 12млн строк долго грузятся? Может долго запрос на стороне сервера выполняется? Или много столбцов с большим количеством уникальных значений. Параметры компа какие, на котором выполняется загрузка в пивот: разрядность экселя и объем оперативной памяти.
 
StepanWolkoff, lenovo t430 плюс интернет через прокси.
Оперативная 6гб разряд 32, it не даёт ставить 64
 
А может ли причиной долгой загрузки, то что после это все ещё добавляется в data model?
 
Цитата
ANSWERIVER написал:
долгой загрузки,
Долго это вообще сколько? 10 мин? час? сутки?
Лично у меня обновление модели из кучи xlsx файлов в 8 млн строк занимает 3-4 минуты, и это с учетом пересчета в сводной вычисляемых столбцов, средних по сложности мер, если этот же объем грузить из csv будет еще быстрее.
разрядность офиса, как я думаю, вряд ли критически влияет на скорость, оно влияет только на объем доступной приложению оперативки, ваши 6 гигов идут лесом, ибо винда, если она тоже 32 бит, адресует только 3,7, а офис может использовать только 2 гига.
Изменено: PooHkrd - 2 Окт 2018 10:05:07
 
Уж сколько раз твердили миру. Ни Power BI, ни тем более Power Query ни разу не хранилище данных.
Хотите инкрементное обновление при таком объеме данных - держите отдельную БД, подгружайте в нее новые данные и пользуйте затем PBI/PQ по назначению: визуализация и массажирование :)
F1 творит чудеса
 
Цитата
Максим Зеленский написал:
ни разу не хранилище данных
Дык, хочется всего и сразу. Если следовать подходу Data Warehouse, то может выясниться, что  не нужно тянуть в модель 12 миллионов записей. Вполне может оказаться, что одного миллиона достаточно, главное правильно их подготовить и обобщить в хранилище.
Но это же изучить нужно, шишек набить и заниматься поддержанием хранилища, а так не хочется заниматься дополнительной работой.
 
Андрей VG, я замечаю, что попытки решить такого рода проблемы как раз открывают для людей новые перспективы :) Раньше довольстововались Excel, затем появился PQ - можно собирать данные, затем Power BI - собирать и анализировать / красоту наводить, следующий шаг - производительность и объемы - закономерно ведет в БД/DWH и так далее.
F1 творит чудеса
 
Цитата
Максим Зеленский написал:
такого рода проблемы как раз открывают для людей новые перспективы
Открывают, только первая реакция :)  На моей памяти за три года выкладывания решения на Power Query такая реакция была: Ух, круто, побежал, пошёл или хотя бы попробую изучить - всего лишь у десятка человек :(
Изменено: Андрей VG - 4 Окт 2018 08:27:03
Страницы: 1
Читают тему (гостей: 1)
Наверх