04-24-2024 10:16 AM
Hi OneStreamers,
is it somehow possible to reference a System Extender rule from an application level business rule (e.g. Dashboard XFBR String)?
We would need this to centralize some functions, that should be available and standardized across multiple OneStream applications.
Thanks
Markus
04-24-2024 12:48 PM - edited 04-24-2024 12:54 PM
Hi Markus: I'm not sure if its the 'correct' approach, but we did this with an application extensibility rule. Just cleared out the standard class and created the class we wanted in there. We can then reference this class in any other application BR. Our use case was a shared Logging class that logs to a file with timestamps, loglevels, formatting, etc; beats constantly blasting the error log with debugging messages.
Cheers, -db
edit: apparently I no longer know how to read. You want it across applications; not sure this meets your requirements. I'd probably just develop it in one and then export/import to the others. Unless this code is changing frequently that seems like the simplest solution.
04-25-2024 02:12 AM
HI db,
yes, what you describe is exactly what we do currently and that works fine within one application.
But currently we always copy this extender business rule from one application to the other to make it available there. From our perspective a System Extender would be the way to go to also make it obvious to everyone, that this rule is not only used by one application and that one should be really conscious when changing it.
We have the use cases: Logging, probably similar like you do and formatting CVs, where we have quite complex logic in place to ensure they're all formatted according to our corporate style guide. Furthermore, the idea would be to extend this to other topics like our SAP BW connection/running of SAP BW process chains and various other things that could be shared between applications.
Thanks
Markus
04-25-2024 10:33 AM
Totally makes sense. My understanding is that System Extenders are for managing Azure/Environment. I wonder if you could put your logic into a DLL and then reference that from all applications? Not something we've done, but I know its possible: Organizing and Referencing Business Rules (onestream.com)
04-25-2024 01:49 PM
Yes, I think that would be possible to achieve this with a DLL. Unfortunately, parts of the code are still evolving and it would be super-useful to get it working in System Extenders. We do use those already on a environment only level for our user management and to retrieve/sync some additional user information from our AD and that works really good.
The idea would be to use System Extenders for these "environment-dependent" topics as we could then still easily change coding instead of having to create and deploy DLLs.
But might be that this is unfortunately not possible as so far we didn't find a way to reference the system extenders from the application business rules
05-02-2024 09:14 AM - edited 05-02-2024 09:17 AM
I've tried this as well with no success. The system rules seem to be out of reach of the application rules.
Maybe an option to using a DLL, which can get a bit dicey on cloud hosted, would be to use an encrypted rule. Encrypted to ensure uniformity across applications more so than to hide the code.
05-02-2024 12:59 PM
Hi Robb,
sad to hear this. I will put this as an idea into ideastream then.
05-02-2024 01:08 PM