Wie kann ich mir ein Bild zu einer Adresse automatisch anzeigen lassen?

Ulrich Sticker [Grutzeck Software GmbH]
18.08.2011 15:30
Problemstellung:

Ich möchte mir zu manchen Kontakten eine Bilddatei auf einer Ansicht von AGVIP SQL anzeigen lassen. Diese Datei soll am besten direkt auf der Ansicht angezeigt werden und sich in der größe etwa anpassen.

Lösung:

Unter Verwendung eines Feldes vom Typ Datei und unter Nutzung des Webcontrols ist dies spielend leicht zu bewerkstelligen.

Sie finden das in diesem Artikel beschriebene Beispiel am Ende des Artikels zum Download. Um die in diesem Artikel beschriebenen Controls zu verwenden, müssen Sie AGVIP SQL in der Version 1.10.012 oder höher einsetzen.

Die Vorgehensweise ist folgende. Legen Sie in Ihrer Adresstabelle ein Feld mit Namen Bild an und verwenden Sie den Feldtyp Datei.

In diesem Feld speichern wir den Link zur Bilddatei in Ihrem Dateisystem. Sie sollten daher, wie schon von Vorlagen und Ablagen der Hilfsmittel her bekannt, die Bilddatei in einem für alle Anwender identischen Pfad im Netzwerk ablegen. (Wenn Sie derzeit Ihre Vorlagen und V:\Vorlagen speichern, könnten Sie Kontaktbilder ja unter V:\Bilder ablegen. )

Nun müssen wir das Bild noch anzeigen. Hier könnte man im einfachsten Fall einfach die Feldinhalte des Feldes Bild in der URL für das Webcontrol eintragen. Nachteil dieser Lösung ist, das Bild wird auf ganzer größe des Webcontrols angezeigt. So ist ggf. scrollen nötig um das Bild zu betrachten. Einfacher ist es, wir übergeben dem Webcontroll eine HTML-Seite, die das Bild gleich hübsch formatiert und auf die gewünschte Größe bringt. Da nicht jeder Kontakt ein Bild hinterlegt hat, blenden wir das Webcontrol nur bei den Adressen ein, die auch ein Bild hinterlegt haben.

Um das Webcontroll nur einzublenden wenn auch ein Bildpfad hinterlegt ist, muss folgendes Makro im Makro "beim Laden" der Ansicht hinterlegt werden. (Das Webcontrol hat den Namen "Bildanzeige" als Eigenschaft zuvor erhalten)

If ActiveAddress.Fields("Bild")="" Then
 CurrentForm.Controls("Bildanzeige").Visible=false
Else
 CurrentForm.Controls("Bildanzeige").Visible=true
End If

Um das Bild dann in die Seite des Controls einzupassen übergeben wir gleich einen ganzen Satz HTML-Code mit und fügen in diesen den Dateilink aus dem Feld Bild einfach mit ein. Da HTML Zeilenumbrüche nicht beachtet, haben wir den Code der normalerweise auf mehreren Zeilen dahrgestellt wir, einfach in eine Zeile einer Text-Variablen geschrieben. Da ein kleiner Rand nötig ist um den Scrollbalken zu verhindern, stellen wir die relative Größe des Bildes auf 97% der zu verfügung stehenden Breite im Control.

Dies geschieht über ein Makro im Webcontrol "Bildanzeige"

 Dim HTMLData, bildfeld
'Bitte geben Sie das Datenfeld an, das den Link zur Bilddatei beherbergt
bildfeld =ActiveAddress.Fields("Bild") 
 
'Hier keine Änderung mehr vornehmen
'######################################################################
CurrentForm.Controls("Bildanzeige").control.Document.BGColor = "#ECE9D8"
HTMLData="<!DOCTYPE html PUBLIC ""-//W3C//DTD XHTML 1.0 Transitional//EN""" & _
 """http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd""><html xmlns=" & _
 """http://www.w3.org/1999/xhtml""><head><meta http-equiv=""Content-Type"" " & _
 "content=""text/html; charset=utf-8"" /><title>AGVIP Bildanzeige</title></head>" & _
 "<BODY style=""font-family: arial; font-size: 10px"" bgcolor=""#ECE9D8"">" & _
   "<body><img src="" mce_src=""" & bildfeld & """ width=""97%"" height=""97%""" & _
   " alt=""Bildanzeige ist unterdrückt"" /></body></html>"
CurrentForm.Controls("Bildanzeige").value = HTMLData
 

Fertig ist unsere Kontaktbildanzeige für AGVIP SQL. Zur Installation der anliegenden Beispielansicht gehen Sie bitte wie folgt vor:

  1. Stellen Sie sicher das Ihre AGVIP SQL Version mindestens die Version 1.10.012 oder größer ist.
  2. Legen Sie in Ihrer Adresstabelle unter Arbeitsbereich -> Administration -> Adresstabellen ein Feld mit dem Namen "Bild" an und dem Feldtyp Dateiname.
  3. Öffen Sie unter Arbeitsbereich -> Administration -> Ansichten den Ansichteneditor und klicken Sie auf Datei -> Importieren und wählen Sie die Datei Bild anzeigen.agfrm aus der anliegenden ZIP-Datei.
  4. Ordnen Sie der Ansicht unter Eigenschaften den Namen Ihrer Adresstabelle zu und speichern Sie die Ansicht.

angehängte Dateien: Bildanzeigen-01.zip

Tags: Bildanzeige Webcontrol
Durchschnittliche Bewertung: 0 (0 Abstimmungen)

Kommentieren nicht möglich