Article Eduard Lebedyuk · Feb 19, 2016 12m read

Suppose you have developed your own app with InterSystems technologies stack and now want to perform multiple deployments on the customers' side. During the development process you've composed a detailed installation guide for your application, because you need to not only import classes, but also fine-tune the environment according to your needs.
To address this specific task, InterSystems has created a special tool called %Installer. Read on to find out how to use it.

9
4 4671
Article Murray Oldfield · Nov 10, 2022 7m read

Overview

Predictable storage IO performance with low latency is vital to provide scalability and reliability for your applications. This set of benchmarks is to inform users of IRIS considering deploying applications in AWS about EBS gp3 volume performance.

Summary

  • An LVM stripe can increase IOPS and throughput beyond single EBS volume performance limits.
  • An LVM stripe lowers read latency.
1
0 2712
Question Nezla · Dec 14, 2022

Hi Guys,

I'm trying to get head around this principle of instance variables and the advantage of it.

I found this principle used a lot by my predecessor  in some properties definition and I'm wondering why don't we just use the property as simple as is, its creating two properties sCtg that contain the value and Ctg is a calculate to get the value of sCtg, is there advantage of fast accessing or... !?

and also the use or  DISPLAYLIST &  VALUELIST does this brings any advantage vs defining a standard property (eg.

3
0 386
Question Guilherme Mendes · Dec 13, 2022

Hi!

I'm running a unit test via terminal, and sometimes someone from another team/squad add a few BREAKs and my tests stop until I skip one by one.

Is there a way to ignore BREAKs?

7
0 478
Question Jochen Roese · Dec 13, 2022

Hi,

in our system we usually display an information if someone locks data that another user tries to edit. Like: "Data locked by <user>/<program>"

We have a global that is set at userlogin with following information:

^BA020(0,3,$job) = "<user>;<program>"

We show that information by getting the jobnr/owner from the locktable ^$LOCK("<ref>","OWNER") and looking at ^BA020.

We recently added applicationservers to our system and the result is quite interesting. Instead of getting the jobnr from ^$LOCK when it's a remotelock I only get the name of the applicationserver e.g. APPAIXVK3.

1
1 234
Question Jeffrey Drumm · Jun 7, 2022

I'm attempting to configure VS Code's InterSystems Server Manager to establish a connection to an IRIS for Health server. It has a standalone CSP gateway running on an Apache server with TLS enabled. The port for all IRIS api and browser traffic is 443.

I've configured the webServer section's host, port, and variations on pathPrefix (including no pathPrefix entry), and have the correct user ID set. The password is stored in the server keychain.

The connection simply fails with "Server could not be reached." Nothing in the Output or Problems tabs.

5
1 2146
Announcement Matthew Giesmann · Dec 12, 2022

Today we have made the new CCR view page the default for CCR beta users.   

The option to toggle back to the classic UI is available in the navigation bar at the top and bottom of the page.

Please let us know of any issues you encounter or general feedback you have on the page, and thank you to everyone who tried the page in its initial release and provided us with great feedback already! 

1
0 272
Article Murray Oldfield · Nov 18, 2019 8m read

The following steps show you how to display a sample list of metrics available from the /api/monitor service.

In the last post, I gave an overview of the service that exposes IRIS metrics in Prometheus format. The post shows how to set up and run IRIS preview release 2019.4 in a container and then list the metrics.


This post assumes you have Docker installed. If not, go and do that now for your platform :)


Step 1. Download and run the IRIS preview in docker

Follow the download instructions at Preview Distributions to download the Preview Licence Key and an IRIS Docker image.

10
6 1663
Announcement Derek Robinson · Dec 13, 2022

In our latest episode of Data Points, I had a conversation with @Thomas Dyar about AI Link, which helps bridge the gap between data scientists and business analysts. Our conversation talks about how AI Link fits with IntegratedML and Adaptive Analytics, as well, as what new features are on the horizon for IntegratedML. Take a listen!

0
0 231
Article Fadi Karkaby · Dec 13, 2022 7m read

In this article, we'd like to describe Med.me's incubation experience and takeaways, the cross-organizational booking problem, and our approach to solving it.

This exciting story started during one of the regular medtech meetups, where I met @Evgeny Shvarov, senior InterSystems chief of the Developer Community. Following the good old startup rule “pitch wherever you can”, I briefly explained to Evgeny Med.me concept – EHR exchange and appointment scheduling platform to automate and simplify communication between clinics, pharma on one hand and insurance companies, doctors, and patients on the other.

