#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 Nezla · Sep 22, 2023

Hi Guys,

I've this client method in my Zen page which looks good and compile fine:

I first tried calling  this clientmethod in %DrawHTML() like : var res=zenPage.getNewPrinters(); but for some reason didn't work not sure why I even tried simplifying my clientMethod with simple code like just showing alert but still this call didn't work

So now I'm  trying copying the code of my clientmethod to %DrawHTML()  but I'm getting a compilation error not sure why everything is the same so why is this code is raising a compalation error when placed between &js<> and working fine in my clientMethod?

3
0 477
Article Mihoko Iijima · Sep 21, 2023 1m read

InterSystems FAQ rubric

The meaning of each timeout value is as follows.

1. [Server response timeout]

If IRIS/Caché processing (routine or query execution) does not finish within this set time, the browser will return an error.

For example, if this value is 60 seconds and it takes 90 seconds to execute a routine/method/query, an error will occur.

2. [Queued request timeout]

For each IRIS/Caché server configured in CSP/REST, you can limit the number of processes that can run CSP/REST concurrently.

2
0 628
Question Nezla · Sep 14, 2023

Hi Guys,

I've an fileupload and button that executes   Upload() clientmethod to upload files in my database and everything works fine when I run the application in the server where it is located, but if I run it from a client machine the %OnSubmit class method doesn't get invoked when form.submit() get executed so how can I fix this?

I can always use <submit> button but the thing is that I need the current form to close after submitting the form but adding  &js<window.close()> st the end of %OnSubmit classmethod to close the window is not working 

1
0 225
Article Mihoko Iijima · Sep 14, 2023 1m read

InterSystems FAQ rubric

It can be retrieved using the schema INFORMATION_SCHEMA.

INFORMATION_SCHEMA is a system schema and is not displayed by default in the SQL menu of the Management Portal.

The method to display it is as follows.

  1. Open Management Portal → System Explorer → SQL menu.
  2. Check "System" on the left of the schema drop-down.
  3. Select INFORMATION_SCHEMA from the schema dropdown.

The SQL to get the ID, field name (COLUMN_NAME), data type (DATA_TYPE), description (DESCRIPTION) for the specified table (Sample.Human) is as follows.

0
1 674
Question Nezla · Sep 13, 2023

Hi Guys,

I've a popup zen page to upload files using the input tag and submit button as below :

<html>
<input type="file" size="80" name="FileStream" class="button" id="fileUpload" />
</html>
<!--imageclickbutton id="btnUpload" caption="Upload" width="90" height="30" onclick="zenPage.Upload();"/-->
<submit align="right" id="Submit" name="Submit" caption="Upload1" />

and the problem is that after loading the file on the %OnSubmit classmethod I need to execute a client code a Javascript clientMethod  (CloseAndRefresh()) which closes the current popup screen and refresh a gridview in Original page 

2
0 362
Discussion Sylvain Guilbaud · Sep 11, 2023

Currently, the SQL privileges (SELECT, INSERT, UPDATE, DELETE) are managed at the tables level, which can be very tedious when you have to administer many roles in an organization, and need to keep them sync with a constantly evolving data models.
By managing privileges at the schemas level, will allow to give SELECT and other DML privileges to *all* or *several schemas* to a role|user, fixing the need to manually synchronize the new tables|views to the roles.

If you agree, I invite you to vote for this idea.

6
0 352
Question Emil Odobasic · Sep 6, 2023

Hello everyone!I need to build something that will receive a REST request. As of now I have tried my luck with using an EnsLib.HTTP.InboundAdapter. But i am not so sure how I am supposed to configure it to be able to receive the REST request together with the JSON body.I have specified the OnProcessInput in the adapter so that it receives a GlobalCharacterStream. However, I have not had any good luck finding out to actually make the request to the EnsLib.HTTP.InboundAdapter. I would be really thankful if you could let me know if it is possible for an EnsLib.HTTP.InboundAdapter to actually

8
0 494
Question Cedric Montanuy · Sep 1, 2023

Hello, 
as i'm trying to develop a operation and its methods (SQL adapter), I'm running into issues when i run my test class. 
I have the class i want to test in the very same folder as my test class. 
I followed the tutorial in the documentation. 
When i run the test class, i get the following message error : 
LogStateStatus:0::ERREUR #5002: Erreur Cache: <METHOD DOES NOT EXIST>zTestAdd+1^unitTests.testMyClass.1 *myMethod,Package.BO.MyClass  
Here is my test class (heavily inspired bythe documentation :-) :
 

Class unitTests.testSqlInscription Extends %UnitTest.TestCase

3
0 447
Question Nezla · Sep 8, 2023

Hi Guys,

In my Zen page I've a grid with a list of uploaded images and it's working fine when running from the Server where the application resides where I can just click to an image and my code displays the image in a second screen (MSDS.Image.StreamServer.cls) ,

but the problem if running the page from a client machine (internet), I get this annoying extra steps with the file downloaded as .cls then I'll have to click open and choose a program ..etc which is inconvenient for user so how can I fix this?  

here is the call to view the image

1
1 304
Article Mihoko Iijima · Sep 7, 2023 1m read

InterSystems FAQ rubric

You can avoid the error by specifying a stream object as the argument of %ToJSON() used when generating a JSON string from a dynamic object.

A code example is below.

USER>set temp=##class(%Stream.TmpCharacter).%New()

USER>set jsonobj={}

USER>set jsonobj.pro1=["a","b","c","d"]

USER>set jsonobj.pro2=["あ","い","う","え"]

USER>do jsonobj.%ToJSON(temp)

USER>write temp.Size
51
USER>write temp.Read()
{"pro1":["a","b","c","d"],"pro2":["あ","い","う","え"]}

