Skip to main content

The filter is returning records that are not in the set of values listed.  It was working before the update to 11.2.22.

FIELD

Vendor_Checklist__c records where Gathering_Process__r.Status__c

OPERATOR

is in the set of values

VALUE

In Process – Gathering, In Process – Gathering – New Client, In Process – Gathering – No Confirmation

STATE

This condition, named StatusInProcess, can be modified by filters, but is off by default.

+1

We deployed the Skuid hotfix 11.2.22, and didn’t catch this issue in our testing related to filters. We’ve deployed Spark 12.1.2 in a sandbox and are getting the same issue...

When you have a filter type of “Select Option” and pick options and condition(s) set to “Manually”. The filter does not work correctly. If the condition is a Boolean field, the filter works. If the filter includes date fields, references fields from another model, etc., it doesn’t work.

Any direction on this would be appreciated.


Hi Jimmy and Brayden. I’ve tried to reproduce the behaviors you’re describing in a developer org I have running 11.2.22, but so far I haven’t found a filter configuration that’s misbehaving. Here is XML for the page I’ve built. For me, this is working correctly. Would you be able to try this out, and let me know if it’s working in your environments? It uses the Account and Contact objects, and filters on Industry and AccountId respectively.


If you’re able to share a simple repro page like this one that can help me observe the problem, that will be very much appreciated.


<skuidpage unsavedchangeswarning="yes" personalizationmode="server" showsidebar="true" useviewportmeta="true" showheader="true">
<models>
<model id="Acc" query="true" createrowifnonefound="false" datasource="salesforce" sobject="Account" limit="10">
<fields>
<field id="RecordTypeId"/>
<field id="Name"/>
<field id="Industry"/>
</fields>
<conditions>
<condition type="fieldvalue" value="" field="Industry" operator="=" enclosevalueinquotes="true" state="filterableoff" inactive="true" name="Industry"/>
</conditions>
<actions/>
</model>
<model id="Contacts" query="true" createrowifnonefound="false" datasource="salesforce" sobject="Contact">
<fields>
<field id="AccountId"/>
<field id="Account.Name"/>
<field id="Name"/>
</fields>
<conditions>
<condition type="fieldvalue" value="" enclosevalueinquotes="true" field="AccountId" fieldtargetobjects="Account" state="filterableoff" inactive="true" name="AccountId"/>
</conditions>
<actions/>
</model>
</models>
<components>
<skootable showconditions="true" showsavecancel="true" showerrorsinline="true" searchmethod="server" searchbox="true" showexportbuttons="false" hideheader="false" hidefooter="false" pagesize="all" alwaysresetpagination="false" createrecords="true" model="Acc" buttonposition="" mode="read" allowcolumnreordering="true" responsive="true" uniqueid="sk-1wsp-297" heading="Accounts">
<fields>
<field id="RecordTypeId" uniqueid="fi-1wsp-298"/>
<field id="Name" uniqueid="fi-1wsp-299"/>
<field id="Industry" uniqueid="fi-1wsp-300"/>
</fields>
<rowactions>
<action type="edit"/>
<action type="delete"/>
</rowactions>
<massactions usefirstitemasdefault="true">
<action type="massupdate"/>
<action type="massdelete"/>
</massactions>
<views>
<view type="standard"/>
</views>
<filters>
<filter type="select" createfilteroffoption="true" affectcookies="true" autocompthreshold="25" conditionsource="manual" filtermethod="server" labelmode="no" condition="Industry">
<sources>
<source type="manual" effectsbehavior="justdefault">
<options>
<option label="Engineering" type="simple" value="Engineering"/>
<option label="Financial Services" type="simple" value="Financial Services"/>
</options>
</source>
</sources>
</filter>
<filter type="toggle" createfilteroffoption="true" affectcookies="true" autocompthreshold="25" conditionsource="manual" labelmode="auto" filtermethod="server" label="All Industries">
<effects>
<effect action="deactivate" value="" condition="Industry"/>
</effects>
</filter>
</filters>
<searchfields/>
</skootable>
<skootable showconditions="true" showsavecancel="true" showerrorsinline="true" searchmethod="server" searchbox="true" showexportbuttons="false" hideheader="false" hidefooter="false" pagesize="10" alwaysresetpagination="false" createrecords="true" model="Contacts" buttonposition="" mode="read" allowcolumnreordering="true" responsive="true" uniqueid="sk-1wto-497" heading="Contacts">
<fields>
<field id="Name" uniqueid="fi-1wto-500"/>
<field id="AccountId" uniqueid="fi-1wto-498"/>
<field id="Account.Name" uniqueid="fi-1wto-499"/>
</fields>
<rowactions>
<action type="edit"/>
<action type="delete"/>
</rowactions>
<massactions usefirstitemasdefault="true">
<action type="massupdate"/>
<action type="massdelete"/>
</massactions>
<views>
<view type="standard"/>
</views>
<filters>
<filter type="select" createfilteroffoption="true" affectcookies="true" autocompthreshold="25" conditionsource="manual" filtermethod="server" labelmode="no" condition="AccountId">
<sources>
<source type="model" effectsbehavior="justdefault" model="Acc">
<labeltemplate>{{{Name}}}</labeltemplate>
<valuetemplate>{{Id}}</valuetemplate>
</source>
</sources>
</filter>
</filters>
</skootable>
</components>
<resources>
<labels/>
<javascript/>
<css/>
<actionsequences uniqueid="sk-1wsY-220"/>
</resources>
<styles>
<styleitem type="background" bgtype="none"/>
</styles>
</skuidpage>

Hey Mark,

Your example does work in an org that is on version 12.1.2. Also, I was able to add custom fields and those work.

But we’re still have issues with filters on all of our pages. I’ve rebuilt part of our contract home page (standard list view page), and the filter option of “needs renewed” doesn’t work.

Please note, many of our filters reference custom fields, I’ve removed them from this version so that you could easily replicate.

Also note, I’ve compared the XML versions of filters on our none working pages, to that of the sample page you provided above, and I can’t find any differences in syntax. Also, I’ve verified that I was logged in as a system admin, and all of the fields are accessible to that user. Lastly, we’ve made no changes to any of our page subsequent to the hotfix (or immediately before). We’ve upgraded our packages several times (after testing in a sandbox) and have not experienced this issue before.

XML Below:

                  THIS_MONTH LAST_MONTH     Customer Partner         Contracts Home  {{Model.label}}                              



Thanks very much Brayden. I will test this and get back to you. Quick question - which version of Skuid were you using before upgrading to 11.2.22?


We were on 11.0.6.


Thanks for letting me know. There was a change to the product in 11.1.3 (which is between your old and new versions), and it deals with how Skuid handles certain field permission scenarios. Here’s the release note on that:
https://docs.skuid.com/v11.1.3/en/release-notes.html#updates-as-of-11-1-3
I wanted to share it in case there might be a field permission you need to grant to affected users. It sounds like the behavior has changed for all your users in this case though, so this may not be relevant to your issue, although it is good to be aware of it.

Thanks to your repro page XML, I can see that setting a manual filter to activate model conditions is clearing out the predefined field values you have set. I think this may be why the filter’s behavior is different right now, and I’m working to understand the underlying change better. I will continue to follow up here.


Perfect. Thank you for both updates.


Hey Mark,

Any updates on this?

-Brayden


Hi Brayden, I’m working on this issue together with Mark, it’s still under investigation and I’ll update you here in the community post as soon as we know more. Thanks, Luzie


Hi Brayden, we reported the issue to our development team.


Thanks Luzie for the updated. I’m looking forward to resolution of this issue.


Reply