Dela via


Anpassade rapporter i Management Studio

gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

I SQL Server Management Studio visar många Object Explorer-noder en uppsättning standardrapporter som skapas av Microsoft. Dessa rapporter sammanfattar vanligtvis begärd serverinformation. Från och med SQL Server 2005 (9.x) Service Pack 2 kan administratörer köra anpassade rapporter som har skapats i SQL Server Data Tools (SSDT) från Management Studio.

Genomförande

Anpassade rapporter lagras som rapportdefinitionsfiler (.rdl) och skapas med hjälp av RDL (Report Definition Language). RDL innehåller information om datahämtning och layout för en rapport i XML-format. RDL är ett öppet schema. Utvecklare kan utöka RDL med ytterligare attribut och element. Rapporter kan köra valfria giltiga Transact-SQL-instruktioner i rapporten.

Om Object Explorer är anslutet till en server kan anpassade rapporter köras i kontexten för den aktuella object explorer-markeringen om rapporterna refererar till rapportparametrarna för den noden. På så sätt kan en rapport använda den aktuella kontexten, till exempel den aktuella databasen. eller en konsekvent kontext, till exempel att ange en utsedd databas som en del av Transact-SQL-instruktionen som finns i den anpassade rapporten.

Köra en anpassad rapport

Du kan köra en anpassad rapport i Management Studio på följande sätt:

  • Högerklicka på en nod i Object Explorer, gå till Rapporter och vänsterklicka på Anpassade rapporter. I dialogrutan Öppna fil letar du upp en mapp som innehåller .rdl-filer och öppnar sedan lämplig rapportfil.

  • Högerklicka på en nod i Object Explorer, peka på Rapporter, peka på Anpassade rapporteroch välj sedan en anpassad rapport från den senast använda fillistan.

Begränsningar

Tänk på följande begränsningar när du arbetar med anpassade rapporter:

  • För att förhindra oavsiktlig körning av skadlig kod kan Management Studio inte konfigureras för att automatiskt köra en rapport, även om filsystemet har konfigurerats för att associera .rdl-filer med Management Studio. Rapporter kan inte köras programmatiskt i Management Studio och kan inte köras från kommandoraden via Management Studio.

  • Du kan köra anpassade rapporter i en kontext som inte genererar de förväntade värdena. Du kan till exempel köra en rapport om replikering i kontexten för en databas som inte är involverad i replikering, eller köra en rapport som en användare som inte har behörighet att komma åt information som krävs för att generera en korrekt rapport. Skaparen av den anpassade rapporten ansvarar för rapportstrukturens giltighet och dess kontext.

  • Du kan inte lägga till en anpassad rapport i listan med standardrapporter.

  • Koden som bearbetas av rapporten kan påverka serverns prestanda.

  • Anpassade rapporter stöder inte underrapporter.

  • Kommandotexten för varje fråga i rapporten får inte definieras via ett uttryck.

  • Alla frågeparametrar som används i ett kommando (fråga) kan bara referera till en enskild rapportparameter och kan inte använda några uttrycksoperatorer.

  • Endast kommandotyperna Text och Lagrad procedur stöds för rapportkommandon (frågor).

  • Rapportramverket tillhandahåller ingen parameterrymning för frågorna. Frågeförfattare måste se till att deras frågor är fria från SQL-inmatningsattacker.

Hantera anpassade rapporter

Vi rekommenderar att användare som har många anpassade rapporter organiserar dem med hjälp av filsystemmappar som har lämpliga NTFS-filsystembehörigheter.

Behörigheter

Anpassade rapporter körs med hjälp av den aktuella användarens behörigheter. För att förhindra att en obehörig användare ändrar de frågor som körs av rapporten bör behörigheter för filsystemmappen som innehåller rapportfilerna anges för att begränsa åtkomsten.

Både användaren och kontot som används av SQL Server-tjänsten kräver läsbehörighet till filsystemmappen som innehåller rapportfilerna.

Alla giltiga .NET Framework-kommandon kan bäddas in i en rapport, men kommandot körs inte.

Försiktighet

Alla giltiga Transact-SQL-instruktioner kan bäddas in i och köras från en rapport. Om du kör en rapport under ett högprivilegierat användarkonto kan någon av dessa inbäddade instruktioner köras utan utmaning.

Se även

Lägg till en anpassad rapport i Management Studio
Återaktivera körning av anpassade rapportvarningar
Använda anpassade rapporter med nodegenskaper för Object Explorer