GroupBy ve Ungroup işlevleri

Şunlar için geçerlidir: Tuval uygulamaları Model yönetimli uygulamalar Power Pages

Bir tablodaki kayıtları gruplandırır ve gruplandırılmış olanların grubunu çözer.

Description

GroupBy işlevi, kayıtları bir veya daha fazla sütundaki değerlere göre gruplandırılmış bir tablo döndürür. Aynı gruptaki kayıtlar tek bir kayda alınır ve kalan sütunların iç içe geçmiş tablosunu içeren bir sütun eklenir.

Ungroup işlevi, GroupBy işleminin tersini yapar. Bu işlev bir tabloyu gruplandırılmış olan kayıtlarını ayrı kayıtlar haline getirerek döndürür.

Kayıtları GroupBy işlevini kullanarak gruplandırabilir, döndürülen tabloyu değiştirebilir ve değiştirilen tablodaki kayıtların grubunu Ungroup işleviyle çözebilirsiniz. Örneğin, şu yaklaşımı kullanarak bir kayıt grubunu kaldırabilirsiniz:

  • GroupBy işlevini kullanın.
  • Filter işlevini kullanarak bir kayıt grubunun tamamını kaldırın.
  • Ungroup işlevini kullanın.

Ayrıca gruplandırma işlemine göre sonuç toplamı alabilirsiniz:

  • GroupBy işlevini kullanın.
  • AddColumns işlevini Sum, Average ve diğer toplama işlevleriyle birlikte kullanarak grup tablolarının toplamını içeren yeni bir sütun ekleyebilirsiniz.
  • DropColumns işlevini kullanarak gruplandırılan tabloyu bırakabilirsiniz.

Gruptan çıkarma, GroupBy'ye beslenen kayıtların özgün sırasını korumaya çalışır. Bu her zaman mümkün değildir (örneğin, özgün tablonun boş kayıtlar içermesi durumunda).

Power Apps'te tablo, tıpkı dize veya sayı gibi bir değerdir. Bir işlev için tabloyu bağımsız değişken olarak belirtebilirsiniz ve bir işlev bir tablo döndürebilir. GroupBy ve Ungroup bir tabloyu değiştirmez; bunun yerine bir tabloyu bağımsız değişken olarak alır ve farklı bir tablo döndürür. Daha fazla ayrıntı için bkz. tablolarla çalışma.

Not

3.24042 sürümünden önce Power Apps'te, sütun adları çift tırnak kullanılarak metin dizesiyle belirtilirdi ve bir veri kaynağına bağlıysa bunların ayrıca mantıksal adlar olması da gerekiyordu. Örneğin, çift tırnaklı "cr43e_name" mantıksal adı, tırnaklar olmadan Ad görünen adının yerine kullanılıyordu. Boşluklar bulunan sütun adlarını içeren SharePoint ve Excel veri kaynakları için her boşluk, "_x0020_" ile belirtilirdi: Örneğin, "Sütun Adı", "Sütun_x0020_Adı" olarak. Bu sürümden sonra tüm uygulamalar bu makalede açıklanan yeni sözdizimi şeklinde otomatik olarak güncelleştirildi.

Sözdizimi

GroupBy( Tablo,SütunAdı1 [, SütunAdı2, ... ], GrupSütunAdı)

  • Tablo - Gerekli. Gruplandırılacak tablo.
  • ColumnNames - Gerekli. Kayıtların gruplandırılması için kullanılacak Tablo içindeki sütun adları. Bu sütunlar sonuç olarak elde edilen tablodaki sütunları oluşturur.
  • GroupColumnName - Gerekli. SütunAdları içinde olmayan kayıt verilerinin depolama alanı için sütun adı.

Ungroup( Table,GroupColumnName )

  • Tablo - Gerekli. Grubu çözülecek tablo.
  • GroupColumnName - Gerekli. GroupBy işleviyle belirlenen kayıt verilerini içeren sütun.

Örnekler

Koleksiyon oluşturma

  1. Bir düğme ekleyin ve Text özelliğini düğmede Özgün yazacak şekilde ayarlayın.
  2. Özgün düğmesinin OnSelect özelliğini şu formül olarak ayarlayın:
