Power Query sorgusu güncelleme geçmişini kaydetme

Neredeyse her Power Query eğitiminde, oluşturulan sorguların nasıl güncelleneceğine geldiğimizde ve insanlar güncelleme yaparken eski verilerin yerine yeni verilerin nasıl geçtiğini gördüğünde, dinleyicilerden biri bana şunu soruyor: "Güncelleme sırasında eski verilerin güncel olduğundan emin olmak mümkün mü? ayrıca bir yere kaydedildi ve tüm güncelleme geçmişi görünür müydü?

Fikir yeni değil ve buna verilen standart yanıt "hayır" olacaktır - Power Query, varsayılan olarak eski verileri yenileriyle değiştirmek üzere yapılandırılmıştır (bu, çoğu durumda gereklidir). Ancak, gerçekten istiyorsanız, bu sınırlamayı aşabilirsiniz. Ve daha sonra göreceğiniz gibi yöntem çok basittir.

Aşağıdaki örneği düşünün.

İstemciden girdi verisi olarak bir dosyamız olduğunu varsayalım (diyelim, diyelim ki, Kaynak) adında bir “akıllı” dinamik tablo şeklinde satın almak istediği ürünlerin listesi ile Uygulama:

Power Query sorgusu güncelleme geçmişini kaydetme

Başka bir dosyada (analoji ile diyelim Alıcı) aracılığıyla Kaynaktan ürünler içeren bir tabloyu içe aktarmak için basit bir sorgu oluşturuyoruz. Veri – Veri Al – Dosyadan – Excel Çalışma Kitabından (Veri — Veri al — Dosyadan — Excel çalışma kitabından) ve ortaya çıkan tabloyu sayfaya yükleyin:

Power Query sorgusu güncelleme geçmişini kaydetme

Gelecekte müşteri dosyasındaki siparişte değişiklik yapmaya karar verirse Kaynak, ardından talebimizi güncelledikten sonra (sağ tıklayarak veya Veri – Tümünü Yenile) dosyada yeni verileri göreceğiz Alıcı - hepsi standart.

Şimdi, güncelleme yaparken eski verilerin yenileriyle değiştirilmediğinden, yenilerinin eskilerine eklendiğinden ve bu belirli değişikliklerin ne zaman yapıldığının görülebilmesi için bir tarih-saat eklendiğinden emin olalım. yaptı.

Adım 1. Orijinal sorguya tarih-saat ekleme

bir istek açalım Uygulamaverilerimizi içe aktarıyoruz Kaynakve güncellemenin tarih-saatini içeren bir sütun ekleyin. Bunu yapmak için butonunu kullanabilirsiniz. Özel sütun çıkıntı Sütun ekleme (Sütun ekle — Özel sütun)ve ardından işlevi girin DateTime.LocalNow – fonksiyonun analogu TDATA (ŞİMDİ) • Microsoft Excel:

Power Query sorgusu güncelleme geçmişini kaydetme

Tıkladıktan sonra OK bunun gibi güzel bir sütunla sonuçlanmalısınız (sütun başlığındaki simgeyle bunun için tarih-saat biçimini ayarlamayı unutmayın):

Power Query sorgusu güncelleme geçmişini kaydetme

İsterseniz, bu sütun için sayfaya yüklenen plaka için, daha fazla doğruluk için tarih-saat biçimini saniyelerle ayarlayabilirsiniz (standart biçime iki nokta üst üste ve "ss" eklemeniz gerekir):

Power Query sorgusu güncelleme geçmişini kaydetme

2. Adım: Eski verileri sorgulayın

Şimdi eski verileri güncellemeden önce kaydeden bir arabellek görevi görecek başka bir sorgu oluşturalım. Dosyada ortaya çıkan tablonun herhangi bir hücresini seçme Alıcı, sekmede seçin Veri Komuta Tablodan/Aralıktan (Veri — Tablodan/aralıktan) or yaprakları ile (sayfadan):

Power Query sorgusu güncelleme geçmişini kaydetme

Power Query'de yüklü tablo ile hiçbir şey yapmıyoruz, sorguyu çağırıyoruz, örneğin, eski veriler ve basın Ana Sayfa — Kapat ve yükle — Kapat ve yükle… — Yalnızca bağlantı oluştur (Ana Sayfa — Kapat&Yükle — Kapat&Yükle… — Yalnızca bağlantı oluştur).

Adım 3. Eski ve yeni verilerin birleştirilmesi

Şimdi orijinal sorgumuza geri dönün Uygulama ve komutla önceki arabellek isteğindeki eski verileri aşağıdan ekleyin Ana Sayfa — İstek Ekle (Ana Sayfa — Sorguları Ekle):

Power Query sorgusu güncelleme geçmişini kaydetme

Bu kadar!

Excel'e geri dönmek için kalır Ana Sayfa — Kapatın ve indirin (Ana Sayfa — Kapat&Yükle) ve butonu ile tüm yapımızı güncellemek için birkaç kez deneyin Güncelleme Tüm çıkıntı Veri (Veri — Tümünü Yenile). Her güncellemede, yeni veriler eski verilerin yerine geçmeyecek, ancak tüm güncelleme geçmişini koruyarak aşağıya itecektir:

Power Query sorgusu güncelleme geçmişini kaydetme

Benzer bir hile, herhangi bir dış kaynaktan (İnternet siteleri, veritabanları, harici dosyalar vb.) içe aktarırken, gerekirse eski değerleri geçmiş için tutmak için kullanılabilir.

  • Birden çok veri aralığında pivot tablo
  • Power Query kullanarak farklı dosyalardan tabloları birleştirme
  • Kitabın tüm sayfalarından verileri tek bir tabloda toplama

Yorum bırak