Web Portal Modules
Your enhancements to Anveo Client Suite can be organized in a modular manner in order to separate your adaptations from each other, for example according to the types of functions or task sectors. Each module, or utility, contains its own codeunit. The ‘stencil’ for a module is the codeunit ACF Events TEMPLATE, which you can use for your own enhancements to Anveo Client Suite. The allocation of a module to a codeunit occurs in the codeunit ACF Module Mapping. To do this, open the codeunit in the Object Designer of C/SIDE and lay the subtype of one of the global variables Module 1 to Module 20 onto the codeunit that you want to use as your module.
It is not urgently necessary that you organize your enhancements in your own modules. You can also deposit your complete individual C/AL code for Anveo Client Suite the codeunit ACF Events. The use of modules is optional, although using them does contribute to a better understanding, structuring, maintenance and enhancement ability of your individual adaptations.
Organization of functions and individual table relations
In the Documentation trigger of the codeunit ACF Events you can see which triggers and functions depend on modules – marked with an (M) – and which are globally valid, independent of the module. You can deposit in module dependent functions code which is only valid in that module. Exeptions are the function codes in the ”OnAction” trigger and the individual table relations defined in function CustomWebPageRelation; For example, when you call a function from a web page in module M1, the code of module M1 is checked first to find the definition of that function. If the function is not in M1, then the main events ACF Events is called. If the definition is not in M1 and not in the ACF Events either, an error occures.
Individual table relations between modules
Also is important to note is that if there is an individual table relation between multiple Anveo Pages in different modules, the module is the target Anveo Page.
An example: There are two Anveo Pages A, B, and two modules M1 and M2. Anveo Page A is assigned to module M1 and Anveo Page B is assigned to module M2. If there is an individual table relation from Anveo Page A to B, this table relation must be programmed in module M2 and entered in Anveo Page A.