#Ensemble

23 Followers · 2.4K 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 Colin Brough · Sep 27, 2024

We are doing healthcare interface development.

Developers have Ensemble installed locally on their laptops - code will be developed locally then deployed to integration, test/UAT and ultimately production servers in due course.

One of the other applications we are developing around happens to utilise an Iris desktop client to a remote Iris server. We want to have the application available on the developers laptops alongside the local Ensemble instance.

✅ It appears that if we install their desktop client then install our local Ensemble server, things work.

❌However, if we install a local Ensemble

3
0 149
Article Rodolfo Moreira dos Santos · Sep 25, 2024 3m read

Hi everyone,

In this article, I’m excited to introduce CodeInspector, a tool designed to simplify code validation by applying custom rules tailored to your development requirements. Whether you're managing a large codebase or working in an agile environment, CodeInspector helps ensure code quality by offering flexibility and adaptability to specific project needs.

Motivation

The idea behind CodeInspector was to build a tool that is both easy to implement and adaptable to different business contexts.

3
0 257
Article Robert Cemper · Sep 11, 2024 3m read

This story has followed me for more than 20 years.

In the early days of ObjectScript, the volume of $Functions was limited.
You had to write it as part of your program.
But the functionality was often implemented. It just had no name.
To use it, you had "system" calls using $ZU() functions. See Reference

Over time most $ZU() became deprecated and replaced by "official" $Functions.
But how to find then over a thousand lines of code written over decades
by an uncounted number of programmers that were gone with the wind.
Studio was something fresh and not so performant.
So I created a Search Utility to

4
1 416
Question Krishnaveni Kapu · Sep 26, 2024

Hi ,

I am sending my DTL response (which is an xml stream) to an FTP out location.

My XML stream has CRLF , but after sending FTP'ing out , it displays as LF

before writing it to FTP

 

At FTP out location

What Chatset will do it ? Currently Charset is set as Binary.

Appreciate quick response.

3
0 103
Announcement John Murray · Sep 26, 2024

See the new team members in action:

Try them online for yourself:

https://gitpod.io#snapshot/b31bdf9c-4657-402a-a2d

Get it from the Extensions view inside VS Code, or here in Marketplace.

Vote for it here in the current Developer Tools 2024 contest (voting ends: 29 Sep, 2024, 11:59:59 PM EST).

Discuss it below.

Most of all, enjoy DX Jetpack with its added booster rockets!

0
0 98
Question john.smith4237 · Sep 26, 2024

Hi Guys,

I've created a webservice where a third party web application that can communicate with Ensemble via webservices to post and get data in from of JSON, first call is a post call to login with user/password and Ensemble responds with success or failure than the following get calls, but I've been advised that I also need to return a Cookie to control the exchange and the session for a specific user, I'm not familiar with Cookie so any suggestions, how can I create a an authentication cookie and do i need to add it to my next Get calls ?       

Thanks

0
0 139
Question Krishnaveni Kapu · Sep 23, 2024

I have below method , which receives a PDF ; this method throws error for a PDF file of 3MB size

 <MAXSTRING>zBase64Encode+9 -- logged as '-' number - @'    set encodedData = $system.Encryption.Base64Encode(content)'

How do I fix this.

----------------

