Hallo Martin, Eine Korrektur wegen fehler in vorhergehnder Nachrifht
Möglichkeit 1: Über Layer > Eigenschaften > Verknüpfungen eine Tabelle mit den weiteren Werten anhand des gemeinsamen Schlüssel-Kürzels anjoinen. Anschließend den gejointen layer als neuen Layer abspeichern um die gejointen Werte fest in den Layer zu schreiben. ------------------- Möglichkeit 2: Vorgabe mit Ausdruck Unter Layer > Eigenschaften > Attributformular das automatischezu füllende Feld auswählen und unter "Vorgaben" einen Vorgabewert eigeben. Der Vorgabewert kann ein bedingter Ausdruck sein: z.B: Das automatisch zu füllende Feld ist "Farbe" und soll automatisch auf Grundlage des Feldes "color" gefüllt werden Case when "color" = 'red' then 'rot' when "color" = 'green' then 'grün' when "color" = 'vlue' then 'blau' end ------------------- Möglichkeit 3: (Gleiches Beispiel) Eingabemaske mit Werbeziehung und Filterung der Werte über current_value(). Unter Layer > Eigenschaften > Attributformular > Bedienelementtyp für das Feld "color" und das Feld "farbe" den Typ Wertbeziehung auswählen. Als Layer für die Werbeziehung die Tabelle "de_en_bez" auswählen. Die Tabelle verfügt über zwei Spalten: engl und deu engl | deu ------|------ red | rot green | grün blue | blau für das Feld color sind die Bezeichnungen: Schlüsselspalte: engl Werstpalte: engl Anschließend kann der englichsche Farbbegriff über ein Drop-Down-Menü eingeben werden Für das Feld farbe sind die Bezeichnungen: Schlüsselspalte: deu Werstpalte: deu Zusätzlich ist hier ein Filterausdruck mit current_value() notwendig: "color" = current_value( 'engl'). Wenn jetzt in die Eingabemaske unter "color" red eingebenen wird, schaltet das drop-down-Menü für "Farbe" automatisch auf rot, weil der Wert der Spalte "engl" in der Beziehungstabelle "de_en_bez" dem vorher für color eingegebenen Wert entsprechen muss und sich in der entsprechenden Zeile bei "deu" der Wert rot findet. ----------------------- Möglichkeit 4: Ein Trigger in der Datenbank (SpatiaLite, Geopackage, PostGis): Wäre über den DB-Manager oder über ein Tool der entsprechenden Datenbank einzugeben. Für Geopackage oder SpatiaLite z.B.: Create trigger color_ins after insert on beispiel_layer begin update beispiel_layer set farbe = Case when "color" = 'red' then 'rot' when "color" = 'green' then 'grün' when "color" = 'vlue' then 'blau' end ; end ; Create trigger color_up after update of color on beispiel_layer begin update beispiel_layer set farbe = Case when "color" = 'red' then 'rot' when "color" = 'green' then 'grün' when "color" = 'vlue' then 'blau' end ; end ; Viele Grüße, Claas -- ----------------------------------------- GKG-Kassel - Dr.-Ing. Claas Leiner QGIS-Support und mehr Geodatenservice, Kartenwerkstatt & GIS-Schule Kassel Wilhelmshöher Allee 304 E 34131 Kassel Tel. 0561/56013445 claas.lei...@gkg-kassel.de ---------------------------------------- http://www.gkg-kassel.de ---------------------------------------- Unterstützen Sie QGIS QGIS-DE e.V. | http://qgis.de QGIS Projekt | http://qgis.org/de/site/ -- .................................................................... FOSSGIS Veranstaltungen https://www.fossgis.de/news/fossgis-events/ FOSSGIS e.V, der Verein zur Förderung von Freier Software aus dem GIS-Bereich und Freier Geodaten! https://www.fossgis.de/ https://twitter.com/fossgis_eV ____________________________________________________________________ FOSSGIS-Talk-Liste mailing list FOSSGIS-Talk-Liste@fossgis.de https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste -- .................................................................... FOSSGIS Veranstaltungen https://www.fossgis.de/news/fossgis-events/ FOSSGIS e.V, der Verein zur Förderung von Freier Software aus dem GIS-Bereich und Freier Geodaten! https://www.fossgis.de/ https://twitter.com/fossgis_eV ____________________________________________________________________ FOSSGIS-Talk-Liste mailing list FOSSGIS-Talk-Liste@fossgis.de https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste