Aracılığıyla paylaş


Abonelikler ve teslimat (Reporting Services)

Reporting Services aboneliği, belirli bir zamanda veya bir olaya yanıt olarak rapor teslim eden bir yapılandırmadır. Ayrıca, belirttiğiniz dosya biçimindedir. Örneğin, her Çarşamba, MonthlySales.rdl raporunu microsoft word belgesi olarak bir dosya paylaşımına kaydedin. Abonelikler, bir raporun teslimini zamanlamak ve otomatikleştirmek için ve belirli bir rapor parametresi değerleri kümesiyle kullanılabilir.

Abonelik seçeneklerini değiştirmek için tek bir rapor için birden çok abonelik oluşturabilirsiniz. Örneğin, raporun üç sürümünü oluşturmak için farklı parametre değerleri belirtebilirsiniz. Bu raporlar Batı bölgesi satış raporu, Doğu bölgesi satışları ve tüm satışlar gibi raporlardır.

Örnek bir SSRS abonelik akışının diyagramı.

Abonelikler SQL Server'ın her sürümünde kullanılamaz. SQL Server'ın desteklediği özelliklerin listesi için bkz. SQL Server 2022'nin sürümleri ve desteklenen özellikleri.

Bu konuda:

Bu bölümdeki konular:

Abonelik ve teslim senaryoları

Her abonelik için, seçtiğiniz teslim uzantısı yapılandırabileceğiniz teslim seçeneklerini belirler. Teslim uzantısı, bir tür dağıtımı destekleyen bir modüldür. Raporlama Hizmetleri çeşitli teslim uzantıları içerir ve üçüncü taraf satıcılar aracılığıyla teslimat uzantısı kullanılabilir.

Geliştiriciyseniz, diğer senaryoları desteklemek için özel teslim uzantıları oluşturabilirsiniz. Daha fazla bilgi için bkz. Teslim uzantısı geliştirme.

Aşağıdaki tabloda, yaygın Reporting Services abonelik senaryoları açıklanmaktadır.

Scenario Description
E-posta Raporları Raporları tek tek kullanıcılara ve gruplara e-posta ile gönderin. Bir abonelik oluşturun ve dağıtmak istediğiniz raporu almak için bir grup diğer adı veya e-posta diğer adı belirtin. Reporting Services'ın çalışma zamanında abonelik verilerini belirlemesini sağlayabilirsiniz. Aynı raporu değişen üye listesi olan bir gruba göndermek istiyorsanız, çalışma zamanında abonelik listesini türetmek için bir sorgu kullanabilirsiniz.
Raporları çevrimdışı görüntüleme Kullanıcılar abonelik çıkışı için aşağıdaki biçimlerden birini seçebilir:

- Rapor verilerini içeren XML dosyası
- CSV (virgülle ayrılmış)
- PDF
- MHTML (web arşivi)
- Microsoft Excel
- TIFF dosyası
- Microsoft Word

Arşivlemesini istediğiniz raporlar, gecelik bir zamanlamaya göre yedeklediğiniz paylaşılan bir klasöre doğrudan gönderilebilir. Tarayıcıda yüklenmesi çok uzun süren büyük raporlar, masaüstü uygulamasında görüntülenebilen bir biçimde paylaşılan klasöre gönderilebilir.
Önbelleği önceden yükleme Parametreli raporun birden çok örneğiniz veya raporları görüntüleyen çok sayıda rapor kullanıcınız varsa, raporları önbellekte önceden yükleyebilirsiniz. Önceden yükleme, raporu görüntülemek için gereken işlem süresini azaltır.
Veri temelli raporlar Çalışma zamanında rapor çıktısını, teslim seçeneklerini ve rapor parametresi ayarlarını özelleştirmek için veri temelli abonelikleri kullanın. Abonelik, çalışma anında bir veri kaynağından giriş değerleri almak için bir sorgu kullanır. Veriye dayalı abonelikleri kullanarak, aboneliğin işlendiği anda belirlenen abone listesine rapor gönderen bir posta birleştirme işlemi gerçekleştirebilirsiniz.

Standart ve veri temelli abonelikler

Reporting Services iki tür aboneliği destekler: standart ve veri temelli. Tek tek kullanıcılar standart abonelikler oluşturur ve yönetir. Standart abonelik, abonelik işleme sırasında değiştirilmeyecek statik değerlerden oluşur. Her standart abonelik için tam olarak bir rapor sunusu seçenekleri, teslim seçenekleri ve rapor parametreleri kümesi vardır.

