Tutorial

Syndicate content 5 

Hi Developers!

Recently we launched InterSystems Package Manager - ZPM. And one of the intentions of the ZPM is to let you package your solution and submit into the ZPM registry to make its deployment as simple as "install your-package" command.

To do that you need to introduce module.xml file into your repository which describes what is your InterSystems IRIS package consists of.

This article describes different parts of module.xml and will help you to craft your own.

I will start from samples-objectscript package, which installs into IRIS the Sample ObjectScript application and could be installed with:

zpm: USER>install samples-objectscript

It is probably the simplest package ever and here is the module.xml which describes the package:

<?xml version="1.0" encoding="UTF-8"?>
<Export generator="Cache" version="25">
  <Document name="samples-objectscript.ZPM">
    <Module>
      <Name>samples-objectscript</Name>
      <Version>1.0.0</Version>
      <Packaging>module</Packaging>
      <SourcesRoot>src</SourcesRoot>
      <Resource Name="ObjectScript.PKG"/>
    </Module>
  </Document>
</Export>

Last reply 4 days ago
+ 5   3 1
243

views

+ 5

rating

Hi Developers!

Often when we install a code package we want to make some post-install settings, e.g. call to a method, set up a configuration file.

This article describes how to do this with the ObjectScript Package Manager.

To make any post-install calls you need to add <Invoke> elements into <Invokes> tag to the module.xml. Each <Invoke> element can have nested <Arg> elements if you want to pass params to the method:

+ 1   0 1
0

replies

48

views

+ 1

rating

Hi Developers!

Suppose you published your application on Open Exchange with version 1.00. And then you've added a new outstanding feature and you make a new release.

You can also make a new release of your application on Open Exchange.

Why make releases on Open Exchange? 

This the way for you to highlight the new features of your application. When you publish a new release the following happens:

Release notes appear on the News page of Open Exchange

The version of your app changes

Version History tab is updated

0   0 1
0

replies

34

views

0

rating

Hi Developers!

This post describes how you could publish your InterSystems application on Open Exchange.

What is the InterSystems application?

It could be anything, which is built with InterSystems data platforms or to help work with InterSystems data platforms: InterSystems IRIS, InterSystems IRIS for Health, InterSystems HealthShare, InterSystems Ensemble and InterSystems Caché. This could be tools, frameworks, adapters, examples and business solutions.

Why publish on Open Exchange?

InterSystems Open Exchange is an "App Central" for the solutions in InterSystems. It's the first place where the developer goes to look for tools, frameworks, and examples on InterSystems IRIS. And Open Exchange brings the added traffic to your solution which could be converted into leads.

We are having a set of business development tools for published Open Exchange applications. This definitely makes your InterSystems application more noticed.

Submitting an application

Suppose you have a library with open source published on Github which you want to publish on Open Exchange. For the purpose of a demo, I'll fork this remarkable project of @Peter Steiwer ObjectScript-Math which I forked and renamed to object script-super-math.

0   0 1
0

replies

38

views

0

rating

How can you allow computers to trust one another in your absence while maintaining security and privacy?

“A Dry Martini”, he said. “One. In a deep champagne goblet.”
“Oui, monsieur.”
“Just a moment. Three measures of Gordons, one of vodka, half a measure of Kina Lillet. Shake it very well until it’s ice-cold, then add a large thin slice of lemon peel. Got it?”
"Certainly, monsieur." The barman seemed pleased with the idea.
Casino Royale, Ian Fleming, 1953


OAuth helps to separate services with user credentials from “working” databases, both physically and geographically. It thereby strengthens the protection of identification data and, if necessary, helps you comply with the requirements of countries' data protection laws.

With OAuth, you can provide the user with the ability to work safely from multiple devices at once, while "exposing" personal data to various services and applications as little as possible. You can also avoid taking on "excess" data about users of your services (i.e. you can process data in a depersonalized form).

+ 6   5 1
0

replies

224

views

+ 6

rating

For Cache client install automation, where are the remote server settings stored on a Windows 10 PC? 

Are they stored in the registry?  I found the Cache registry key, but it only lists the remote server address and not the ports.

Are they stored in an INI file?  If so, I haven't found it yet.

