<?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>Get Set External PVs Activity clears out data when process is using older version of the CDT</title><link>https://community.appian.com/discussions/f/plug-ins/20716/get-set-external-pvs-activity-clears-out-data-when-process-is-using-older-version-of-the-cdt</link><description>I have a related action that will make updates to fields in a CDT so I need to inform all active tasks of the change. We are currently using Set External PVs Activity to update active processes with the updated information. However, we recently made updates</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>RE: Get Set External PVs Activity clears out data when process is using older version of the CDT</title><link>https://community.appian.com/thread/80712?ContentTypeID=1</link><pubDate>Fri, 02 Apr 2021 22:22:03 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:e1fbb019-ad48-4faf-8e28-32b11471b23c</guid><dc:creator>kelch0001</dc:creator><description>&lt;p&gt;Thank you so much! I will try this approach out.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Get Set External PVs Activity clears out data when process is using older version of the CDT</title><link>https://community.appian.com/thread/80710?ContentTypeID=1</link><pubDate>Fri, 02 Apr 2021 19:34:34 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:b464846a-c1c3-4186-a334-8b97b2007693</guid><dc:creator>Chris</dc:creator><description>&lt;p&gt;Unfortunately I do not believe we can cast to an older version of a CDT, and there are no services available to update running process instance CDT versions, neither &lt;a href="https://docs.appian.com/suite/help/21.1/Process_Upgrade.html"&gt;Appian Process Upgrade&lt;/a&gt; or the &lt;a href="/b/appmarket/posts/ifm-manager"&gt;IFM Manager&lt;/a&gt; plugin will update CDT versions for you.&lt;/p&gt;
&lt;p&gt;I ran into this exact situation one time with a Related Action that was used to pass similar updates, outside of the workflow, to the running process instance. After a CDT version change we noticed any updates to legacy instances would clear the values and there was no easy way to get them back.&amp;nbsp; I was able to utilize the IFM Manager (after some configuring..) to retrieve data from the DB and re-load the older process CDTs to bring things back online, but the Edit mechanism had to be shut down and modified.&amp;nbsp; That was enough to steer me away from ever passing entire CDTs across processes, even to sub processes.&lt;/p&gt;
&lt;p&gt;Thus, I typically use a mechanism in the process of having a &amp;quot;Refresh&amp;quot; loop from the Start Node, which waits until a boolean PV (say, pv!sys_refreshCdt) is set to true.&amp;nbsp; In the Edit process, handle the data write directly to the DB, then use the Set External PVs node to only set pv!sys_refreshCdt to true(), this will fire the script task which refreshes the CDT via a!queryEntity(), resetting the pv!sys_refreshCdt value to false (for future edits) - no passing CDTs required.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-discussions-components-files/19/refresh_5F00_cdt.JPG" /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>