In addition to the prewritten language component procedures, there are a large number of prewritten application component procedures. The difference between the two types is that the code implementing the latter is visible and modifiable through cloning, though we should be extremely cautious about making such clones.
An example of an application component procedure might be one to handle the task of processing a customer's shipping address to eliminate empty lines and standardize the layout based on user-defined setup parameters. Such a procedure would logically be placed in a codeunit and hence made available to any routine that needs this capability.
In fact, this procedure exists. It is called SalesHeaderShipTo and is located in the Format Address codeunit. We can explore the following codeunits for some procedures we might find useful to use or that we can borrow logic from. This is not an all-inclusive list, as there are many procedures in other codeunits...