[FOSSGIS-Talk] Textfeld im Print Composer mit Attribut

Susanne Möhlmann Susanne.Moehlmann at notus.de
Do Feb 18 16:17:29 CET 2021


Hallo Stefan und Thomas,

vielen Dank für eure beiden Lösungsansätze!!!
Stefans Weg hat schon mal geklappt. Deinen Thomas werden wir auch gleich ausprobieren.

Viele Grüße
Susanne

Von: Thomas B <rdbath.regiodata at gmail.com>
Gesendet: Donnerstag, 18. Februar 2021 16:00
An: Susanne Möhlmann <Susanne.Moehlmann at notus.de>
Cc: fossgis-talk-liste at fossgis.de
Betreff: Re: [FOSSGIS-Talk] Textfeld im Print Composer mit Attribut

Hallo Susanne,

als Ergänzung zu Stefans Antwort:

um den Layerpfad verwenden zu können statt des Namens könntest du z.B. eine benutzerdefinierte Funktion erstellen:

siehe https://gist.github.com/thbaumann/28f262612cafcaa0c454df5fdcd44f72

Dieser Funktion kann der Pfad übergeben werden und so der Layername an die aggregate-Funktion übergeben werden.

Mit statisch übergebenem Layernamen habe ich den Gemarkungsnamen so abgegriffen:
(Mein Layer heißt 'gemarkungen' und die Spalte mit den Namen 'GEMARKUNGEN', Name meiner Karte im Composer: 'Karte'):


[%aggregate('gemarkungen','concatenate_unique',"GEMARKUNG",
              intersects($geometry,
              centroid(map_get(item_variables('Karte'),'map_extent'))), ',', "GEMARKUNG")%]


Mittels meiner benutzerdefinierten Funktion kann man es so aufrufen:
(Pfad zur Testdatei ist D:\loeschen\gemarkungen.shp daher mit doppeltem Backslash an die Funktion übergeben:  D:\\loeschen\\gemarkungen.shp )

[%aggregate(layername_aus_pfad('D:\\loeschen\\gemarkungen.shp'),'concatenate_unique',"GEMARKUNG",

intersects($geometry, centroid(map_get(item_variables('Karte'),'map_extent'))), ',', "GEMARKUNG")%]



Siehe Screenshot:


[grafik.png]







viele Grüße,

Thomas





Am Do., 18. Feb. 2021 um 13:17 Uhr schrieb Susanne Möhlmann <Susanne.Moehlmann at notus.de<mailto:Susanne.Moehlmann at notus.de>>:
Hallo Liste,

zur Vereinfachung der Kartenerstellung wollen wir im Print Composer unter QGIS 3.16 über ein Textfeld den Landkreis ausgeben lassen, der sich im Zentrum des Kartenelements ( centroid(map_get(item_variables('Karte'),'map_extent')) ) befindet. Die neue Funktion overlay_intersects können wir nicht nutzen, da das Textfeld keine Geometrie hat. aggregate('Landkreislayer','max',"Spalte mit Landkreisnamen",intersects(centroid(map_get....),geometry(@parent))) funktioniert ebenfalls nicht.

Idealerweise müsste der Ausdruck mit dem Pfad zur Shape mit den Landkreisen arbeiten können, da dessen Layer-ID in jedem Projekt eine andere ist. Kann uns jemand weiterhelfen, wie man a) auf die Geometrie eines Shapes mittels eines Dateipfades zugreift und b) das gewünschte Attribut im Textfeld ausgibt? Geht das überhaupt ohne Plugins?

Vielen Dank schon mal und viele Grüße

Susanne Möhlmann
Teamleiterin Kartographie

NOTUS energy Plan GmbH & Co. KG
[cid:image002.png at 01D705F8.5BB31410]Parkstraße 1
14469 Potsdam

Tel.: +49 331 62043-59
Fax: +49 331 62043-44
E-Mail: susanne.moehlmann at notus.de<mailto:susanne.moehlmann at notus.de><mailto:susanne.moehlmann at notus.de<mailto:susanne.moehlmann at notus.de>>

Sitz: Potsdam
Registergericht: Amtsgericht Potsdam HRA 4449 P
USt.-ID.-Nr.: DE256300496
Komplementärin: Nortada GmbH mit Sitz in Potsdam, eingetragen im Handelsregister des Amtsgerichts Potsdam unter HRB 19752 P, vertreten durch ihren Geschäftsführer Heiner Röger.
VERTRAULICHKEIT: Diese E-Mail ist vertraulich. Wenn Sie nicht der vorgesehene Adressat sind, benachrichtigen Sie uns bitte mittels E-Mail und löschen Sie die Nachricht dann aus Ihrem System. Wir bitten Sie weiter, den Inhalt dieser E-Mail weder für Dritte zugänglich zu machen, noch die E-Mail auszudrucken oder für einen anderen Zweck zu verwenden, zu kopieren oder auf irgendeinem Medium zu speichern.
Vielen Dank für Ihre Kooperation.

-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : image001.png
Dateityp    : image/png
Dateigröße  : 20271 bytes
Beschreibung: image001.png
URL         : <http://lists.fossgis.de/pipermail/fossgis-talk-liste/attachments/20210218/9520429b/attachment.png>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : image002.png
Dateityp    : image/png
Dateigröße  : 12111 bytes
Beschreibung: image002.png
URL         : <http://lists.fossgis.de/pipermail/fossgis-talk-liste/attachments/20210218/9520429b/attachment-0001.png>
--
....................................................................
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 at fossgis.de<mailto:FOSSGIS-Talk-Liste at fossgis.de>
https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : image001.png
Dateityp    : image/png
Dateigröße  : 32002 bytes
Beschreibung: image001.png
URL         : <http://lists.fossgis.de/pipermail/fossgis-talk-liste/attachments/20210218/504172f3/attachment.png>


Mehr Informationen über die Mailingliste FOSSGIS-Talk-Liste