Overblog Folge diesem Blog
Edit post Administration Create my blog
Blog von Olaf Helper

Dynamische Verwendung von Bildern im Reporting Services

29. März 2009 , Geschrieben von Olaf Helper Veröffentlicht in #Reporting

In Reports mit dem MS SQL Server - Reporting Services zu Artikellisten möchte man zuweilen gerne zugehörige Bilder anzeigen lassen,  ähnlich wie in einem Katalog. Eine Variante der Bildablage ist es als BLOB in der Datenbank selbst, die andere ist das Speichern des Dateinamen nebst Ablageordner. Dabei gibt es aber etwas zu beachtet

-  Der Account, unter dem der „SQL Server Reporting Services“  Dienst läuft, muss natürlich zumindest Lesezugriff auf die Bild-Dateien habe.

-  Der Dateiname + Pfad muss als URL mit file://... angegeben werden.


Hier dazu ein Beispiel mit Bilder aus dem lokalen Windows-Verzeichnis; habe ich nur auf meinem Arbeitsplatzrechner getestet und nicht auf einem Server; aber auch dort sollten sich Bilder finden lassen.


Zunächst einmal eine Demo-Tabelle mit ein paar Datensätze:

 
CREATE
TABLE [dbo].[Bilder](
  [ID] [int] IDENTITY(1,1) NOT NULL, 
  [Bild] [varchar](255) NULL 
 ) ON [PRIMARY] 
 GO 
 INSERT INTO Bilder VALUES ('file://C:\Windows\Web\Wallpaper\img1.jpg'); 
 INSERT INTO Bilder VALUES ('file://C:\Windows\Web\Wallpaper\img2.jpg'); 
 INSERT INTO Bilder VALUES ('file://C:\Windows\Web\Wallpaper\img3.jpg'); 
 GO 


Nun im BIDS einen neuen Report mit der Tabelle als DataSet anlegen, eine Liste oder Tablix als Control auf den Report platzieren, die Felder „ID“ und „Bild“ dort einfügen; eigentlich mehr zur Kontrolle. Dann eine weitere Spalte einfügen und in die ein „Bild“ Control reinziehen. In den Bildeigenschaften gibt man dann noch folgendes an

-  Bildquelle auswählen = Extern

-  Diese Bild verwenden = [Bild]  (also der Feldname aus dem DataSet)

Das war es schon.


Diesen Post teilen

Repost 0

Kommentiere diesen Post