<?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>How to maintain Atomicity in Appian - while Persisting Transactional Data</title><link>https://community.appian.com/discussions/f/general/13023/how-to-maintain-atomicity-in-appian---while-persisting-transactional-data</link><description>Hi Team, 
 I was trying to use multiple Data Store Entities for maintaining Atomicity in Storing Transactional Data to Database. 
 But i was not able to achieve this, was still inserting/updating in 2nd Entity even if the 1st entity was empty. 
 We have</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>RE: How to maintain Atomicity in Appian - while Persisting Transactional Data</title><link>https://community.appian.com/thread/58629?ContentTypeID=1</link><pubDate>Wed, 01 Aug 2018 16:55:17 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:5410df5d-9bc2-4daa-835a-2a499d0edb7e</guid><dc:creator>chandu</dc:creator><description>This is the good approach I can say. Using stored procedure is other option but we can make use of WTMDS here, since your requirement will get satisfied by WTMDS.&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to maintain Atomicity in Appian - while Persisting Transactional Data</title><link>https://community.appian.com/thread/58606?ContentTypeID=1</link><pubDate>Wed, 01 Aug 2018 11:41:15 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:290e0c8e-1308-451d-9dc3-1988b5451fb1</guid><dc:creator>Stefan Helzle</dc:creator><description>Our best practice to put logic into a WTMDS node is to use expressions returning a list of entityData structures. This way you can do any checks you like and only write to DB if all your items is OK. The write to DB itself will be transactional.&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to maintain Atomicity in Appian - while Persisting Transactional Data</title><link>https://community.appian.com/thread/58605?ContentTypeID=1</link><pubDate>Wed, 01 Aug 2018 11:22:59 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:193daf6c-46fe-4bc5-ba89-1c51cd7eb259</guid><dc:creator>mohamedt808</dc:creator><description>@ejass, why not place a null check ??&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to maintain Atomicity in Appian - while Persisting Transactional Data</title><link>https://community.appian.com/thread/58604?ContentTypeID=1</link><pubDate>Wed, 01 Aug 2018 10:01:54 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:b12442c9-ddce-4726-83f0-37d99e410925</guid><dc:creator>dipaki</dc:creator><description>Thanks for your words. I am glad you find it helpful!&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to maintain Atomicity in Appian - while Persisting Transactional Data</title><link>https://community.appian.com/thread/58599?ContentTypeID=1</link><pubDate>Wed, 01 Aug 2018 09:40:05 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:eea32a0d-ea02-4e19-9fae-3573a986ae1a</guid><dc:creator>anjiv0001</dc:creator><description>Thank you Dipaki for your detailed explaination about stored procedure in &amp;lt;a href=&amp;quot;&lt;a href="https://mindmajix.com/oracle-dba-training&amp;quot;&amp;gt;database&amp;lt;/a&amp;gt;"&gt;mindmajix.com/.../a&amp;gt;&lt;/a&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to maintain Atomicity in Appian - while Persisting Transactional Data</title><link>https://community.appian.com/thread/58598?ContentTypeID=1</link><pubDate>Wed, 01 Aug 2018 09:18:52 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:2fadfab1-26d9-478d-99dd-d264bf8b869d</guid><dc:creator>ejass</dc:creator><description>Hi Shanmukha,&lt;br /&gt;
Yes i was having the logic for checking and validating the data for persisting. But i was testing the Atomicity of the Write to Multiple Data Store Entities..&lt;br /&gt;
&lt;br /&gt;
If the  Write to Multiple Data Store Entities Service is providing the Atomicity as default then i can avoid using the Stored Procedures for insert/update for the transactional Data.&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to maintain Atomicity in Appian - while Persisting Transactional Data</title><link>https://community.appian.com/thread/58596?ContentTypeID=1</link><pubDate>Wed, 01 Aug 2018 09:01:36 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:03d5dab0-92d6-4672-8efb-423a50b0f206</guid><dc:creator>Shanmukha</dc:creator><description>Hi Ejass,&lt;br /&gt;
&lt;br /&gt;
Did you have any logic in front of the node(multiple data store) to check that whether the 1st entity is empty or not like it is empty you don&amp;#39;t need to call the next node (in your case it is multiple data store). This might be basic thing you might have already checked it but just wanted to double check wit you.&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to maintain Atomicity in Appian - while Persisting Transactional Data</title><link>https://community.appian.com/thread/58595?ContentTypeID=1</link><pubDate>Wed, 01 Aug 2018 08:50:15 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:39ccaeb2-160b-49fa-b7fc-b8956d0f84fe</guid><dc:creator>ejass</dc:creator><description>Alright jurim409, But if one Entity is empty... it should not do any update in any of the other Entities... This is the condition&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to maintain Atomicity in Appian - while Persisting Transactional Data</title><link>https://community.appian.com/thread/58593?ContentTypeID=1</link><pubDate>Wed, 01 Aug 2018 08:36:17 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:b2ae1ebd-e654-4eb3-bf06-ef9cec6e4f5c</guid><dc:creator>dipaki</dc:creator><description>Hi ejass ,&lt;br /&gt;
&lt;br /&gt;
I was having the same kind of requirement. In such cases I would suggest to use Stored procedure in database and call execute the stored procedure using executestoredprocedure() plug-in function. Write your insert queries in between START TRANSACTION and COMMIT/ROLLBACK &lt;br /&gt;
&lt;br /&gt;
BEGIN&lt;br /&gt;
&lt;br /&gt;
    ...&lt;br /&gt;
&lt;br /&gt;
    START TRANSACTION;&lt;br /&gt;
&lt;br /&gt;
        ..statement 1..&lt;br /&gt;
	..statement 2..&lt;br /&gt;
	..statement 3..&lt;br /&gt;
&lt;br /&gt;
    IF &amp;lt;condition&amp;gt; THEN &lt;br /&gt;
		COMMIT;&lt;br /&gt;
    ELSE&lt;br /&gt;
		ROLLBACK&lt;br /&gt;
    END IF;&lt;br /&gt;
&lt;br /&gt;
END&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to maintain Atomicity in Appian - while Persisting Transactional Data</title><link>https://community.appian.com/thread/58592?ContentTypeID=1</link><pubDate>Wed, 01 Aug 2018 08:29:53 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:b2a04361-bc3b-400c-b7a7-60b256d7da5f</guid><dc:creator>jurim409</dc:creator><description>Hi ejass,&lt;br /&gt;
according to me, you have to insert a condition in the 2nd a!entityData of the multipleDataStore. So,  if 1st entity is empty, you don&amp;#39;t update the 2nd Entity&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>