Question Michael Hall · Apr 28, 2016

I have a need to query and retrieve DICOM images using the 'pull' method of C-FIND and C-GET.  I have seen examples in Ensdemo where Ensemble is a target of pushed messages.  Has anyone used Ensemble this way?  If so,  can you share and example?

1
0 1244
Question Steve Pisani · May 4, 2016

Hi,  The ZEN Mojo Widget reference at ../csp/sys/%ZEN.Mojo.WidgetReference.bootstrap33xHomepage.cls is a great reference for viewing the different components available with each helper plugin - and it also supplies snippets of JSON code to use in your layout definitions.

I'm having problems with the Bootstrap $navbar component however.

1
0 420
Question Jeff Semmens · May 3, 2016

I was trying to modify the REST.DocServer sample in the SAMPLE namespaces to use the new %Object and %Array system objects (Ensemble 2016.2 build 636) with the following changes:

/// This method returns a list of namespaces for this server

ClassMethod GetNamespaces() As %Status

{

    #dim tSC As %Status = $$$OK

    #dim tList,tNS,tFilteredList,tValue As %String

    #; Get the list of namespaces

    Do List^%SYS.NAMESPACE(.

4
0 709
Question Renee Cannon · May 2, 2016

I get NOROUTINE when I try to call a label in a routine in another namespace:

d someLabel^|”OTHERNAMESPACE”|someRoutine(inputVar,.resultByReference)

Two questions:

1.  What is wrong with my syntax for calling a label in the other routine, versus just the root of the .int/mac?

2.  Can I pass a parameter by reference when using extended routine reference?

3
0 767
Question Francis Galiegue · Apr 20, 2016

Hello,

It is time for me to eat my own dog's food and start implementing unit test running with coverage :) I will be inundating IRC with questions at this point, but I have a more general question first.

In this tutorial, it is supposed that your unit tests are exported as XML first... But that's not very practical. Is there a way, instead, to run all tests from a given project without having this export?

My first thought on how to do this would be to:

  • grab the project (by name, I
3
0 717
Question Joel Solon · Apr 7, 2016

On the Mac...

I've defined a Cache Connection to my local server. It worked for the last two days, but after an uninstall/reinstall of Atelier, it stopped working. The stack trace has these entries:

java.lang.RuntimeException: Can't read from secure storage node /com.intersys.eclipse.connmgr/ensrc

Caused by: org.eclipse.equinox.security.storage.StorageException: No password provided.

Regardless of the above problem, it made me wonder how I would delete the bad connection, or edit it, to change the Web Server port number for example.

5
0 823
Question Steve Pisani · Apr 27, 2016

Hi,

Is it possible to have a ZEN Mojo application that uses Bootstrap and controls from jQMobile ?

In a fresh installation running Zen Mojo version 1.1.1, my ZEN Mojo page declares:

Parameter CSSINCLUDES As STRING = "bootstrap-3-3-5/dist/css/bootstrap.min.css,jquery.mobile-1.4.5.min.css";
Parameter JSINCLUDES As STRING = "jquery-1.10.2.min.js, jquery.mobile-1.4.5.min.js,jquery-1.11.3.min.js,bootstrap-3-3-5/dist/js/bootstrap.min.js";
..

and a pageContents of:

XData pageContents [ XMLNamespace = "http://www.intersystems.com/zen]
{
<pane xmlns="http://www.intersystems.com/zen" xmlns:mojo="http://www

6
0 644
Question Francis Galiegue · Apr 30, 2016

Hello,

Still related to the unit test with coverage support project, one goal is to make that package available to everyone.

One possible way I already know of is that all fully qualified class names (ie, the package + the class name) start with %, which mean that on installation all classes will end up in the %SYS namespace, but this requires that the install be done as a user with the necessary privileges to write to %SYS.

This is rather convenient in my situation, sure; but is there another way which does not require such privileges?

6
0 544
Article sween · Apr 30, 2016 3m read

Getting around to wrapping up a short tour in Professional Playtime, I wanted to share my experience at the HIMSS FHIR Connectathon I participated in out in Indy in April.

A quick note about the venue, aside from the sponsors, and those who put this thing on... great job.  The venue was amazing, hosted by/at the beautiful campus of Eskenazi Health and in a city that really gave a damn about innovations in our space.  The food was great, the caffeine was continual, and was even rescued by the great host Brian Norris (Ryan Seacrest of Connectathons

1
0 856
Question Mike Kadow · Apr 27, 2016

Has anyone noticed that the Feature Map and Master Index was dropped from the 2016 version?

Anyone know why?

Please see the attached file of a screen shot.

Well, I have a screen shot file, but when I try to up load .docx, or .pdf, or html I am prevented, don't know why?

Yes, frustration!

7
0 530
Question Jenna Makin · Apr 26, 2016

What would be the preferred method to create an HL7 message from an input that is not HL7?

Would it be better to take the non-HL7 input and construct an HL7 message in the business service that then gets passed off to a routing process, or would it be best to just pass the non HL7 message to a routing process that called a data transformation to create the HL7 message?

My thought is the later, due to the fact that updates to the creation of the HL7 message are done using the graphical DTL editor rather than editing COS in the service.

1
1 843
Question Scott Beeson · Apr 27, 2016

I have two servers in our TEST environment.  One with HSBUS and one with HSREGISTRY.  Let's call them "HSBUS01" and "HSDB01" respectively.

Now, I can access HSBUS with my SQL client by using the JDBC driver pointed to hsbus01.full.name.com and port 1972 and specifying a namespace of "HSBUS".  I am, however, unable to access the HSREGISTRY instance via SQL with a similar combination of information.

I have access to the web interface on both servers (/csp/sys/#CSP.Portal.Home.zen).  What screen can I use to compare the relevant settings?  I think it might be a port issue.

2
0 479
Question Andy Caranicas · Apr 27, 2016

We have a query that looks something like:

select a, b, c, d, e, f

from tbla inner join tblb on tbla.....

This query runs in the expected 200-400 ms range.

If we run the same query but reduce the select to just:

select a

from tbla inner join tblb on tbla.....

then the query runs for 30 minutes or more. 

The rest of the query is identical.  Is there a logical explanation for how this can happen?

Thanks.

5
0 556
Question Steve Cross · Apr 28, 2016

I have to disect thousands upon thousands of strings like this:

96842-2-AEV.00001-63561-001958-100728760I-42

I've been able to pull out the first, second and final segments as separated by hyphens, but now I have a predicament where I need to use the second segment, the 2 shown in the example above, in a join to another table.  Problem is Cache apparently doesn't like doing that.  Just the same, I have to find a way.

Here's the code I'm using to pull that segment out into as separate field in the query results:

substring(prov_record_id, charindex('-', prov_record_id) +1, charindex('-AEV.

2
0 1137
Question Fabio Goncalves · Mar 21, 2016

Hi Community,

How can I create a JSON with the object ID by using the %Object:$toJSON API?

I have the following piece of code bellow where I create an object reference, create a %Object instance from %fromObject and them I am creating the JSON from $toJSON, but it does not expose the %ID (object id). How is the best approach to create a JSON with the respectives object IDs?

Try
  {
  Set tPersonObj = ##class(Data.Person).%OpenId(pId)
  If $Get(%objlasterror) $$$ThrowStatus(%objlasterror) 
 
  Set tObj = ##class(%Object).$fromObject(tPersonObj)
  Write tObj.
7
0 1631
Question Clayton Lewis · Apr 26, 2016


I'm trying to find a good way to control the Filename for X12 Acknowledgement files, but there doesn't seem to be a way to do that without custom coding.  Here's what I figured out so far:

EnsLib.EDI.X12.Service.FileService allows you to set a Reply Target Config, which would likely be an X12 File Operation.  The Service doesn’t have any settings related to the name of the Acknowledgement file though.  That’s determined entirely by the Operation.

The Operation allows the outbound filename to be derived from the X12 Document’s Source property, by including %f in the File Name spec.

1
0 772
Announcement Stefan Wittmann · Apr 27, 2016

Starting with 2016.2 the Java XEP binding will no longer support the in-memory connection mode. The in-memory mode was deprecated in earlier versions and applications should switch to the TCP/IP connection mode instead.

The TCP/IP connection mode has bridged the gap in performance to a large extent over the past couple of years and enables the Java client to run on a remote machine.

Let me know if you have any questions or concerns.

This is a cross-post from our compatibility blog: http://blog.intersystems.com/compatibility/2016/04/22/removal-of-in-mem…

0
0 374
Question Steve Pisani · Apr 19, 2016

Starting off with a working REST interface, I can access the CSP Application definition screen for the application  (System > Security Management > Web Applications > Edit Web Application), and "turn off" the application by clearing the Enabled: [ x ] Application checkbox. From then on my REST calls return an HTTP 404 error. (That's expected).

However - one expects that re-enabling the Application in the CSP Application screen, would return my REST services to a working state, however, this is not happening.  All REST requests continue to return an HTTP 404 error.

5
0 873
Article Timothy Leavitt · Jan 5, 2016 1m read

(Possibly?) little-known fact: It's possible to use $ListBuild on the left hand side of the equals sign in a set command to extract multiple list values at once:

set $ListBuild(several,individual,variables) = list

For example:

USER>kill
 
USER>set colors = $ListBuild("red","orange","yellow")
 
USER>set $ListBuild(r,o,y) = colors
 
USER>write r,!,o,!,y,!
red
orange
yellow

See for reference: http://docs.intersystems.com/cache20152/csp/docbook/DocBook.UI.Page.cls…

This feature was news to me - I use $ListBuild lists a lot but hadn't come across it until today.

4
0 505
Question Francis Galiegue · Apr 25, 2016

Hello,

Here's the code:


Method isTestClass(className As %String) As %Boolean
{
if (className = ..#UTCLASS) {
return 1
}
#dim c as %Dictionary.ClassDefinition
#dim status as %Status
	
set c = ##class(%Dictionary.ClassDefinition).%OpenId(className,,.status)

if ($$$ISERR(status)) {
	throw ##class(%Exception.StatusException).CreateFromStatus(status)
}

if ('c.SuperIsDefined()) {
	return 0
}

#dim children
#dim len as %Integer
#dim i as %Integer

set children = $listFromString(c.
6
0 604
Article Daniel Kutac · Apr 27, 2016 1m read

Hi,

I'm posting this for the benefit of others. Not often one changes certificates in Cache, at least in my case. I run a system, that uses certificates to encrypt SOAP messages, and since the last time I ran it, my certificates expired.

So I renewed them using our PKI tool, so far so good. I gave all (3) certificates the same names (and filenames too) as to those expired, thinking that everything would just work fine next time I call the SOAP service.

Unfortunately, I got trapped.

It took me a rather longer while to realize that replacing old files with new ones is not enough.

0
0 722
Article Eduard Lebedyuk · Apr 25, 2016 6m read

Introduction

If you manage multiple Caché instances across several servers, you may want to be able to execute arbitrary code from one Caché instance on another. System administrators and technical support specialists may also want to run arbitrary code on remote Caché servers. To address these needs, I have developed a special tool called RCE.
In this article, we will discuss what are the typical ways of solving similar tasks and how RCE (Remote Code Execution) can help.


What possible approaches are available?

1
1 3285
Question Orion Correa · Apr 21, 2016

I've been using iFind indices in one of my applications but this morning discovered that the index is missing data. I confirmed the issue also exists in our test environment and rebuilt the indices there. That seems to have fixed the immediate problem. However I'd like to understand how this came about to avoid it happening in the future.

Has anyone encountered this before and know the cause?

We've regularly upgraded the Ensemble instance when new releases come out and are now on 2016.1.

2
0 740
Question Evgeny Shvarov · Apr 5, 2016

Hi! 

There is a question for Ensemble on Stackoverflow:

I have the below dtl. In the foreach loop, I am just copying the same code in another part under anif condition. How can I avoid this redundancy? Can I reuse using sub transformation?

Here is the dtl class file :https://docs.google.com/document/d/1snJXElyw13hAfb8Lmg5IaySc7md_DE8J40FB79hBaXU/edit?usp=sharing

Original question.

2
0 625
Question Peter Kopp · Apr 21, 2016

Good afternoon, I have image files stored on disk. I would like to display those images in an <image> control as the end user clicks on rows in a tablepane. I already do this with image data stored in a cache database:

s imageComp = %page.%GetComponentById("ImgTab"_tLdCnt)
s imageComp.disabled=0
s tId=rsId.Get("ID")
s tPageObj=##class(My.PageObj).%OpenId(tId)
s oid=tPageObj.ImageBLOB.%Oid()
s encryptedOid=..Encrypt(oid)
s imageComp.src="%25CSP.StreamServer.

2
0 803