What is the current preferred method for enumerati

2020-07-18 04:18发布

问题:

I used to look at the source for %G for this, but lately Intersystems has stopped distributing the .INT code. I guess in theory I could use an eXecute statement in a loop to check $D on every legal global name but that's silly and unreasonably slow.

So what is currently the right way to do it?

回答1:

use special global variable ^$GLOBAL

for example:

s global=""
f { 
s global=$o(^$G(global))
  q:global=""
  zw global
}


回答2:

You could always use the class query in %SYS.GlobalQuery.