This codeunit is a good example of how well-designed and well-written code has long term utility. Except for code changes that are required by Business Central structural changes, this codeunit has changed very little since it originated in Business Central (Navision) V3.00 in 2001. That doesn't mean it is out of date; it means it was well-thought out and complete from its beginning.
Codeunit 358 contains two functions we can use in our code to create filters based on the Accounting Period Calendar. The first is CreateFiscalYearFilter. If we are calling this from an object that has codeunit 358 defined as a global variable named DateFilterCalc, our call would use the following syntax:
DateFilterCalc,CreateFiscalYearFilter
(Filter,Name,BaseDate,NextStep)
The calling parameters are Filter (text, length 30), Name (text, length 30), BaseDate (date), and NextStep (integer).
The second such function is CreateAccountingPeriodFilter, and has the following...