Software Imaging is thrilled to announce the introduction of an innovative ProcScript module type in Uniface – ‘function’. Debuting in patch version 10.4.02.016, this addition addresses the limitations of the traditional module types: Triggers, Operations, and Entries.
Why ‘function’?
Programming best practices suggest code should be clean, modular, and maintainable. The Uniface ProcScript language allowed this through entry type modules but with some complications. One significant challenge was when entries were defined for multiple entities with the same name but different implementations, causing unpredictability.
Our solution? The ‘function’ ProcScript module type.
What’s a function module?
Declared using the ‘function’ keyword, function modules can be invoked like entries. Unlike entries, they carry the namespace of their declared object, allowing multiple objects in a component to have a function with the same name. Moreover, their visibility is limited to the object itself and its child object.
The benefits?
Function modules allow for easy segmentation of functional parts of field-level triggers, entity-level triggers, and entity-level operations without worrying about name conflicts. They ensure maintainability, keeping segmented private helper functions close to your triggers and operations without making them available elsewhere in the application.
In addition, if you desire limited visibility for your entries, simply replace the ‘entry’ keyword with the ‘function’ keyword, and you’re set. Functions at the component-level are equivalent to entries, so you can choose to use functions without considering entries, making functions your new go-to for private helper modules! Experience this new level of efficiency with our enhanced Uniface Services at Software Imaging.
Resource: Kathy Larson