<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle19
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle20
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle24
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:70.85pt 56.7pt 70.85pt 56.7pt;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:1592857841;
        mso-list-template-ids:888550370;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="FI" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal"><b>Hi again,<o:p></o:p></b></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-US">Yes, there’s a relation, both spatial and via attributes. I got it working with the syntax below:
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">concat('The value is: ',(attribute(get_feature(‘layer name','Field that matches atlas page', @atlas_pagename),'Field for value')))<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Thank you again, this was very helpful. I’ll try to see if there’s already a question related to this in stackexchange and if not, create one.
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><span lang="EN-US">Best regards,<o:p></o:p></span></b></p>
<p class="MsoNormal"><span lang="EN-US">Ville Koivisto<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span lang="EN-US" style="mso-fareast-language:FI">From:</span></b><span lang="EN-US" style="mso-fareast-language:FI"> Andreas Neumann <a.neumann@carto.net>
<br>
<b>Sent:</b> Wednesday, June 26, 2019 10:45 AM<br>
<b>To:</b> Ville Koivisto <ville.koivisto@kuntotekniikka.fi><br>
<b>Cc:</b> qgis-user@lists.osgeo.org<br>
<b>Subject:</b> Re: [Qgis-user] How to change what fields QGIS layout text tool reads?<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">Hi,<o:p></o:p></span></p>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">I assume there is some kind of relation with common IDs or spatial relations between the coverage layer and the two other layers?<o:p></o:p></span></p>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">If yes, any of the three methods I proposed should work fine.<o:p></o:p></span></p>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">The text tool can only work with the coverage layer in Atlas context. All other layers will need to be retrieved through other methods, like the ones I described.<o:p></o:p></span></p>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">Have a look at the examples (help) of the the get_feature() and get_feature_by_id() functions. They should help you get going.<o:p></o:p></span></p>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">If not, then share with us the expression you tried.<o:p></o:p></span></p>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">Andreas<o:p></o:p></span></p>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif"><o:p> </o:p></span></p>
<p id="reply-intro"><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">On 2019-06-26 09:33, Ville Koivisto wrote:<o:p></o:p></span></p>
<blockquote style="border:none;border-left:solid #1010FF 1.5pt;padding:0in 0in 0in 5.0pt;margin-left:0in;margin-right:0in">
<p class="MsoNormal">Hi, <o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Thank you very much for your prompt answer. I have an atlas in the making that has at least three different layers in it, one naturally being the coverage layer. I have several text boxes in the atlas which are supposed to retrieve useful
 info from one of the layers. Syntaxes differ, simpler ones being for example:<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">concat('The value is', "Field")<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">...and I've been unable to fetch that "field" successfully. I assume that get_feature() / get_feature_by_id() and attribute() will get me further in this. By what logic the text tool chooses a layer from which to initially read fields (i.e.
 values user can check and use from drop down-menu <em><span style="font-family:"Calibri",sans-serif">fields and values</span></em>)?
<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Best regards,<o:p></o:p></p>
<p class="MsoNormal">Ville Koivisto<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><strong><span style="font-family:"Calibri",sans-serif;mso-fareast-language:FI">From:</span></strong><span style="mso-fareast-language:FI"> Andreas Neumann <<a href="mailto:a.neumann@carto.net">a.neumann@carto.net</a>>
<br>
<strong><span style="font-family:"Calibri",sans-serif">Sent:</span></strong> Wednesday, June 26, 2019 10:21 AM<br>
<strong><span style="font-family:"Calibri",sans-serif">To:</span></strong> Ville Koivisto <<a href="mailto:ville.koivisto@kuntotekniikka.fi">ville.koivisto@kuntotekniikka.fi</a>><br>
<strong><span style="font-family:"Calibri",sans-serif">Cc:</span></strong> <a href="mailto:qgis-user@lists.osgeo.org">
qgis-user@lists.osgeo.org</a><br>
<strong><span style="font-family:"Calibri",sans-serif">Subject:</span></strong> Re: [Qgis-user] How to change what fields QGIS layout text tool reads?</span><o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"> <o:p></o:p></p>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">Hi,<o:p></o:p></span></p>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">What expression did you use?<o:p></o:p></span></p>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">Here are some ideas what you could do:<o:p></o:p></span></p>
<ul type="disc">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo1">
<span style="font-size:10.0pt;font-family:"Verdana",sans-serif">get_feature() / get_feature_by_id() and attribute() - here you need some logic how to retrieve the related feature from the other layer</span><o:p></o:p></li><li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo1">
<span style="font-size:10.0pt;font-family:"Verdana",sans-serif">relation_aggregate() - allows you to have more than one match in the other layer and create aggregates</span><o:p></o:p></li><li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo1">
<span style="font-size:10.0pt;font-family:"Verdana",sans-serif">joins on layer properties - for 1:1 joins - needs to be done on layer properties</span><o:p></o:p></li></ul>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">If you clarify more specifically what you want to do, we can more easily help.<o:p></o:p></span></p>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">Also, if you have your expressions to share that you tried, it would help.<o:p></o:p></span></p>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">Greetings,<o:p></o:p></span></p>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">Andreas<o:p></o:p></span></p>
<p id="reply-intro"><span style="font-size:10.0pt;font-family:"Verdana",sans-serif">On 2019-06-26 09:06, Ville Koivisto wrote:<o:p></o:p></span></p>
<blockquote style="border:none;border-left:solid #1010FF 1.5pt;padding:0in 0in 0in 5.0pt;margin-left:0in;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt">
<p class="MsoNormal"><strong><span style="font-family:"Calibri",sans-serif">Hi list,
</span></strong><o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">I'm trying to add several texts to my layout and configure their contents by an expression. The problem is that the fields that expression dialog offers me under
<em><span style="font-family:"Calibri",sans-serif">fields and values </span></em>are from one certain layer and I need them from another one. I'm struggling to find a way to fetch fields from two other layers participating in the layout.
<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">If I try to use their fields in an expression I get: <o:p></o:p></p>
<p class="MsoNormal"><em><span style="font-family:"Calibri",sans-serif">Eval error: Column "Field" not found</span></em><o:p></o:p></p>
<p class="MsoNormal"><em><span style="font-family:"Calibri",sans-serif"> </span></em><o:p></o:p></p>
<p class="MsoNormal">How to solve this? Thank you for your attention. <o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal"><strong><span style="font-family:"Calibri",sans-serif">Best regards,</span></strong><o:p></o:p></p>
<p class="MsoNormal">Ville Koivisto<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Verdana",sans-serif;mso-fareast-language:FI"> </span><o:p></o:p></p>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Courier New";mso-fareast-language:FI">_______________________________________________<br>
Qgis-user mailing list<br>
<a href="mailto:Qgis-user@lists.osgeo.org">Qgis-user@lists.osgeo.org</a><br>
List info: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-user" target="_blank">
https://lists.osgeo.org/mailman/listinfo/qgis-user</a><br>
Unsubscribe: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-user" target="_blank">
https://lists.osgeo.org/mailman/listinfo/qgis-user</a></span><o:p></o:p></p>
</div>
</blockquote>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif"> <o:p></o:p></span></p>
</blockquote>
<p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif"><o:p> </o:p></span></p>
</div>
</body>
</html>