Gracias por tus comentarios @Jose Antonio Benitez

Creo que no es demasiado práctico contestar a todo dentro del comentario, por lo que estamos trabajando en publicar estos artículos que comentas, los enlazaré como comentario a este articulo para que el que lea estos comentarios pueda seguir el hilo. Adicionalmente creo que hay que explicar como es el proceso de Journal y para qué sirve. Por último será muy útil entender todos los globals de la parte de Interoperabilidad (Ensemble), y esto también merecería un capítulo aparte :-)

Review the cconsole.log and check if there is any problem with the license, also you can check Application errors log

Great initiative !! We did a webinar for spanish speakers some days ago and the feedback was very good.

Also the title sounds very interesting !!


Well, there are only 2 tables related with that queries:


EnsLib.HL7.Messages (

Any Ensemble Message has a header object or record (Ens.MessageHeader) the Message Body related with this Header can be any persistent object. Then you have to check MessageBodyClassName property to check if the body is a EnsLib.HL7.Message, then you can link the Header and Body using MessageBodyId property.

I hope this helps.


Do you want to explore the content of the HL7 Messages using SQL? Or only meta Data like document type, date etc? In case you want more data from HL7 body using SQL I recommend to use a HL7 Search table


Si conoces el ID para mi es siempre mejor usar el acceso a objetos.

Pero si no conoces el ID y buscas a través de una SQL posiblemente la única opción viable es la segunda, aunque siempre puedes acceder directamente a los globals.


Good, but if you create a new Database the problem still being the same. The only easy thing you can do is to enable interoperability for the namespace USER:

To create another database and enabling interoperability throws the same problem (exceeds databases license limit).

So, because IRIS CE is mainly thought for development and not for production I think a best practice is to enable interoperability USER by default.


In any case from my point of view this number or user databases limit for CE Edition is not well explained (specially to new people):

This the list of "user" databases (or not system databases) in the list of databases:

Into the red circle are 5 user databases. So in this case you can't create any more databases with IRIS CE license.

But the license counts ENSLIB as "user database" and is not true. This Database is needed to enable interoperability to any database. According to IRIS documentation:

ENSLIB — This is a read-only database contains additional code needed for InterSystems IRIS Interoperability features, specifically the ability to create productions, which integrate separate software systems. If you create a namespace that is interoperability-enabled, that namespace has access to the code in this database.

So keep in mind that the practical number of user databases for CE is 4.