Question Cliff Akers · May 9, 2019

I am attempting to use Node.js to perform a simple query against the database using some identifying information to get the ID. This is what I am attempting to do:

var irisobj = require('iris');
var myData = new irisobj.IRIS();
var result = myData.open({ path:"C:/InterSystems/IRIS/Mgr",
                       username: "USERNAME",
                       password: "PASSWORD",
                       namespace: "YOURNAMESPACE"
            }
        );

var result = myData.invoke_classmethod({class: "%SYSTEM.SQL", method: "Execute", arguments: ["SELECT TOP 1 ID FROM SOMETABLE"]});
console.log(result);

myData

3
0 708
InterSystems Official Jeff Fried · May 9, 2019

The preview release of InterSystems IRIS 2019.2 is now  available - give it a try!

 

Container images are available via the WRC's preview download site.

The build number for these releases is 2019.2.0.100.0.

InterSystems IRIS Data Platform 2019.2  is the first CD (continuous delivery) release of InterSystems IRIS.  It has many new capabilities including:

  • Addition of the IRIS Native API for Python and Node.js and relational access for Node.js
  • Simplified sharding architecture and flexible sharded schema design
  • Support for the new PowerBI connector for InterSystems IRIS
  • New look in the
2
0 690
Question Mads Lien · May 8, 2019

Hi

I am working with a Caché system with a Python binding and big datasets in health care. I am using the Python library Pandas and Jupyter notebook for data manipulation and often special modules for different projects, including different versions of Python. To keep the environments separated, I have been testing Docker, but I am at loss on how to install the Python binding. Has anyone any experience with this? Or better yet, a Docker image that has the binding installed?

I am also considering that Docker might not be the suitable for this situation and I am grateful for any thoughts on this.

R

6
0 733
InterSystems Official Thomas Carroll · Apr 5, 2019

Hi Community!

We're pleased to announce that that InterSystems IRIS Community Edition is available on the Docker Store! InterSystems IRIS Community Edition is the no-cost developer edition designed to lower the barriers to entry to get started with IRIS. Now that it is listed on the Docker Store, running an IRIS Community instance is as easy as -

docker run -d -p 52773:52773 store/intersystems/iris:2019.1.0.511.0-community

For more on running IRIS in containers check out our Documentation or one of the many Community posts on the topic!

14
2 3903
Article Kyle Baxter · Sep 9, 2016 5m read

Have some free text fields in your application that you wish you could search efficiently?  Tried using some methods before but found out that they just cannot match the performance needs of your customers?  Do I have one weird trick that will solve all your problems?  Don’t you already know!?  All I do is bring great solutions to your performance pitfalls!

As usual, if you want the TL;DR (too long; didn’t read) version, skip to the end.  Just know you are hurting my feelings.

If you open up your version of Sample.Company in the SAMPLES namespace of a recent (2015.1 or later)

11
2 2830
Question David Crawford · May 7, 2019

Hi! I've been fiddling with linked tables to get data from other servers, and I encountered a problem that I'm curious about. Maybe I'm not using these tools as intended or there's more going on, so I'm asking here.

I'm running a query on linked table A, something simple like this:

select name from A where id = 5983658923646

And I get this error:

[SQLCODE: <-400>:<Fatal error occurred>]

  [%msg: <>]

If id, or anything comparison, is something smaller like 4345, it works just fine. It's only when the where reaches a certain length, not just id, that it fails.

After switching Dialects from CACHE to

6
0 679
Question Amir Samary · May 7, 2019

Hi!

I was trying to create a query that can be exposed as a stored procedure (function actually) that would return a resultset with a random number of columns. 

Unfortunately, it seems that unless I specify the ROWSPEC annotation on the Query method, I won't get any columns exposed. I was hoping to implement QueryNameGetInfo method and specify the names and number of columns I would be returning dynamically. But it seems that GetInfo information is simply ignored.

Here is my code:

