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 1135
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 603
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 3284
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 624
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 802
Question Richard Housham · Apr 22, 2016

Hi this is my first post, so a little about my background. I've been programming in PHP/JavaScript for about 10 years.  
I've got quite a bit of knowledge surrounding object orientated programming and know the basics.

Last year I looked into the Mirth integration engine and did some work around that.

I've now moved jobs and I'm doing some work (surprise, surprise) with Ensemble.

I've done the tutorial and understand the basics of the web 'frontend' and what an integration engine can do.

1
0 747
Question Mike Henderson · Apr 20, 2016

Is is possible in Atelier to open a macro declaration?  Using the context menu results in a "Current text selection does not resolve to a Script element" error in the status area at bottom of window.

Also the arguments for the macro are not shown on hover.

Doesn't seem to matter if the associated include file is added to the project.

(Version: 1.0.142, Mac OS X)

2
0 410
Question Jeff Semmens · Apr 20, 2016

It looks like the normal usage of calling an Ensemble based Web Service via Ensemble is to create an Ensemble Business service that inherits from EnsLib.SOAP.Service which is then used to call a business operation which inherits from EnsLib.SOAP.Operation and the SOAP Outbound Adapter which can be generated via the SOAP wizard.

But, what if you don't want the extra step of calling the web service class via the operation? Has anyone actually constructed the Business Service to directly invoke the web service class?

1
0 676
Question Scott Beeson · Apr 21, 2016

I tried logging into https://beta.learning.intersystems.com to view a video.  My browser auto filled the login form.  The username, the same one I use here and on many other ISC sites, is "sbeeson_MHCX".  Now I have a message that says "Only lowercase letters allowed" and any time I visit the login form it just shows the same message.  I cannot get back to the form.

I could obviously use an incognito window or clear my cache, but this needs to be fixed.

9
0 723
Question Steve Pisani · Apr 20, 2016

The following situation always catches out new Ensemble users, and is likely to continue doing this until it is addressed..

A business operation, service or other host that is configured with a dedicated # of actors, (ie, not using the actor pool) runs with the version of compiled code that existed when the host was started.

1
0 605