Drupal-7: Amount module

The Drupal core Number module provides three separate field times: integer, decimal, and float -- each with no associated units. Each has its own precision and idiosyncracies Many developers and website designers have no clue about the differences between the different number fields. In addition, because the number fields have no integrated associated units, it is never clear what exactly a given number is quantifying. Back in the olden-tymes, we had to distinguish between integers, floats, and binary-coded-decimal (BCD) numbers, and we also had to keep a separate record of the units any number referred to. In the modern 64-bit computer era, however, we have a new advantage: 64-bit integers. 64-bit integers cover a huge range of values. If we allocate 20-bits for a 10E-6 (micro-unit) precision, we still have 44-bits of precision (roughly 9 trillion). This is enough for most practical real-world applications. The Drupal Amount module integrates commonly-available modern-day 64-bit precision with integrated units to provide a general-purpose number field that doesn't require ordinary folk to understand the limitations of the underlying machine architecture.

3 / 2019