Evgeny listened carefully and replied that InterSystems provides plenty of products to solve the interoperability problems amongst the vast variety of EMRs and kindly advised me to hurry up to apply to the FHIR incubator Caelestinus powered by InterSystems.

That led to a start of an amazing 9-months long road where we were able to ramp up our understanding of interoperability,  participate at the InterSystems Global Summit,  find new customers and partners, and where the new concept of Resource Availability Exchange was born.

0
1 498
Announcement Anastasia Dyubaylo · Dec 6, 2022

Hi Community,

Let's meet together at the online meetup with the winners of the InterSystems IRIS for Health Contest – a great opportunity to have a discussion with the InterSystems Experts team as well as our contestants.

Winners' demo included!

Date & Time: Friday, December 9, 10:00 AM EDT 

>> Register here <<

1
0 344
Question Colin Brough · Dec 1, 2022

I'm testing an HL7 2.4 -> HL7 2.3.1 set of transformations. For the time being the source (service) and sink (operation) are file adapters. What I'd really like is to be able to save the output file with a name matching/containing the input file name - but as the DTL transformation in between uses "new" rather than "copy" it looks like I'm losing (some of?) the metadata, including the "Source" field (Body tab, message viewer).
Is there any way of preserving the Source field so the OutboundAdapter has access to it?

3
0 525
Article Iryna Mykhailova · Nov 29, 2022 6m read

HL7 (Health Level 7) is a set of technical specifications for computerized exchanges of clinical, financial and administrative data between hospital information systems (HIS). These specifications are variously integrated into the corpus of formal American (ANSI) and international (ISO) standards.

The L7 of HL7 indicates that it is a standard that operates at layer 7, in other words at the application layer, of the OSI model. This means that HL7 does not have to take into account exchange security considerations, or those of message transport (this being ensured by lower-level layers such as SSL/TLS for security or TCP for the transport of data for example). To be more precise, layer 7 supports communications for end-user processes and applications and the presentation of data for user-facing software applications. As the highest layer of the OSI model, and the closest to the end user, layer 7 provides application-specific functions such as identifying communication partners and the quality of service between them, determining resource availability, considering privacy and user authentication, and synchronizing communication, as well as connecting the application to the lower levels of the OSI model.

Returning to the HL7 standard, the HL7 version 2 standard (also known as Pipehat) was originally created in 1989 but is still being used and updated regularly, resulting in versions 2.1, 2.2, 2.3, 2.3.1, 2.4, 2.5, 2.5.1, 2.6, 2.7, 2.7.1, 2.8, 2.8.1, 2.8.2 and 2.9. The v2.x standards are backward compatible (e.g., a message based on version 2.3 will be understood by an application that supports version 2.6) and in higher versions, you will see some fields are left just for it.

Despite it being more than 30 years old, HL7v2 remains the most widely used healthcare interface standard by a large margin according to the HL7.org portal that tells that:

4
1 1805
Question reetan selvaraja · Dec 9, 2022

Hi,

I tried to join my local DB table with link table. but I am getting below error.

5475 5475 reporterr2+40^%occRoutine Error #5475: Error compiling routine: %sqlcq.HSANALYTICS.cls483.  Errors:  %sqlcq.HSANALYTICS.cls483.cls(%OnNew+5) : SQLCODE=-161 : References to an SQL connection must constitute a whole subquery

I tried to execute below query in Managementportal 

select dg.ID from HSAA.Diagnosis dg
left join LinkTableData.FacilityFullList la on dg.ID=la .ID

4
0 225
Article Iryna Mykhailova · Dec 12, 2022 12m read

In the previous article, we've seen the structure of one of the most used types of HL7 message - ADT (Admit, Discharge, Transfer) and an example of ADT^A04 with the description of all its fields. Now let's look at another flow of data having to do with ordering and fulfilling the orders of tests. I'm talking about ORM (as of version 2.5 you should use specific messages to order tests, like OMG, OML, OMD, OMS, OMN, OMI, and OMP), ORL and ORU messages. In a very simplified case, the exchange of data may look like this.

Let's look at these messages in more detail.

0
1 3559
InterSystems Official Fabiano Sanches · Dec 7, 2022

InterSystems announces another developer preview release, as part of the developer preview program for the 2022.3. Many updates and enhancements have been added in 2022.3 and there are also brand new capabilities, such as the new FHIR SQL Builder, improvements for Columnar Storage, and support to Oracle Linux 9. Some of these features or improvements may not be available in this current developer preview.

