How do I best create a filter in DeepSee to restrict query results for the current login, that is where the results are filtered by a Dimension compared to the ObjectScript special variable $USERNAME or an ObjectScript expression that restricts what the current user is allowed to see?
Hi everyone. I'm new to cache, and i was looking for a command who reads a .txt file and store the informations in variables. I've found on the documentation the EnsLib.SQL.SNapshot class, and, even if i'm not sure if that's what i need, when i run the code it says that the class doesn't exist, but i couldn't find the right superclass to extend.

Easily transform a CSV file into a personalized preview of DeepSee - InterSystems BI
AnalyzeThis can be found on InterSystems Open Exchange. Use the Download link to navigate to GitHub and begin installing the project. Follow the “Installation” section of the GitHub README.
InterSystems IRIS supports a unique data structure, called globals, for information storage. Essentially, globals are persistent arrays with multi-level indices, having several extra capabilities—transactions, quick traversal of tree structures, and a programming language known as ObjectScript.
I'd note that for the remainder of the article, or at least the code samples, we'll assume you have familiarised yourself with the basics of globals:
Hello Everyone,
I'm want to know, what is more common for your company to use, the abbreviation syntax or the complety name of commands, and why?
Ex.
S VAR=10 / D FUNC^ROUTINE F 1:1:1000
Set VAR=10 / Do Func^Routine / For 1:1:1000
set var=10 / do func^routine / for 1:1:1000
Here in my company, we are familiar with the abbreviation syntax, because to spell is more faster.
Hi developers!
I just want to share with you the knowledge aka experience which could save you a few hours someday.
If you are building REST API with IRIS which contains more than 1 level of "/", e.g. '/patients/all' don't forget to add parameter 'recurse=1' into your deployment script in %Installer, otherwise all the second and higher entries won't work. And all the entries of level=1 will work.
/patients
- will work, but
/patients/all
- won't.
Here is an example of CSPApplicatoin section which fix the issue and which you may want to use in your %Installer class:
<CSPApplication Url="${CSPAPP}"
Recurse="1"
Directory="${CSPAPPDIR}"
Grant="${RESOURCE},%SQL"
AuthenticationMethods="96"
/>Hi,
I'm currently unable to change my First Name from my account page.
Although my name is Thomas, I go by Joe.
Is there a reason I'm not able to edit my displayed name?
How can I change this?
First webinar on InterSystems API Management!
We are pleased to invite you to the upcoming webinar in Russian: Introduction to InterSystems API Management on November 21 at 10:00 Moscow time (GMT+3)!
As you might have heard, we recently introduced the InterSystems API Manager (IAM) - a new feature of the InterSystems IRIS Data Platform,
enabling you to monitor, control and govern traffic to and from web-based APIs within your IT infrastructure.
In this webinar I will highlight some of the many capabilities IAM allows you to leverage. InterSystems API Manager brings everything you need:
- to monitor your HTTP-based API traffic and understand who is using your APIs; what are your most popular APIs and which could require a rework.
- to control who is using your APIs and restrict usage in various ways. From simple access restrictions to throttling API traffic and fine-tuning request payloads, you have fine-grained control and can react quickly.
- to protect your APIs with central security mechanisms like OAuth2.0 or Key Token Authentication.
- to onboard third-party developers and provide them with a superb developer experience right from the start by providing a dedicated Developer Portal for their needs.
- to scale your API demands and deliver low-latency responses
There would be a live demo.
This webinar is for System Architects, Developers and DevOps Engineers.
Time: November 21 at 10:00 Moscow time (GMT+3)!
The language of the webinar is Russian.
my cachedb version:
Cache Running version:
Cache for UNIX (Red Hat Enterprise Linux for x86-64) 2017.1.1 (Build 111U_SU) Tue May 23 2017 13:39:47 EDT
The frequency with which the journal is synced depends on the operating circumstances of the InterSystems IRIS instance involved. A journal sync can be triggered:
Why log in to view pivot tables when you can have them delivered directly to your inbox? Are you in need of automated reporting for InterSystems IRIS Business Intelligence? Pivot Subscriptions is your solution: a tool for subscribing to scheduled email reports of pivot tables inside InterSystems IRIS Business Intelligence (previously known as DeepSee).
Database systems have very specific backup requirements that in enterprise deployments require forethought and planning. For database systems, the operational goal of a backup solution is to create a copy of the data in a state that is equivalent to when application is shut down gracefully. Application consistent backups meet these requirements and Caché provides a set of APIs that facilitate the integration with external solutions to achieve this level of backup consistency.
Hi Community,
The new video from Global Summit 2019 is already on InterSystems Developers YouTube:
Hi, I asked last week and they gave me some little tips. But the truth is I still can't carry out this "Project".
I must perform a REST service, using Oracle 11 database. Eh tried anyway to achieve this.
The purpose is to make a REST service, using the database provided to me and use the procedure that is already created.
According to what I read, I made the connection via JDBC and I had no major problem
Then I managed to read the bd inside iris and capture its procedure, but at the time of doing this. The procedure does not work correctly.
Hi Developers!
Recently we announced two new challenges on Global Masters: 'Bugs Bounty' and 'Pull Requests'.
And we are getting a lot of submits to the challenges which are not the thing we are expecting there. So I hope this post will give some shine to this quest.
'Bugs Bounty'
Ok! What are we expecting from 'Bugs bounty'?
There are a lot of Open Exchange solutions that come with public open-source repositories on Github: project and repo, another project and the repo, another one and its repo, and many more on Open Exchange.
Good Morning-
I am currently looking for a Cache ObjectScript Developer. Please see job description below. If you are interested please send an email to paul.lilienfeld@libertyits.com
Is there documentation in Portuguese?
Hi Community,
Please join the upcoming InterSystems Israel Meetup in Herzelia which will be held on November 21st, 2019!
It will take place in the Spaces Herzliya Oxygen Ltd from 9:00 a.m. to 5:30 p.m.
The event will be focused on the InterSystems IRIS: it will be divided into IRIS for Healthcare and IRIS Data Platform. A joint lunch will be also included.