ClearCollect( CityPopulations,
    { City: "London",    Country: "United Kingdom", Population: 8615000},
    { City: "Berlin",    Country: "Germany",        Population: 3562000},
    { City: "Madrid",    Country: "Spain",          Population: 3165000},
    { City: "Rome",      Country: "Italy",          Population: 2874000},
    { City: "Paris",     Country: "France",         Population: 2273000},
    { City: "Hamburg",   Country: "Germany",        Population: 1760000},
    { City: "Barcelona", Country: "Spain",          Population: 1602000},
    { City: "Munich",    Country: "Germany",        Population: 1494000},
    { City: "Milan",     Country: "Italy",          Population: 1344000}
)
  1. Alt tuşunu basılı tutarak Özgün düğmesini seçin.

    Şu verileri içeren CityPopulations adlı bir koleksiyon oluşturdunuz:

    CityPopulations örneği.

  2. Bu koleksiyonu görüntülemek için Dosya menüsünden Koleksiyonlar'ı seçin ve ardından CityPopulations koleksiyonunu belirleyin. Koleksiyondaki ilk beş kayıt görünür:

    CityPopulations koleksiyonu.

Kayıtları gruplandırma

  1. Başka bir düğme ekleyin ve Text özelliğini "Group" olarak ayarlayın.

  2. Düğmenin OnSelect özelliğini şu formül olarak ayarlayın:

    ClearCollect( CitiesByCountry, GroupBy( Şehir Nüfusları, Ülke, Şehirler ) )

  3. Alt tuşunu basılı tutarak Grup düğmesini seçin.

    CitiesByCountry adlı bir koleksiyon oluşturdunuz ve önceki koleksiyonun kayıtlarını Country sütunuyla gruplandırarak eklediniz.

    Gruplanan şehirler.

  4. Bu koleksiyondaki ilk beş kaydı görüntülemek için Dosya menüsünden Koleksiyonlar'ı seçin.

    Ülkeye/bölgeye göre şehirler.

  5. Ülkedeki/bölgedeki şehirlerin nüfuslarını görüntülemek için ilgili ülkenin/bölgenin (örneğin, Almanya) Şehirler sütunundaki tablo simgesini seçin:

    Nüfus - Almanya.

Kayıtları filtreleme ve gruplarını çözme

  1. Başka bir düğme ekleyin ve Text özelliğini düğmede "Filter" yazacak şekilde ayarlayın.

  2. Düğmenin OnSelect özelliğini şu formül olarak ayarlayın:

    ClearCollect( CitiesByCountryFiltered, Filter( CitiesByCountry, Ülkede "e" ) )

  3. Alt tuşunu basılı tutarak, eklediğiniz düğmeyi seçin.

    CitiesByCountryFiltered adında ve yalnızca içinde "e" harfi bulunan ülkeleri içeren (İspanya veya İtalya'yı içermeyen) üçüncü bir koleksiyon oluşturdunuz.

    CitiesByCountryFiltered.

  4. Bir düğme daha ekleyin ve Text özelliğini düğmede "Ungroup" yazacak şekilde ayarlayın.

  5. Düğmenin OnSelect özelliğini şu formül olarak ayarlayın:

    ClearCollect( CityPopulationsUngrouped, Ungroup( CitiesByCountryFiltered, Şehirler ) )

    Sonuç şu şekilde olur:

    Grubu çözdükten sonra ülkeye/bölgeye göre şehirler.

Sonuçları toplama

Gruplandırılmış tabloda gerçekleştirebileceğimiz başka bir işlem de sonuçları derlemektir. Bu örnekte, her ülke/bölgedeki büyük şehirlerin nüfuslarını toplayacağız.

  1. Başka bir düğme ekleyin ve Text özelliğini düğmede "Sum" yazacak şekilde ayarlayın.

  2. "Sum" düğmesinin OnSelect özelliğini şu formül olarak ayarlayın:

    ClearCollect( CityPopulationsSum, AddColumns( CitiesByCountry, 'Şehir Nüfuslarının Toplamı', Sum( Şehirler, Nüfus ) ) )

    Sonuç şu şekilde olur:

    Şehirler toplamı.

    AddColumns , temel CitiesByCountry koleksiyonuyla başlar ve Şehir Nüfuslarının Toplamı adlı yeni bir sütunekler. Bu sütunların değerleri Sum( Cities, Population ) formülüyle satır satır hesaplanır. AddColumns , her satır için Şehirler sütununun (bir tablo) değerini sağlar ve Sum , bu alt tablonun her satırı için Nüfus'u toplar.

    İstediğimiz toplamı elde ettiğimize göre DropColumns işlevini kullanarak alt tabloları kaldırabiliriz.

  3. Başka bir düğme ekleyin ve Text özelliğini düğmede "SumOnly" yazacak şekilde ayarlayın.

  4. "SumOnly" düğmesinin OnSelect özelliğini şu formül olarak ayarlayın:

    ClearCollect( CityPopulationsSumOnly, DropColumns( CityPopulationsSum, Şehirler ) )

    Sonuç şu şekilde olur:

    Ülkeler toplamı.

    Bu tablonun grubunu çözmeye gerek kalmadığına dikkat edin.