Class Test.Test
{
	ClassMethod MyCustomQueryClose(ByRef qHandle As %Binary) As %Status
	{
	    Quit $$$OK
	}
5
0 764
Question Kurro Lopez · May 10, 2019

Hi community.

I need to get the parent classname of a class, but I don't find how to do it.

I have a class Parent  (MyLibrary.ParentClass) and two classes inherited from the parent class

MyLibrary.ParentClass

       ├─── MyLibrary.ChilcClass01
       │
       ├─── MyLibrary.ChildClass02

I have a Business Process that entry class is MyLibrary.ParentClass. If I'm calling with any child class (i.e. MyLibrary.ChildClass01) it works, then I'm using the method $Classname(request) to get the name of the class and redirecto to other process.

But I want to check that the request is a class inherited

3
0 766
Question Jeremy Forsyth · May 10, 2019

Cache version: Cache for Windows (x86-64) 2017.2.1 (Build 801_3U)

Good Afternoon,
I have a co-worker who is trying to run the below query via ODBC. The issue is that the query appears to be running extremely slow (nearly 2 hours).

SELECT A.RecNo, T.SDSInstID, T.TranEffectDate, COUNT(T.InternalTXID) as NoofTransactions
FROM SDS_DATA._Transaction T
INNER JOIN SDS_DATA.DataFeed A
on A.BankAccountBSB = T.BankAccountBSB
and A.BankAccountNo = T.BankAccountNo
WHERE T.TranEffectDate >= DATEADD(yy,-1,CURRENT_DATE)
GROUP BY A.RecNo, T.SDSInstID, T.TranEffectDate

 Below is the generated query plan
 

Statement Text

3
0 1072
Question Jack Trachtman · May 8, 2019

Unix:  I'm trying to switch to using the $ZF(-100 function in place of $ZF(-1.   I have it working for a simple, single, cmd, but can't figure out how to pass a piped sequence.  Maybe this just isn't allowed?

For example:

S sc=$ZF(-1,"ps -Af | grep username")

works, but I can't figure out how to format this for the $ZF(-100 function.

???

Thanks

4
0 651
Question Kurt Hofman · May 7, 2019

Hello,

We're having troubles with working over Telnet on Caché Unicode with WRQ Reflection.

We can't input extended characters (é,à,Ø,...), DELETE-key doesn't work, ...

Has anyone a solution for working with WRQ Reflection or a decent alternative ?

We tried Putty and Caché-terminal but these are not sufficent.

Regards,

Kurt Hofman.

4
0 696
InterSystems Official Jeff Fried · May 9, 2019

The preview release of IRIS for Health 2019.2 is now  available - give it a try!

Container images are available via the WRC's preview download site.

The build number for these releases is 2019.2.0.100.0.

 

InterSystems IRIS for Health  2019.2  is the first CD (continuous delivery) release of IRIS for Health.  It has many new capabilities including:

  • enhancements to FHIR STU3 support
  • additional IHE profiles
  • a new JMS (java message service) connector
  • Addition of the IRIS Native API for Python and Node.js and relational access for Node.js
  • Simplified sharding architecture and flexible sharded schema
0
0 384
Question Daniel Kutac · Apr 30, 2019

Hello,

I have a very simple web service that I'd like to secure via SAML Authorization with X.509 Certificates. I am, however struggling with documentation and my lack of cryptographic skills. (I do this just for educational purposes now, but need to use it in the future)

Does anyone have an example that shows how to construct a SOAP Client with adding all necessary security headers manually or point me to a decent learning resource?

Thank you very much!

1
2 1423
Question Jonathan Anglin · May 7, 2019

Hello All!

I'm brand new to HealthShare and trying to enable LDAP Authentication.When I run the authentication test, the base DN looks good and the search user is successfully authenticated.However, the user is still not found.We have a linux installation in Azure, and I'm connecting to a Windows AD server (provided both Azure and local hostnames).I'm using the full DN in the username field.For the "LDAP Unique search attribute" I've tried, CN, DN, and sAMAccountName.

3
0 4571
Question Luk Jesso · Apr 10, 2019

Hello experts,

I'm new to InterSystems software and still not so familiar with it. Therefore I do apologize in front if this question is irrelevant, not making sense or answer is commonly known.
 

I've did my best in search for answer, but unfortunately i haven't found anything helpfull. So I decided to ask for help here.

My problem is repetitive error which occure in CSP Gateway event log : 

Error Condition: Failed to read posted content from the client (Content-Length: 1404; Data Actually Read: 0; Read Error: 70007)

It occure approximately 40 times a day.

1
0 532
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 241
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 615
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.So I open the two files, containing my JSON-serialized object and JSON schema definition and I copy their contents into %GlobalCharacterStream objects.

2
0 519
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 603
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 389