Please check the draft of the agenda below:
Hi Developers!
Often I find questions on how to install IRIS, connect to IRIS from IDE, setup the environment, compile, debug, maintain the repository.
Here below possibly the shortest way to set up all the environment and start development with ObjectScript on InterSystems IRIS.
Prerequisites
Make sure you have Git, Docker, and VSCode installed
Install Docker and ObjectScript extensions into VSCode
(1).png)
Sign in or Create an account on Github
Here we go!
Hello!
Checking to see if anyone has experience with deploying their Docker containers on a platform like OpenShift (or vanilla Kubernetes)?
If you have, do you have any guidance or lessons-learned? Is this even something feasible with a HealthShare/Ensemble instance?
I am getting this with %RCHANGE:
RPMS 28d1>D ^%RCHANGE
This routine changes all occurrences of a string in
routines/include files.
1. Change every: Cache to: IRIS
2. Change every:
Routine(s): %*
Routine(s):
Then I get these types of messages:
This routine is mapped to another database, are you sure you want to change it??
No => yes%DIRFULL.INT
%BENCHLANG.INT
Hi, I have Atelier working. When I try to search the entire RPMS code base for Cache to replace with IRIS I get this on Altelier search:
I want to edit this routine to replace "Cache" with "IRIS" how do I do that in Intersystems Google Cloud environment? The portal System > Routines doesn't seem to show much.
RPMS>ZL %RCR ZP
DIRCR ;SFISC/GFT-DELETE THIS LINE AND SAVE AS '%RCR'*** ;12:18 PM 20 Apr 1993 [ 04/02/2003 8:23 AM ]
;;22.0;VA FileMan;**1001**;APR 1, 2003
;;22.0;VA FileMan;;Mar 30, 1999
;THIS ROUTINE CONTAINS AN IHS MODIFICATION BY IHS/MFD
;Per VHA Directive 10-93-142, this routine should not be modified.
%RCR ;GFT/SF
;
STORLIST ;
;----- BEGIN IHS MODIFICATION
Prmoetheus is a really good to combine measures, and export them in graphical dashboards
I would like to write some a caché exporter for Prometheus, that will allow to expose some metrics of the database, or even some metrics of my own
Did anyone already tried ?
Thank for the answer
Hello everyone, It is my first post in the community. Very recently I started working using IRIS, creating services with Cache. Today they gave me a new task and I'm really lost.
How can I use an oracle database to create services using iris?
Throughout the day I was looking for a guide to use a remote Oracle database. but unfortunately I only managed the connection in SQL Gateway
Hi,
The Ensemble SQL Inbound Adapter executes a user defined query, and calls the OnProcessInput method of the Business Service with information about an individual row of the executed query.
If the query provided by the user (and executed by the adapter), returned multiple rows, then, OnProcessInput is called multiple times, once for each row.
Within the OnProcessInput method, however, is there a way to know that the row that is currently being processed is actually the last row of the query.
Thanks
Steve
I have several Business Services which I need to run once on each trigger.
Trigger can be either:
- Specific time (so once a day, every day)
- Specific day (so once a month, every month)
For the time, it would be stable (i.e. 0100), but the second case varies - one month it could be 10th, another month - 12th.
After each run I want the service to turn off, so that all the time the service is not running it would be colored grey in Production Management Page.
I plan to use Task Scheduler,but open to suggestions.
Thoughts? Ideas? Code?
My project need to restore the previous part of the log, and I use the rountine "^JRNRESTO" and filter. After recovery completed, the table structure is restored, but the table data is not restored, also unable to insert data into the table.
The filter is defined as follows:
ZJRNFILT(jid,dir,glo,type,restmode,addr,time)
New zdh
Set zdh=$zdatetimeh("11/14/2019 15:18:56")
If $p(time,",",1)>$p(zdh,",",1) Set restmode=0 Quit
If $p(time,",",1)<$p(zdh,",",1) Set restmode=1 Quit
If $p(time,",",2)<$p(zdh,",",2) {
Set restmode=1
} Else {
Set restmode=0
} Quitafter restore the :.png)
I am trying to make architecture for my project. And for it, it needs to make list property in which there is list of objects of another table, the data must be unique, therefore I make sql-query to check objects of another table if it is used or not, but I can't make sql-query to check elements in list in property with elements of another table. Can you help me? In property ID of object is used.
I'm playing with Cache web apps (CSP pages) and local dev . . .
My understanding is that when you run Cache, it spins up a very lightweight Apache web server with the web root C:\InterSystems\Cache\CSP (or where your CSP folder happens to be).
I'm having trouble with a server printer where nobody can open a particular device. I've seen all over documentation that you can't open a device if another process already has it open, but I haven't been able to find out what process has a device opened already.

