Bilder von Pfad in Formular laden?

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

StephanJohn
Beiträge: 3
Registriert: So, 15.04.2018 19:32

Bilder von Pfad in Formular laden?

Beitrag von StephanJohn » So, 15.04.2018 19:44

Hi,

bin noch relativ frisch in OpenOffice-Base und könnte gut einen Tipp gebrauchen:

In einem Formular, in dem jeweils ein Datensatz angezeigt wird, möchte ich (in ein Grafisches Kontrollfeld?) automatisch ein Bild laden, dass sich in einem Unterverzeichnis ".\bilder\" befindet und dessen Dateiname sich aus der ID des Datensatzes ableitet, z.B. "ID_1.jpg".

Wie gehe ich da am besten vor? Muss ich ein Makro schreiben, dass das "Grafik"-Feld des "Grafischen Kontrollfelds" befüllt? (Aber wie generiere ich da den Dateinamen? Und wo muss ich das Makro eintragen, damit es bei Datensatzwechsel ausgeführt wird?)

Für Hinweise dankt
Stephan.

RobertG
*******
Beiträge: 1670
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Bilder von Pfad in Formular laden?

Beitrag von RobertG » So, 15.04.2018 20:18

Hallo Stephan,

für das Bild solltest Du in einer Tabelle ein Textfeld haben. In diesem Textfeld wird über das Grafische Kontrollfeld der Pfad bespeichert und bei der Anzeige beim Datenwechsel auch wieder ausgelesen.

Du kannst natürlich auch, wenn sich das Ganze wirklich komplett aus der ID des Datensatzes ergibt, auch mit einer Abfrage arbeiten:

Code: Alles auswählen

SELECT "Tabelle".*, 'bilder/ID_'||"ID"||'.jpg' AS "Bild" FROM "Tabelle"
Dann verknüpfst Du einfach das Feld "Bild" mit Deinem grafischen Kontrollfeld und nimmst die Abfrage als Basis für Dein Formular. Die Abfrage ist genauso editierbar, wie die Tabelle, da sie alle Felder der Tabelle, auch das Schlüsselfeld, enthält.
Übrigens: Pfadangaben mit Frontslash, nicht mit Backslash eingeben. Das gilt von Base aus auch für Windows-Umgebungen.

Gruß

Robert

Gast

Re: Bilder von Pfad in Formular laden?

Beitrag von Gast » Mo, 16.04.2018 21:21

Hallo Robert,

vielen Dank für die Hilfe!! Das mit der Abfrage ist nach meinem Geschmack :) Weißt du zufällig auch, ob man spezifizieren kann, dass die ID im Bild-Dateinamen vierstellig angegeben wird, also z.B. "0004.jpg" statt "4.jpg"? Ich habe probiert, die ID in der Tabelle vierstellig zu formatieren (0000), aber das wirkt sich auf den eingetragenen Dateinamen nicht aus. (Ich kann natürlich auch die Bilder umbenennen.)

Gruß,
Stephan.

RobertG
*******
Beiträge: 1670
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Bilder von Pfad in Formular laden?

Beitrag von RobertG » Mo, 16.04.2018 21:26

Hallo Stephan,

den Code jetzt mit der Erweiterung garantierte Vierstelligkeit:

Code: Alles auswählen

SELECT "Tabelle".*, 'bilder/ID_'||RIGHT('000'||"ID",4)||'.jpg' AS "Bild" FROM "Tabelle"
Es wird ein Text aus der ID gemacht und 3 Nullen davorgeschrieben. Von diesem Text werden durch die Funktion RIGHT immer die 4 letzten Zeichen genommen.

Gruß

Robert

StephanJohn
Beiträge: 3
Registriert: So, 15.04.2018 19:32

Re: Bilder von Pfad in Formular laden?

Beitrag von StephanJohn » Di, 17.04.2018 08:19

Hallo Robert,

sehr cool - besten Dank!!

Gruß,
Stephan.

Antworten