Multilookup İşlevi (Rapor Oluşturucusu 3.0 ve SSRS)

Ad/değer çiftlerini içeren bir dataset nesnesinden belirtilen adlar küme için ilk eşleşen değerler küme döndürür.

Not

Business Intelligence Development Studio'daki Rapor Oluşturucusu 3.0 ve Rapor Tasarımcısı ile rapor tanımlarını (.rdl) oluşturabilir ve değiştirebilirsiniz. Her yazma ortamı raporları ve ilişkili öğeleri oluşturmak, açmak ve kaydetmek için farklı yollar sağlar. Daha fazla bilgi için, Web'de microsoft.com sitesinde Rapor Tasarımcısı'nda ve Oluşturucusu 3.0'da Rapor Tasarlama makalesine bakın.

Sözdizimi

Multilookup(source_expression, destination_expression, result_expression, dataset)

Parametreler

  • source_expression
    (VariantArray) Geçerli değerlendirilen bir ifade kapsam adları veya yükleneceği yer aramak için anahtar küme belirtir veÖrneğin, değerli bir parametre için =Parameters!IDs.value.

  • destination_expression
    (Variant) Bir dataset içindeki her satırı için değerlendirilir ve adını veya üzerinde eşleştirmek için anahtar belirtir bir ifade.Örneğin, =Fields!ID.Value.

  • result_expression
    (Variant) Satır DataSet için değerlendirilen bir ifade olduğu source_expression = destination_expression, ve belirleyen bir değer almak içinÖrneğin, =Fields!Name.Value.

  • dataset
    Rapordaki bir veri kümesinin adını belirten bir sabit.Örneğin, "Renkler".

Döndür

Döndürür bir VariantArray, veya Nothing , var. hiçbir eşleşme

Açıklamalar

Use Multilookup to retrieve a set of values from a dataset for name-value pairs where each pair has a 1-to-1 relationship.MultiLookup is the equivalent of calling Lookup for a set of names or keys.Örneğin, birincil anahtar tanımlayıcılara üzerinde temel alan bir değerli parametresi için kullanabileceğiniz Multilookup , bir ifade parametresi veya tablo. bağlı olduğu dataset nesnesinden ilişkili değerleri almak için bir tablodaki bir metin kutusuna

Multilookup aşağıdakileri yapar:

Belirli bir ad için ad-değer çiftleriyle dataset nesnesinden tek bir değer almak için 1-1 ilişki burada kullanmak Lookup İşlevi (Rapor Oluşturucusu 3.0 ve SSRS).Birden çok değer için bir ad ad-değer çiftleri ile dataset nesnesinden almak için 1-çok ilişkisi olduğunda kullanın LookupSet İşlevi (Rapor Oluşturucusu 3.0 ve SSRS).

Aşağıdaki kısıtlamalar geçerlidir:

  • Multilookup tüm filtre ifadeleri uygulandıktan sonra değerlendirilir

  • Yalnızca tek düzeyli arama desteklenir.Bir kaynak, hedef veya sonuç ifadesi, bir arama işlevine başvuru içeremez.

  • Kaynak ve hedef ifadelerinin değerlendirmesi aynı veri türünü vermelidir.

  • Kaynak, hedef ve sonuç ifadeler rapor veya grup değişkenleri başvurular içeremez.

  • Multilookup Aşağıdaki rapor öğeler için bir ifade olarak kullanılamaz:

    • Bir veri kaynağı için dinamik bağlantı dizeleri.

    • Bir veri kümesindeki hesaplanan alanlar.

    • Bir veri kümesindeki sorgu parametreleri.

    • Bir veri kümesindeki filtreler.

    • Rapor parametreleri.

    • The Report.Language property.

Daha fazla bilgi için bkz: Toplama İşlevleri Başvurusu (Rapor Oluşturucusu 3.0 ve SSRS) ve Toplamlar, Toplamalar ve Yerleşik Koleksiyonlar için İfade Kapsamını Anlama (Rapor Oluşturucusu 3.0 ve SSRS).

Örnek

"Kategori" adı verilen bir dataset varsayalım alanda CategoryList, kategori identifers, örneğin, "2, 4, 2 ve 1" virgülle ayrılmış listesini içeren bir alan olduğu.

CategoryNames veri kümesi, aşağıdaki tabloda gösterildiği gibi, kategori tanımlayıcısını ve kategori adını içerir.

No

Ad

1

Aksesuarlar

2

Bisikletler

3

Giyecek

4

Bileşenler

Tanımlayıcıları listesi için karşılık gelen adları aramak için kullanmak Multilookup.İlk dize diziye çağrı listesi bölmeniz gerekir Multilookup kategori adlarını almak ve bir arada sonuçlar dizesi.

Aşağıdaki ifade, Kategori veri kümesine bağlı bir veri bölgesinde bir metin kutusuna yerleştirildiğinde, "Bisikletler, Bileşenler, Bisikletler, Aksesuarlar" dizesini görüntüler:

=Join(MultiLookup(Split(Fields!CategoryList.Value,","),
   Fields!CategoryID.Value,Fields!CategoryName.Value,"Category")),
   ", ")

ProductColors veri kümesi içeren bir renk tanıtıcısı alan varsayalım ColorID ve renk değeri alan Colorgibi gösterilen aşağıdaki tablo.

ColorID

Renk

1

Kırmızı

2

Mavi

3

Yeşil

Değerli parametre kabul MyColors değil bağlı olduğu bir dataset için kullanılabilir kendi değerleri.Parametre için varsayılan değerler 2 ve 3 olarak ayarlanır.Aşağıdaki ifade, bir tablodaki bir metin kutusuna yerleştirildiğinde, parametre için seçilen birden çok değeri virgülle ayrılmış bir listede bir araya getirir ve "Mavi, Yeşil" dizesini görüntüler.

=Join(MultiLookup(Parameters!MyColors.Value,Fields!ColorID.Value,Fields!Color.Value,"ProductColors"),", ")