Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Актуализиране на параметрите на отчета въз основа на избор на параметър? (SSRS)

Това работи автоматично, ако подредите вашите параметри и набори от данни правилно

  • Първо настройте основен (отчетен) набор от данни, а след това набор от данни за падащото меню за всеки параметър. Кодирайте WHERE клауза в наборите от данни, за да направите зависимостите правилни между променливите на параметрите
  • Второ, подредете вашите параметри в отчета | Меню с параметри, така че първият променлива/параметър, който искате потребителят да попълни, е в горната част и направете втория набор от данни да зависи от този параметър. Следвайте този ред чрез параметрите; крайният параметър(и) трябва да бъде(т) този(ите), от който зависи действителният набор от данни в отчета.
  • Повторете за следващите параметри

Това ще работи, ако вашият WHERE клаузата във втория и следващите набори от данни имат променливи, за които SSRS знае, че са попълнени от по-ранни параметри.

Като пример имам три набора от данни от почтените pubs база данни (извадка през 2000 г.).

pubslist се използва за попълване на параметъра @p и изглежда така:

 select pub_id, pub_name from publishers

titleslist попълва параметъра @t и изглежда така:

 select title_id, title from titles where pub_id = @p

И накрая, reportdataset изглежда така:

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

Редът на параметрите в Report | Report Parameters менюто е от решаващо значение; тъй като наборите от данни трябва да бъдат изпълнени в реда, показан по-горе, и параметърът @t е в набор от данни, който разчита на параметъра @p, който е зададен първи, преместваме @p в горната част на списъка.

Сега SSRS оценява набора от данни, необходим за попълване на падащото меню за първия параметър с етикети. Той разчита на набор от данни, който не се нуждае от параметър, така че може да бъде произведен веднага.

След това, след като получи тази стойност на параметъра, той може да попълни падащото меню на втория параметър. Това от своя страна води до изготвянето на отчета.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Какъв е най-добрият начин да изберете минималната стойност от няколко колони?

  2. CTE рекурсия за получаване на йерархия на дървото

  3. Агрегатът може да не се появи в списъка с набори на оператор UPDATE

  4. SQL Server 2005 възстановява само една схема

  5. Защо един оператор за изтриване на SQL ще доведе до блокиране?