#Ensemble

23 Followers · 2.3K Posts

InterSystems Ensemble is a complete and easy-to-use integration platform that enables users to connect people, processes, and applications in record

time.

Learn more

Documentation

Question Justin Richter · Jan 3, 2022

So I've been reviewing a lot of questions posted in the InterSystems community regarding NULL properties in JSON. I've also been reviewing the JSON documentation. None of these things have been able to help me so far.

1. We don't seem to have the %JSON.Adaptor class available for us to use in our system.

2. I'm not really confident enough to create JSON Type classes or backporting code, etc.

2
0 839
Question Craig Clifford · Mar 4, 2021

We have an interface that need to be disabled then re-enabled when it starts to queue up. I wrote the following code to do this functionality in a process. This works in our development domain, but in production it says it fails to disable the job - it only shuts down the interface without updating the production/starting the interface back up. Error message: "Failed to stop job '36831290' within 60 seconds. Status '<unknown>" 

Is there something wrong with how I'm trying to do this? 

set tSC = ##class(Ens.Director).EnableConfigItem(itemname,0,0) 

3
0 407
Question Jimmy Christian · Jun 16, 2021

Hello Community,

I am trying to insert multiple values in a table. Below is the simple sql statement.

Insert Into TableX

values ('Name', 'Address', 'Phone')

How can i do multiple inserts(rows) in one single statement?

Values are not in another table, so i cannot use Select into.

Thanks,

Jimmy Christian.

14
0 1103
Question John Nurmi · Sep 23, 2020

I need some help with unescaping a value in TXA 2 of an MDM message that I am writing to a variable, to be used in a filename for a PF. Would I use the method Unescape(pData) if so how can I use it in a transform to set the variable? The reason I need to do this is I need to use the name as file name when writing the PDF to a directory. The escape characters and invalid for file names .

5
0 785
Question Anthony Jackson · Dec 13, 2021

I am working in Intersystems Healthshare product.

I want to clear the message logs from a particular interface (Service,process,operation). 

In intersystems we have the option to purge the data for all interfaces for the corresponding time but I want to clear the data logs for particular interface only.

Please let me know how to approach this scenario.

3
0 400
InterSystems Official Pete Greskoff · Dec 13, 2021

December 13, 2021 - Advisory: Vulnerability in Apache Log4j2 Library Affecting InterSystems Products

InterSystems is currently investigating the impact of a security vulnerability related to Apache Log4j2.

The vulnerability — impacting at least Apache Log4j2 (versions 2.0 to 2.14.1) — was recently announced by Apache and is reported in the United States National Vulnerability Database (NVD) as CVE-2021-44228 with the highest severity rating, 10.0.

Please see this page for more details about the vulnerability and updates on whether InterSystems Products are affected.

0
0 1105
Article Brendan Batchelder · Jun 8, 2016 2m read

DTL Transformations and GetValueAt/SetValueAt calls on HL7 messages will truncate any fields longer than 32K.  To avoid this, the methods GetFieldStreamRaw and StoreFieldStreamRaw must be used when dealing with fields that might be larger than 32K.  OBX:5 is a frequent example.  These methods have some subtleties and must be used carefully.

This can't be done by simply dragging from left to right in a DTL.  It must be done with a code action.  Also, the StoreFieldStreamRaw call must be the last edit made to the segment because the segment becomes immutable after that.

6
6 2945
Question Scott Roth · May 20, 2021

We are seeing ERROR #5002: Cache error: <MAXSTRING>zSaveData+14 ^EnsLib.HL7.Segment.1 come up on a Routing rule when we are trying to Encoded PDF's through a DTL. In the DTL we are copying source to target. Is there a limitation on trying to copy source to target? 

At the bottom of the DTL you are see that we commented out converting the Encoded PDF to a Stream, is it recommended that we always use %Stream anytime we are dealing with PDF's?

Thanks

Scott

4
0 913
Question Ben Webb · Dec 2, 2021

Hi all, I'm trying to output a XML file, mapped from a ORU_R01 2.3 HL7 message, with a file name based of fields in the source HL7 message in the following format, source.{PIDgrpgrp(1).PIDgrp.PID:PatientIDInternalID(1).ID}_"-"_source.{PIDgrpgrp(1).PIDgrp.PV1grp.PV1:VisitNumber.ID}_"-"_source.{PIDgrpgrp(1).ORCgrp(1).OBR:ObservationDateTime.timeofanevent}To give something like RXR0000000-000000123-20211125105415.xml as the output filename,I initially tried to extend the EnsLib.XML.Object.Operation.FileOperation class and overwrite the OnMessage() method to allow me to specify the filename but I

1
0 441
Question prashanth ponugoti · Dec 1, 2021

Hi All,

I have configured Business Operation with EnsLib.HTTP.OutboundAdapter and set properties.

In the BusinessOperation method  I am trying to create %Net.HttpRequest 

Set httpRequest= ##class(%Net.HttpRequest).%New()

to post REST Service.

I am able to access HTTPServer ,URL details form Adapter using below code

Set httpRequest.Server = ..Adapter.HTTPServer
Set httpRequest.Location = ..Adapter.URL

How to read SSLConfiguration from Adapter properties?

As of now , I am hardcoding same string which I have configured for BusinessOperation Settings tab

3
0 339
Question Jimmy Christian · Nov 17, 2021

Hello,

I am trying to pass a pattern in the Ensemble function Matches(val,pat) in Business Rule as below.

Eg. 

