Overridden field metadata not used when model is marked to process client side (Update 7)

When field metadata has been overridden on a model field, if the model is marked to process client side the overridden properties are not used - instead, the SFDC metadata is used.

Steps to reproduce:

  1. Create page from xml
  2. Preview page

Expected Behavior
Field Label = Overridden Label For Account Name
HelpText = Overridden Help Text For Account Name

Actual Behavior
Field Label = Account Name
HelpText =

  1. Change page to NOT process client side
  2. Preview page

Expected = Actual
Field Label =Overridden Label For Account Name
HelpText = Overridden Help Text For Account Name

Page XML

<skuidpage unsavedchangeswarning="yes" personalizationmode="server" showsidebar="true" showheader="true" tabtooverride="Account">   <models>
      <model id="Account" limit="" query="true" createrowifnonefound="false" sobject="Account" adapter="" type="" doclone="" processonclient="true">
         <fields>
            <field id="Name" overridemetadata="true" ogdisplaytype="STRING" displaytype="TEXT" length="" label="Overridden Label For Account Name" helptext="Overridden Help Text For Account Name"/>
            <field id="CreatedDate"/>
         </fields>
         <conditions>
            <condition type="param" value="id" field="Id" operator="=" enclosevalueinquotes="true" novaluebehavior=""/>
         </conditions>
         <actions/>
      </model>
   </models>
   <components>
      <pagetitle model="Account" uniqueid="sk-3IeBVh-70">
         <maintitle>
            <template>{{Name}}</template>
         </maintitle>
         <subtitle>
            <template>{{Model.label}}</template>
         </subtitle>
         <actions>
            <action type="savecancel" window="self"/>
         </actions>
      </pagetitle>
      <basicfieldeditor showsavecancel="false" showheader="true" model="Account" mode="edit" uniqueid="sk-3IeBVh-71" buttonposition="">
         <columns>
            <column width="100%">
               <sections>
                  <section title="Basics" collapsible="no">
                     <fields>
                        <field id="Name" valuehalign="" type=""/>
                     </fields>
                  </section>
               </sections>
            </column>
         </columns>
      </basicfieldeditor>
   </components>
   <resources>
      <labels/>
      <css/>
      <javascript/>
   </resources>
   <styles>
      <styleitem type="background" bgtype="none"/>
   </styles>
</skuidpage>

Hey, Barry. I’ve verified this and logged it as bug, referencing this post. As always, thanks for the super helpful issue reports. We’ll get this patched up and out the door in a future Banzai update (probably 8, but can’t say for sure).

Thanks J!

Hey J - You likely discovered this already but just in case, I ran in to an issue related to this same thing with overriding Display Type with model marked to process client side.  I’m guessing the core of the issue is related to the overridden properties across the board not being applied but thought I would mention just in case.  Thanks!

Yep, you got it: we are grabbing metadata from the server on the initial query and are writing over whatever is there. The upcoming fix will preserve anything you’ve overridden and merge in whatever else comes back from the server.

Good deal, thank you!

This issue is now resolved as of Banzai - Update 7.4, available via Skuid Releases.

Hey JD -

Confirmed with 7.35 (Update 7.4) that the overridden values in the field editor are now displayed correctly

However, similar to my comment at https://community.skuid.com/t/obtain-label-metadata-property-of-field-in-renderer regarding merge syntax, same issue applies here with helptext, labeltext, etc.  as the properties on the field object passed to custom renderers have already had merge syntax applied.

Thoughts?