Open Exchange

Syndicate content 8 

Hi Developers!

This is the second post on the resources for Developers. This part is about Open Exchange

Using Open Exchange to Learn InterSystems

InterSystems Open Exchange is a applications gallery of tools, connectors, and libraries which InterSystems Developers submit to share the experience, approaches and do business. All the applications are either built with InterSystems data platforms or are intended to use for development with InterSystems data platforms.

If you are a beginner developer you can take a look at applications in Technology Example category. All the applications in this category come with open source code repositories, so you are able to run the samples and examples in a docker container with IRIS on your laptop or in the cloud IRIS sandbox. Examples:

  

0   0 2
0

replies

94

views

0

rating

Hello community! I have to work with queries using all kinds of methods like embedded sql and class queries. But my favorite is dynamic sql, simply because of how easy it is to manipulate them at runtime. The downside to writing a lot of these is the maintenance of the code and interacting with the output in a meaningful way.

Last reply 29 July 2019
+ 6   1 4
322

views

+ 6

rating


Hello!

This article is a small overview of a tool that helps to understand classes and their structure inside the InterSystems products: from IRIS to Caché, Ensemble, HealthShare.

In short, it visualizes a class or an entire package, shows the relations between classes and provides all the possible information to developers and team leads without making them go to Studio and examine the code there.

If you are learning InterSystems products, reviewing projects a lot or just interested in something new in InterSystems Technology solutions — you are more than welcome to read the overview of ObjectScript Class Explorer!

Last reply 19 July 2019
+ 18   2 12
3,776

views

+ 18

rating

 For Data Synchronization inside Caché you have a range of ways to synchronize objects and tables.
At DB level you can use Shadowing  or Mirroring 

This works excellent and if you need just a part of your data to be synchronized you may split your
data into smaller pieces using Global mapping 
Or if you need bi-directional synchronization on Class/Table level you can use the Object Synchronization Feature 


The limit of all these excellent features:
They just work from Caché/IRIS to Caché/IRIS.

Last reply 17 July 2019
+ 8   2 3
270

views

+ 8

rating

This is a self contained class that can be run from the Intersystems Task Scheduler which records peak usage details for databases and licenses built up throughout the day and retaining 30 days history.

To schedule the task to run every hour:  

d ##class(Metrics.Task).Schedule()

You can also specify your own start time, stop time, and run interval:

d ##class(Metrics.Task).Schedule(startTime, stopTime, intervalMins)

Metrics are stored in ^Metrics in the namespace that the class resides in/is run from.

Last reply 13 July 2019
+ 5   1 3
241

views

+ 5

rating

We at George James Software are pleased to announce that our acclaimed code debugger and editor Serenji is now available as a Visual Studio Code extension.

As well as supporting the latest InterSystems IRIS platform Serenji also works with earlier platforms, including versions lacking the server-side Atelier API support required by other VS Code extensions.

Serenji connects you directly to the code in your namespaces, resulting in an experience more familiar to existing Studio users. No need to export and import classes and routines.

We believe Serenji is the first extension to bring VS Code's powerful debugging features to ObjectScript developers.

Last reply 10 July 2019
+ 5   3 7
779

views

+ 5

rating

Hi Community!

This is the update on what are the new applications submitted on OpenExchange in June 2019!

New Applications

Example Backup Task published by @Sergey Mikhailenko

Sample database backup copying task with prior deletion of outdated copies

A more useful Object Dump published by @Robert Cemper

This small helper class allows you to dump an object to terminal or
e.g in background to some stream for later review.

Samples BI published by @Evgeny Shvarov on behalf of InterSystems

This is a technology example of InterSystems Business Analytics tool with Cubes, Pivots, MDX Queries and Dashboards. The Sample is  formerly known as "Holefoods "

Interjob communication Demo published by @Robert Cemper

It's internal variant of PIPE

Last reply 10 July 2019
+ 2   0 2
87

views

+ 2

rating

Has you may know, EnsDemo from Ensemble are not available anymore on IRIS.

This is a good thing, Iris is cloud oriented, it must be light, fast. Now the new way of sharing samples or modules is through git, continuous integration and OpenExchange.

But, in some cases you want to go back to your good old samples from EnsDemo to get inspiration or best practices.

Good news, there is a git for that :

+ 2   2 1
233

views

+ 2

rating

If you know the path of a file that exists in the instance's install directory, how can that file be opened and edited in Studio? This file is not saved under the visible directories in Studio ex csp or mgr. For example if you have no access to the server operating system command line, how would you be able to modify a file using Studio?

Last reply 20 June 2019
0   1 3
223

views

0

rating

Hi Community!

This is the update on what are the new applications submitted on OpenExchange in May 2019

New Applications

Background Jobs over ECP published by @Robert Cemper

An internal variant of a PIPE

Simple Remote Server Control published by @Robert Cemper

Simple monitoring of several servers at a lightweight level

iris-nodejs-101  published by @David Reche 

This application demo a REST API build in node.js able to receive HTTP GET, POST and DELETE of custom JSON 

Sea Battle  published by @Evgeny Shvarov

Simple terminal game an approach to "Sea Battle". Example of simple ObjectScript method calls and terminal interaction The code is an ObjectScript remake of Python example in CodeAcademy

PHP-module for Caché published by @Sergey Kamenev 

This is PHP-module for InterSystems Caché. In current moment module works only locally, on same server where running Caché. Module has excelence speed because uses c-callin interface for access to DB.

PHP-module for IRIS published by  @Sergey Kamenev 

This is PHP-module for InterSystems IRIS. In current moment module works only locally, on same server where running IRIS or Caché. Module has excelence speed because uses c-callin interface for access to DB.

TSQL Checkers v.1.0.0 published by @Anton Umnikov 