Veri temelli abonelikler, alıcı, rapor parametreleri veya uygulama biçimi belirtmek için kullanılan değerleri sağlayan bir dış veri kaynağını sorgulayarak çalışma zamanında abonelik bilgilerini alır. Büyük bir alıcı listeniz varsa veya her alıcı için rapor çıktısını değiştirmek istiyorsanız veri temelli abonelikleri kullanabilirsiniz. Veri temelli abonelikleri kullanmak için sorgu oluşturma ve parametrelerin nasıl kullanıldığını anlama konusunda uzman olmanız gerekir. Rapor sunucusu yöneticileri genellikle bu abonelikleri oluşturur ve yönetir. Daha fazla bilgi için aşağıdaki makalelere bakın:

Abonelik gereksinimleri

Bir rapora abonelik oluşturabilmeniz için önce aşağıdaki önkoşulların karşılanması gerekir:

Gereksinim Description
Permissions Rapora erişiminiz olmalıdır. Bir rapora abone olmak için önce raporu görüntüleme izniniz olmalıdır.

Yerel mod rapor sunucuları için aşağıdaki rol atamaları abonelikleri etkiler:

- "Bireysel abonelikleri yönet" görevi, kullanıcıların belirli bir rapor için abonelik oluşturmasına, değiştirmesine ve silmesine olanak tanır. Önceden tanımlanmış rollerde, bu görev Tarayıcı ve Rapor Oluşturucusu rollerinin bir parçasıdır. Bu görevi içeren rol atamaları, kullanıcının yalnızca oluşturduğu abonelikleri yönetmesine olanak tanır.
- "Tüm abonelikleri yönet" görevi, kullanıcıların tüm aboneliklere erişmesine ve bunları değiştirmesine olanak tanır. Bu görev, veri temelli abonelikler oluşturmak için gereklidir. Önceden tanımlanmış rollerde bu görevi yalnızca İçerik Yöneticisi rolü içerir.
Depolanan kimlik bilgileri Abonelik oluşturmak için raporun, çalışma zamanında veri almak amacıyla ya depolanan kimlik bilgilerini kullanması ya da hiç kimlik bilgisi kullanmaması gerekir. Dış veri kaynağına bağlanmak için geçerli kullanıcının kimliğine bürünülen veya temsilci olarak atanan kimlik bilgilerini kullanacak şekilde yapılandırılmış bir rapora abone olamazsınız. Depolanan kimlik bilgileri bir Windows hesabı veya veritabanı kullanıcı hesabı olabilir. Daha fazla bilgi için bkz . Rapor veri kaynakları için kimlik bilgilerini ve bağlantı bilgilerini belirtme

Raporu görüntüleme ve tek tek abonelikler oluşturma izniniz olmalıdır. Zamanlanmış Olaylar ve Rapor Teslimi , rapor sunucusunda etkinleştirilmelidir. Daha fazla bilgi için bkz. Yerel mod rapor sunucuları için abonelik oluşturma ve yönetme.
Rapordaki kullanıcı bağımlı değerleri Yalnızca standart abonelikler için, kullanıcı hesabı bilgilerini bir filtrede veya raporda metin olarak içeren raporlar için abonelikler oluşturabilirsiniz. Raporda, kullanıcı hesabı adı, mevcut kullanıcıya çözümlenen Kullanıcı!UserID ifadesi aracılığıyla belirtilir. Bir abonelik oluşturduğunuzda, aboneliği oluşturan kullanıcı geçerli kullanıcı olarak kabul edilir.
Model öğesi güvenliği yok Modelde model öğesi güvenlik ayarları varsa veri kaynağı olarak model kullanan bir Rapor Oluşturucusu raporuna abone olamazsınız. Bu kısıtlamaya yalnızca model öğesi güvenliğini kullanan raporlar dahildir.
Parametre değerleri Raporda parametreler kullanılıyorsa, raporun kendisiyle veya tanımladığınız abonelikte bir parametre değeri belirtilmelidir. Raporda varsayılan değerleri tanımlarsanız parametre değerini varsayılan değeri kullanacak şekilde ayarlayabilirsiniz.

Teslimat uzantıları

Abonelikler rapor sunucusunda işlenir ve sunucuya dağıtılan teslim uzantıları aracılığıyla dağıtılır. Varsayılan olarak, paylaşılan bir klasöre veya e-posta adresine rapor gönderen abonelikler oluşturabilirsiniz. Rapor sunucusu SharePoint tümleşik modu için yapılandırılmışsa, sharepoint kitaplığına da rapor gönderebilirsiniz.

