Model condition not applied on client-side model when a url parameter matches the condition name (Ba

When a model contains a condition that is set to “Single Specified Value” and the condition is set to “Filterable Default Off” and given a name, if the URL contains a parameter that matches the condition name, the condition is not applied.

When the model is NOT marked as “process client” side, the condition is applied which is the same behavior in skuid version prior to 7.x.

Steps to Reproduce:

  1. Create standard account detail page
  2. Mark Account model to “Process Model client-side”
  3. Add condition on field “Name” where value is equal to “Single specified value” (leave value blank) and state set to “Filterable Default Off” with a name of “acctname”
  4. Preview page providing Id
  5. Check SOQL for model - Expected = Actual = “SELECT Name,CreatedDate,Id FROM Account WHERE (Id = ‘00137000003of14AAA’) LIMIT 2”
  6. Add “acctname=blah” to url and reload page

Expected
No account is displayed and SOQL should be “SELECT Name,CreatedDate,Id FROM Account WHERE (Id = ‘00137000003of14AAA’)AND(Name = ‘blah’) LIMIT 2”

Actual
Account is displayed and SOQL is “SELECT Name,CreatedDate,Id FROM Account WHERE (Id = ‘00137000003of14AAA’) LIMIT 2”

Note

  1. As mentioned above, if model is NOT marked to “process client side” the expected = actual after step #6
  2. This might be related to https://community.skuidify.com/skuid/topics/url-param-condition-on-model-set-to-load-client-side-inc…

Sample Page XML

<skuidpage unsavedchangeswarning="yes" showsidebar="true" showheader="true" tabtooverride="Account" personalizationmode="server">   <models>
      <model id="Account" limit="1" query="true" createrowifnonefound="false" sobject="Account" adapter="" type="" doclone="" processonclient="true">
         <fields>
            <field id="Name"/>
            <field id="CreatedDate"/>
         </fields>
         <conditions>
            <condition type="param" enclosevalueinquotes="true" operator="=" field="Id" value="id"/>
            <condition type="fieldvalue" value="" enclosevalueinquotes="true" field="Name" state="filterableoff" inactive="true" name="acctname" operator="="/>
         </conditions>
         <actions/>
      </model>
   </models>
   <components>
      <pagetitle model="Account" uniqueid="sk-3YtyBC-64">
         <maintitle>
            <template>{{Name}}</template>
         </maintitle>
         <subtitle>
            <template>{{Model.label}}</template>
         </subtitle>
         <actions>
            <action type="delete"/>
            <action type="clone"/>
            <action type="share"/>
            <action type="savecancel" window="self"/>
         </actions>
      </pagetitle>
      <basicfieldeditor showsavecancel="false" showheader="true" model="Account" mode="read" uniqueid="sk-3YtyBC-65">
         <columns>
            <column width="100%">
               <sections>
                  <section title="Basics">
                     <fields>
                        <field id="Name"/>
                     </fields>
                  </section>
               </sections>
            </column>
         </columns>
      </basicfieldeditor>
   </components>
   <resources>
      <labels/>
      <css/>
      <javascript/>
   </resources>
<styles>
<styleitem type="background" bgtype="none"/>
</styles>
</skuidpage>

Thanks for letting us know about this Barry. It has now been fixed, will be available with the next patch release.

Thanks Andrew!

Tested and confirmed as resolved in Skuid 7.16.  Thank you!