Let's say I have a property as a variable value:
set propName="Country"Is there a method to determine, should I quote it to access the object, so would the correct code be:
write obj."Country"or just simple
write obj.Countryis enough?
Beginner tag unites articles and questions for those who are getting started with InterSystems Data Platform
Let's say I have a property as a variable value:
set propName="Country"Is there a method to determine, should I quote it to access the object, so would the correct code be:
write obj."Country"or just simple
write obj.Countryis enough?
Hello,
I'm trying to set Caché-Python Binding on Mac, but there is a problem.
I performed installation and configuration of Caché-Python binding module based on the manual (URL)
including setting of PATH and LD_LIBRARY_PATH in "bash_profile",
and they seems to be done successfully (there was no error in the process).
However, when I execute test python file (test.py), it failed with error massage as below.
-----------------------Error Massage----------------------
Traceback (most recent call last):
File "test.py", line 2, in <module>
import intersys.pythonbind3
File "/$USER$/.
I have an in-memory list of items and I want to check which items match my pattern string.
Pattern string is a comma-separated list of items and special symbols like '*' and maybe '?'.
There's something similar in $system.OBJ.Compile, it accepts patterns: "*.data.*,Sample.*" - and it would compile 'Sample' package and all 'data' packages.
For example:
set list=$lb("abc", "c", "aaa", "bbb")
set result = ..match(list, "a*,*b")
zw result
result=$lb("abc","aaa","bbb")I have a persistent class.
I want to store one of the properties there as a stream or a string depending on a size.
99% of values would be strings (less than $$$MaxStringLength characters) so I don't want to store everything as streams.
What do you think of this approach?
What's the best architecture to implement in this situation?
There are situations where we want to provide immediate feed back to inbound Web Service that a particular business operation is not running (status <> "running"). We don't even want to queue up the message. We just want the webservice to respond with an error stating the business operation is down.
Hello,
I have some beginner questions as I am working through the InterSystems Cache learning path:
- Where I work, we us Cache, but we often learning about and train on MUMPS. No one really talks about or mentions MUMPS here, but my understanding is that ObjectScript is basically MUMPS plus whatever new things InterSystems put on top of it. Is that a fair assessment?
- The training online often refers to IRIS. We don't use IRIS, but we use globals to store data. I suppose I'm just confused on the difference between Cache, Zen, IRIS and other products as they all seem to do similar things.
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.

Example: I have a list of tags that I have to find, and a string with these and other tags separated by commas. How to find the desired tags in the string optimally?
This little guide would help you start running Ensemble REST services in no time.
Added new System Default Setting for Production (not Host) setting.
However, Production setting is still the same. I have tried restarting Production and instance, to no avail.
How do I specify System Default Setting correctly?

