New Features in Ensemble 2010.1
Ensemble 2010.1 introduced the following new features:
Configuration Default Settings
Caché 2010.1 Features
Compatibility Issues for Upgrades to Ensemble 2010.1
The following changes in the 2010.1 release may affect the operation of your existing system. Review the following issues before upgrading a previous instance of Ensemble:
Also review the Caché Release Note and Upgrade Checklist Archive.
Relocate RemoveItem() Configuration Method
In this release, Ensemble moves the RemoveItem() method from the CSPX.EnsConfigProperty class to the Ens.Config.Production class; it is now available for general use and not exclusively from the Ensemble Management Portal configuration page.
Calls to the undocumented CSPX.EnsConfigProperty.RemoveItem() method in your code, receive a <METHOD NOT FOUND> error. In the unlikely event you use this method, update your code to now use the Ens.Config.Production.RemoveItem() method. Instead of passing your production object as an argument, the new method is an instance method of your production object.
Add Configuration Setting on TCP Counted Outbound Adapter
This release adds a new FlushBeforeSend configuration setting to the TCP Counted Outbound Adapter. When set to True, this option causes the SendMessageStream() adapter method to do a zero-timeout read of all data pending in the inbound TCP buffer before writing its outbound data and optionally reading any subsequent returning data.
If you had implemented a block protocol using the TCP Counted Outbound Adapter in previous releases of Ensemble, you must override the default setting.
Correct Type Node in HL7 Sequence Manager Global
In previous releases, the Type subscript ^EnsHL7.SM("output",type) incorrectly used PerformOutputTransformationOn. The class documentation for EnsLib.HL7.SM.RuntimeData has been updated. See the entry in the Class Reference for details.
Existing applications will encounter problems if they have PerformOutputTransformationOn set to SequenceNumberOnly. If so, and you want to keep the existing output sequence number, perform the following:
Also verify that your PerformOutputTransformationOn and OutputSequenceNumberIndexField are consistent.
Correct Behavior of HL7 Configuration Framing Setting
This release corrects the behavior of HL7 business services and business operations when you configure the Framing setting to have a value of None. This value now results in no framing characters being generated between HL7 messages as opposed to the previous behavior that used whatever framing was declared as the default in the relevant context.
Productions configured with Framing=None for various configuration items may be experiencing incorrect framing behavior that works in your context. This change corrects the behavior which may cause your production to stop working. For example, you may be sending outbound files to an entity expecting an ASCII LF between messages; even though the file operation is configured to put nothing between messages because previously it had been erroneously generating the LF between messages.
Add Support for Legacy FTPS Protocol to FTP Adapters
Release 2009.1 of Caché implemented the RFC4217 standard method of creating a secure FTP transfer, and it also removed the previous legacy mode which assumed that the command channel was to use TLS. However, some Ensemble implementations using FTP adapters were using this mode. The current release reintroduces this legacy connection mode with a special way in the FTP adapter configuration to indicate its use.
If you have been using the old non-standard FTPS protocol first implemented in the %Net.FtpSession class, you may find that your FTP adapters no longer work with the FTP servers to which they have been connecting. To restore proper functioning of the adapter, append an asterisk (*) to the SSLConfig property of the appropriate EnsLib.FTP.InboundAdapter or EnsLib.FTP.OutboundAdapter class.
See the SSLConfig property description in the EnsLib.FTP.Common entry of the Class Reference for details.
Changes in Mapping of Custom Schemas
In previous releases, your custom HL7 and EDI schemas were stored in the ENSLIB namespace; therefore, they were mapped to every namespace. However, the Ensemble upgrade procedure replaces everything in the ENSLIB namespace, so you would have to export and then import your defined schemas to save them when you upgraded.
Beginning with Ensemble 2007.1, only the standard schemas are available in all namespaces. Ensemble now stores all custom HL7 and EDI schemas in the namespace where you define them. If you depended on centrally located schemas in your previous Ensemble version, you must now compile your user-defined schemas in each namespace where you use them.