Sådan indsendes en planlagt HTML-rapport direkte fra SQL Server

Lær, hvordan du erhverver "on-the-fly" vareinformation og sender dataene dagligt til alle interesserede parter ved hjælp af SQL-serveren og .Net-koden.

trin

Billedbetegnelse Send en planlagt HTML-rapport direkte fra SQL Server Trin 1
1
Forespørgsel til hentning af rå data - Brug "AdventureWorks" -databasen til følgende eksempel. Prøv at bruge oplysninger, der er længere end den aktuelle dato.
  • Og det er resultaterne.
  • Billedbetegnelse Send en planlagt HTML-rapport direkte fra SQL Server Trin 2
    2
    Kør forespørgslen og send resultaterne. SQL-serveren (siden 2005) har en gemt procedure for at sende e-mails direkte fra databasen. SQL Mail skal konfigureres og arbejde på serveren for denne lagrede procedure til at fungere. Ved at bruge msdb.dbo.sp_send_dbmail kan du sende resultaterne af en e-mail forespørgsel, simpelthen som i billedet.
    • Sådan ser det ud i Outlook.


  • Billedbetegnelse Send en planlagt HTML-rapport direkte fra SQL Server Trin 3
    3
    Overvej at sende dem i HTML. Hvis du har brug for resultaterne til at få et mere professionelt udseende, er den bedste mulighed at sende dem som html. Dette er en funktion af sdb.dbo.sp_send_dbmail gemt proces, der kombinerer optionen og XML-funktionerne på SQL-serveren. Skriv en gemt procedure for at gøre resultaterne til en HTML-tabel og returnere tegn, som denne på billedet.
    • Resultatet af den tidligere gemte procedure er den rå html-rapport. Tag et kig på forespørgselsdelen "for xml path (`tr`)", som simpelthen er at oprette tr-td tagstrukturen i tabellen. Kør rapporten som i billedet.
    • Dette er hvad du får.
  • Billede med titlen Send en planlagt HTML-rapport direkte fra SQL Server Trin 4
    4
    Du kan nu tilføj stil til html som allerede har i den lagrede procedure på denne måde (se billede).
    • Sådan kommer det til ende.
  • Billede med titlen Send en planlagt HTML-rapport direkte fra SQL Server Trin 5
    5
    Program det og se det arbejde - Da dette er en simpel forespørgsel, kan den indgå i ethvert SQL-job. Det er ikke svært at få en liste over modtagere med deres e-mail-adresser og oprette en loop for at køre msdb.dbo.sp_send_dbmail-proceduren inden for samme job. Endelig planlægge jobbet til at køre så ofte som nødvendigt og få en daglig rapport direkte fra SQL.
  • Del på sociale netværk:

    Relaterede
    © 2024 HodTari.com