Using SOAP Web Services or REST API Resources, if you want to deliver strategic digital assets for your organization, SOA aproach is an excellent option. The InterSystems IRIS supports like a charm the SOA principles with Contract First technique to model services aligned with the business, and create the services from the service contracts (Open API or WSDL).
Previously, I shared with you all a handy operational analytics dashboard you can build to visualize key message processing metrics, such as number of inbound/outbound messages, average processing times, etc.
I've mentioned the QEWD project in this group before: it's a Node.js-based platform for web, Native and REST applications which tightly integrates with Cache. It uses a somewhat different philosophy to the use of Node.js than the norm, and I've now published an article that explains this approach and the unique benefits that arise as a result.
It turns out that, integrated via QEWD, Cache is an ideal bed-fellow for Node.js. QEWD makes the integration of Cache and Node.js exceptionally fast, simple and intuitive to use, but also extremely powerful.
Users of analytical applications often need to generate and send out PDF reports comprised of elements of the analytical panel. In the InterSystems stack, this task is solved using the DSW Reports project that is an extension of DeepSeeWeb. In this article, we will explain how to use DSW Reports for generating PDF reports and emailing them.
Continued from the previous Part I ... In part I, we walked through traditional ML approaches on this Covid-19 dataset on Kaggle.
In this Part II, let's run the same data & task, in its simplest possible form, through IRIS integratedML which is a nice & sleek SQL interface for backend AutoML options. It uses the same environment.
If you want to import data from a mySQL export file (exported with mysqldump), you will find here a little script that could help.
Only the INSERT commands in the sql file are executed into Caché. Indices are not computed for better performance. %NOINDEX, %NOCHECK and %NOLOCK are generated on each INSERT line.
Currently, the file can not contain a "),(" pattern inside the values part of the INSERT command. If this is the case, the line is skipped. This feature may be implemented in the extractValuesList method.
Maybe someday you will need to use Adaptive Analytics but there is little information about this, so I decided to write an article on how to start developing a dashboard on Tableau using the Atscale cube.
I was attempting to find a solution to grant clients anonymous access to certain API endpoints while securing others within my REST API. However, when defining a Web Application, you can only secure the entire application and not specific parts of it.
This might be useful to others, especially the dockerfile which I have copied below. This builds a debian docker container and installs the Intersystems Cache driver, which python can then use :)
Hi! As a developer who was forced to move from Mac to Windows (temporary) I found some things a bit confusing. In this article I would like to talk about some tweaks I made to make my experience smoother. I think it can help not only Mac users who need to use Windows environment (for ex. in VMs), but also can help some Windows users to make some things more convenient. Of course, all the points are subjective, the best setup is one that works for you.
All the tweaks are related to Windows 10 as I don’t have an access to Windows 11 at the moment.
I have experienced that my iris server is gone due to upgrading the docker version when I have built IRIS server on docker container.
Based on this experience, I'd like to show you how to make a backup for the IRIS server before upgrading platform or docker, and the procedure for rebuilding the IRIS in a new environment.
IRIS server backup procedure
When you have finished building for the IRIS server, you need to make a backup.
Some clients ask me about migrate from Cache to IRIS. Why migrate to IRIS? Cache is excellent, stable, has good performance. These clients are right, but in the last years, the digital transformation imposed more complete solutions for the new requirements and InterSystems was a visionary to perceive it and launch IRIS. It is a data platform ready to this digital transformation challenge. To show this, I created a Value Canvas.
This article is a follow-up to the previous one on how to migrate from popular databases (like PostgreSQL and MySQL) to IRIS. We will use the same procedures utilized to migrate from PostgreSQL. However, you will see that it is even easier since the data types in MySQL are very similar to IRIS. That is why we will not need to create transformation rules in the columns.
Get the sample data to the migration process
In GitHub it is possible to download a docker-compose project to build and run 2 databases:
It is becoming more and more common to see beautiful badges in the README.MD file with useful information about the current project in the repositories of GitHub, GitLab and others.
For instance:
Hi developers! have you ever implemented a DICOM integration? Maybe you have searched for an example, or even a simulator. Here you can find a example that may be useful.
DICOM is a message standard widely used in healthcare for diagnostic images.You can use DICOM standard in interoperability productions using both IRIS For Health and Health Connect, here you can find the documentation.
Setting up Management Portal Help Pages for Full WebServers
On each page of the System Management Portal, there is a “Help” button. This takes users to an article in documentation that describes the page functionality and use.
Caché provides local documentation for all of these articles.
InterSystems IRIS does not provide local documentation. Instead, the Help button will redirect users to the articles in the online documentation at docs.intersystems.com.
This sample can be used to create Identicons for users of app for example, it can be useful to use in Zen Mojo applications, generating an identifier image based on name of the user by example, but it can be used in others kind of applications too(Zen, CSP etc)
The title of the contest subject is not quite precise but addresses the %Library.classes involved. What is meant is officially named Class Query and is dating back to the early days of Caché. CLASS is used because it is embedded in a COS class. Though there is a precise description in the official documentation it remains rather abstract. My tutorial should guide you step-by-step through a simple example in COS to make it tangible to you
Quite a few enhancements have appeared over recent months in QEWD for easing and simplifying the creation of REST-based services. It's now even more slick and powerful, allowing you to very quickly create very high-performance, highly-scalable REST (and Web) services that make use of Cache.
I've therefore updated the training presentation deck (Part 31 on developing REST Services with QEWD). It describes all the new features with worked examples. See:
Here is another quick note before we move on to GPT-4 assisted automation journey. Below are some "little" helps ChatGPT had already been offering, here and there, during daily works.
And what could be the perceived gaps, risks and traps to LLMs assisted automation, if you happen to explore this path too. I'd also love to hear anyone's use cases and experiences on this front too.
Attached is an example of a web service client that can be used to do a lookup against the CMS NPPES database to validate and retrieve information about a given National Provider Identification (NPI).
This summer the Database Platforms department here at InterSystems tried out a new approach to our internship program. We hired 10 bright students from some of the top colleges in the US and gave them the autonomy to create their own projects which would show off some of the new features of the InterSystems IRIS Data Platform. The team consisting of Ruchi Asthana, Nathaniel Brennan, and Zhe “Lily” Wang used this opportunity to develop a smart review analysis engine, which they named Lumière. As they explain: