Hi, Marco!
If you are looking to play with InterSystems IRIS or other Data Platforms try Online Learning Experiences - all of them launch a temporary sandbox in the cloud for you to let you exercise and try the system.
- Log in to post comments
Hi, Marco!
If you are looking to play with InterSystems IRIS or other Data Platforms try Online Learning Experiences - all of them launch a temporary sandbox in the cloud for you to let you exercise and try the system.
Hi, David! Yes, actually all of them are already listed in your profile if you happen to accomplish it in the past.
No advantage of course if Locale Defaults works for you. That was not obvious. Does it work?
Also there is a common approach to use the root as a counter of the one-level array using $seq(uence) or $I(ncrement). E.g.
Class Test.Arrays {
ClassMethod ArrayExample()
{
set a($seq(a))="blue"
set a($seq(a))="red"
set a($seq(a))="yellow"
write a,! // will return 3
zwrite a // will out the full array to the device
}
}And if we execute the following in terminal you'll get:
USER>d ##class(Test.Arrays).ArrayExample()
3
a=3
a(1)="blue"
a(2)="red"
a(3)="yellow"
Also see the good article on $seq vs $I by @Alexander.Koblov
HTH
Hi, Ed!
You can build your own Localised dimension via expressions and put whatever language you want for the months.
Hi, Ed! Thanks!
And how docker configuration looks like to go with direct-lvm?
BTW, here is what we did in May for public issues on DC.

And here is the current kanban for June.
Add your bug reports and enhancement requests!
Thanks Vitaly!
Really great!
Classmethod Public: is it to be able to call for $$functions in a class?
Like this:
write $case(condition,
1:{
set a="hello " _"world"
return a
}
2:"name",
:"!")I figured out that the thing I want is close to "closures" ;)
This tool? Never heard about it. Nice?
Hi, Ed!
Thanks!
I'll elaborate the problem a bit. Here is the $case everybody loves:
write $case(condition, 1:expression1, 2:expression2, expression3)
My problem is that with business logic change the expression1 and expression2 showed the need for multiline logic. And I was looking for something like:
write $case(condition,
1: {
New cool logic for expression 1 with line 1
and line 2
},
2:{
Perfect, better logic for expression2
maybe with
few lines
more
},
expression3)Thanks Gilberto, this is a possible way, thanks.
Hi, Ron!
You are invited!
And to gain knowledge on InterSystems Caché I recommend you InterSystems online Learning and this Developer Community: ask your questions!
Hi, Jaqueline!
Looking forward to see how it works!
BTW, here you can find couple similar solutions with sources regarding territorial hierarchy.
And several demos for different countries, e.g. USA and Kazakhstan.

Hi, Jaqueline!
@Sam Duncan is right below, and please don't consider my example above!
See the updated version of the method for Cube class:
classmethod UnitLevel(unitID, level) as %String {
s unit=##class(Police.Unit).%OpenId(unitID)
if '$IsObject(unit) return ""
return $Case(level,
1:unit.UNI_PADRE.UNI_PADRE.UNI_PADRE.%Id(),
2:unit.UNI_PADRE.UNI_PADRE.%Id(),
3:unit.UNI_PADRE.%Id(),
4:unit.%id(),:"") }Introduce the dimension with 4 levels, with expressions:
1 st level:
%cube.UnitLevel(%source.%ID,1)
2nd level:
%cube.UnitLevel(%source.%ID,2)
3 and 4 levels same idea.
AND!!! The key thing!
introduce a calculated or direct field in your class which will indicate a level of the row - say H_LEVEL with values 1,2,3,4 according to the level of administration.
and introduce a build restriction to the cube with:
H_LEVEL=4
So, there would be only 4th level records in the cube, but you'll gather all other needed calculations and values using your hierarchy.
Hi, Jaqueline!
Really interesting task. Do you have only 4 levels?
If so, you can introduce a method on a cube which would return a level of the unit.
Say:
classmethod UnitLevel(unitID as %Integer) as %String {
s unit=##class(Police.Unit).%OpenId(unitID)
if unit.UNI_PADRE="" return "Zone"
s padre=##class(Police.Unit).%OpenId(unit.UNI_PADRE)
if padre.UNI_PADRE="" return "Prefecrure"
/// continue here!
}It's for 2 levels, leave other two for you ;)
And use
%cube.UnitLevel(%source.UNI_CODIGO)
for the Dimension level expression.
Cool!
That works, thank you!
Hi, Ed!
Is it possible to introduce a similar feature for Chrome users too?
Thank you, Kyle! We'll cover you with comments until you back! And thanks for the great session!
Hi, Pavan!
Of course, InterSystems Data Platform supports numerous of types of integration, it has integrational engine inside. As for FHIR, please check InterSystems FHIR Experience sandbox - it allows you to play with technology on your personal cloud sandbox.
Hi, RF! We have coding guidelines on ObjectScript. It's not about mixing, but how to code better with InterSystems Objectscript. HTH
Hi, Madhan! With InterSystems IRIS Experience you'll get your own IRIS in cloud for a while to have the experience.
As for downloading @John Murray already answered for your question in another thread.
Thanks, John! That's true. If someone who is in charge of Google Group can put a big banner with direction to DC, I would appreciate!
Hi, Peter! Want to add that highlighter is not ideal though (ObjectScript is a tough parsing exercise). If you see the bug in highlighting and want to improve it, you are very welcome to pull request here
Hi, Minsu!
Sent you the invite to Global Masters.
Hi, Justin!
Also, if you are using try/catch blocks, you may conside use Log() method of %Exception class, which literally does the call of LOG^%ETN:
{
try {
$$$TOE(sc,StatusMethod())
}
catch e {
set sc=e.AsStatus()
do e.Log()
}
Updated the agenda for the meetup - the new session by @Sergei Shutov has been introduced:
Automatically configure a customized development environment.
The session covers the approach and demo of creating a private development environment from source control, and how changes can be automatically pushed downstream to build and test environments. Show the use of open source Git hooks, %Installer, and Atelier, with Jenkins and automated Unit Tests.
Hi, Wilfredo!
In addition what guys suggested I recommend to try ClassExplorer, which allows to see the source code of a class in a web app. You can download it from this github repo.
Or map it into %ALL namespace
Why? Can't class methods be called from another namespace? Or it is easier with routine?