Evgeny Shvarov · Mar 24, 2017

Best practices of using 3rd party modules in Caché

Hi, Community!

Would you please share your best practices for utilising 3rd party modules (say community solutions, frameworks, development tools/utils).

There are two approaches which I like:

1. New namespace for every new module

So, if you install something you install it in special separate namespace/database. MDX2JSON/DeepSeeWeb case.

If the package is intended to be used in other namespaces, map the packages to %All and have it available in all the namespaces in this Caché/Ensemble.

And there is one more benefit: it is easy to uninstall the module, just delete the namespace/database.

2. Install everything 'unknown/dangerous' in some 'garbage' namespace

 I use USER namespace for this purpose. E.g. it is my number one choice for importing installers for 3rd party modules if any.

What is your best practice for this case? Please share?

0 0 5 364
Log in or sign up to continue


given the low number of 3rd party modules, I don't think this is something that is being thought about as a general problem. That being said, a new namespace seems cleaner, but does have limits due to license limits.

By "license limits" are you referring to the way that some types of license only permit a maximum of 250 databases? Or is there some other constraint?

Hi, Fab!

Speaking about the low number: do you have any idea of how high/low is the number?

I can name 100+ addons in my scope. It is low number, but I'm quite sure it's not all the available modules.