User Answers

As you describe it I'd create a nice BAT file that you execute.
It coud be static or created ad hoc just by writing it from Caché

And then execute it using $ZF(-1...) ,$zf(-2....) or CPIPE 

Though Caché has powerful utilities around %File class you will be faster that wa

Size of WIJ is in Relation to Global   Buffers. With equal size of G.Buf. you should get similar size  of WIJ



if you don't care about maintenance effort the most exact pointer is preferable.

As you may see from Ensemble the number of entries in the mapping table is of no importance.
With modern hardware, saving memory is of no importance anymore.

Hi Tim

write $d(^|"%SYS"|SYS("Security","SSLConfigsD",<my config> ),settings)

provided you have access rights

Cheers, Robert

You have to set your DB to be in Primary MIRROR before the copy.
Otherwise, you may miss some kind of "Mirror-Marker" / Timestamp. 

I hit this trap also on my first trials.

I just realized that this method doesn't check the existence of the ID.


write:##class(Abstract.Class).%ExistsId(id) $li(##class(Abstract.Class).%ComposeOid(id),2)

or any equivalent construct.

OID contains the class name. So this should do it.

write $li(##class(Abstract.Class).%ComposeOid(id),2)


You are totally right.

With Parent-Child your data are not only logical but also physically tied to each other.

One-to-many allows you more flexible handling of Relations.

Just one out of many examples   M:N Relationship