All time

I am glad to say that VSCode-ObjectScript reached 4000 installs. Thanks to all of you who use it in their work.

VSCode-ObjectScript is an extension for VSCode which allows you to develop InterSystems based applications on ObjectScript using the modern code editor developed by Microsoft. Choice #1 editor amongst all developers worldwide by Stackoverflow survey 2019.

Some short notes about how to install and configure it you can find here.

If you need any help with a migration process of your development team to VSCode, please contact us by info@caretdev.com.

4 3
0 330
InterSystems Developer Community is a community of 24,482 amazing developers
We're a place where InterSystems IRIS programmers learn and share, stay up-to-date, grow together and have fun!

Hi Developers!

InterSystems IRIS stores everything in globals and if we use ObjectScript classes to persist data class documents globals it uses in storage. But if you use globals for calculations, temporary storages, for special indexes or for some other purposes - how do you document it?

Possible options which come to my mind:

1. Macro

#define Array ^MyGlobal

usage:

s $$$Array(1)=1

2. Class parameter

Parameter Array ="^MyGlobal";

Usage:

0 3
0 387

Hello,

I am wondering if there any mechanism available in the Healhtshare where send a request from the service to the operation without storing the Data on CACHE.DAT?

My company going to receive ADT's and CCDA's from an external source (Hospital), The incoming data will have two kinds of patients, our patients, and not our patients. We do not want to keep the data on our servers of those patients that do not belongs to our company due to HIPPA complaint

Looking forward to hearing great ideas from this community.

Thank you

Raghu

0 3
0 387

Hi,

I have downloaded an evaluation copy of Cache and installed on a Windows 2016 R2 machine. I wanted to Configure different locations for DAT, WIJ, and Journal files but the installation process didn't give me such a "custom" option. I do see that the installation guide mentions the presence of such an option so I am wondering if this is a limitation of evaluation copies. Can someone please confirm?

0 6
0 384

I've been preparing to take the InterSystems HL7 Interface Specialist certificate and on the page that explains the cert it lists one in-person class and one online course. I've been through the suggested online course but when I read through the practice questions there are a lot of things that aren't covered or mentioned in that course. Naturally I could go digging through the documentation but there is no specific guidance about what things to study.

1 6
1 383

Currently I have a program that is going to be used to compare global nodes between namespaces. Using nested FOR statements I am stepping through global nodes and comparing between the namespaces, if the global values are different I then parse the node comparing each delimited segment.

This is working.

I want to now be able to set what global I am in as a variable to expand on this concept.

Program architecture

0 3
0 386

After a short (or too long) pause from the previous part here is a short recap of the next few days of the Global Summit 2022 in Seattle!

As before, each day started with the keynotes (which you should be able to watch tomorrow wink). But unlike the keynotes on June, 21 the following day they were dedicated to Data Platform IRIS. As before, you can find the topics and the presenters in this announcement. Some of the notable speeches were delivered by Geoffrey Moore, Bestselling Author, Consultant, and Disruptive Technology Specialist

1 0
0 389

I'm required to do a transformation around patient physical addresses. If (for whatever reason) a patient has multiple addresses, I want to move the home address to the first iteration of PID:11 and remove all other iterations. I've accomplished the first bit using DTL, but for patients who have multiple addresses they are left with empty trailing iterations. Here is an example I mocked up:

How can I remove those trailing iterations?

0 2
0 387

Hi Community,

New "Coding Talk" video was specially recorded by @Evgeny Shvarov for the second IRIS Programming Contest:

Creating CRUD REST API for InterSystems IRIS in 5 minutes

https://www.youtube.com/embed/FLqU-_uT_Ek
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

0 0
0 389

Hello,

I have a little problem that appears to my newest program. One of the purpose of my program is to transfer a file from a path to another one.

