UI -Only field when rending through Enable Conditions

I have added a Ui-Only field to an aggregate model as a formula. Based on the value in that Ui-Only field, I have a button rendering based on an ‘enable condition’. Everything is working as expected except I get an error that Skuid is looking for my Ui-Only field in my object and can’t find it.

Note: Ui-Only field is ‘TimePeriod’

1. A Skuid Model, ‘IntegrationAggr’, requested a Field with relationship name ‘TimePeriod’, on the IntegrationTimeSheet__c Object, but Skuid could not find a valid Field accessible through this relationship name. Please check that this Field actually exists on this Object (or on any related Objects). If it does not exist, remove it from this Model.

I figured out the problem and I will try to explain it.

When you add a render condition based on a Ui-Only field for an aggregate a new field will automatically be created with an aggregate format ‘countTimePeriod’ (Note a new field will be created every time you create a new render condition). Since this new field is not consider a ‘ui-only’ field the model is looking for it in the model. So to get this to work for an aggregate you have to hack the XML and change the alias name of the auto created field.

For example:

  1. Ui-Only field: TimePeriod
  2. Auto created field: countTimePeriod (Change the alias to 'TimePeriod' this is the field your condition is actually looking to so change the alias to be the same as your Ui-Only created field)
  3. XML: For the auto created field you need to add the ui-only tag.
  • Original:
  • Altered: <field id="TimePeriod" uionly="true" name="TimePeriod" function="COUNT" readonly="true"/>

Nice work!

Skuid… any thoughts on chancing how rendering conditions work with aggregate models? 

Thanks! Some day aggregate models will not take so much brain power!