Future preview releases are expected to be updated biweekly and we will add features as they are ready.

1
0 321
Question José Pereira · Dec 11, 2022

Hi!

I'm playing with OAuth2 with FHIR Server, but returned tokens cause 401 or 403 errors when trying to get FHIR resources.

I tried using fhir-client.js and Postman. Access tokens returned have been failing for both, with a 401 when trying through fhir-client.js and a 403 using Postman.

Here are my settings:

 

OAuth2 server

 

OAuth2 user

 

OAuth2 application

 

fhir-client.js launch page

<!DOCTYPE html><html><head><scriptsrc="https://cdn.jsdelivr.net/npm/fhirclient@2.5.2/build/fhir-client.js"></script></head><body>Loading...</body><script>
  FHI
0
0 422
Question Iryna Mykhailova · Nov 9, 2022

Hi guys!

My student asked my why his unit tests don't work as they should, and I just could answer him. Here is the simplified case.

There is a class with a required unique property Name:

Class Test.NewClass [ Abstract ]
{
Property Name As%String [ Required ];
Index NameIndex On Name [ Unique ];
}

And there is an inherited class:

Class Test.NewClass1 Extends (%Persistent, Test.NewClass)
{
}

What I expect to happen, is when I save two objects of class Test.NewClass1 with the same value of property Name, for the second one to get an error stating that it violates the unique index.

9
0 762
Article Pierre-Yves Duquesnoy · Jan 27, 2021 29m read

Introduction {#Webinar:ImplementingIntegrationswith.NetorJava-Introduction}

InterSystems IRIS 2020.1 includes PEX (Production EXtension Framework) to facilitate the development of IRIS Interoperability productions with components written in Java or .NET.

Thanks to PEX, an integration developer with knowledge of Java or .NET can benefit from the power, scalability, and robustness of the InterSystems IRIS Interoperability framework and be productive in no time.

For an IRIS Interoperability framework expert, PEX makes it easy to enrich integrations with pre-existing Java- or .

4
1 1287
Question Dmitry Maslennikov · Nov 4, 2022

I have a table, with autoincremented id

CREATETABLEusers (
    idSERIALNOTNULL,
    nameVARCHAR(30) NOTNULL,
    PRIMARY KEY (id)
)

I can add a new item there with an explicit id 

INSERTINTOusers (id, name) VALUES (2, 'fred')

And while my id is autoincremented, I can omit it

INSERTINTOusers (name) VALUES ('ed')

So, this time, I don't know the id, and I want to somehow get it.

I could do it with LAST_IDENTITY() function, but it just uses %RowID, and have no relation to the primary id

11
0 880
Question Sylvie Greverend · Aug 11, 2022

Cures Act USCDI/ C-CDAv21 certification. I am looking for SDA3 examples for Newman-Bates-Kid/registry settings/advices on how to learn / whatever is helpful. InterSystems  xsl files are clean but I am not working very often with xsl. I am mainly looking at Provenance and Clinical Notes, the 2 last errors we have. InterSystems documentation, so far I know, is very poor: only classes and some pages. Support has a small knowledge about SDA3 -> C-CDAv21 even if they try very hard to help.

Of course I am wondering if my company is using an almost dead technology. Is everybody on fhir now?

2
0 350
Question Sudhir Sinha · Nov 30, 2022

IRISTEMP - IRIS.DAT took up all the available disk space of almost 2 TB that leads to Production instance down.

After RCA the suspected cause was some SQL query but not confirmed as query result was received within a minute.

Currently we are monitoring the IRIS.DAT and it is continuously increasing and currently we set the MAX size for this DB,  but not sure what will happen once it hit the MAX SIZE ?

Any clue why the IRISTEMP DB is not flushing the data from IRIS.DAT as i believe it is being mostly used for system processes and is in increasing trend at  ~ 1GB/day?

3
0 558
Article Tani Frankel · Dec 8, 2022 1m read

When creating a PRA (Privileged Routine Application; which by the way is not relevant just for Routines but also for Classes/Methods), it is important to make sure you include a new $ROLES, before calling AddRoles(). For example:

new$ROLESset status=$System.Security.AddRoles("MyPrivilegedRoutineApplication")

This way you ensure that indeed the added (elevated) roles "evaporate" for the User running this code, once the User is out of the scope of that routine/method.

[Thank you @Andreas Dieckow for validating this]

3
0 342