In IRIS you have in SMP the option to run your Query in background and bypass the timeout.

FOUND SOMETHING !

in SMP IRIS you see this header as in Caché / Ensemble

but click to more  has a surprise in IRIS

Select foreground and you get all %session, .... that you look for.
Recorded with SPOOL , device 2
 
%CSPsc=1
%ROWCOUNT=0
%ROWID=""
%SNGetQueryStats=1
%SYSLOG=1
%application=<OBJECT REFERENCE>[356@%CSP.UI.Portal.Application]
%caller=""
%class="%CSP.UI.Portal.SQL.Home"
%method="InvokeInstanceMethod"
%msg=""
%obj=<OBJECT REFERENCE>[362@%ZEN.Component.html]
%objlasterror=""
%page=<OBJECT REFERENCE>[20@%CSP.UI.Portal.SQL.Home]
%request=<OBJECT REFERENCE>[1@%CSP.Request]
%response=<OBJECT REFERENCE>[2@%CSP.Response]
%sc=1
%session=<OBJECT REFERENCE>[3@%CSP.Session]
%sqlcontext=<OBJECT REFERENCE>[433@%Library.ProcedureContext]
%tStatement=<OBJECT REFERENCE>[369@%SQL.Statement]
%zenContext="method"
%zenThreadId=39
SQLCODE=0
rs=""
<Private variables>
$zp=14828
$io="|TCP|58771"


Reverse engineering of the SMP page uncovered this new checkbox to me.
Could be it is documented somewhere

HTH

You are CORRECT
In Caché/Ensemble SMP uses straightforward CSP and you have %session object and %request ...
I verified IRIS 2022.2 and 2022.3:
- SMP runs Queries differently and  neither %session nor %request is visible
by variable »  %inBackground = 1 it indicates working in background
and once completed the Job is gone, but SMP is still around

MS Acess typically uses ODBC data sources.
By default, the ODBC35 driver for Cache/IRIS is installed at Cache/IRIS installation time.
You have to configure it (directly or from MS Access)  with Namespace + SuperServer Port

Take care not to mix 32bit mode with 64bit mode depending on your Cache installation

You are on the right path, I use deuw and see

some differences grown by history

  • sort ÄÖÜ + ß (sharp S) after Z as by ASCII
  • sort Ä after A, Ö after O, Ü after U  but before Z
  • ignore trema. sort Ä=A, Ö=O, Ü=U   no idea about ß

4 and 5 may contribute to the lastest nonsense of German Language Authoroties
that introduced sharp_S also in uppercase.
<we lived since ever without it and didn't miss anything>

Your case:
You can't change the collation of an existing Global
But you can apply a different collation before first use in SMP
to overwrite default collation of the  DB
System > Configuration > Local Databases > Globals > New Global 

So you set up a global ^TEMP3  with collation German3
and run MERGE ^TEMP3=^TEMP  and have a new collation.


Some time back I set that to have different index collations for
German, Hungarian, Italian, French, Slovenian, ...
see my post Multi Language Sort

expression into :var   stores the content of the expression into a local host variable var 

in your case you seem to get from STRING(...) 2 expression stored in to variables CODE  and  VALUE

this construct is typical for embedded SQL

Looks like an encoding issue.
Encoding in Studio is most likely different from your terminal settings.
And phyton has no idea about your surface settings.

Run this line in Studio and in Terminal and you see what's happening.
Matching ends after the end of 7bit ASCII encoding.

f j=0:1:64 w ! f i=0:1:63 w $c(j*64+i)

The content of Column COMMENT is expected to be $LB() format.
The most likely reason is : this property contains some ages-old junk 

This works:

SELECT 
ID,
CPFName,
%INTERNAL(Comments),
Name, Product, SectionHeader, Version
FROM Config.ConfigFile

Cache for Windows (x86-64) 2018.1.7 (Build 721U)

It is less effort to install swager-ui manually from the repo than a backport of ZPM