Production:
Recently I reread this article by @Bernd.Mueller. It's about calling DELFATE function from zlib library. In this article I'll demonstrate several different approaches to callout libraries, we'll build the same functionality (compress function) in several different languages and compare them.
InterSystems products (IRIS, Caché, Ensemble) already include a built-in Apache web server. But the built-in server is designed for the development and administration tasks and thus has certain limitations. Though you may find some useful workarounds for these limitations, the more common approach is to deploy a full-scale web server for your production environment. This article describes how to set up Apache to work with InterSystems products and how to provide HTTPS access. We will be using Ubuntu, but the configuration process is almost the same for all Linux distributions.
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.
Hi
May I know what is the benefits of using the License Servers option and when to use it? Read through the documentation http://localhost:57772/csp/docbook/DocBook.UI.Page.cls?KEY=GSA_license#… but failed to comprehend it.
Thanks
Regards
Jimmy
I am trying to explore some new possibilities outside of the normal day to day HL7 interfacing we do. I have only done 1 other Web Service interface but it was using a SOAP proxy wizard. Now I am tasked with trying to make a call to an external API
https://npiregistry.cms.hhs.gov/api/
but I am a bit confused about how to go about doing it. Since they don't have a wsdl, this means it is a REST web service correct? or is it considered an API call?
I'm using this code to read a file, line by line.
Most lines are shorter than 32767 symbols, but some are longer. No line is longer than $$$MaxStringLength and long strings are enabled.
Is there a param to Open/Read command I can pass to increase Read limit?
My code:
set filename = pFile
open filename:("R")
for {
use filename read x
quit:$ZEOF=-1
set ^dbg($i(^dbg)) = $lb($e(x,1,10), $e(x,*-10,*), $l(x))
}
close filenameI've checked reclen parameter but it did not seem to help
Hello, I need help in health insight. I am trying to generate reports on deep see but i am not able to pull in the patient ids as these are our requirements for the project. Can anyone help me in unlocking this feature. Can anyone help me with link to correct documentation on how to access the edge gateways of multiple facilities to access the clinical data on sql explorer.
As part of a BPL I am building I need to foreach over a some repeating elements and look for a certain value, if said value is present I need to forward the message to another operation.
I can't seem to get the if statement inside the foreach loop to work and I think I am doing something wrong?
The error message I am getting:
ERROR <Ens>ErrException: <UNDEFINED>zS2+2^GWH.Messages.Eobs.AKISegmentCheck.Thread1.1 *k1 -- logged as '-' number - @' Set k1=request.GetNextIndex("PIDgrpgrp("_(1)_").ORCgrp()",k1,.tSCTrans)'
Can anyone explain that error to me?
Cheers
Everybody has a testing environment.
Some people are lucky enough to have a totally separate environment to run production in.
-- Unknown
.
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:
This first part deals with the cornerstone of modern software development - Git version control system and various Git flows.
Greetings,
How can I extract/return the workstation id in M. In other words, I csession in to MUMPS and I want to extract the workstation to use.
Thanks in advance for everyone's help...
Hello ,
I want the datagrid to reflect values based on the value i select in the Combobox. How to pass value from the combobox to the
altJSONSQLProvider parameter and reload the datagrid ?
My combobox defines below method on change.
onchange="zenPage.rowSelected(zenThis.getValue());"
<altJSONSQLProvider id="PatchClassJsonId" OnGetSQL="GetSQL" >
<parameter paramName="1" value="C"/>
</altJSONSQLProvider>
,......
Method GetSQL(ByRef pParm As %String, ByRef pSQL As %String, pCriteria As %ZEN.proxyObject, ByRef pPagingInfo As %String) As %Status
{
Hello all,
I have created a simple Datagrid and using jsonSQLProvider with a SQL statement as the datasource. Please see below.
<jsonSQLProvider id="json" OnSubmitContent="SubmitContent"
sql="SELECT PatchClassName,Environment,ModuleName,ModuleClass,TargetConfig,BusinessRule,MessageSchemaCategory FROM ProjectInventory.
I have a XML enabled persistent class and a XML representation of some object of this class (object ID is available).
How can I use XML Reader (or some other mechanism) to automatically update this object?
Hi
Totally new to IRIS and Cache.
Trying to evaluate it and work out how we could use it.
As a standard application database. Object or relational etc. does not matter.
Issue is ObjectScript.
So:
1) Can we develop, maintain and use an IRIS database and never use ObjectScript i.e. use only Java, Python, C++ interfaces etc. (exactly which one does not matter)? Would that make designing and using the IRIS database more prone to inefficiency and error?
2) Can we import an existing Cache database into IRIS and convert its ObjectScript code into Java, Python whatever?
Is it possible to lock down health insight so a client can only query their own patients? and Is there a way to use a visualization tool like Tableau instead of the dashboard of DeepSee while still querying from DeepSee?
I am working on my first REST operation concept and had a question about the Property Parameters. If I put a value in CAPTION, does that mean that when I use it in my call that it will come out in the URL?
For example...
Property enumerationType As %String(CAPTION = "enumeration_type");
Then in my operation...
Set tURL=..Adapter.URL_"?q="_pRequest.enumerationType
so when it builds the URL it looks like...
Here I’ll walk you through the process of creating a simple Node/Express API and connect it to a InterSystems IRIS instance.
I won't go into much detail about how to work with any of the technologies I will mention in this tutorial but I will leave links, in case you want to learn more.
The objective here is to give you a practical guide on how to set up and connect a node.js back-end API to IRIS.
Before we get our hands dirty, make sure you have Node.js running on your machine. So I'll check:
Version 8.12.0 is the current LTS (Long Term support) version of node.js.
Hi,
We are trying to write an external backup application to backup Cache Database. After going through the Cache DB documentation, we have found that in Backup.General class there are methods for creating snapshot (Freeze/Thaw) which is required during backup. Are there REST APIs for the same?
Also we have the option of selecting individual DB instances in the management portal. What are the methods/APIs of getting the DB list, so that user can select individual DB instances in an external backup application ? Do we have the methods/APIs to freeze/thaw the individual DB instances ?
Thanks!
My main goal is to be able to create reports and alerts in my SIEM based on what individual searched for and accessed what patient records, and when.
Does anybody have any experience with this? I've been ingesting audit logs in to Splunk but I'm having a hard time getting useful data.
I try to test our REST/JSON (POST) services,where queryparametres are in content as json and the answer in contet is also as json.
This is my testClient:
Class XXX.RESTClient Extends %RegisteredObject
{
ClassMethod TestXXX()
{
#dim tRequest As %Net.HttpRequest = ##class(%Net.HttpRequest).%New()
set tRequest.ContentType="application/json"
s json=##class(%ZEN.proxyObject).%New()
s json.x="XXX"
d ##class(%ZEN.Auxiliary.jsonProvider).%WriteJSONStreamFromObject(.jsonStream,json)
set jsonText=jsonStream.Read(jsonStream.Size)
set tSC=tRequest.EntityBody.Write(jsonText)
set tSC = tRequest.