In SuiteCRM, the default statuses and lead sources use names that have spaces in them which is illegal to create in the Studio. Instead we have custom status names such as "New_Lead" that don't match the label "New Lead". SuiteCRM tries to save the value as "New Lead" and fails, erasing any value to the field.
We have this in multiple places: Lead Status, Lead Source, Contact Source, Contact Status, etc. How can I fix the original problem as opposed to a hack fix I made that uses a logic hook to change the user entered value to an underscore instead of space?