Norman W. Freeman · Jul 29, 2022

Is there an equivalent to the Business Intelligence (BI) classes in IRIS ?

I have migrated one project from CACHE to IRIS that contains lot of classes that inherit from BI (Business Intelligence).

Usually it looks like this : 

Class User.Foo Extends (%Library.Persistent, %XML.Adaptor, %BI.Adaptor)

I was wondering if there is an equivalent of those classes in IRIS, and, if not, if there is a workaround that would allow me to at least le me compile those classes.

I tried to create an empty class like that : 

Class %BI.Adaptor

But I got the following error in Studio : 

5883    Item '%BI.Adaptor' is mapped from a database that you do not have write permission on.

Which make sense since AFAIK this class is a system class which reside in %SYS namespace.

Product version: IRIS 2022.1
1 434
Discussion (3)2
Log in or sign up to continue

Your getting that error as your class is named %BI.Adaptor.

Create a custom name and extend %BI.Adaptor

%BI classes date back to Miner (DeepSee-1) and just were left in Caché over a decade at least
while its functionality was replaced by %DeepSee classes more than 10 years ago.

Of course, you can map all %BI.*  classes to some DB where you have R/W access and import it from Caché.
that's about 300 Classes.
BUT:  no one can tell you if they compile correctly
AND: you have to take care of the hidden %bi*.obj (~430) and other deployed code which you can't compile, but import and pray they work.

SO: this doesn't look like a  promising approach.

Therefore I'd suggest migrating from %BI to %DeepSee in Caché first and to IRIS next