For modern web-based applications, you are correct that there is little or no reason for the Caps Lock key.
But for the MILLIONS of people whose job requires them to use antiquated legacy systems, it is often essential.
The largely character-based systems used for accounting, order entry, invoicing, and other core functions are often accessed through terminal emulation software or first generation client-server software. These systems often have a great number of "lookup" codes for everything from SKU to client numbers that fail when using lower case. Those still using first generation client-server software are especially inconvenienced as some of these programs have no option to remap the keyboard.
The sheer volume and costs of re-engineering these systems mean that they will be with us for years to come, no matter how ugly and inefficient when compared to modern systems.
(Well, you did ask.)