I need opinions/best practices. We want to add a UD column for unit gross weight on quote detail lines. We also want to let the user select the unit of measure that they want to view the quantity in on the application (e.g. a user can select from a dropdown and change the UOM from “Tons” to “Pounds” and the quantity field would change from 2 to 4,000). Assuming my team has the requisite knowledge to create BPMs and Application Studio events to perform these conversion calculations, what’s the best practice for storing these values? I feel like I have 3 options:
- Create a UD column that stores the weight in the uom that the user enters and a UD column that stores the UOM that the user enters (e.g. the user enters the weight as 2 with a UOM of tons and a UD field holds the value of 2 for the weight and another UD field holds “TONS”). I’m no expert, but I assume this would be the easiest to customize on the front end but would make tasks on the backend difficult (e.g. creating BAQs for lines that are all in the same UOM, reports, sum on the quote detail lines to the header, etc.)
- Create a UD column that stores the weight in the uom that the user enters, a UD column that stores the UOM that the user enters, and a UD column (which would not be available to the user) that stores the weight in the base UOM (e.g. the user enters the weight as 2 with a UOM of tons and a UD field holds the value of 2 for the weight, another UD field holds “TONS”, and a third field holds 4,000 which would be the value for the weight in the base UOM of pounds). Assume this is more difficult to customize but would make BAQs and reports that would require a consistent UOM easier.
- Create a data view column that the user can interact with to enter weight in the UOM of their choosing, a UD column that stores the UOM they select, and a UD column that stores the weight in the base UOM (e.g. a user enters the weight as 2 with a UOM of tons and a UD field would hold “TONS” as the UOM and another UD field would hold 4,000 which would be the weight in the base UOM of pounds). Assume this would be the most difficult to customize but would still allow the functionality we are after and make BAQs and reports that require a consistent UOM easier and not requiring 2 values for the weight be stored in the DB.