2009-06-27 10 views
11

İki rapor parametresiyle SSRS'de bir rapor oluşturdum. İkincisini, değerlerin ilk seçimdeki değerlerine göre güncellemesini istiyorum. Birincisi satış temsilcilerinin listesi, ikincisi ise distribütörlerin listesi. Her acentenin çok sayıda dağıtıcısı olabilir.Rapor seçimi parametre seçimine göre mi güncelleniyor? (SSRS)

Rapor kullanıcısı bir aracı seçerse, yalnızca dağıtımcılarının ikinci parametreler için listede görünmesini isterim. Açıkçası parametre değerleri bir sorgudan gelecektir, ancak bir aracı seçtiklerinde listeyi nasıl yeniden adlandırılacağını bilmiyorum.

cevap

12

Birincil (rapor) veri kümesi, her parametre açılan daha sonra bir veri kümesi kurmak doğru İlk

  • Parametrelerinizi ve veri kümelerini sipariş, bu automagicallylar çalışır. Bağımlılıkları parametre değişkenleri
  • 'a göre düzeltmek için veri kümelerindeki WHERE maddesini kodlayın. İkinci olarak, Raporlarınızı Rapor | Parametreler menüsü, kullanıcının girmesini istediğiniz ilk değişken/parametresinin en üstte olmasını ve ikinci veri kümesinin bu parametreye bağlı olmasını sağlar. Bu sıralamayı parametreler üzerinden takip edin; Son parametre (ler), gerçek rapor veri kümesinin bağlı olduğu tek (ler) olmalıdır. İkinci ve daha sonraki veri setleri içinde WHERE fıkra SSRS önceki parametrelerinden doldurulur bilir değişkenleri varsa sonraki parametrelerin

Bu için

  • tekrarlayın çalışacaktır. Örnek olarak, saygıdeğer pubs veritabanından üç veri kümesi var (2000'de örnek).

    pubslist böyle @p parametresini doldurmak için kullanılır ve görünür:

    select pub_id, pub_name from publishers 
    

    titleslist @t parametresini doldurur ve şöyle görünür:

    select title_id, title from titles where pub_id = @p 
    

    Son olarak, reportdataset benziyor Bu:

    select title, price, ytd_sales from titles where title_id = @t 
    

    Report | Report Parameters menüsündeki parametrelerin sırası çok önemlidir; Veri kümeleri yukarıda gösterilen sırayla çalıştırıldığından ve @ t parametresi, önce ayarlanmış olan @ p parametresine dayanan bir veri kümesinde olması gerektiğinden, @p dosyasını listenin en üstüne taşırız.

    Şimdi, SSRS, etiketli ilk parametrenin açılır menüsünü doldurmak için gereken veri setini değerlendirir. Parametre gerektirmeyen bir veri kümesine dayanır, bu nedenle hemen üretilebilir.

    Bu parametre değerini aldıktan sonra, ikinci parametrenin açılır menüsünü doldurabilir. Bu da üretilen raporla sonuçlanır.

  • +0

    Jeremy, işaret edebilir istenecektir Buna bir örnek vermek mi yoksa cevabınıza bir tane mi eklemek istiyorsunuz? Teşekkürler. –

    +0

    Tamam, yaptığım buydu: @SalesRep ve @Distributor (her ikisi de dizgidir). Şimdi satış temsilcisi için Veri Kümesi sadece bir sorgudur.şöyle Ama distribütör parametresi için veri kümesi sorgu geçerli: SEÇ Adı OLARAK Not bağımlılık Adı TARAFINDAN Distribütörleri [Satış Temsilcisi] = @ Satış Temsilcisi SİPARİŞ GELEN kimliği OLARAK [Müşteri Numarası], [Müşterinin Adı] @SalesRep parametresinde. Rapor parametrelerinde, @SalesRep'in @Distributor'ın yukarısında olduğundan emin olun. –

    +1

    Yup, anladın. En üstteki parametre bağımlılık içermeyen veri kümesi olmalıdır. İkinci parametreyi doldurmak için veri kümesini üretir ve böyle devam eder. –

    2

    Bunu kendim denemedim, ancak bir sorgudan gelebilecek Mevcut Değerleri yapılandırdıkları bir örnek gördüm, ardından sorguyu belirtmek için bir ifade kullandı. İfade, ilk parametrenin değerini içermiştir.

    +0

    Bu işe yarıyor. – LWoodyiii

    3

    İlk önce, kullanıcının seçeceği bir öğe listesiyle bir veri kümesi oluşturun.Daha sonra ikinci veri kümesini oluşturursunuz; Örn.,

    örn. raporunuz parametresine İÇİNDE Select ID,ItemName from Orders where [email protected]

    , kullanılabilir değerler üzerine bir Sorgusu'ndan sonra agentid parametreye tıklayın ve. Veri kümesi1 ve ID'yi değer olarak ve AjanAdı Etiket olarak seçersiniz.

    edilen en son veri kümesi gerçek veri olacaktır. Raporlama hizmetinde

    Select Quantity, Amount From Orderdetails where [email protected]

    , sen parametresine gidip seti al

    Yani parametrenin al agentid gerektiğini orderid Dataset2

    gelen değeri elde etmek: Bu You gibi deyimi oluşturun. Raporlama Hizmeti, siparişe göre parametreyi otomatik olarak talep edecektir.

    3

    Büyük olasılıkla birden veri kümeleri

    1. Tasarım ilk sorgu ve alanları ile rapor herhangi bir parametre olmadan görüntülenecek için paylaşılan veri kaynağı oluşturmak gerekir. Bu şekilde raporun ana veri kümesini kurabilirsiniz. Parametreyi ekleyerek veri kümesinin sorgusunu
    2. güncelleştirin. Her zaman açılır menüden sağ tıklayın ve parametreleri, rapor düzeni görünümünde
    3. PARAM_NAME.için
    4. önce @ kullanın.
    5. otomatik @ işareti olmadan PARAM_NAME sahiptir olacak parametreler listesi.
    6. şimdi git ... rapora önizleme eğer

    7. , bu raporu görüntülemeden önce PARAM_NAME.için girilen bir değere isteyecektir ... listesinden parametreyi seçip özelliklerini güncellemek veri sekmesine ve çağrı .... yeni bir veri kümesi eklemek o sorgu PARAM_NAME parametresini .... burada gerekli parametre doldurmak için kullanılacaktır

    8. dsPopParam.
    9. 3 ile 5 arasındaki adımları yineleyin, ancak 5. adımda, Query'dan olması için kullanılabilir değerler bölümündeki özellik ayarını güncelleyin ve dsPopParam veri kümesini seçin. Değer ve Etiket alanları, dsPopParam sorgusundan döndürülen alanlar olacaktır.
    10. tekrar görünümü sekmesini seçin ve bu zamanlarda parametrelerinin listesini içeren liste kutusundan aşağı düşüş fark ....
    11. Önemli not

    : Rapor oluşturmak veya istisna olabilirler diye atıldı, sadece tekrar veri sekmesine geçip rapor veri kümesi seçin ve sorguyu yürütmek, sen ... PARAM_NAME.için bir değer girin girin ve çalıştırmak ... sonra önizleme sekmesine geçip