<?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>Nested CDTs</title><link>https://community.appian.com/discussions/f/best-practices/11277/nested-cdts</link><description>I wanted to know what&amp;#39;s Appian best practices when it comes to nested CDTs. How many levels deep should a CDT be nested? What are the draw-backs of nesting too deep? Are there any advantages of creating a view and mapping it to CDT instead of doing a</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>RE: Nested CDTs</title><link>https://community.appian.com/thread/59066?ContentTypeID=1</link><pubDate>Mon, 13 Aug 2018 05:56:01 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:1772025b-7e95-4e7f-98aa-6cfa500ba350</guid><dc:creator>rajeshs</dc:creator><description>1 level of nested CDT is always recommended, but please make sure that child CDT is not unbounded. If many-to-many relationship is required then create separate CDT for parent and child node and identify a field which is common in both (act as a foreign key).&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Nested CDTs</title><link>https://community.appian.com/thread/58803?ContentTypeID=1</link><pubDate>Tue, 07 Aug 2018 01:19:40 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:8d91d0f7-3577-427a-8f9e-013faf1ac483</guid><dc:creator>sahithip120</dc:creator><description>use a!flatten()&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Nested CDTs</title><link>https://community.appian.com/thread/56652?ContentTypeID=1</link><pubDate>Thu, 14 Jun 2018 11:15:48 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:a2df7155-ad7e-4418-b27d-7055ef980215</guid><dc:creator>chandu</dc:creator><description>If you are on 17.3+ and above you can use a!flatten, else you can write your own expression rule.&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Nested CDTs</title><link>https://community.appian.com/thread/56641?ContentTypeID=1</link><pubDate>Thu, 14 Jun 2018 10:07:01 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:cd78adc8-7fab-4abc-90ea-3a671f116715</guid><dc:creator>soujanyac0001</dc:creator><description>Can anyone tell me how to flatten a nested cdt. I have tried using expandcdt(), but it didnt work for me.&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Nested CDTs</title><link>https://community.appian.com/thread/52296?ContentTypeID=1</link><pubDate>Tue, 06 Feb 2018 08:23:48 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:19a01673-70c6-4833-8c79-ce55b8c4c047</guid><dc:creator>TJ</dc:creator><description>I agree to what Alok Kumar mentioned. You should try not to go for Nested CDTs as it may cause several issues.&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Nested CDTs</title><link>https://community.appian.com/thread/52292?ContentTypeID=1</link><pubDate>Tue, 06 Feb 2018 08:06:02 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:df91d6b1-d499-42af-ac7c-b0403700b7e9</guid><dc:creator>smriti p0001</dc:creator><description>Appian generally recommends one level only, but in real time scenario specially when you are using services then lot of nesting is required, however it may lead to performance issues later.&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Nested CDTs</title><link>https://community.appian.com/thread/49581?ContentTypeID=1</link><pubDate>Mon, 23 Oct 2017 02:11:46 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:a4167ab0-64c1-41ff-b903-6c9d2c7d4707</guid><dc:creator>vineeta6579</dc:creator><description>&lt;p&gt;One of the disadvantages of nested CDT design is N+1 Problem, Ref below doc link for details.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://community.appian.com/w/the-appian-playbook/197/database-performance-best-practices"&gt;community.appian.com/.../database-performance-best-practices&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://community.appian.com/w/the-appian-playbook/197/database-performance-best-practices"&gt;community.appian.com/.../database-performance-best-practices&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Nested CDTs</title><link>https://community.appian.com/thread/49579?ContentTypeID=1</link><pubDate>Sat, 21 Oct 2017 22:02:58 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:c4c98d82-7d43-4138-81a7-a976cfa320fa</guid><dc:creator>Jamal Case</dc:creator><description>Thank you all for the feedback.&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Nested CDTs</title><link>https://community.appian.com/thread/49554?ContentTypeID=1</link><pubDate>Fri, 20 Oct 2017 12:50:29 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:19d93706-01ae-48e4-8e18-27afc700fb5f</guid><dc:creator>aloks0189</dc:creator><description>Adding to above points, also when you are working with Nested CDT, you might face difficulties in many aspect such as,&lt;br /&gt;
&lt;br /&gt;
While converting this data, to JSON and getting the dictionary back from JSON, will be pretty difficult.&lt;br /&gt;
&lt;br /&gt;
Also when you want to debug these data in UI or process model, it will be difficult while compared to normal CDT.&lt;br /&gt;
&lt;br /&gt;
And I believe, we should not go for nested CDT even for single level, if we have any other choice remain, &lt;br /&gt;
&lt;br /&gt;
yes I agree, as per Appian statement, upto 1 level of nested is ok or good, but I believe Appian suggests, if at all you want to go for nested CDT then go for 1 level but I believe if you can achieve the same using plain CDT, then you should always go for plain CDT&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Nested CDTs</title><link>https://community.appian.com/thread/49550?ContentTypeID=1</link><pubDate>Fri, 20 Oct 2017 10:37:08 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:0e2f8a02-63bc-433f-8037-d32d5ee42d30</guid><dc:creator>vijayd</dc:creator><description>Some more issues could lead into complex looping when you are working in Nested CDTs which would potentially lead to High health checks. However it varies from case to case.&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Nested CDTs</title><link>https://community.appian.com/thread/49542?ContentTypeID=1</link><pubDate>Fri, 20 Oct 2017 05:11:27 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:4253d3ad-11e2-4c1c-a037-0b7da036f167</guid><dc:creator>ankita0004</dc:creator><description>Nested CDT has some advantages as well as some limitations also.&lt;br /&gt;
&lt;br /&gt;
Advantages:&lt;br /&gt;
&lt;br /&gt;
1. There is no need for creation of view if we use nested cdt.&lt;br /&gt;
2. We can fetch data of child cdt from parent cdt&lt;br /&gt;
&lt;br /&gt;
Limitations:&lt;br /&gt;
&lt;br /&gt;
It has much more limitations than advantages:&lt;br /&gt;
&lt;br /&gt;
1. Debugging of process instance is much difficult.&lt;br /&gt;
2. We can&amp;#39;t give a name of column in master table.&lt;br /&gt;
3. Unnecessarily we need to fetch child table data&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
and many more disadvantage So View is much better approach than nested cdts.&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Nested CDTs</title><link>https://community.appian.com/thread/49538?ContentTypeID=1</link><pubDate>Thu, 19 Oct 2017 17:44:14 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:a4070505-09bc-4ef4-92f1-e95cabde7873</guid><dc:creator>chandu</dc:creator><description>Hi Jamal, &lt;br /&gt;
As u aware that Appian recommends one level of nested CDT. As far as i know these are the following are the limitations .&lt;br /&gt;
if you want to get only parent cdt data, you will get child cdt data as well.In one to many relation ship this results in pulling unnecessarily child data as well.&lt;br /&gt;
Additional coding needs to be done to show the data in grids/reports that is coming from nested CDTs[typically when not in one one relationship]&lt;br /&gt;
[Need to confirm the below Usecase showing the nested CDT in script task output tab] &lt;br /&gt;
Suppose you a have a nested CDT structure as below.&lt;br /&gt;
CDT1&lt;br /&gt;
	field1InCDT1&lt;br /&gt;
	CDT2&lt;br /&gt;
		field2InCDT2ofCDT1&lt;br /&gt;
		CDT3&lt;br /&gt;
			field3InCDT3ofCDT2ofCDT1&lt;br /&gt;
			&lt;br /&gt;
In script task outputs tab, I think you cannot store a value into the field CDT1.CDT2.CDT3.field3InCDT3ofCDT2ofCDT1 as Outupt tab will show two levels deep only.&lt;br /&gt;
&lt;br /&gt;
I&amp;#39;m really interested in digging more on nested CDT&amp;#39;s. Lets see what other practitioners suggests.&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Nested CDTs</title><link>https://community.appian.com/thread/49537?ContentTypeID=1</link><pubDate>Thu, 19 Oct 2017 16:41:19 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:6551e42b-9ef7-4a28-beb8-f4f5b0a73b1d</guid><dc:creator>John M</dc:creator><description>Jamal,&lt;br /&gt;
&lt;br /&gt;
According to the playbook they should not be more than 1 level deep (&lt;a href="https://community.appian.com/w/the-appian-playbook/209/project-implementation-best-practices-checklist)"&gt;community.appian.com/.../project-implementation-best-practices-checklist)&lt;/a&gt;.  You can also find a list of db best practices here (&lt;a href="https://community.appian.com/w/the-appian-playbook/197/database-performance-best-practices)"&gt;community.appian.com/.../database-performance-best-practices)&lt;/a&gt; which discusses some drawbacks of using nested cdts&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>