image

Hi Community,

In this article I will demonstrate the functionality of my app iris-energy-isodata .
Application is accessing energy data (production, demand and supply) from the major Independent System Operators (ISOs) in the United States to ensure sustainable consumption and production patterns (SDG's 12)

3 2
0 319
Article
· Sep 23, 2016 6m read
Creating a RESTful Service using Ensemble

This is a detailed guide to develop RESTful services using InterSystems Ensemble. The goal of this guide is to make you understanding the basic concept and building blocks of a RESTful service. The service is going to provide a very basic functionality (a “Hello world!”).

You will learn how to create required components as Ensemble classes, configure the run-time as an Ensemble Production and create a service configuration as a web application.

5 3
0 2.7K

Healthcare interoperability is instrumental in improving patient care, decreasing healthcare provider costs, and providing a more accurate picture to providers. However, with so many different systems, data is formatted in many different ways. There are many standards that have been created to try to solve this problem, including HL7v2, HL7v3, and CDA but each one has its drawbacks.

12 2
1 2.6K



This formation, accessible on my GitHub, will cover, in half a hour, how to read and write in csv and txt files, insert and get inside the IRIS database and a distant database using Postgres or how to use a FLASK API, all of that using the Interoperability framework using ONLY Python following the PEP8 convention.

12 1
1 696

While reviewing our documentation for our ^pButtons (in IRIS renamed as ^SystemPerformance) performance monitoring utility, a customer told me: "I understand all of this, but I wish it could be simpler… easier to define profiles, manage them etc.".

After this session I thought it would be a nice exercise to try and provide some easier human interface for this.

The first step in this was to wrap a class-based API to the existing pButtons routine.

I was also able to add some more "features" like showing what profiles are currently running, their time remaining to run, previously running processes and more.

The next step was to add on top of this API, a REST API class.

With this artifact (a pButtons REST API) in hand, one can go ahead and build a modern UI on top of that.

For example -

6 15
4 1.2K

Requirement: Transform source XML message to target JSON.

step1: First create json equivalent xml from any online tool.

step2: use add in studio utility create persistent classes from json equivalent xml and compile it , now target persistent classes are ready

step3: Do the above step for source xml or xsd and generate persistent classes for source and compile it

step4: complete the DTL by selecting root node from source, target persistent classes and complete the mappings and compile it

5 0
0 410

DTL Transformations and GetValueAt/SetValueAt calls on HL7 messages will truncate any fields longer than 32K. To avoid this, the methods GetFieldStreamRaw and StoreFieldStreamRaw must be used when dealing with fields that might be larger than 32K. OBX:5 is a frequent example. These methods have some subtleties and must be used carefully.

This can't be done by simply dragging from left to right in a DTL. It must be done with a code action. Also, the StoreFieldStreamRaw call must be the last edit made to the segment because the segment becomes immutable after that.

10 6
6 2.7K

Created by Daniel Kutac, Sales Engineer, InterSystems

Warning: if you get confused by URLs used: the original series used screens from machine called dk-gs2016. The new screenshots are taken from a different machine. You can safely treat url WIN-U9J96QBJSAG as if it was dk-gs2016.

Part 2. Authorization server, OpenID Connect server

9 12
3 5.5K
Article
· Apr 9, 2019 3m read
IRIS/Ensemble as an ETL

IRIS and Ensemble are designed to act as an ESB/EAI. This mean they are build to process lots of small messages.

But some times, in real life we have to use them as ETL. The down side is not that they can't do so, but it can take a long time to process millions of row at once.

To improve performance, I have created a new SQLOutboundAdaptor who only works with JDBC.

BatchSqlOutboundAdapter

Extend EnsLib.SQL.OutboundAdapter to add batch batch and fetch support on JDBC connection.

3 7
2 1.7K

InterSystems technologies are renowned for their high performing databases, which support the systems and operations of many organisations. However a key ingredient to this success is the quality and maintainability of their code.

The quality of code can impact everything from speed and ease of fixing bugs and making enhancements, to the overall performance of your organization and your ability to get ahead in the marketplace.

By ensuring your code is maintainable, you can reduce approximately 75% of the systems life cycle costs*. This is why, at George James Software, the solutions we build are always straightforward and written in high quality code - because we know that this solid foundation can positively impact the rest of your organization.

With a maintainable system you're able to reduce your overall maintenance as any issues that occur are significantly faster to identify and fix. This means you're free to allocate that time and budget to enhancements, enabling you to get the most value out of your applications and ultimately better support your organization.

Keep an eye out for our next few posts about what a maintainable system looks like and the tools that can help you keep your code maintainable, in order to help you to reduce those maintenance costs.

3 1
1 420

The latest release of Serenji focuses on the debug experience. Not only can you now debug on the spot, no matter where you are or what you're doing, but we've also added some smaller features that will make debugging more straightforward. 

  • Run and Debug CodeLenses - clickable links above each class method, procedure, subroutine or extrinsic function.
  • Intuitive prompting for entrypoints and arguments - when debugging a class method, produce, subroutine or extrinsic function. 
  • Shaded read-only background - to clearly differentiate between documents which are editable and those that are read-only. 
  • Program output in debug console - output is shown in the debug console. 
  • Serenji commands on Server Manager's namespace trees - allowing you to launch Serenji through Server Manager. 

Find out more in our release notes here

1 0
1 255

Hi developers, 

We've incorporated VS Code's support for multiple concurrent debug sessions and consoles into the latest release of Serenji

So if you're working with processes that relate or are dependent on each other, you can now debug them together. Just launch a second Serenji debug session (F5) whilst the first one is still active. 

This short video below shows how it works. We hope you find this feature useful! 

Laurel 

Serenji 3.2 multiple concurrent debug sessions

0 0
0 192

The most recent release of Serenji features our innovative gj::locate technology. It was a standalone tool we originally created for a Developer Community contest earlier this year, but we've incorporated it into our debugger after some great feedback from developers. 

It works by navigating you directly to the source of your server-side errors in just a couple of clicks - enabling you to quickly fix errors without the need to count tedious lines of code... and let's be real, who has got time for that when you're under pressure to fix this bug? 

It's simple and straightforward to use:

1. Click on the gj::locate panel in the status bar

2. Enter the ObjectScript error message or line reference from a class/.mac routine..

3. gj::locate then does the work for you by taking you straight to the corresponding line in your source code.

Easy peasy... and with time to spare to make yourself a coffee before your deadline! 

The video below shows it in action - let us know if you've already given it a go. Or, if you're interested in trying it out we offer a free 30 day trial license, just drop me a message through the Developer Community or email us at info@georgejames.com.

Serenji 3.2.0 utilising gj::locate technology

2 0
0 207

Hi developers, 

Serenji 3.2.0, the latest version from George James Software, was released last week and our current users have been enjoying trying out the new features (which you can find more about here). 

If you're thinking about trying Serenji for the first time, we've made it easier to get set up by adding a walkthrough on the VS Code Welcome page. It takes you through: 

  • Setting up the server components.
  • Selecting a server namespace.
  • Saving and extending your workspace.
  • Requesting a debug license (don't forget we offer a free 30 day trial!) 

We've also added prompts and guidance throughout VS Code to open and add Serenji folders to your workspace and when going to run and debug code. 

This is just one of the ways we've enhanced the Serenji debugger to make straightforward and easy to use - so all you need to do is focus on your code. 

Serenji 3.2.0 Welcome Page Walkthrough

1 0
0 198