Another person/entity places the file into a specific file ( let's call it \\Server\) but the problem is that my service (a simple EnsLib.File.PassthroughService) takes it and places it directly into my other path. The pdf file is very big and it happens almost all the time that the size of the output file is not the same as in input and so is corrupted.

0 3
0 386

the file being created on the FTP server will have a format that includes the current date I would like to pull this file off the FTP while ignoring other files on the same location.

Inbound Service Class

I would like to find the file on the FTP that is being created using Todays date. But it appears that the wildcard are not recognizing the file format:

0 5
1 384
Question
· Sep 12, 2019
Features of *ENSTEMP

ENSTEMP was addressed already some time ago;
Article: Preventing Globals From Getting Journaled (Continued from How do I Minimize My Journals)

and is also in public documentation
Where InterSystems IRIS Stores Temporary Production Data

Though I'd like to understand if this is just naming a non-journaled DB
or are there also typical features of CACHETEMP / IRISTEMP related to it:

  • automatic clean-up at system startup
  • keeping Global Buffers in memory as long as possible
  • late writing to the storage file

In other words is it a 2nd, 3rd, .. fully feature blown IRISTEMP ?

7 1
0 388

Hi Community!

Please welcome a new video on InterSystems Developers YouTube Channel:

InterSystems IRIS from Spark to Finish

https://www.youtube.com/embed/W53PSUkiuS0
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

0 0
1 389

Hi Community!

It's time to announce the best articles on InterSystems Data Platforms you published in 2018!

And here are three best articles for the year (criteria is the number of views):

First place: K-Means clustering of the Iris Dataset, by Niyaz Khafizov 1564

Second place: Continuous Delivery of your InterSystems solution using GitLab - Part I: Git, by Eduard Lebedyuk 1206

Third place: Replacing ZEN - Part 1 - Introduction, by Peter Cooper 933

Congrats to authors!

And what are the best articles by InterSystems Data Platforms?

See below

3 0
0 389
Article
· Dec 27, 2018 2m read
Use %XML.Node to walk a DOM

The following code walks a DOM using %XML.Node. It also prevents %XML.Writer to change whitespace. Run the code using the class method "test":


Class objectscript.walkDOM Extends %Persistent
{
    ClassMethod dfs(node As %XML.Node)
    {
        s entrynode=node.NodeId
        do {
        //element nodes with one whitespacetyped child are the ones we want to change
        if (node.NodeType=$$$xmlELEMENTNODE){
            s snode=node.NodeId     
            if (node.MoveToFirstChild())            
                {
                    i ('node.MoveToNextSibling()){
                        i (node.NodeType=$$$xmlWHITESPACENODE){
                            s node.NodeType=$$$xmlTEXTNODE
                            s node.NodeId=snode
                        }
                    }
            }
            s node.NodeId=snode     
        }   
        if (node.HasChildNodes()){
            d node.MoveToFirstChild()
            d ..dfs(node)
        }
        } while (node.NodeType'="" && node.MoveToNextSibling())
        s node.NodeId=entrynode
         
    }
     
    ClassMethod test()
    {
      set xml = "abcdefg<![CDATA[   ]]>"
     
      s reader=##class(%XML.Reader).%New()
      do reader.OpenString(xml)  
      set writer = ##class(%XML.Writer).%New()
      //do some magic
      d ..dfs(reader.Document)
       
      w !,"with indent=1:",!
      set writer.Indent = 1
      do writer.OutputToString()
      do writer.Document(reader.Document)
      w writer.GetXMLString()
      set writer.Indent = 0
      w !,"with indent=0:",!
      do writer.OutputToString()
      do writer.Document(reader.Document)
      w writer.GetXMLString()
    }
}

Here's a link to the code on GitHub: https://github.com/intersystems-community/code-snippets/blob/master/src/...

1 0
0 389

Today %SYS.Namespace.ListAll started to report one namespace, for example USER, two times: once as "USER" and once as USER's database "^^c:\databases\user".

Details: my Cache instance has 50+ local namespaces. Today I have "touched" 3 of them (imported new classes), and now ListAll reports each of these 3 twice. Looks like ListAll is the only one who sees those strange duplicates, in all other places (Portal, Studio) only USER is shown.

Can someone explain what is happening?

0 9
0 380