Hope resolved by now but : One needs to double the quotes within the pattern since it needs to be a single string:

Matches(tAlias, "1(.E1""SITE A"",.E1""SITE B"")")

Matches(tAlias, "1(.E1""SITE A"",.E1""SITE B"")")


Hi Grace

I defer to those with experience in the field to offer comparative advice but concerning the Production Export functionality:

For existing environments it is possible to use the Export for deployment from the Production configuration page for one or more items and not the whole production. This allows changing existing items or adding items to a production when deploying the export file. When changing an item the deployment code will disable the item first if it is enabled and then re-enable the item as necessary after the deployment has finished.

It is possible to remove items using the deployment functionality but for this one needs to use Ens.Deployment.Util APIs and not the GUI to create the removal deployment package. 

Concerning settings - if you haven't seen perhaps System Default Settings might be appropriate  (https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY...).

An alternative use of System Default Settings by some sites is to use for the same values without having to enter per item - hence the option in the Export for deployment dialog  to export deployable System Default Settings.

The Export from the Production configuration page attempts to identify what are linked items/code but might not be complete. This is the reason for being able to add Studio project contents to the export.  In version 2017.2.0 we added detection of RecordMap classes to be included in the export. 

Best wishes


See class method EnsLib.Testing.Service::SendTestRequest() that allows one to issue the test from terminal without having to add another component.

classmethod SendTestRequest(pTarget As %String, pRequest As Ens.Request, ByRef pResponse As Ens.Response, Output pSessionId As %String, pGetReply As %Boolean = 0) as %Status

    Send a test request to the specified target host (BusinessProcess or BusinessOperation). 

Hi Amir

This issue is addressed in 2016.1.0

W x.GetValueAt("MSH.MSH~12.VID~1")

Best wishes


Thanks Scott,

Our EnsLib.HL7.Service.FTPService uses the FilePath setting in the Source information which does not account for the sub directory searching option:

OnProcessInput() line:

Set tIOStream.Name=pFTPStream.Attributes("Filename")_$C(13,10)_"via FTP "_..Adapter.FTPServer_":"_..Adapter.FTPPort_" path '"_..Adapter.FilePath_"'"

But the adapter is passing the actual path where the file was retrieved from in pFTPStream.Attributes("FTPDir") . I will make the change in EnsLib.HL7.Service.FTPService to use  pFTPStream.Attributes("FTPDir") instead of ..Adapter.FilePath but I am afraid I cannot advise on which release this will be in.

To verify from terminal using  write  ##class(EnsLib.HL7.Message).%OpenId(<id>).Source

returns before the code change:

via FTP path '/hl7'


via FTP path '/hl7/1/yellow/'

Would this be sufficient for your needs or since you state the reasons are more complicated  a more elegant solution in the Ensemble service is needed.

Kind regards