We are not InterSystems support team, we are a Developer Community. 😊

You can download it from WRC (Worldwide Response Center) portal, the official InterSystems Support.

If your system is under support/maintenance you should have access to it.

If you your system is not covered by support/maintenance, you are not entitled to updates.

For testing purpose you may use/download IRIS Community Edition.

I'm trying to convert date - 2023-09-28T20:35:41Z to BST/GMT format.

Please note that BST and GMT are not "format" and (may) have different values.
From your answer to @Robert Cemper it seems you need to covert to BST value (not GMT) and to "yyyymmddhhmmss" format.

To answer your question, is BST your system local timezone?

If you don't like the default behavior, change it. 😊

You can change it system wide from Management Portal, System Administration -> Security -> System Security -> System-wide Security Parameters
There you can change "Inactive limit" to 0 (zero), this way accounts never expire.

You can also change it for any individual user accounts in Management Portal, System Administration -> Security -> Users -> (select the user)
There you can enable the checkbox "Account Never Expires".

You have a superclass with some logging method. Now every time the logging method is called from a child class it logs the name of the superclass instead of the Child class?

No

If so the issue is that $CLASSNAME returns the name of the class where the method is located not where a method is called from.

Wrong, it returns the class name where it is called from.

Your first sample method works just fine, no need for method generator.

I suggest you to make a quick test.

I can see the function %GetParameter available in the WYSIWIG rule editor

There is no %GetParameter function available in default functions provided by IRIS, to list available functions you need to press the "fx" button, it looks you have typed in %GetParameter.

Maybe you have developed a custom function called %GetParameter?

What parameter are you looking for within an HL7 routing rule?

I don't think there is an official support way to achieve that.

However, if you temporary change ENSLIB database and remove read-only flag and then:

Set ^IRIS.Msg("EnsColumns","en","ServerName")="Server Name"

or maybe better:

s ^IRIS.Msg("EnsColumnsNAMESPACENAME,"en","ServerName")="Server Name"

where NAMESPACENAME is the name of your production.

And then you put back the read-only flag in ENSLIB  database......you will find a surprise 😉

Note that this is a kind of a hack, you lose the "surprise" when you upgrade and may not work in future versions.

Edit: see @Eduard Lebedyuk advise below for a much better way to do it using global mapping instead of changing ENSLIB