Schematron is a rule-based validation language for making assertions about the presence or absence of certain patterns in XML documents. A schematron refers to a collection of one or more rules containing tests. Schematrons are written in a form of XML, making them relatively easy for everyone, even non-programmers, to inspect, understand, and write
Sessions and specifically %session are paramount to our application to login users to the application (the Web Gateway user logs into the server and then users login to the application).
When using /api/mgmnt/v2 to implement a spec first approach to REST API development, I am unclear how I can utilize sessions (i.e.%session) to work with our existing model (and I'm sure there are indeed better ways to do this, but we are just baby stepping right now).Much of the documentation say to make sure UseSession=1 in the dispatch class is set, which I've accomplished.
Hey Developers,
Thank you so much for staying with InterSystems Developer Community for yet another year!
Day in and day out our team is trying to make it better and more useful for each and every one of our 12K+ members!
We'd like to know how useful the Developer Community is for you at this point. Please take a few moments to let us know what you think and what could be improved:
👉🏼 InterSystems Developer Community Annual Survey 2022 👈🏼
Note: The survey will take less than 5 minutes to complete.
I use the following code (which is a simplified version of what happen on a server) :
tstartfor I=1:1:N {
set test = ##class(Test.Test).%New()
set test.ID = I
do test.%Save() //create a "Exclusive_e->Delock" lock on ^Test.TestD(..)
}
hang 5tcommit//locks are removed hereTest.Test is a persistent class that inherit from %Persistent :
Class Test.Test Extends %Persistent
{
Property ID As%Integer [ Required ];
Index IDKEY On ID [ IdKey ];//...
}
I think delocks are needed because of the transaction, to maintain data consistency, but why exactly are they needed
Hi Community,
In this article I will demonstrate below steps to add Interactive map and visualize geographic data to web application:
- Step1 : Install Application
- Step2 : Create CSP Page
- Step3 : Extend dc.IrisGeoMap.Folium class
- Step4 : Invoke DrawGeoDetails() Method
So Let us start.
Step1 : Install Application
First of all we need to install iris-geo-map application by using ZPM
zpm "install iris-geo-map".png)
Recently i've been using Restforms2 to create a CRUD API for a project. But it lacks some advanced functionality that we need, so we have created a production with a REST WS which handles those advanced methods. That works great but there's a drawback, it does not have authentication.
I would want to use the same authentication method as Restforms2 which is a basic auth using IRIS users and passwords.
Searching for this, i have found a similar topic.It uses $SYSTEM.Security.Login(user, pass) in a similar manner to create a token.
1. Overview
With more and more hospital applications built, business interface data processing may be affected by a variety of factors (network, consumer systems, etc.), there is an excessive accumulation of messages or even cause interface lag, affecting the routine performance of hospital IT systems , so the monitoring of the business interface components queue is increasingly important.
While current Intersystems IRIS platform's built-in queue monitoring only displays real-time queue information for interface components, which is limited in providing the queue data information needed by hospitals. The queue monitoring component program is based on the Intersystems IRIS platform and can monitor all interface components and display component queue information within 24h of the component, as well as query component historical queue data by setting a time period to better meet the needs of current in-hospital applications.
Does anyone happen to have a sample Configuration (CPF) Merge file that includes Action parameters setting up authentication methods (e.g. Password, Kerberos) for certain Services and Web Applications (e.g. via the ModifyService or Modify/CreateApplication AutheEnabled property)?
Thanks!
Here're the technology bonuses for the InterSystems Developer Tools Contest 2023 that will give you extra points in the voting:
- Embedded Python usage
- Docker container usage
- ZPM Package Deployment
- Online Demo
- Code Quality pass
- Article on Developer Community
- The second article on Developer Community
- Video on YouTube
- First Time Contribution
- Community Idea Implementation
See the details below.
Embedded Python - 3 points
Use Embedded Python in your application and collect 3 extra points. You'll need at least InterSystems IRIS 2021.2 for it.
Docker container usage - 2 points
The application
Checked on Cache 2018.1.7 and IRIS 2022.2
write$zconvert("abc/def","O","JSON")
"abc/def" Why isn't it "abc\/def" ?
Hey Developers,
Enjoy watching the new video on InterSystems Developers YouTube:
InterSystems announces its first developer preview, as part of the developer preview program for 2023.1 release. Many updates and enhancements have been added in 2023.1 and there are also brand-new capabilities, such as production-ready support for Columnar Storage, ability to use Bulk FHIR, and support to MacOS 13 Ventura. Some of these features or improvements may not be available in this current developer preview.
Future preview releases are expected to be updated biweekly and we will add features as they are ready. Please share your feedback through the Developer Community so we can build
Hi Community,
I need to find a good way to queue messages and then send them later by document type where document type is an HL7 attribute of the message.
Any suggestions?
Thanks
Regards
Mike
I am trying get the Unix time stamp in milliseconds
set epochSecond= $ZDATETIME($ZTIMESTAMP,-2)*1000
but the result is not accurate as $ZDATETIME ignoring /truncating the fraction of the seconds and the milliseconds calculation is not accurate with fraction seconds
for example
set epochSecond= $ZDATETIME($ZTIMESTAMP,-2)
1675830682
when its converts to the milliseconds
it became 1675830682000. not the accurate fractional seconds.
My target system looking for the milliseconds time stamp to authenticate.
Could you please help with steps to return the unix timestamp in milliseconds
Thanks
How to stop a task plan when it starts incorrectly and continues to execute due to disk space and other reasons, which may cause system failure
Hello guys,
i try to call a Operation within 3 foreach loops.
When i try to do this, i always get the following error:
I dont get any Errpr when i log my request message at this time i want to call a operation.
Everything works and i get no error. But when i try to call the operation i get this error.
Then i tried to call a operation in the first Level (not in a ForeachLoop) it works.
I simply call the operation with the RequestMessage from my Service.
When i now try to copy this call into the third Level (within 3 foreachloops) Then i also get this error.
I dont know what i am doing wrong...
Her
It's time to announce the Winners for January! Please welcome our awesome Global Masters Heroes!
The storm of applause goes to these developers and their great contribution to DC in January:
🥇 @Robert Cemper, ex Senior Sales Engineer from InterSystems, Austria
🥈 @YURI MARX GOMES, Software Architect, YM Services, Brazil
Learn more about the competition and our awesome winners below.
Hello, friends who are developing IRIS. I recently participated in the InterSystems Developer Tools Contest. This time, I made a tool based on the idea described in an article I published earlier as a template for quick query of messages. Currently, you only need to establish entity classes in IRIS, Then record the message corresponding to the entity class in the specified lookup table, and all the key fields generated in the message can be inverted indexed (the concept in ElasticSearch), which is convenient for quick query. The following is the design idea of my program.
So, I know that I can return a SQL Error message from my SQL Procedure written in ObjectScript, with code like this
$ cat <<EOF | irissqlcli iris://_SYSTEM:SYS@localhost:1972/USER
CREATEorREPLACEPROCEDUREtest()
LANGUAGE OBJECTSCRIPT
{
SET %sqlcontext.%SQLCODE = 400SET %sqlcontext.%ROWCOUNT = -1SET %sqlcontext.%Message = "test error message"
};
CALLtest();
EOF
[SQLCODE: <-400>:<Fatal error occurred>]
[Location: <SPFunction>]
[%msg: <test error message>]But I did not find how to do it with Python. I can't find %sqlcontext variable available there
Listen to CEO George James chat with Derek Robinson, host of the InterSystems DataPoints podcast talk about source control, developer tools and how our solutions are beneficial for InterSystems IRIS users.
In this short 17 minute episode, George and Derek discuss our work with developer tools, and how choosing the right source control can provide users with a seamless solution - which is why Deltanji is seen as the go-to source control for InterSystems IRIS users.
Listen now on the InterSystems website > https://bit.ly/3Jp5py5
or wherever you get your podcasts - just search for 'InterSystems DataPoints'.
Hi all,
In the days when I was still using studio, the indentation character of choice was tab, due to misalignment of code when using non-monospaced fonts.
In VSCode when I create new class files, this defaults to 4 spaces. Where and how do I set the default indentation for ObjectScript class files?
Also, with python it should be spaces. So what is recommended when doing python script inside objectscript classes?
Thank you.
Hi Team ,
Can I please check if anyone has encountered SOAP authentication error when trying to submit a certificate signing request or when trying to get certificate .
I configured a local CA server without SMTP configuration and I configured a local CA client. These steps worked okay.
Then I tried to Submit Certificate Signing Request to Certificate Authority server and I am getting the following error :
.png)
Similar error is appearing when I try to use the Get Certificate(s) from Certificate Authority server option
.png)
Hey Community,
Enjoy watching the new video on InterSystems Developers YouTube:
I am trying to adjust my VSCode settings.json to make my repository to Server Side Source Control. When Adding "uri" to the settings.json to change the setting but VSCode is telling me that the Property uri is not allowed.
.png)
Why is this happening?
Hey Developers,
We'd like to invite you to join our next contest dedicated to creating useful tools to make your fellow developers' lives easier:
🏆 InterSystems Developer Tools Contest 🏆
Submit an application that helps to develop faster, contributes more qualitative code, and helps in testing, deployment, support, or monitoring of your solution with InterSystems IRIS.
Duration: January 23 - February 12, 2023
Prize pool: $13,500
Iris-python-template
Template project with various Python code to be used with InterSystems IRIS Community Edition with container.
Featuring :
- Notebooks
- Embedded Python Kernel
- ObjectScript Kernel
- Vanilla Python Kernel
- Embedded Python
- Code example
- Flask demo
- IRIS Python Native APIs
- Code example

