My guess is that your %var local variable array is in conflict with the code executed by the embedded sql.

As you may know % local variables have global scope, therefore should be used with caution, particularly when calling "other code", like embedded sql in your case.

If a global scope % variable is needed, is advisable to follow the documentation on Local Variable Naming Convention:

Variable names starting with the % character are known as “percent variables” and have different scoping rules. In your code, for a local percent variable, start the name with %Z or %z; other names are reserved for system use.

I suggest to change your variable to %zvar or similar, if you do not need global scoping, remove the leading %.

The time Veeam create a snapshot should be measured in seconds, not minutes!

If your server does not use/need any application guest processing (Oracle etc.), then in Veeam you can be disabled in "Application-Aware Processing Options" in the Backup Job configuration for your Suse IRIS server , "Disable application processing":

As @Timo Lindenschmid pointed out, you may consider backing up the secondary server.

In case you want to backup the primary, make sure to set mirror QoS appropriately.

Your Business Operation (is supposed to) use the EnsLib.EMail.OutboundAdapter, but the in the code you use the %Net.SMTP class directly, ignoring the adapter.

In the Interoperability portal your implementation  provide the email adapter configuration (server, certificate, credentials etc. etc.) that in fact are then ignored in the code. This makes it very confusing for anyone using the portal, now...and in the future!

So the first question is, do you want to use the EnsLib.EMail.OutboundAdapter or not?

If you want to use the adapter, if you have not already done it, I suggest to start with the documentation:

Using the Email Outbound Adapter and Settings for the Email Outbound Adapter

If you don't what to use the EnsLib.EMail.OutboundAdapter, then remove the reference from your code.

Using %Net.SMTP class directly (right?), you said that "...I get the error that the property UseSTARTTLS is not available." and this is very strange, can you confirm you are using IRIS version 2021.1?
Is your code the same as in your first post or has changed? If changed, can you post the modified code that fail?

Last but not least, are you sure your outlook.com account allow user/password authentication? Or you must use OAuth2 authentication??

From Stream Compression documentation:

.....new stream data is automatically compressed, except for the following cases, where the data is not suitable for compression:

  • The stream can be stored in a single chunk less than 1024 characters long.
  • The stream is already compressed, that is, the first chunk of data matches a typical compressed file format, such as JPEG, MP3, or ZIP.
  • The first 4KB of the stream cannot be compressed by at least 20 percent.

I guess your test runs into these cases.