<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.appian.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Dynamic interface loading on tree node selection</title><link>https://community.appian.com/discussions/f/general/38966/dynamic-interface-loading-on-tree-node-selection</link><description>Hello All, 
 I have a 2 column layout. in left section I have a tree with multiple node like shown in below. 
 
 Category1
 
 Interface1 
 Interface2 
 
 
 Category2
 
 Interface3 
 Interface4 
 Interface5 
 
 
 
 In right section I have to display the</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>RE: Dynamic interface loading on tree node selection</title><link>https://community.appian.com/thread/147479?ContentTypeID=1</link><pubDate>Wed, 23 Apr 2025 08:46:28 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:4e77032f-ec30-4707-bb4c-3373573ef35c</guid><dc:creator>vijayan544557</dc:creator><description>&lt;p&gt;Thanks Stefan! this helps.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Dynamic interface loading on tree node selection</title><link>https://community.appian.com/thread/147467?ContentTypeID=1</link><pubDate>Tue, 22 Apr 2025 15:56:11 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:0792face-317a-430d-bba6-7dbdd45d141e</guid><dc:creator>Stefan Helzle</dc:creator><description>&lt;p&gt;Plugin:&amp;nbsp;Content Tools&lt;/p&gt;
&lt;p&gt;Function:&amp;nbsp;getrulereferencebyname&lt;/p&gt;
&lt;p&gt;Code could be:&amp;nbsp;&lt;span&gt;getrulereferencebyname(&amp;quot;YOU_RULE_NAME&amp;quot;)()&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;But keep in mind, you will still have to develop each individual interface. Trying to call them by name, just for the sake of being able to, is a questionable design decision. At least in my opinion.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Dynamic interface loading on tree node selection</title><link>https://community.appian.com/thread/147459?ContentTypeID=1</link><pubDate>Tue, 22 Apr 2025 14:33:42 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:82d8fe47-1b5d-4b2d-8ef9-dcebcfe4464a</guid><dc:creator>vijayan544557</dc:creator><description>&lt;p&gt;Hi Stefan, can you please elaborate in detail? I can check if we can take that route or not.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Dynamic interface loading on tree node selection</title><link>https://community.appian.com/thread/147448?ContentTypeID=1</link><pubDate>Tue, 22 Apr 2025 06:22:47 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:013e5e4e-80ef-4761-8612-c05635237446</guid><dc:creator>Stefan Helzle</dc:creator><description>&lt;p&gt;As I mentioned above, you cannot call an interface by its name. But, as all your interfaces need to be built, you can create an expression that maps a name (as string) to a reference to that interface.&lt;/p&gt;
&lt;p&gt;Edit: Yes, I know that using some plugins and other things, we can call a function just by its name, but that&amp;#39;s not a design I would want to recommend!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Dynamic interface loading on tree node selection</title><link>https://community.appian.com/thread/147447?ContentTypeID=1</link><pubDate>Tue, 22 Apr 2025 06:22:06 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:9e001b9f-673e-4df4-95ee-8288934308c3</guid><dc:creator>vijayan544557</dc:creator><description>&lt;p&gt;Thanks Teja for your reply. Yes, I am storing&amp;nbsp;&lt;span&gt;categories and interfaces related to those categories in one record. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Answer to second question - I already have all data available on that interface using records, so as of now no need of any expression rule to get the interface name. As soon as the node is clicked I am storing its interface name of that node, in one local variable. It gives me a string value and not sure how to convert that into an interface value.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Dynamic interface loading on tree node selection</title><link>https://community.appian.com/thread/147446?ContentTypeID=1</link><pubDate>Tue, 22 Apr 2025 06:16:35 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:bace5d8b-be71-4323-acbb-c787d2c847b5</guid><dc:creator>vijayan544557</dc:creator><description>&lt;p&gt;Thanks for your reply Stefan.&lt;/p&gt;
&lt;p&gt;Let me explain the usecase here -&amp;nbsp; We have a requirement of generating tree structure and selection of tree node, show the respective interface on the right side of the same interface. (Similar to our windows explorer)&lt;/p&gt;
&lt;p&gt;Our current Interface structure -&amp;gt; 2 Pane layout. In left side pane showing the tree structure and in right side pane want to show the respective interface of selected node.&lt;/p&gt;
&lt;p&gt;Data in DB - Below is the data available in DB.&amp;nbsp;&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Group&lt;/td&gt;
&lt;td&gt;Nodename&lt;/td&gt;
&lt;td&gt;InterfaceName&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;G1&lt;/td&gt;
&lt;td&gt;Node1&lt;/td&gt;
&lt;td&gt;Interface1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;G1&lt;/td&gt;
&lt;td&gt;Node2&lt;/td&gt;
&lt;td&gt;Interface2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;G2&lt;/td&gt;
&lt;td&gt;Node3&lt;/td&gt;
&lt;td&gt;Interface3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;G2&lt;/td&gt;
&lt;td&gt;Node4&lt;/td&gt;
&lt;td&gt;Interface4&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;and so on.&lt;/p&gt;
&lt;p&gt;Now as I mentioned above we are generating tree structure in the left side of pane using Group and Nodename columns. Now once the tree is generated and anyone clicks on the node, its respective interface need to be taken from DB and rendered in the right side pane.&lt;/p&gt;
&lt;p&gt;Now when we try to get the selected node&amp;#39;s interface, it returns name of the interface (string data type). Which doesnt help.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I need &lt;strong&gt;rule!Interface1().&amp;nbsp; &lt;/strong&gt;Not the string value.&lt;/p&gt;
&lt;p&gt;Please suggest how to achieve this functionality. I do not want to hard code anything in using condition, which can be one of way.&amp;nbsp; I just want to keep referencing to the DB data for interface name.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Any optimal way to achieve this?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Dynamic interface loading on tree node selection</title><link>https://community.appian.com/thread/147444?ContentTypeID=1</link><pubDate>Tue, 22 Apr 2025 06:04:20 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:b0980844-4a0e-436d-bb44-b63e90a7b83f</guid><dc:creator>Teja Kunchala</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;a href="/members/vijayan544557"&gt;vijayan544557&lt;/a&gt;&amp;nbsp;&lt;br /&gt;So, you are storing categories and interfaces related to those categories in one record?&lt;br /&gt;And when one node is clicked you are calling an expression right, can you send the expression rule code for reference. Like on what basis that expression rule is fetching the interface name.&lt;br /&gt;If you need another approach&lt;br /&gt;If there are some static values for nodes, you can handle them using choose condition based on the node selected.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Dynamic interface loading on tree node selection</title><link>https://community.appian.com/thread/147441?ContentTypeID=1</link><pubDate>Tue, 22 Apr 2025 05:44:01 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:bdae3722-2a1c-4902-8c6f-95036d797434</guid><dc:creator>Stefan Helzle</dc:creator><description>&lt;p&gt;Not sure what your use case is here, but an expression can return a reference to an interface which you can then call from your other code.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://docs.appian.com/suite/help/25.1/expression-advanced-evaluation.html#indirectly-evaluating-arguments"&gt;docs.appian.com/.../expression-advanced-evaluation.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;And, without applying some known, but not recommended black magic, you cannot store such a reference in the database. Which, I think, is not an issue, because you have only a finite number of options. A simple expression that maps some string-identifier to the actual reference to the interface.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>