Feature Proposal: Highlighting Non-Default Fields (comments welcome!)

Preface
I have a feature implementation that I would like to implement and I would like to know if others believe this is a valuable feature to become part of Frappe and ERPNext stack or if we should just implement this for our own company. In case you find this feature to be good, would you be willing to pledge 50$ towards the development?

What is the Highlighting Non-Default Fields about?
We are using custom DocTypes to record a bunch of different, mostly quality critical information at our company. We tend to have a lot of fields so we have all information necessary. We have found that it is sometimes a bit difficult to read what is important information quickly so I would like to propose a function in DocType setup to say “Highlight Non-Default”.

An Example
Basically imagine this: we have a DocType called Suit and the suit a customer is ordering normally has 3 buttons in the front to button the suit up. However every once in a while a customer wants a suit with 4 buttons. Now when a tailor makes the suit he doesn’t want to carefully read 100% of the documentation but rather be informed what is not standard.

How it will be done
I propose that we use “has-warning” just like we use “has-error” in form validation. The logic would be that whenever a DocType that has the “Highlight Non-Default” option boolean TRUE we use Javascript to add the has-warning to frappe-control. When it is standard “has-warning” is overwritten. Of course “has-error” must be ensured to work.

DocType Configuration (see bottom right side for “Highlight Non-Default”)

This is how it would be rendered:

Github Ticket: Feature Proposal: Highlighting Non-Standard Fields · Issue #1653 · frappe/frappe · GitHub

1 Like

Just a question… how would it be decided the value was non-standard? Is this based on the Default value field?

Yes @Ben_Cornwell_Mott I am actually referring to Non-Default fields. I updated the descriptions to match that. Thanks for your comment!

I don’t think my question was clear. I was not referring to “Mandatory” fields (which are already highlighted red). What I’m asking is how would the system decide whether to highlight the field yellow. From your example, the field would not be highlighted if the value was 3, but if it changed to 4 the box would be highlighted. How would the rule for this highlighting be created? I had suggested using the “Default value” field, which auto fills the field when the document is created. If the value differs from Default, then you know to highlight it. Alternatively, you could have another field similar to the “depends on” field, which can use an expression to evaluate whether to highlight the box yellow.

I was thinking to highlight it whenever a entry differs from the “Default Value”

maybe a little off-topic but

I see an item (suit) and components of that item (buttons). I’d think the standard way to tackle such a situation is a BOM. Why do you use something else (a custom doctype) to handle this?

1 Like

@dominik have you tried using the “bold” setting?

Too many colors can be unsettling in my view/

Of course that would be the way to go, I am talking about any other DocType and maybe chose my example poorly.

That is a bit of the point. I believe normally this function is not that important but for some DocTypes it may be helpful.