2. Table of Contents
Mirroring 101
Caché mirroring is a reliable, inexpensive, and easy to implement high availability and disaster recovery solution for Caché and Ensemble-based applications. Mirroring provides automatic failover under a broad range of planned and unplanned outage scenarios, with application recovery time typically limited to seconds. Logical data replication eliminates storage as a single point of failure and a source of data corruption. Upgrades can be executed with little or no downtime.
Deploying a Caché mirror does, however, require significant planning, and involves a number of different
Hi Community
In this article, I will demonstrate the functionality of my app iris-geo-map
IRIS Geo Map application is a tool to visualize geographic data by generating interactive maps by using Embedded Python functionality. Application is using Folium Python library
folium builds on the data wrangling strengths of the Python ecosystem and the mapping strengths of the leaflet.js library.Manipulate your data in Python, then visualize it in on a Leaflet map via folium.folium makes it easy to visualize data that’s been manipulated in Python on an interactive leaflet map.
I copied a 5 MB messages.log file to AWS where I have iris-log-viewer app deployed. I ran the test to see how it takes in IRIS code to import the lines into a persistent table:
IRISAPP>set m5mb="/home/irisowner/irisdev/messages.old_20221231.log"
IRISAPP>
IRISAPP>do ##class(otw.log.irislogreader).Test1(m5mb)
Test1 begins at 02/05/2023 12:49:30
ReadLogLines
/home/irisowner/irisdev/messages.old_20221231.log
Open
Test1 ends at 02/05/2023 12:49:34
Test1 execution time: 3.500789
select count(*) from otw_log.Log
63239
It took 3.5 seconds and I had 63239 lines in the table.
I need Caché 2012.1 to restore a backup for a customer to export the data to another sytem.
Anay URL for download?