Demonstration of TSQL support in InterSystems IRIS. Checkers game

isclib v.2.1.0 published by @Kyle Michel 

Go library for interacting with InterSystems Corporation products like Cache and Ensemble<--break->

0   0 1
0

replies

104

views

0

rating

PHP, from the beginning of its time, is renowned (and criticized) for supporting integration with a lot of libraries, as well as with almost all the DB existing on the market. However, for some mysterious reasons, it did not support hierarchical databases on the globals.

Globals are structures for storing hierarchical information. They are somewhat similar to key-value database with the only difference being that the key can be multi-level:

Last reply 23 May 2019
+ 2   4 2
288

views

+ 2

rating

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 1
0

replies

106

views

0

rating

Hi Community!

This is the update on what are the new applications submitted on OpenExchange in March 2019

New Applications

isc-tar  published by @Dmitriy Maslennikov 

Compact files as TAR or Extract files from TAR files

Light weight EXCEL download v.1.0 published by @Robert.Cemper 

This is the working example of a light weight export to EXCEL based on data in SAMPLES namespace. Good old CSP is well equipped to produce HTML tables accepted from EXCEL as input. With modern Browsers you don't even need and tags. So the required code around your SQL result set is really slim. And you are free to add any formatting you need either by HTML or in SQL.

PythonGateway v.0.7 published by @Eduard Lebedyuk 

Python Gateway for InterSystems Data Platforms.

Adopted Bitmaps v.1.0 published by @Robert.Cemper 

This is a running example of the Bitmap Adoption

WebSockets Tutorial v.1.0 published by @Lily Taub 

A short tutorial on WebSockets in InterSystems IRIS 2018.1+ and Caché 2016.2+

Sync Data with DSTIME v.1.0.0 published by @Robert.Cemper

Other Sync-Tools just work from Caché/IRIS to Caché/IRIS. Synchronizing your data to some external DB you requires some other solution. DSTIME can do it.

HL7 and SMS Interoperability Demo v.1.3 published by @Amir Samary 

This demo shows how easy it is to integrate an Electronic Medical Record system that is sending HL7 messages with AWS.

0   0 1
0

replies

88

views

0

rating

I'm sure most of you have already familiar with the possibility of using GZIP in InterSystems products. But, the problem is that GZIP working only with one file or stream, and it does not support folders. When you work in Unix systems, there is a possibility how to solve it, using tar compress tool which goes with every Linux system from out of the box. But what to do if you have work on Windows as well, which does not have it. 

I am pleased to offer you my new project isc-tar, which will help you do not care about operating system, and deal with tar files anywhere.

Last reply 18 March 2019
+ 6   4 2
369

views

+ 6

rating

Hope most of you already familiar with project CachéQuality from @Daniel Tamajon. For those who don’t know about it, it is a static syntax analyzer for your code written for InterSystems products. It may help you to find and solve many different types of issues in your code, and even possible bugs before clients will find it in production. So, with help of CachéQuality you will be able to deliver a better product. You can find the complete list of rules used to check ObjectScript code here.

It was already available in Studio. And now it is also available in VSCode.

Last reply 13 March 2019
+ 4   1 8
888

views

+ 4

rating

Hello Gentlemen,

 

My Business process connector receive a Oru_01 hl7 message with an ED segment inside (Base64 pdf). How is it possible to extract it and create a pdf file within?

Here is the sample of function I have. I know it doesn't work but if you could help me, it would be perfect. Here is my function, the goal would be it create the file where I want and return me the link of the file.

Last reply 7 March 2019
0   0 3
459

views

0

rating

Hello folks,

I have an JSON object that need to be updated before being parsed into a JSX component.

Source JSON obj:

var Obj = { "data": [
  {"id":1, "text":"Task #1", "project":"10", "sub_project":"10-1" },
  {"id":2, "text":"Task #2", "project":"10", "sub_project":"10-1" },
  {"id":3, "text":"Task #3", "project":"11", "sub_project":"11-1" },
]};

 

Required JSON obj result:

0   0 2
144

views

0

rating

Hi Community!

This is the update on what are the new applications submitted on OpenExchange in January and February 2019

CPIPE

This is a tiny example of how to run a server command from within Caché / Ensemble / IRIS and get back the full output as seen in any server command shell.

QEWD-js

QEWD.js is a Node.js framework for REST APIs, interactive WebSocket and/or Ajax applications, capable of running as a monolithic application or split across MicroServices. Fully supports Cache, Ensemble and IRIS, allowing use of existing Cache ObjectScript code, Cache Objects and Cache SQL, but also allows the database to be abstracted as a persistent JSON / Document database.

PMML-Business-Operation

With this simple Business Operation, you can easily leverage your predictive models (saved as PMML) in a Production. There's both a generic BO and a utility method that allows you to generate dedicated operation / request / response classes.

COSFaker 

Helps to generate fake/test data for development purposes

WsockClient.csp and WsocClient.js

Web socket clients on CSP  and InterSystems node.js adapter to collect end manage data transferred to the client in InterSystems IRIS or Caché 

CachéQuality for VSCode 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 get it directly from the VS Code Marketplace and it will then detect new bugs and quality issues as you code (ObjectScript and JavaScript)

0   0 1
0

replies

90

views

0

rating

Greetings, InterSystems community!

I am pleased to announce that the web terminal project, Caché WebTerminal version 4 gets its release! After long period of enhancing this web application from 2013, it came to the version 4, which features major stability and security improvements, intelligent autocomplete and syntax highlighting, convenient SQL mode and a lot of other useful features.

The goal of this article is to spread the knowledge about this project over the InterSystems community.

Last reply 26 February 2019
+ 15   2 8
2,252

views

+ 15

rating