Announcement Evgeny Shvarov · May 7, 2019

Hi Community!

Today and yesterday a lot of you received a strange email with the subject:

InterSystems Developers Publications, Week 29 of April - 05 of May, Digest

and body:

subscription|type|digest_w|post|461231|

This happened because of a bug in our email subsystem.  I bring my apologies and we are fixing the bug at the moment.

0
0 242
Announcement Evgeny Shvarov · May 6, 2019

Hi Community!

This is the update on what are the new applications submitted on OpenExchange in April 2019

New Applications

Arduino Snippets published by @Eduard Lebedyuk 

Connect your Arduino to InterSystems IRIS or Caché via com port (or usb<->com)

Japanese Calendar published by @Hiroshi Sato 

Japanese Calendar Converter for InterSystems products

Cache Quality for Atelier published by @Daniel Tamajon 

IDE extension that helps you detect and fix quality issues as you write code. Like a spell checker, this extension squiggles flaws so they can be fixed before committing code. You can install it directly from Atelier and it will then detect new bugs and quality issues as you code (ObjectScript and JavaScript).

ETL Interoperability Adapter published by @Guillaume Rongier

Extend EnsLib.SQL.OutboundAdapter to add batch batch and fetch support on JDBC connection for Ensemble and IRIS.

R Gateway published by Shiao Bing Sung

Use R language with InterSystems IRIS

The Folding Staff published by  @John Murray 

'The Folding Stuff' is a simple VSCode extension that adds Visual Studio Code's existing code folding / unfolding features to the editor context menu.<--break->

0
0 255
Question William Proctor · May 2, 2019

Thanks for all replies in advance.  We have a security vulnerability that we have to get rid of.  We use Putty software to connect to cache as a terminal allowing several users to do maintenance work in cache.  this uses telnet Plain text.  I know that we can configure telnet to be encrypted using the super server service and I'm looking for software that can work like Putty as a terminal using encryption compatible with cache telnet encryption.

5
0 953
Question Dmitry Maslennikov · May 6, 2019

Well, we now have two different platforms Caché and IRIS. With so many changes, that it makes so many difficulties to have the same sources for both platforms. I'm not arguing about the reasons for it. Some of the changes are really reasonable.

It's good when I can import code from Caché to IRIS and get it worked after all background job was done. In Caché we have %CacheStorage type used for Storages. In IRIS it automatically converts to %Storage.Persistent. So, If I develop on IRIS, I will have incompatible sources for Caché.

So, it is one of the problems, and I expect more.

6
0 616
Question Attila Toth · May 3, 2019

Hi All,

I'm trying to create a simple wrapper class around a JSON schema validator library, written in Java, and calling this functionality through the Java Gateway of IRIS 2019.1.

My Java wrapper class has a constructor like this:

public JSONValidator(char[] jsonStream, char[] schemaStream) { ... }

According to the documentation this should be called with %GlobalCharacterStream arguments from the IRIS side.

2
0 520
Question lamont thomas · May 1, 2019

I need to list the source type and target type for all the DTL transformations in an Ensemble  Production.  I know I can get the source and target type for a single  DTL transformation using :

set obj=##class(EXC.DTL.Lamont).%New()

write 'Source type: '_obj.GetSourceType()

write 'Target type: '_obj.GetTargetType()

but I do not know how to get it for all the  DTL transformations  in a production. I was thinking I could create an array containing all the DTL transformations but I do not know how to get a  all the DTL transformations programmatically.  Any help would be appreciated.

3
0 488
Question Treephet Phannaphop · May 3, 2019

Hi There

I created function to manage string as requirement  extract the first two letter of each word after space for example:

Text = "Review symptoms to report with patient"

After passed function it will be return "Resytorewipa"

ChangeFormat(desc)

   set desc = "Review symptoms to report with patient"
   q:$g(desc)=""
   SET delim=" "
   SET countdown=$LENGTH(desc,delim)
   set =1
   for
    {
        q:i>countdown
         set abbrv = $e($PIECE(desc,delim,i),1,2)   // But if I put w abbrv  I can get "Resytorewipa"
         set = i+1     
    }
   w abbrv

However, at the end I got only  abbrv=''pa"  how

6
0 605
Question Stephen De Gabrielle · Apr 29, 2019

Hi, 

It is sometimes undesirable to send a full demographic or results feed to departmental clinical systems, that only see a subset of the patients.

While some systems (paediatrics, maternity, geriatrics) can filter on patient demographics, a number of systems are for cohorts of patients that don't fit a particular criteria.

One of our system vendors has a patient index filter service that keeps a local index of relevant patient identifiers, and only forwards matching messages.

3
0 389
Question Julie Marulappa · Apr 18, 2019

I am still new to cache objectscript and am trying to figure out how I would go about removing the escape characters from my JSON below. When I call the $toJSON method it's adding the "\" character in the file path.

{"FileStatus":"P","Path":"\/somepath\/test\/test123\/filename.txt","InterchangeOID":"100458"}

My Code:

set tJSONFile = {"FileStatus":pRequest.FileStatus,"Path":pRequest.Path,"InterchangeOID":pRequest.InterchangeOID}

set tJSONFile = tJSONFile.$toJSON()

Thanks.

11
0 10909
Question Scott Roth · May 1, 2019

Is there a way to get an inventory list of the Services, Processes, Routing, and Operations that are on the system. We get asked constantly from different departments to justify the number of personal we have. We are currently on 2015.2.2, with our upgrade to 2019 set for later this year.

Thanks

Scott

1
0 326
Question Soundar Aswin · Apr 9, 2019

