Programming in a strange language
The problem is there is no universal best practice for all industries and companies.
The ERP vendors try to square the circle by selling highly configurable systems.
This introduces a second worse problem. You end up coding a system via weird
and wonderful config files effectively programming in strange and rather c**p
The other side effect is you than need "flexible" data models. Which means
a set of tables which hold the schema you actually use will all the performance hit
that that implies.
In most cases it would be cheaper and better to code a bespoke system
in a proper programing language with a proper data base schema.