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 614
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 518
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 487
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 601
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.

Another system takes the full feed, but we gave found this problematic as we can often get demographic updates faster

3
0 387
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 10901
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 324
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.Request or other object (not an

8
1 1030
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.

Can someone

1
0 432
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.
    int flag = 1;

    int get = CACHEGLOBALGET(narg, flag);

    int pop =
11
0 868
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 884
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?

- Then, do I upload that PEM file into the

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.

For example,

http://localhost/csp/myapp/log

1
0 250
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 313
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 1125
Question Siva A · Apr 22, 2019

Dear team,

I am trying to experiment the Docker container in our development environment. I have successfully build an image and running the container. When I access the CSP portal home page ( http://<host-ip>:57772/csp/sys/%25CSP.Portal.Home.zen?$NAMESPACE=%25SYS), I am getting the following error:

Caché Server Pages Version 2017.1.1.111.0.17521
 
Server Availability Error
Server is currently unavailable

I logged in to the running container (docker exec -it <container-id> sh), issued the command, 'ccontrol list' where the state says 'warn'.

Configuration 'CACHE'   (default)
        directory:

8
0 664
Question Giray Ozel · Apr 19, 2019
Class ICT.Experiments.A Extends %Persistent
{
Property Name As %String;
Property Collection As list Of ICT.Experiments.B;
Property Collection2 As array Of ICT.Experiments.C;
}

Class ICT.Experiments.B Extends %Persistent
{
Property Name As %String;
}

Class ICT.Experiments.C Extends %Persistent
{
Property Name As %String;
}

I have the classes above and I can select columns from the array collection by using two joins as follows:

SELECT 
mainTable.ID, mainTable.Name, c.Name
FROM ICT_Experiments.A mainTable
LEFT JOIN ICT_Experiments.A_Collection2 arrayTable ON arrayTable.A =

9
1 2102
Question Muhammad Awan · Apr 18, 2019

Hi Team,

I am using Angular 7 with angular material for my client application that connects and obtains Access token from IRIS Authorization Server (OAUTH 2.0).  The problem that I am facing right now is regarding this access token being exposed to browser and stores in the local storage of the browser.

Right now, I am having hard time finding an alternative but secure option to store access token on the server side (client WEB SERVER) instead of browser’s local storage. 

Following are the suggestions that I have googled recently, not sure if there is any better way that I need to explore.
 

  • A
1
0 1678
Question John Kumpf · Apr 23, 2019

Here's my current attempt:

Class Testing.PropertyParameters Extends %RegisteredObject
{
Property p1 As %String(MAXLEN = 5, myPropName = "myPropValue");
Method test()
{
   set ..p1 = 10
   //write ..p1.Parameters
   set p1 = ##class(%Dictionary.PropertyDefinition).%OpenId("Testing.PropertyParameters||p1")
   zwrite p1
   do p1.Parameters.SetAt("myPropValue", "myPropName")
   set key = ""
   for {
      set item = p1.Parameters.GetNext(.key)
      if (key = "") {
         quit
      }
   write !,"key: ", key,", Item: ",item
   }
   do p1.%Save()
   write ..p1.%GetParameter("myPropName")
   write !
}
}

I've visited:

(Us

4
0 693
Article Chao Liang · Dec 24, 2018 5m read

Terminal scripts can be used to run pre-designed commands on the terminal, like a batch file.  You can write anything that can be executed on terminal, like for loop, if else and so on,  inside Terminal scripts. In this article, I will show you how to call Terminal scripts, how to use parameters in Terminal scripts and how to avoid session disconnected when running Terminal scripts. If you have any information about how to use Terminal scripts or you have any feedback, please feel free to leave a comment.

1. Running Terminal scripts in Cache or IRIS

If you are using Cache on Windows system, you

6
2 3822