Hi There ,

     We are trying to do a small POC trying to integrate NHS Careconnect with Ensemble/Healthconnect. Does anyone have implemented this before. It would be good that you provide some suggestions  or any sample implementation. It would be good to get suggestions any  interesting use cases 

within NHS England for the POC.

2
0 416
Announcement Evgeny Shvarov · May 1, 2019

Hi Community!

Here is a digest of the Developer Community postings in April 2019.

Most viewed

Most voted

Most Discussed

 
0
0 234
Question Ryan Hulslander · Apr 22, 2019

I have a process that takes data from a CSV file (actually a record mapper object) and creates a nicely formatted JSON string I would love to send this along to a RESTful business operation.  However no matter what I try, I continually get <INVALID OREF> errors when trying to populate the object that extends Ens.Request to give it the JSON string.

I can add strings, other objects, you name it - but stuffing a JSON formatted variable/object into another object I want to send someplace is proving to be an impossibility.

Does anyone have an example of sending an Ens.

8
1 1034
Question Sergey Kamenev · Apr 30, 2019

I follow the instruction on docker site.
I have next troubles:

  1. After changing password fom "SYS" to my pass I see on screen non removable "USER>". Standart commands "exit" and "quit" are not worked. Next actions is possible only in new terminal window.
  2. I need some extra tool in container. Where I try install (by example "apt-get install mc") I get "E: Package 'mc' has no installation candidate". I don't understand why standart ubuntu package manager do not work in Iris container.
7
1 586
Question lamont thomas · Apr 29, 2019

I need to read the sourceClass attribute of the transform node in the Xdata block of a dtl.

given:

Class EXC.DTL.Lamont Extends Ens.DataTransformDTL [ DependsOn = (Sam.msg.lamont, Sam.lamontNext) ]
{
Parameter IGNOREMISSINGSOURCE = 1;
Parameter REPORTERRORS = 1;
Parameter TREATEMPTYREPEATINGFIELDASNULL = 0;

XData DTL [ XMLNamespace = "http://www.intersystems.com/dtl]
{
<transform sourceClass='Sam.msg.lamont'  targetClass='Sam.RM.lamontNext' create='new' language='objectscript' >
<annotation>Sample transformationannotation>
<code>

I need to return the value 'Sam.msg.lamont'  for the DTL.

1
0 434
Question Eduard Lebedyuk · Apr 15, 2019

I'm using callin to get global values.

Here's a simple function to get string value from global and return it:

int GetGlobalStr(char *global, CACHE_EXSTRP result)
{
    int push = CACHEPUSHGLOBAL(strlen(global), global);

    // narg Number of subscript expressions pushed onto the argument stack.
    int narg = 0;

    // flag - Indicates behavior when global reference is undefined:
    // 0 — returns CACHE_ERUNDEF
    // 1 — returns CACHE_SUCCESS but the return value is an empty string.
11
0 875
Question Arthur Pereira · Apr 29, 2019

Hello everyone, I'm new to COS development. I'm trying to generate a simple XML file based on a query and save into my server. I'm looking for stuff to get it done, if anyone has a tutorial or a step-by-step post on how to do it. My difficulty is just in generating the XML file.

1
0 888
Question Tim Miller · Apr 28, 2019

Hello all,

Been doing Ensemble for a while but I am struggling with this SOAP set up.

Currently in Cloverleaf, we are taking the HL7 feed out of Epic, and then we put the SOAP wrapper around it.  Then using a CAIR provided wsdl, we seem to be using a JKS file and a PFX file to send the data to CAIR (http://cairweb.org/next-steps-page/).

Here is what I have done so far: I used the SOAP wizard with the wsdl file to create a new Operation.

My questions are these:

- I believe I need to change the JKS file into a PEM file in order to use it with Ensemble?

2
0 482
Question David Kilburn · Apr 18, 2019

I have problem with Cache installed on a colleague's Windows 10 laptop.  On the laptop, Cache was automatically configured to use IIS and this has worked fine with csp applications configured in the Management Portal.

Now this seems to have stopped working, and I can't work out why.  In IIS, the web application seems to be in the correct place.

I have manually mapped the various file extensions to CSPms, as per the documentation, but any attempt to navigate to a csp page produces an 500 error, which tells me precisely nothing about why this is happening.

1
0 253
Question Edward Lautzenhiser · Apr 12, 2019

I'm looking for the most straightforward way to trigger a custom Ensemble message when a patient logs into the Personal Community patient portal. The use case is that when the patient logs in, we want to query an external email database for any new messages the patient has and import them. Does anybody know if there's any built-in functionality I can use, or if not, what the best trigger point would be?

2
1 316
Article David Loveluck · Jan 15, 2016 1m read

Has anyone tried the new Activity Volume Statistics and Monitoring  in Ensembel 2016.1? I would love to get some feedback.

If you haven't read about this, there is a dashboard that provides counts and response times for messages sent and received by each configuration item. Alternatively the underlying data is arranged in tables that should make it easy for you to use your favorite SQL reporting tools to generate reports for short term performance monitoring or longer term capacity planning.

Dave

9
2 1129
Question Oliver Wilms · Apr 24, 2019

Hello, our X12 File Service won't process files we encountered X12 files where they inserted CR LF after 80 bytes repeatedly in the middle of segments. X12 Parser does not seem to like it. I see there is a Whitespace property in Adapter. I am not sure if it ignores white space in the middle of a segment. I also heard about TolerateNewLine setting but I believe this also does not tolerate New Lines in the middle of a segment. We will probably have to read the file, strip out any CR and LF, write to a new file that the X12 file service can process.

1
0 275