What error did you get?

Are you sure, that the error is inside %CSP.Broker?

%CSP.Broker is a dispatch class to call server-side methods.

In most cases the error happens in the application method that is called via %CSP.Broker.

Enable logging for CSP Broker and see if any additional information is logged in ^ISCLOG:

USER>zn "%SYS"

%SYS>kill ^ISCLOG, ^%ISCLOG

%SYS>set ^%ISCLOG("Category","CSPBroker")=3

%SYS>set ^%ISCLOG=3

To disable logging:

%SYS>kill ^%ISCLOG

If %CSP.Broker is used to call ZEN Methods then enable also ZEN logs:

%SYS>do ##class(%ZEN.Utils).%StartLog()

%SYS>do ##class(%ZEN.Utils).%ShowLog()
1  13:40:51.606 OnPreHTTP               /csp/sys/%CSP.Portal.Home.zen
2  13:40:51.809 InvokeInstanceMethod    138@%ZEN.Auxiliary.jsonProvider:RefreshFromServer
3  13:40:51.830 InvokeClassMethod       %CSP.Portal.Home.GetNamespaceList
4  13:40:51.845 InvokeInstanceMethod    169@%ZEN.Component.html:ReallyRefreshContents

%SYS>do ##class(%ZEN.Utils).%StopLog()

Mark, you need to close connections from Web Gateway to IRIS, so that Web Gateway reconnects and CSPSystem logins with the new role. You can do this in Web Gateway -> Status page -- close button for the second table. Or just restart the web server.

Note -- Roles field in the Audit details. Check that it has %DB_SRFT role when happens again.

If you can select from this stored procedure then you can try to use this select in INSERT into.

Does the following work?

SELECT * Custom_MENS_Other.samplesp('2021-11-02','2021-11-04','H001')

See Table-Valued functions section:
https://docs.intersystems.com/ens201815/csp/docbook/Doc.View.cls?KEY=RSQ...

And INSERT with SELECT:
https://docs.intersystems.com/ens201815/csp/docbook/DocBook.UI.Page.cls?...

Hi Thanongsak.

In the <iris>/bin folder you should have different odbcgateway*.so files.

IRIS uses odbcgateway.so when it connects to 3rd party database via ODBC.

However in UNIX world, different ODBC drivers are compiled differently and they can use different driver managers -- iODBC or unixODBC.

Thus IRIS comes with several odbcgateway libraries that are suitable for different drivers.

On my IRIS 2021.1 for macOS I have:

odbcgateway.so -- default one, for iODBC driver 8-bit
odbcgatewayiw.so -- for iODBC driver manager with Unicode support
odbcgatewayur64.so -- supports 8-bit ODBC for 64-bit unixODBC

IRIS documentation covers this here (though filenames are not correct, should be odbcgateway instead of cgate)
https://docs.intersystems.com/iris20221/csp/docbook/DocBook.UI.Page.cls?...

So the question is -- what driver manager is libmaodbc.so linked against.

In any case -- Rename odbcgateway.so to odbcgatewayi.so. And then try replacing odbcgateway.so with odbcgatewayiw.so and odbcgatewayur64.so and see with which connection works.