ClassMethod Base64Encode(pStream As %Stream) As %Stream
{
  set tSC = $$$OK
  set tSC = pStream.Rewind()  
  s pEncoded=##class(%Stream.GlobalCharacter).%New()  
  while 'pStream.AtEnd {   
    Set tLen = pStream.Size    
    set content = pStream.Read(.tLen)    
    set encodedData = $system.Encryption.Base64Encode(content)
    set

2
0 318
Question Krishnaveni Kapu · Sep 21, 2024

Hi All ,

I would like to add session ID to the fileName in an FTP out pass thru business operation.
How can I do that ?

<Setting Target="Host" Name="Filename">SessionID_%f_%Q.txt</Setting>

2
0 204
Question Krishnaveni Kapu · Sep 20, 2024

I am converting a HL7 msg to xml and one of the field is as below -
 
DTL = <assign value='"Message"' property='target.{req.ID.scope}' action='set' />

DTL response = <ID scope='Message'>3</ID>

my xsd has -
<xsd:element name="ID">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="SimpleContent" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="scope"/>
</xsd:complexType>
</xsd:element>

I would like to get it DTL response as  = <ID scope="Message">3</ID>

Message in double quotes as - "Message"
Is there a way to get xml attribute in double quotes ? How can I do that ?

4
0 175
Question john.smith4237 · Sep 18, 2024

Hi Guys,

I'm using the following to display JSON content in an areatextbox, but I would like to change a value in my JSON before displaying it in my areabox?

set txtId.value= jobj.SampleJsonData.Read(jobj.SampleJsonData.Size)

say for example my JSON string as below and would like to change Type value, I thought of converting the JSON to object
(
d ##class(%ZEN.Auxiliary.jsonProvider).%ConvertJSONToObject(jobj.SampleJsonData.Read(jobj.SampleJsonData.Size),,.list)  )    

Set the value of Type : list.Type

then convert the Object back to JSON but I couldn't find a function or method that convert

3
0 119
Question Colin Brough · Aug 15, 2023

We need to generate a PDF file from an HL7 message as it passes through an Ensemble production. Looking for examples, tutorials, documentation aligned to our scenario.
We are currently using Ensemble (so can't use InterSystems Reports at the moment). Thinking Zen reports...
We can get from HL7 to XML OK, following Introduction to InterSystems Health Connect - YouTube (see c.1:11:00-1:13:00)

We can follow the Zen tutorials to a point - but they mostly get the data being presented in the report from SQL queries rather than from an in-bound XML stream.

2
0 243
Question Colin Brough · Oct 5, 2023

Is there a difference in outcome between the two screengrabs below?

In both cases, when  certain conditions are met, a transformation is called and the output sent on to two targets. In the first case we surmise the transformation is called twice, and the output of the first run sent to the first target, the output of the second run to the second target. In the second case we surmise the transformation is called once, and the output duplicated and sent to the two targets. 

  • Are there any cases where they would not be functionally the same (eg because of side-effects of the transformation?)
  • Cou
2
0 307
Question Steve Pisani · Sep 16, 2024

IRIS Health Monitor is part of System Monitor (see here).
The intention is to further process the captured sensor reading in order to identify the "health" of a system by checking the sensor reading values against pre-defined Base, Min and Max absolute values, and alert accordingly. Additionally,  instead of absolute values, you can create Charts (which can be different for different periods of a day), that contain a learned minimum and maximum value after a time spent by the system (at least 24 hours) analysing sensor readings.

The sensor readings included in Health Monitor are defined here.
The

0
1 129
Article Robert Cemper · Sep 12, 2024 2m read

During testing the added Multi-Namespace feature I met a challenge
that required intervention. This simple request created 1000 lines of output.

USER>do^rcc.find
----------------
 
enter search string [$ZU] <blank> to exit:
          Verbose? (0,1) [0]:
          Force UpperCase? (1,0) [1]:
 
enter code type (CLS,MAC,INT,INC,ALL) [ALL]:
 
select namespace (ALL,%SYS,DOCBOOK,ENSDEMO,ENSEMBLE,SAMPLES,USER) [USER]: all
  • As for the verbose variant you my run a log on your terminal to keep the result in details
  • though a real summary was still missing.

So I decided to append a very

0
2 223
Question Krishnaveni Kapu · Sep 11, 2024

I have an SQL table as below (columns - ID and Value)

I will get an ID number (first column) as an input from FTP inbound , and after that I have to query table taking ID as an input to get all the values for the ID 

as -

if ID = 11 ; QRY output = aaa,bbb

if ID = 22 ; QRY output =  xxx,yyy,zzz

can someone help me with query 

ID    Value
----------
11    aaa
22    xxx
22    yyy
11    bbb
22    zzz
-----------
 

2
0 170
Question Igor Barboza · Aug 15, 2024

Hello every one, here in our company we are trying to develop a tool to help us in our "Code Review" that today is completely done for another developer.
So I need to develope a tool that reads a class/routine (Already done) and identify if in the current line there is some abbreviated command, that is against our policy of codification, for example:
s variable = "test"
d ..SomeMethod()
So in this cases I want to warn the original developer that the code has parts that need to change the "s" to "Set" and de "d" to "Do".
I tried to found some library in the documentation but with no success, if

6
2 256
Question Colin Brough · Aug 30, 2024

I can START and STOP a business process via its Schedule setting.

Is it possible to change the value of another Setting in an analogous way?

I can imagine a SettingSchedule that could look like 

action:YYYY-MM-DDThh:mm:ss[,action:YYYY-MM-DDThh:mm:ss]

But rather than just START or STOP, action could be "SET Setting = value", overriding whatever the normal value is.

Is there an existing way of achieving this kind of functionality?

I've got a business process that triggers from a scheduled task, and sends documents to a downstream system according to business requirements.

4
0 177
Question Samyuktha Chaudhary · Sep 2, 2024

I'm trying to convert date - 2023-09-28T20:35:41Z to BST/GMT format. I tried with $ZDT($ZDTH("2023-09-28T20:35:41Z",-2),8,1) but it's giving the output as '19700101 01:33:43' and looks link the date format in $ZDTH specified is wrong. Any inputs or solution would be appreciated.   

4
0 559
Question Krishnaveni Kapu · Sep 3, 2024

Hi,

I am using this "$ZDATETIME($h,3,1,3)" and getting response as 2024-09-03 12:07:45.000
But I need proper values at the end instead of zeros (000)

Something like below -
2024-09-03 12:07:45.658

6
0 346
Question Troy Marshall · Sep 2, 2024

 I have some Services using EnsLib.File.InboundAdapter to go directly to respective operations using EnsLib.File.OutboundAdapter which has a 'File Path' specified.

Using this File Path as a root directory, I'd like to instead pass this through a Router  where I could somehow inject a subdirectory to place the file into on the outbound side based off the source service it is coming from. There will likely be several inbound services writing to each outbound operation and I'd like to be able to sort the output into subfolders.

I found this article, which seems to be the type of thing I'm looking

1
0 184
Question water huang · Sep 1, 2024

i use %SYSTEM.WorkMgr  to handle data by multicompile=1,but i find that,after WaitForComplete,the processes created by %SYSTEM.WorkMgr  are still stand by,

and status is evtw,after i run many times,the processes are more.and this will cause server falls into trouble.so my question is ,how to kill the processes that created by using the %SYSTEM.WorkMgr,and how to avoid  to make the server falls into trouble,why  this will cause server falls into trouble。and is there a better way to handle data by mult process?

4
0 308
Question Martin Nielsen · Aug 21, 2024

We have a CSP pages script, which gets and sets a cookie for email tracking purposes, we had problems with cookies not being passed to this script when the URL was opened from an email client due to being cross-site, so I set Session Cookie Scope & User Cookie Scope to None instead of Strict.

This solved the issue with cookies not being passed, however the script entirely does not work anymore due to the error:

"Invalid CSP response cookie. SameSite cannot be set to None without Secure. : CSP Error"

Which doesn't make sense to me since the connection is indeed secure, I also have error logs from

3
0 287
Question Joost Platenburg · Apr 27, 2018

LS,

I'm executing a query using JDBC on a PostgreSQL db:

SET statement_timeout TO 600000000; COMMIT SELECT * FROM bi_hour

The query is aborted with the following message:

FOUT #5023: Fout in Java Gateway: JDBC Gateway getClob(0,2) errorBad value for type long : active

The column 'blocked_status' contains the value 'active' is of type 'text'. I figure somewhere the SQL Gateway tries to convert the text value into a long but I can't find where, any suggestions?

4
0 438