Kullanıcı bir abonelik oluşturduğunda, raporun nasıl teslim edildiğinden emin olmak için kullanılabilir teslim uzantılarından birini seçebilir. Reporting Services aşağıdaki teslimat uzantılarını içerir.

Teslimat Eklentisi Description
Windows Dosya Paylaşımı Bir raporu statik uygulama dosyası olarak ağ üzerinden erişilebilen paylaşılan bir klasöre teslim eder.
E-posta gönder Bir bildirimi veya raporu e-posta eki veya URL bağlantısı olarak teslim eder.
SharePoint kitaplığı Bir raporu, SharePoint sitesinden erişilebilen bir SharePoint kitaplığına statik uygulama dosyası olarak teslim eder. Site, SharePoint tümleşik modunda çalışan bir rapor sunucusuyla tümleştirilmelidir.
Null Null teslim sağlayıcısı, görüntülemeye hazır parametreli raporlarla önbelleği önceden yüklemek için kullanılan son derece özelleştirilmiş bir teslim uzantısıdır. Bu yöntem tek tek aboneliklerdeki kullanıcılar tarafından kullanılamaz. Null teslimi, önbelleği önceden yükleyerek rapor sunucusu performansını geliştirmek için veri temelli aboneliklerde yöneticiler tarafından kullanılır.

Uyarı

Rapor teslimi, Reporting Services mimarisinin genişletilebilir bir parçasıdır. Üçüncü taraf satıcılar, raporları farklı konumlara veya cihazlara yönlendirmek için özel teslim uzantıları oluşturabilir. Özel teslim uzantıları hakkında daha fazla bilgi için bkz. Teslim uzantısı uygulama.

Aboneliğin bölümleri

Abonelik tanımı aşağıdaki bölümlerden oluşur:

  • Kullanıcı müdahalesi olmadan çalışabilen bir raporun referansı (yani, depolanan kimlik bilgileri kullanan veya kimlik bilgisi olmayan bir rapor).

  • Teslim yöntemi (örneğin, e-posta) ve teslim modu ayarları (e-posta adresi gibi).

  • Raporu belirli bir biçimde sunmak için bir işleme uzantısı.

  • Bir olay olarak ifade edilen aboneliği işleme koşulları.

    Genellikle, raporu çalıştırma koşulları zamana bağlıdır. Örneğin, belirli bir raporu her Salı saat 15:00 UTC'de çalıştırmak isteyebilirsiniz. Ancak rapor anlık görüntü olarak çalışıyorsa, anlık görüntü yenilendiğinde aboneliğin çalıştırılacağını belirtebilirsiniz.

  • Raporu çalıştırırken kullanılan parametreler.

    Parametreler isteğe bağlıdır ve yalnızca parametre değerlerini kabul eden raporlar için belirtilir. Abonelik genellikle kullanıcıya ait olduğundan, belirtilen parametre değerleri abonelikten aboneliğe farklılık gösterir. Örneğin, farklı bölümlerin satış yöneticileri, bölümleri için veri döndüren parametreleri kullanır. Tüm parametreler açıkça tanımlanmış bir değere veya geçerli bir varsayılan değere sahip olmalıdır.

Abonelik bilgileri, rapor sunucusu veritabanında tek tek raporlarla birlikte depolanır. Abonelikleri ilişkili oldukları rapordan ayrı olarak yönetemezsiniz. Abonelikler açıklamaları, diğer özel metinleri veya diğer öğeleri içerecek şekilde uzatılamaz. Abonelikler yalnızca daha önce listelenen öğeleri içerebilir.

Abonelikler nasıl işlenir?

Reporting Services, raporları zamanlamak ve kullanıcılara sunmak için işlevsellik sağlayan bir zamanlama ve teslim işlemcisi içerir. Rapor sunucusu, sürekli olarak izlediği olaylara yanıt verir. Bir abonelik için tanımlanan koşullarla eşleşen bir olay oluştuğunda, rapor sunucusu raporun nasıl işleneceğini ve teslimleneceğini belirlemek için aboneliği okur. Rapor sunucusu abonelikte belirtilen teslim uzantısını istemektedir. Teslim uzantısı çalıştırıldıktan sonra rapor sunucusu abonelikten teslim bilgilerini ayıklar ve işlenmek üzere teslim uzantısına geçirir.

Teslim uzantısı, raporu abonelikte tanımlanan biçimde işler ve ardından raporu veya bildirimi belirtilen hedefe teslim eder. Bir rapor teslim edilemiyorsa, rapor sunucusu günlük dosyasına bir girdi kaydedilir. Yeniden deneme işlemlerini desteklemek istiyorsanız, ilk deneme başarısız olursa rapor sunucusunu teslimi yeniden deneyecek şekilde yapılandırabilirsiniz.