See also the documentation for details.

[IRIS] Serializing large dynamic entities to streams

1
0 647
Question Smythe Smythee · Aug 23, 2023

Hi Community ,

I am using %Date Property for defining one csv source message class .Please refer below class

Class CSVtoHL7.Inputfile.Record Extends ,(%XML.Adaptor, Ens.Request, EnsLib.RecordMap.Base) [ Inheritance = right, ProcedureBlock ]

{

Property ID As %Integer;

Property LastName As %String;

Property FirstName As %String;

Property MiddleName As %String;

Property DOB As %Date;

Property Gender As %String;
}

Please refer to data transformation class

14
0 740
Article Rizmaan Marikar · Aug 30, 2023 5m read

Wanted to share something I learned recently while working on a problem. We needed to add and change some Business Hosts in one of our edge productions.

In the past, we simply added the production class to CCR and then spreading it around. But there was a problem because different developers were working on different things, and we only wanted to include only the relevent production changes onto the CCR. 

Here's a little piece of code that can help add new things to an existing production:

0
2 274
Question Scott Roth · Jul 8, 2019

Way back when during our Siemens LCR days we had to limit the number of characters in OBX.5 to a length of 75. That was back when we had eGate.

Now I need to do the reversal of that and take loop through a string length and split the string up into multiple OBX or NTE based on a certain length. In reading documentation $EXTRACT can do this if you know the exact length, but in this case we don't. 

So how would one loop through a string and say every 75 characters create a new OBX or NTE segment?

Thanks

Scott

7
0 3111
Question ED Coder · Jul 31, 2019

Hi,

I have a ORU message, which has a EVN segment that I want to remove and send the message across.

I tried to clone the request as below:

s newreq = request.constructClone

s changreq = newreq.RemoveSegmentAt("EVN")

Set request  = changereq

but it fails. Is there a way that I can safely remove a segment and pass it on?

Would appreciate your help in this

Regards,

Eric

13
0 2226
Question Smythe Smythee · Aug 8, 2023

Hi community,

I am trying to map <assign value='source.{ORCgrp(1).RXE:7.1}' property='target.{ORCgrp(1).RXE:7.1}' action='set' /> in data transformation 

My input value for source RXE isRXE:7.1 will be like Keep orders~New orders  ~       ~ new orders

 After mapping i am getting only First repetition  value i,e is only Keep orders value  

I have tried using $EXTRACT like this <assign value='$EXTRACT(source.{ORCgrp(1).RXE:7.1},1,*)' property='target.{ORCgrp(1).RXE:7.1}' action='set' /> in data transformation  still getting First repetition value in target message

3
0 269
Question Jordan Everett · Aug 18, 2023

Hello!

I'm currently trying to setup a SFTP Ensemble production to handle all of my SFTP transactions. It's been going well, but I'm currently running into an issue where it is saying it is unable to exchange encryption keys. Error Below:

Unable to exchange encryption keys [80101005] at Session.cpp:238,0' matched ReplyCodeAction 1 : 'E=R' resulting in Action code R

Any advice on getting around this would be appreciated.

3
0 542
Question Stella Ticker · Aug 16, 2023

I created a web service and used the Studio SOAP Wizard to generate a client from the WSDL file of the service. But the client is throwing the error as shown below

 WebServiceClientClass '' could not be instantiated, or the WebServiceURL Location could not be determined

What have I missed?

Is there a better way to create a client?

2
0 384
Job Preston Brown · Aug 16, 2023

Looking for someone who has a proven resume with InterSystems and Ensemble Experience.

Ideal Qualifications: Ensemble Experience + working with InterSystems DTL for HL7 Transactions.

Work Type: Consultant at $50-$60/hour DOE

Job Location: Remote

Work Category: Healthcare

Responsibilities: work with InterSystems Ensemble Productions for HealthCare.

Qualifications: 3+ years working with InterSystems Ensemble.

US Citizens only.

If Interested: email pbrown@cybercodemasters.com with your latest resume reflecting InterSystems + Ensemble and provide your phone number.

0
1 271
Question Nezla · Aug 14, 2023

Hi Guys,

below is a javascript sample code in one of my methods in a CSP page where I'm loading some data from a global to a Javascript arrays, the problem is that if I call the method with do (d ..mymethod()) everything works fine but calling it with Job (J ..mymethod()) it seems that the javascript part is not working, is there a way to fix this?    

The reason why I'm using Job call because I need it to run in background and not to hold other processes.  

5
0 289
Question Colin Brough · Aug 9, 2023

We are about to embark on a development where we'll be taking HL7 messages and generating PDF reports from them. We are wanting to future proof our development efforts within the constraints of our currently deployed platform and future upgrade options. We are currently running on Ensemble 2018, though an upgrade to Iris is anticipated - at some indeterminate point in the future. We are aware of Zen Reports and InterSystems Reports (Logi) as technology options, but are also unclear on some details. A roadmap and guidance from those who've done this kind of thing before would be great!

3
0 248
Question Javier Gonzalez · Jun 1, 2017

I'm doing a REST service. A method has as body parameter a JSON corresponding to a class A.

In my production I have class A so that I retrieve the parameters using a dynamic object, such that:

Set body = ##class(%DynamicObject).%FromJSON(%request.Content)
Set myObjectA = ##class(A).%New()
Set myObjectA.Id = body.Id
Set myObjectA.Name = body.Name
Set myObjectA.Date = body.Date
Set myObjectA.Salary = body.Salary

I would like to know if I can avoid doing the manual mapping, doing a casting, since I am sure that FromJSON will return a class A. Something like this:

9
1 1063