Зачувување на историјата на ажурирање на барањата за Power Query

Речиси на секој тренинг за Power Query, кога ќе дојдеме до тоа како да ги ажурираме креираните барања и луѓето гледаат како новите податоци ги заменуваат старите податоци при ажурирањето, еден од слушателите ме прашува: „дали е можно да се уверам дека при ажурирањето, старите податоци се исто така некаде беа зачувани и целата историја на ажурирање беше видлива?

Идејата не е нова и стандардниот одговор на неа ќе биде „не“ – Power Query е стандардно конфигуриран да ги замени старите податоци со нови (што е потребно во огромното мнозинство на случаи). Меѓутоа, ако навистина сакате, можете да го заобиколите ова ограничување. И методот, како што ќе видите подоцна, е многу едноставен.

Размислете за следниот пример.

Да претпоставиме дека имаме датотека од клиентот како влезен податок (да ја наречеме, да речеме, извор) со список на производи што сака да ги купи во форма на „паметна“ динамична табела со име апликација:

Зачувување на историјата на ажурирање на барањата за Power Query

Во друга датотека (ајде да го наречеме по аналогија Приемник) создаваме едноставно барање за увоз на табела со производи од изворот преку Податоци – Добијте податоци – Од датотека – Од работна книга на Excel (Податоци — Добијте податоци — Од датотека — Од работна книга на Excel) и поставете ја добиената табела на листот:

Зачувување на историјата на ажурирање на барањата за Power Query

Доколку во иднина клиентот одлучи да направи измени на нарачката во неговото досие извор, потоа по ажурирањето на нашето барање (со десен клик или преку Податоци - Освежи ги сите) ќе ги видиме новите податоци во датотеката Приемник - сите стандардни.

Сега да се увериме дека при ажурирањето, старите податоци не се заменуваат со нови, туку новите се додаваат на старите – и со додавање датум-време, за да може да се види кога биле овие конкретни промени направени.

Чекор 1. Додавање датум-време на оригиналното барање

Ајде да отвориме барање апликацијаувезување на нашите податоци од извори додадете колона со датум-време на ажурирањето на неа. За да го направите ова, можете да го користите копчето Прилагодена колона табот Додавање колона (Додај колона - Прилагодена колона), а потоа внесете ја функцијата DateTime.LocalNow – аналог на функцијата TDATA (СЕГА) во Microsoft Excel:

Зачувување на историјата на ажурирање на барањата за Power Query

По кликнување на OK треба да завршите со убава колона како оваа (не заборавајте да го поставите форматот датум-време за неа со иконата во заглавието на колоната):

Зачувување на историјата на ажурирање на барањата за Power Query

Ако сакате, тогаш за плочата поставена на листот за оваа колона, можете да го поставите форматот датум-време со секунди за поголема точност (ќе треба да додадете две точки и „ss“ во стандардниот формат):

Зачувување на историјата на ажурирање на барањата за Power Query

Чекор 2: Барање за стари податоци

Сега ајде да создадеме друго барање што ќе дејствува како бафер што ги зачувува старите податоци пред ажурирањето. Избор на која било ќелија од добиената табела во датотеката Приемник, изберете на јазичето податоци Команда Од Табела/Опсег (Податоци - од табела/опсег) or Со лисја (Од лист):

Зачувување на историјата на ажурирање на барањата за Power Query

Ние не правиме ништо со табелата вчитана во Power Query, го нарекуваме барањето, на пример, стари податоци и притиснете Дома — Затвори и вчитај — Затвори и вчитај во… — Креирај само врска (Дома - Затвори&Вчитај - Затвори&Вчитај во... - Создај само врска).

Чекор 3. Спојување на стари и нови податоци

Сега назад на нашето оригинално барање апликација и додајте ги од долу старите податоци од претходното барање за бафер со командата Дома — Додадете барања (Дома - Додадете прашања):

Зачувување на историјата на ажурирање на барањата за Power Query

Тоа е се!

Останува да се вратиме во Excel преку Дома — Затворете и преземете (Дома - Затвори&Вчитај) и обидете се неколку пати да ја ажурирате целата наша структура со копчето Ажурирај ги сите табот податоци (Податоци - Освежи ги сите). Со секое ажурирање, новите податоци нема да ги заменат старите податоци, туку ќе ги туркаат подолу, задржувајќи ја целата историја на ажурирање:

Зачувување на историјата на ажурирање на барањата за Power Query

Сличен трик може да се користи при увоз од кој било надворешен извор (интернет-страници, бази на податоци, надворешни датотеки итн.) за да се задржат старите вредности за историјата ако ви треба.

  • Стожерна табела низ повеќе опсези на податоци
  • Составување табели од различни датотеки користејќи Power Query
  • Собирање податоци од сите листови од книгата во една табела

Оставете Одговор