Hi guys!

Portrait of  Madame X, Gustave Caillebotte.

One of the features I like in InterSystems ObjectScript is how you can process array transformations in a specific method or a function.

Usually when we say "process an array" we assume a very straightforward algorithm which loops through an array and does something with its entries upon a certain rule.

The trick is how you transfer an array to work with into a function. 

One of the nice approaches on how to pass the information about an array is using $Name and Indirection operator. 

Below you can find a very simple example which illustrates the thing.

Last comment 7 days ago
+ 2   1 2
109

views

+ 2

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 @Dmitry 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

comments

21

views

0

rating

Hi Community!

Here is a digest of the Developer Community postings in March 2019.

Most viewed

CachéQuality for VSCode now available  364

Studio debugger since 2018.1.1  149

Job Opportunity - Relocate from Europe to UK  137

InterSystems IRIS version 2019.1 released   127

Tar compress tool in ObjectScript  125

A Tutorial On WebSockets  122

Embedded SQL vs ObjectScript SQL. What do you prefer and why?  121

A Deep Learning Demo Kit with Python3 Binding to HealthShare (Part I)  118

Side Effects of Quit and Return Commands with $Increment, or "I.E.Repin. Unexpected..."  117

String to date  116

Behind the scene of isc-tar project  100

Using Docker with your InterSystems IRIS development repository  99

Global Data converted to CSV file  87

CSP: Dynamically Generated Table  79

Behind the scene of isc-tar project and story about Continuous Integration using Github Actions  66

Run A Deep Learning Demo with Python3 Binding to HealthShare (Part II)  62

Most voted

InterSystems Partnertag Österreich 2019  7

Adopted Bitmaps example now on Open Exchange  7

ObjectScript error handling snippets  7

Tar compress tool in ObjectScript  6

InterSystems DACH Symposium 2019  6

Synchronize Data with DSTIME  6

A Tutorial On WebSockets  4

CachéQuality for VSCode now available  3

A Deep Learning Demo Kit with Python3 Binding to HealthShare (Part I)  3

InterSystems IRIS version 2019.1 released   3

 

Most commented

CachéQuality for VSCode now available  36

HL7 message import to sql server  16

Studio debugger since 2018.1.1  12

Rule to validate SQL syntaxis  12

No 'Access-Control-Allow-Origin' header issue with Cors  11

Cache docker image  9

Creating multiple Record Map Records from a single HL7 message  8

Quick way to check if an SSL/TLS configuration name is valid?  7

Sending Messages on the Top of Queue  7

Ensemble to Spring Boot Java app using RabbitMQ  6

Top 10 Authors to Follow by Views

Dmitry MaslennikovPosts,  291

Zhong LiPosts,  180

Lily TaubPosts,  122

Alexey MaslovPosts,  117

Evgeny ShvarovPosts,  99

Ponnumani GurusamyPosts,  87

Robert CemperPosts,  85

Gevorg ArutunyanPosts,  79

Pravin BartonPosts,  61

Stuart ByrnePosts,  40

 

Top 10 Experts to Follow

Eduard LebedyukAnswers,  +8

Aviel KlausnerAnswers,  +7

Alexander KoblovAnswers,  +4

Kyle BaxterAnswers,  +4

Vitaliy SerdtsevAnswers,  +4

Jeffrey DrummAnswers,  +4

David Van De GriekAnswers,  +3

Stephen CanzanoAnswers,  +3

Dmitry MaslennikovAnswers,  +2

Robert CemperAnswers,  +2

0   0 1
0

comments

29

views

0

rating

Hi Community!

I think everyone keeps the source code of the project in the repository nowadays: Github, GitLab, bitbucket, etc. Same for InterSystems IRIS projects  check any on Open Exchange.

What do we do every time when start or continue working with a certain repository with InterSystems Data Platform?

We need a local InterSystems IRIS machine, have the environment for the project set up and the source code imported.

So every developer performs the following:

  1. Check out the code from repo
  2. Install/Run local IRIS installation
  3. Create a new namespace/database for a project
  4. Import the code into this new namespace
  5. Setup all the rest environment
  6. Start/continue coding the project 

If you dockerize your repository this steps line could be shortened to this 3 steps:

  1. Check out the code from repo
  2. Run docker-compose build 
  3. Start/continue coding the project 

Profit - no any hands-on for 3-4-5 steps which could take minutes and bring head ache sometime.

You can dockerize (almost) any your InterSystems repo with a few following steps. Let’s go!

Last comment 12 days ago
+ 3   5 4
214

views

+ 3

rating

Hi Community!

There are two general ways to execute arbitrary SQL  in serverside ObjectScript code: EmbeddedSQL and ObjectScript SQL a.k.a. Dynamic SQL.

E.g. if we want to get the value of the property of instance with a certain ID using SQL we can do:

&sql(SELECT Name INTO :name FROM Sample.Person WHERE ID=1)

write name

Same result with %SQL.Statement:

set rs=##class(%SQL.Statement).%ExecDirect(,"SELECT Name as name FROM Sample.Person where ID=1")
  do rs.%Next()
  write rs.name

Last answer 7 March 2019
+ 1   0 3
0

comments

237

views

+ 1

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

comments

37

views

0

rating