Mass update clearing fields when it should be leaving them alone

When I do a mass update and change just one thing, other fields are getting cleared that should just be left alone. On the latest skuid 7.34


Jack, to clarify, it looks like the only field that’s “getting deleted” is the “Description” field — is this true? What kind of field is this? Is this a true Salesforce Picklist field? If so, is it a dependent picklist field? Or if it is a Text field, have you overridden its metadata type to be Picklist? Do you have any Model Actions that would be changing the value of that field if the Type field is updated?

Description and Charge are the two values getting cleared. I was totally wrong about Description, they are both picklist fields and Description is dependent on Charge.

So it looks like Charge is getting blanked and therefore Description gets blanked as well

Neither have been overridden with anything, and there are no model actions that affect this model. 

Type is actually Record Type. 

I’m playing with it a little more, and when I update something that isn’t Charge or Description, everything is fine. So it’s just when I update the Record Type or the Charge. What seems not ideal is that if I update Charge to something that is already there, like “Loan Charges”, then the Description gets cleared for ALL the records, not even if they currently have the value “Loan Charges” in the Charge field. 

I was thinking one solution would be to leave this fields out of the Mass Update, but I don’t want to make them Read Only for inline editing.

I read this: https://community.skuid.com/t/custom-field-renderers-mass-updates-in-tables

Is there any other way to keep a field out of the mass edit popup besides a custom field renderer? I saw that maybe that’s an idea under consideration, being able to override and edit the default Mass Update popup (similar to editing template popups). 

I guess this isn’t really a bug, more like a feature request - “don’t edit any rows where a mass edit results in no changed data”

Okay, this is making more sense now — Record Type functions as a “Controlling Picklist” field, and so if you change the value of Record Type on a particular row, Skuid goes through and requests that all Dependent Picklists on that row reevaluate themselves to ensure that their current values are still valid.

So what appears to be happening is that, because you selected “Commercial” as the Record Type, but did not select a Charge or a Description, what you’re essentially doing is saying, “Change Record Type of all these records to Commercial, and set Charge to --None-- and set Description to --None–”. This has been the behavior for a long time — the trick is that there’s currently no difference between “–None–” and “Leave unchanged!” when it comes to Dependent Picklist fields. So when you set Record Type to “Commercial”, Skuid sets Charge and Description to “–None–” in expectation that you would then pick a Charge and Description, but this is NOT desired behavior.

I think this is an existing issue with Mass Update, but I’ll check. Either way, agreed that this is not ideal behavior, and that it would be great to be able to select the specific fields to Mass Update.

Thanks so much Zach for the explanation, makes total sense. For now we’ve just disabled Mass Update without much loss if any in business function on this table. I think I got a little overzealous in trying to find a second bug in as many weeks. Y’all do everything so well it’s kind of exciting to have something to complain about! Thanks again.