Currently we are exploring how we can allocate additional disk space to our current environment as we have seen a significant increase in growth of our Database files. Currently we have 3 namespaces, all with 1 IRIS.dat each that contains both the Global and Routines.
Since we have started down the route of everything within a single IRIS.dat file for each namespace, is it logical as we see growth to be able to split the current IRIS.dat for each namespace into a separate IRIS.dat for global and a IRIS.dat with for routines for each namespace in a Mirror environment?
Recently, I have noticed Scott Roth's mission to resolve issues with Orphaned messages with a lot of focus on prevention, and I envy that level of dedication.
I am trying to locate a method that would allow me to differentiate between InterSystems preinstalled/system namespaces and "our own" namespaces. I am interested both in Cache and Iris answers if they are different. Yes, I can list what to disregard, like if not HSLIB or if not DOCBOOK but hoping for a more universal and elegant answer.
My VSCode folder was set up to connect to a namespace, but the namespace was deleted. I tried changing the namespace from the menu but it fails (could not retrieve list of namespaces), but I do get the following error message:
Is there a sensible approach to having a lookup table in Namespace A, and then accessing this from Namespaces B, C, D (etc)?
I'm trying to avoid creating a Global mapping of the lookup table global (^Ens.LookupTable) as I fear that it would then link all other lookups in that global and lead to some unexpected behaviour, but would be open to trying something in this realm if it's the best option.
I am looking for the syntax or the way to use a class created in the "BNA" Namespace (my application) from the %SYS Namespace.
Here is the context:
I have a "BNA" application contained in the "BNA" NS, this application provides a user creation functionality. This feature creates both the user in a table in the application and in the Iris system.
I just realized that for the latest version of IRIS for Health 2023.3 the method InstallFoundation from HS.HC.Util.Installer has just disappear. I checked the official documentation (here) but I can't find any reference to it like in previous versions (here).
We have a developed a new version of a production, all the code is new and has changed BP. This application load information for some brands and stored in database.
The customer wants to implement the changes only for some brands because he wants to check for small brands before to implement for all brands.
My proposal is create a new namespace, with the new code, and disabled all load of brands except the brand that he wants to check.
I'm wondering what is the best way to clone the namespace.
Our application needs to create system users from a request form.
To use Security classes, it is necessary to have rights to use the %SYS namespace, which is not the case for users who validate requests.
It is not desirable for these users to have this role permanently, so I proceeded as follows:
I created a facade class for the Security.Users, Security.Roles, Security.Resources classes which allows me to log in with an authorized user on the NS %SYS
Currently I have a program that is going to be used to compare global nodes between namespaces. Using nested FOR statements I am stepping through global nodes and comparing between the namespaces, if the global values are different I then parse the node comparing each delimited segment.
This is working.
I want to now be able to set what global I am in as a variable to expand on this concept.
I have created a global say ^myglobal and entered some data. I am storing the name of global in databases and fetching the name based on some criteria. I am getting "^myglobal" in return from databases but i am not able to fetch the data I stored in the global.
I tried set var = result.global which gives me "^myglobal" in var. Doing WRITE var will return "^myglobal" and not the data i stored in this global.
I want to fetch value from a global without being limited by the namespace. Is there any way of referencing the values from a global to a different namespace?
Had an empty Ensemble namespace (interoperability enabled) which the customer had requested renaming before beginning development, so was wondering about best practice to achieve this.
I'm trying to enable an existing namespace to be Ensemble enabled by doing the command do ##class(%EnsembleMgr).EnableNamespac($namespace,1), but I'm still getting the error message. Is there something that I'm missing?
I've attempted to reboot the server and even went incognito to see if it was a caching issue, but I'm still not able to create an Ensemble production in that namespace.
I have a Zen Page with tablepane which has a datasource in a different namespace to that of the Zen Page. When the page is run, no data is returned and the tablepane is not populate, even though the rerferenced table contains dat.
Can I please check if anyone know why the data base resource is created differently when creating a namespace after specifically selecting it to use the default resource %DB_%DEFAULT?
I created a namespace and when creating the DB I selected the option to use the default resource
When the namespace creation was complete , database is using a new resource instead of the default.
I have a CSP page that is supposed to show some user info (Full name and some other properties retrieved from AD)
I am unable to get them outside of %SYS namespace using Security.Users class. Is there another mechanism to do that, or I am using Security.Users class incorrectly?
Is there a way to run code on another machine? Of course, all authentication info is known. I know only about RemoteResultSet but that seems to be query specific.
I am attempting to set up a security role for our support team so they can have read access to the production and messages.
I have given the role RW rights on the resource associated with the database. However, when I log into Management Portal and select "Ensemble", the "Available Ensemble namespaces" list is empty.
What permissions do i need to set to be able to navigate to the production?
When I start a fresh installed IRIS or a Container I always find Interoperabiliy (aka. Ensemble) mapped to namespace USER.
Is there any utility to remove this mapping by a click ? unmapping it global by global, routine by routine, Package by Package is just a boring exercise.
To be clear: I look for a utility inside IRIS.
The external utility is obvious: Notepad (or any other text editor) - clean iris,cpf, - restart IRIS It's fast, it's efficient, but it's really hardcore.
We have a licensed version of Ensemble but for now, we use only the DB capabilities of Cache. As we create a custom Namespace, for e.g "Test", a new Ensemble Namespace is automically created by the system --"TestENS".
Is there any way where we can identify the system created ENS namespaces ?
In a fresh IRIS Community Edition container if we create a new Database and after we create a new Namespace enabling it for interoperability then we will see the message "ERROR #68: the mounted database count exceeds license limit"
When we go to specific name space to search messages in message viewer, at the moment we are adding the search criteria to add criterion type as SearchTable Field, and clicking the dropdown in Class field, there is an error says below in the image:
Could anyone please let me know what exactly the error is from? Thanks so much.