<?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>Executing two Smart Services from One Saveinto</title><link>https://community.appian.com/discussions/f/user-interface/38818/executing-two-smart-services-from-one-saveinto</link><description>I need to execute two delete record smart service from one saveinto. Evidently, this is not possible as it throws an error. 
 &amp;quot; An error occurred while executing a save: Expression evaluation error : Attempted to run a second smart service, but only one</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>RE: Executing two Smart Services from One Saveinto</title><link>https://community.appian.com/thread/146723?ContentTypeID=1</link><pubDate>Fri, 28 Mar 2025 19:19:40 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:9cd3d959-6a5e-4f0b-bb98-786d0c9ed577</guid><dc:creator>Mike Schmitt</dc:creator><description>&lt;p&gt;If you&amp;#39;re using the newer a!startProcess(), make sure you set &amp;quot;is synchronous&amp;quot; to TRUE - the newer version doesn&amp;#39;t obey (or care about) activity chaining in the process model, and our only options are now to either assume the process has completed or wait for a time-out (though small, utility-based process models should pose little or no issue for this constraint).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Executing two Smart Services from One Saveinto</title><link>https://community.appian.com/thread/146722?ContentTypeID=1</link><pubDate>Fri, 28 Mar 2025 18:41:55 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:d8a6df5f-4430-4769-8352-94b8496d5884</guid><dc:creator>Stefan Helzle</dc:creator><description>&lt;p&gt;This is the reason:&amp;nbsp;&lt;a href="https://docs.appian.com/suite/help/25.1/functions-side-effects.html"&gt;https://docs.appian.com/suite/help/25.1/functions-side-effects.html&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Executing two Smart Services from One Saveinto</title><link>https://community.appian.com/thread/146720?ContentTypeID=1</link><pubDate>Fri, 28 Mar 2025 17:33:19 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:5eb15fc5-831b-4261-8c3b-6d05bd3d8fda</guid><dc:creator>Chris.Gillespie</dc:creator><description>&lt;p&gt;I shouldn&amp;#39;t have been so quick.&amp;nbsp; I created the PM, it has two process variables; languagePreference and speakerPreference.&amp;nbsp; I&amp;#39;m having issues with receiving the error codes from the process model.&lt;/p&gt;
&lt;p&gt;Here is the code that calls the process&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="json"&gt;                        a!radioButtonField(
                          choiceLabels: { &amp;quot;Yes&amp;quot;, &amp;quot;No&amp;quot; },
                          choiceValues: { true, false },
                          label: &amp;quot;Is there a Speaker Preference&amp;quot;,
                          labelPosition: &amp;quot;ABOVE&amp;quot;,
                          value: local!selectedParishProfile.speakerPreference,
                          saveInto: {
                            a!save(
                              local!selectedParishProfile.speakerPreference,
                              save!value
                            ),
                            a!startProcess(
                              processModel: cons!PMSO_deleteSpeakerandLanguagePreferences,
                              processParameters: a!map(
                                languagePreference: local!languagePreference,
                                speakerPreference: local!speakerPreference
                              ),
                              onSuccess: {
                                a!save(local!languagePreferencesDeletedSuccess, fv!processInfo.pv.LanguageErrorOccured),
                                a!save(local!speakerPreferencesDeletedSuccess, fv!processInfo.pv.SpeakerErrorOccured)
                              }
                            ),
                            
                            
                          },
                          showWhen: if(
                            a!isNotNullOrEmpty(
                              local!selectedParishProfile.speakerRequired
                            ),
                            local!selectedParishProfile.speakerRequired,
                            false
                          ),
                          required: if(
                            a!isNotNullOrEmpty(
                              local!selectedParishProfile.speakerRequired
                            ),
                            local!selectedParishProfile.speakerRequired,
                            false
                          ),
                          choiceLayout: &amp;quot;COMPACT&amp;quot;,
                          choiceStyle: &amp;quot;STANDARD&amp;quot;,
                          spacing: &amp;quot;EVEN_MORE&amp;quot;
                        ),&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;The process variables LanguageErrorOccured and&amp;nbsp;SpeakerErrorOccured, are being populated in the PM.&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:77px;max-width:1896px;" alt=" " src="/resized-image/__size/3792x154/__key/communityserver-discussions-components-files/13/pastedimage1743183001266v1.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:38px;max-width:1055px;" alt=" " height="38" src="/resized-image/__size/2110x76/__key/communityserver-discussions-components-files/13/pastedimage1743183067763v2.png" width="1055" /&gt;&lt;/p&gt;
&lt;p&gt;But not the local variable&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="/resized-image/__size/640x480/__key/communityserver-discussions-components-files/13/pastedimage1743183194593v3.png" alt=" " /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Executing two Smart Services from One Saveinto</title><link>https://community.appian.com/thread/146719?ContentTypeID=1</link><pubDate>Fri, 28 Mar 2025 16:47:41 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:4ab81caf-5b56-4b6f-88f3-52c2ba667cdd</guid><dc:creator>Chris.Gillespie</dc:creator><description>&lt;p&gt;I agree!&amp;nbsp; I think Appian puts in a lot of limitations because they are afraid that we creative programmers will find ways to do......&lt;/p&gt;
&lt;p&gt;What?&amp;nbsp; I love their single user licensing model, how would allowing us to put in two or more smart services impact their bottom line?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Executing two Smart Services from One Saveinto</title><link>https://community.appian.com/thread/146718?ContentTypeID=1</link><pubDate>Fri, 28 Mar 2025 16:30:28 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:a784ae50-e62b-47bd-9111-2c183eadc899</guid><dc:creator>Chris.Gillespie</dc:creator><description>&lt;p&gt;Thanks again Stefan!!!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Executing two Smart Services from One Saveinto</title><link>https://community.appian.com/thread/146717?ContentTypeID=1</link><pubDate>Fri, 28 Mar 2025 16:09:06 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:f97bf2a1-498a-4a7b-b00a-8c744b688fa7</guid><dc:creator>Mike Schmitt</dc:creator><description>&lt;p&gt;One potential workaround is to contrive a way for the setting to require 2 user clicks (say, a confirmation button, or post confirmation, etc).&amp;nbsp; That might or might not be feasible given the other on-form designs of course.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Frankly I, too, sometimes find this limitation a bit trivial (they want to prevent us from execting dozens or hundreds of smart services in one SaveInto, and, for some reason, the only way they can think of to do that is to limit it to 1?&amp;nbsp; &lt;em&gt;what&lt;/em&gt;?) - but honestly it&amp;#39;s not THAT much of a lift to simply whip up a process model that takes care of all of it, and simply swap out a startProcess call.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Executing two Smart Services from One Saveinto</title><link>https://community.appian.com/thread/146708?ContentTypeID=1</link><pubDate>Fri, 28 Mar 2025 15:37:11 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:117e55a7-6d42-47fb-8703-ee62e63ab246</guid><dc:creator>Stefan Helzle</dc:creator><description>&lt;p&gt;This is correct. Create a process model.&lt;/p&gt;
&lt;p&gt;There is an upcoming Appian Rocks (&lt;a id="" href="https://appian.rocks"&gt;https://appian.rocks&lt;/a&gt;) podcast episode where we discuss the reasons for this design decision.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>