Matches(tSite,&quot;1(.E1&quot;SITE A&quot;,.E1&quot;SITE B&quot;)&quot;)

tSite is a variable containing the site name

Want to check if the variable contains any of the site name.

But i receive a parsing error when compiling.

Is there another way to pass the pattern in the Matches function or any other similar function which i can use in the business rule or DTL without multiple sentences with Contains.

Thanks,

Jimmy Christian.

2
0 309
Article Daniel Kutac · Aug 10, 2016 22m read

Created by Daniel Kutac, Sales Engineer, InterSystems

Warning: if you get confused by URLs used: the original series used screens from machine called dk-gs2016. The new screenshots are taken from a different machine. You can safely treat url WIN-U9J96QBJSAG as if it was dk-gs2016.

Part 2. Authorization server, OpenID Connect server

12
4 5797
Question Ben Webb · Oct 28, 2021

Hi all, 
Just wondering if there's a quick way to get the DocType, without knowing it in advance, from a message body by building a string from the VersionID, MessageType, and TriggerEvent fields? (Similar to how it might be done dynamically in Rhapsody)
Can this then be used to set the DocType for a source message?
If this is not the best practice what is a suitable alternative approach?
Thanks for your help,
Ben

6
0 989
Question Nezla · Nov 25, 2021

Hi Guys,

is there a Runtime EXE for Excel or ms office, I've a report that would like to open in excel?

Thanks

3
0 1942
InterSystems Official Pete Greskoff · Nov 19, 2021

November 19, 2021 - Advisory: Apache Web Server provided with InterSystems kits – Vulnerability reports

InterSystems kits include an Apache web server, which provides a convenient way for customers to interact with the Caché/IRIS Management Portal without needing to install an external web server; however, this web server should never be used for production instances, and customers must install a web server that fits their specific needs and security/risk requirements.

2
1 710
Question Nezla · Nov 16, 2021

Hi Guys,

How can I download or populate a query resultset or a content or DataGrid or zen report to a CSV file ?

basically, I know how to create a csv file than save it in a local path eg. C:\Temp\filename.csv but this is not convenient for the user to go then a try to find the file, I would like the CSV file to be downloaded or opened for the user to view the same way for example when you go a website where you have an option to download or open a csv file from query resultset or a zen report .

Thanks

9
0 696
Article Laurel James (GJS) · Oct 25, 2021 2m read

InterSystems technologies are renowned for their high performing databases, which support the systems and operations of many organisations. However a key ingredient to this success is the quality and maintainability of their code. 

The quality of code can impact everything from speed and ease of fixing bugs and making enhancements, to the overall performance of your organization and your ability to get ahead in the marketplace. 

By ensuring your code is maintainable, you can reduce approximately 75% of the systems life cycle costs*. This is why, at George James Software, the solutions we build are always straightforward and written in high quality code - because we know that this solid foundation can positively impact the rest of your organization. 

With a maintainable system you're able to reduce your overall maintenance as any issues that occur are significantly faster to identify and fix. This means you're free to allocate that time and budget to enhancements, enabling you to get the most value out of your applications and ultimately better support your organization. 

Keep an eye out for our next few posts about what a maintainable system looks like and the tools that can help you keep your code maintainable, in order to help you to reduce those maintenance costs.  

1
1 482
Question Omar Ali Ateen · Nov 9, 2021

Dear All

I am trying to interface LAB instruments with LAB System using ASTM over TCP. I read the documentation here . But I can't understand how to connect instrument and LAB system in same port, please see the screenshot of interface below. Please help.

Details:

  • For Servece I use "EnsLib.EDI.ASTM.Service.TCPService" class.
  • For Proccess I use "EnsLib.MsgRouter.VDocRoutingEngine" class.
  • For Operation I use "EnsLib.EDI.ASTM.Operation.TCPOperation" class.

 

4
0 400
Question Jeffrey Drumm · Nov 5, 2021

EnsLib.HL7.Adapter.TCPInboundAdapter has a Connected property that I assume is set to the state of the connection session with the remote host; i.e. 1 when Connected, 0 when not. I'm assuming this is the property the Production Configuration web page uses to display the state of the service (green for Connected, red for not Connected, etc.).

How can I interrogate the value of that property of an active service, via a method running in separate process?

(It really seems like I should know this, but I'm just not finding the right magical incantation)

3
0 237
Question Yone Moreno · Nov 4, 2021

Hello community,

It would be appreciated if you could read and respond to us:

➡️ We need to activate a SOAP Operation during a time slot, in order to send messages to the target system, only for a few hours; for example from 4am to 8am.

The requirement is to do this without a scheduled task. This is because when changing nodes, in the production mirrors, there are difficulties, challenges, or issues with scheduled tasks.

Therefore, we need a mechanism that allows us to ensure that the Operation is executed even after a node change.

2
0 261
Question Nezla · Nov 2, 2021

Hi Guys,

I've bind a textarea to show up in a tablepane cell and it's working fine as follow:

this the column injh question:

    <column colName="FollowUp" header="FollowUp Comments" width="9%" style="text-align:left;" OnDrawCell="txtFollowUp"/>

txtFollowUp method:


Method txtFollowUp(pTable As %ZEN.Component.tablePane, pName As %String, pSeed As %String) As %Status
{
    &html<<textarea name="followup" name="followup" rows="3" text="#(%query(pName))#" style=" width: 95%;" onchange="zenPage.saveFollowUp(this,#(%query("id"))#);">#(%query(pName))#</textarea>>
    Quit $$$OK
}

and 

4
0 235