Standart aboneliği işleme

Standart abonelikler bir raporun tek bir örneğini oluşturur. Rapor, tek bir paylaşılan klasöre veya abonelikte belirtilen e-posta adreslerine teslim edilir. Rapor düzeni ve veriler farklılık göstermiyor. Raporda parametreler kullanılıyorsa, standart bir abonelik rapordaki her parametre için tek bir değerle işlenir.

Veri temelli aboneliği işleme

Veri temelli abonelikler, birden çok hedefe teslim edilen birçok rapor örneği oluşturabilir. Rapor düzeni farklılık göstermez, ancak bir abone sonuç kümesinden parametre değerleri geçirilirse rapordaki veriler farklılık gösterebilir. Raporun nasıl işlendiğini ve raporun e-postaya eklenip bağlanmadığını etkileyen teslim seçenekleri. Bu seçenekler, değerler satır kümesinden geçirildiğinde aboneden aboneye farklılık gösterebilir.

Veri temelli abonelikler çok sayıda teslimat üretebilir. Rapor sunucusu, abonelik sorgusundan döndürülen satır setindeki her satır için bir teslimat oluşturur.

Teslim özelliklerini bildirme

Standart abonelikler aracılığıyla teslim edilen raporlar genellikle statik raporlar olarak işlenir. Bu raporlar, ya en son rapor çalıştırma anlık görüntüsüne dayanır ya da teslimi tamamlamak için statik bir rapor olarak oluşturulur. İsteğe bağlı olarak çalışan bir rapora abonelikte Bağlantı Ekle seçeneğini belirlerseniz, köprüyü seçtiğinizde rapor sunucusu raporu çalıştırır.

Uyarı

URL aracılığıyla teslim edilen raporlar rapor sunucusuna bağlı kalır ve görüntülemeler arasında güncelleştirilebilir veya silinebilir. Aboneliğiniz için seçtiğiniz teslim seçenekleri, raporun URL olarak teslim edilip edilmediğini, e-posta iletisinin gövdesine eklenip ek olarak gönderilmediğini belirler.

Veri temelli abonelik aracılığıyla teslim edilen raporlar, abonelik işlenirken yeniden oluşturulabilir. Rapor sunucusu, veri temelli aboneliği tamamlamak için raporun veya veri kümesinin belirli bir örneğine kilitlenmez. Abonelik farklı aboneler için farklı parametre değerleri kullanıyorsa, rapor sunucusu gerekli sonucu elde etmek için raporu yeniden oluşturur. Temel alınan veriler, ilk rapor kopyası oluşturulup teslim edildikten sonra güncelleştirilebilir. Raporu güncelleştirdiğinizde, işlemin ilerleyen bölümlerinde rapor alan kullanıcılar farklı sonuç kümesini temel alan verileri görebilir. Aynı rapor örneğinin tüm abonelere teslim edilmesini sağlamak için anlık görüntü olarak çalışan bir rapor kullanabilirsiniz. Ancak, abonelik işlenirken anlık görüntüde zamanlanmış bir güncelleştirme gerçekleşirse, kullanıcılar raporlarında farklı veriler almaya devam edebilir.

Abonelik işlemeyi tetikleme

Rapor sunucusu, abonelik işlemeyi tetiklemek için iki tür olay kullanır: bir zamanlama içinde belirtilen zaman temelli bir olay ve bir anlık görüntü güncelleştirme olayı.

Zaman temelli tetikleyici, bir aboneliğin ne zaman çalıştırılacağını belirtmek için rapora özgü bir zamanlamayı veya paylaşılan zamanlamayı kullanır. İsteğe bağlı ve önbelleğe alınmış raporlar için zamanlamalar tek tetikleyici seçeneğidir.

Anlık görüntü güncelleştirme olayı, bir aboneliği tetikleme amacıyla rapor anlık görüntüsünün zamanlanmış güncelleştirmesini kullanır. Rapor yeni verilerle güncelleştirildiğinde tetiklenen bir abonelik tanımlayabilirsiniz. Abonelik, raporda ayarlanan rapor yürütme özelliklerine göre tetiklenir.

Aboneliklerin program aracılığıyla denetimi

Reporting Services nesne modeli, abonelikleri ve abonelik işlemlerini program aracılığıyla denetlemenize ve denetlemenize olanak tanır. Örnekler ve kullanmaya başlama için aşağıdaki makalelere bakın: