I agree with @Brett Saviano:
$$$  ...refers to some #define ...  and is a compiler directive

I tried:

USER>:alias wi write "/csp/"_$zcvt($namespace,"L")
 
USER>:wi
write "/csp/"_$zcvt($namespace,"L")
/csp/user
USER>:alias wi1 write "/csp/"_$$$LOWER($namespace)
 
USER>:wi1
write "/csp/"_$$$LOWER($namespace)
 
WRITE "/csp/"_$$$LOWER($namespace)
^
<SYNTAX>
USER>
  • my personal preference goes to %GSIZE. The best match between CONSUMED and ALLOCATED size is found if your Global is "filled" total sequentially by a $Q() loop. And even then with a big string, you may force unexpected block splits. The situation changes if you fill your globals by subscript levels. This may cause a cascade of block splits and result  in rater unattractive packing percentages  
  • ALLOCATED Size by Subscript might be of interest for an individual Subscript. Though adding them up doesn't reflect the total size It's like cutting a cake to 12 people and then counting the heads that had some cake.  
  • to reduce the space consumption of your globals I rather suggest to  use ##Class(%GlobalEdit).GloabelCompact()  to eliminate the effects of random inserts and growth inside a global tree.   

from my local Class docs:

GetGlobalSizeBySubscript
This method will return the size of a global based on the number of database blocks the global resides in.

so you get blocks * blocksize ===> ALLOCATED size
Depending on Packing as %GSIZE shows   The difference might be significant

Summary by Subscript will most likely show higher values as a pointer block
or even a data block (eg. with 8kb) may contain more than a single subscript
depending on the Global structure.
Take the default top subscript  (aka. IDKEY) for Caché classes (Integer, >0) as an example ​​

Hi @Daniel Aguilar 
for every DB you have a default collation that is tied to DB:
you can see it in SMP  System > Configuration > Local Databases > Database Properties

this is the standard.
If the collation of your source server is Spanish, German, Fench, , .... 
the DB may have used this national collation as default.

On your target serve you need to have this collation to be installed.
in SMP  System > Configuration > Locale Definitions you see what is installed on your Caché instance

You may need to add the missing collation table to your Caché instance:



 

  •  iristerm does NOT support ssh
  • you need to run ( + install ?) a SSH service in your  Linux SUSE 15 VM 
  • next, you connect from Win10 over any SSH terminal client (e.g. Putty, ...) to your SuSe VM console command line
  • there you can run iris session ...........  (the Linux equivalent of iristerm)

Just as described in your question

Bonsoir Sylvain!
Are you looking for something similar to this;
 

Property MonJour As %String 
     [ InitialExpression = "31/12/1840" ];

Property Jour As %Date [ InitialExpression = 0,
  SqlComputeCode = {set {*}= $ZDH({MonJour},4) },
  SqlComputed, SqlComputeOnChange = MonJour ];
 

(Multiline just for readability)