I can push the client install via the very helpful CEDocs URL (https://cedocs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=GCI_windows_silentinst

Last reply 7 August 2019
0   0 1
105

views

0

rating

1.About this article

Just like Caché pattern matching, Regular Expressions can be used in Caché to identify patterns in text data – only with a much higher expressive power. This article provides a brief introduction into Regular Expressions and what you can do with it in Caché. The information provided herein is based on various sources, most notably the book “Mastering Regular Expressions” by Jeffrey Friedl and of course the Caché online documentation. The article is not intended to discuss all the possibilities and details of regular expressions. Please refer to the information sources listed in chapter 5 if you would like to learn more. If you prefer to read off-line you can also download the PDF version of this article.

Last reply 17 June 2019
+ 16   4 9
2,593

views

+ 16

rating

I am following the ESB tutorial(https://learning.intersystems.com/course/view.php?id=77) and using my local system(2014.1.5) windows 7.  I click the button on SoapUI for the Weather piece (http://127.0.0.1:57774/esb/soap/Weather/GlobalWeather.asmx) and get the response of   <text>ERROR &lt;Ens&gt;ErrBusinessDispatchNameNotRegistered: Business dispatch name &apos;EnsLib.SOAP.GenericService&apos; is not registered to run</text&

Last reply 6 February 2017
0   0 3
828

views

0

rating

Intro

Most server-client communication on the web is based on a request and response structure. The client sends a request to the server and the server responds to this request. The WebSocket protocol provides a two-way channel of communication between a server and client, allowing servers to send messages to clients without first receiving a request. For more information on the WebSocket protocol and its implementation in InterSystems IRIS, see the links below.

Last reply 26 April 2019
+ 6   3 4
1,146

views

+ 6

rating

Hi,

This is a quick tutorial how to install and use TFS in Atelier. It is based on my self experience and some tricks that I 've noted.

If you are used to using visual studio maybe you feel that is a bit slow and heavy, but you have the same TFS panel as you have in Visual Studio, so don't need any special "training" to use it smiley

Last reply 15 February 2019
+ 12   2 8
963

views

+ 12

rating

Intro

 

Please note, this article is considered deprecated, check out the new revision over here: https://community.intersystems.com/post/tutorial-websockets

The goal of this post is to discuss working with Websockets in a Caché environment. We are going to have a quick discussion of what websockets are and then talk through an example chat application implemented on top of Websockets.

Last reply 28 January 2019
+ 12   4 18
8,589

views

+ 12

rating

The following post outlines an architectural design of intermediate complexity for DeepSee. As in the previous example, this implementation includes separate databases for storing the DeepSee cache, DeepSee implementation and settings. This post introduces two new databases: the first to store the globals needed for synchronization, the second to store fact tables and indices.

Last reply 2 January 2019
+ 4   0 4
397

views

+ 4

rating

This article was written as an attempt to share the experience of installing the InterSystems Caché DBMS for production environment.
We all know that the development configuration of a DBMS is very different from real-life conditions.
As a rule, development is carried out in “hothouse conditions” with a bare minimum of security measures, but when we publish our project online, we must ensure its reliable and uninterrupted operation in a very aggressive environment.

Last reply 19 December 2018
+ 6   4 6
873

views

+ 6

rating

Ensemble supports publish and subscribe message delivery. Publish and subscribe refers to the technique of routing a message to one or more subscribers based on the fact that those subscribers have previously registered to be notified about messages on a specific topic.

This article demonstrates how several Ensemble capabilities can work together:

In this article we would send emails about:

  • New workflow tasks
  • Unassigned workflow tasks
  • Uncompleted workflow tasks
  • Ensemble alerts

Email recipients would be determined using Publish/Subscribe operation and each user would receive only digest email whenever possible.

Last reply 23 October 2018
0   0 3
284

views

0

rating

The following post outlines a more flexible architectural design for DeepSee. As in the previous example, this implementation includes separate databases for storing the DeepSee cache, DeepSee implementation and settings, and synchronization globals. This example introduces one new databases to store the DeepSee indices. We will redefine the global mappings so that the DeepSee indices are not mapped together with the fact and dimension tables.

Last reply 17 September 2018
+ 2   0 2
274

views

+ 2

rating

Generally speaking, InterSystems products supported dynamic objects and JSON for a long while, but version 2016.2 came with a completely new implementation of these features, and the corresponding code was moved from the ObjectScript level to the kernel/C level, which made for a substantial performance boost in these areas. This article is about innovations in the new version and the migration process (including the ways of preserving backward compatibility).

+ 5   2 1
0

replies

1,024

views

+ 5

rating

In this series of articles, I'd like to present and discuss several possible approaches toward software development with InterSystems technologies and GitLab. I will cover such topics as:

  • Git 101
  • Git flow (development process)
  • GitLab installation
  • GitLab Workflow
  • Continuous Delivery
  • GitLab installation and configuration
  • GitLab CI/CD
  • Why containers?
  • Containers infrastructure
  • CD using containers
  • CD using ICM

In this article, we'll build Continuous Delivery with InterSystems Cloud Manager. ICM is a cloud provisioning and deployment solution for applications based on InterSystems IRIS. It allows you to define the desired deployment configuration and ICM would provision it automatically. For more information take a look at First Look: ICM.

+ 2   1 1
0

replies

498

views

+ 2

rating

I cannot connect to Cache from node.js  

I have installed in Windows 10 the following: CACHE 2016, node.js v 4.4.7 and  express .

-  where can I get cache.node? The link in the Intersystmes documentation  http://globalsdb.org/downloads/  doesn't work. I found cache0100.node and cache0120.node  in my Cache instance's  \bin directory. But I am not sure if I can use them or not.

 - how to install cache.node ? Where do I place it exactly? 

Can anyone recommend any tutorial or code example with installation instructions?

Last reply 4 July 2018
+ 1   1 7
2,330

views

+ 1

rating

In this series of articles, I'd like to present and discuss several possible approaches toward software development with InterSystems technologies and GitLab. I will cover such topics as:

+ 7   2 3
0

replies

952

views

+ 7

rating

This might be a very simple rookie question but I'm trying to create couple of web services in Ensemble and using  document below as my tutorial, I do manage to do it:

http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=...

But instead of doing it as described above, where method signature is like this:

Method GetCustomerInfo(ID As %Numeric) As ESOAP.SOAPResponse [WebMethod]

I would like it to be:

Last reply 17 December 2017
0   0 2
471

views

0

rating

"Help me, Obi Wan Kenobi"?

I’ve hit the wall. I’m a one person shop who wants to start developing Cache on a mac using Eclipse/Atelier, after using Studio for the last 5 years. I’ve installed the 1.1 beta plugin, watched 6 or 7 videos from the September conference, tried several times to work through the cheat sheets, only to have connection issues or compilation issues, so at this point, I’m feeling very frustrated. The videos were interesting, but generally didn’t work as tutorials for fundamental programming operations, for me.

Last reply 14 November 2017
0   0 1
197

views

0

rating