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

  • 1
  • Problem
  • Updated 3 years ago
  • Solved
  • (Edited)
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>
Photo of Barry Schnell

Barry Schnell, Champion

  • 18,076 Points 10k badge 2x thumb

Posted 3 years ago

  • 1
Photo of Andrew Duensing

Andrew Duensing, Employee

  • 740 Points 500 badge 2x thumb
Thanks for letting us know about this Barry. It has now been fixed, will be available with the next patch release.
Photo of Barry Schnell

Barry Schnell, Champion

  • 18,076 Points 10k badge 2x thumb
Thanks Andrew!
Photo of Barry Schnell

Barry Schnell, Champion

  • 18,076 Points 10k badge 2x thumb
Tested and confirmed as resolved in Skuid 7.16.  Thank you!