Hi, 

It turns out that on windows if you run a command with a windows command file you need to escape the % character as %%

In my case I could test freeze and thaw calls at the command line successfully as

..\bin\cache -s. -U%SYS ##Class(Backup.General).ExternalFreeze()

...but when my freeze script ran it would fail.

it turns out that a single '%' is striped when run in a windows command file, and it must be escaped as '%%' windows gets:

+ 1   0 2
88

views

+ 1

rating

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:

+ 1   0 1
43

views

+ 1

rating

Hello.

I want to grant access only to the Message Viewer page to an specific user, in all Namespaces. I have created a rol with this privileges:

%Ens_MessageContent
%Ens_MessageHeader
%Ens_MessageTrace
%Ens_Portal

But if I want to see the list of messages, I have to grant SELECT access to the Ens.MessageHeader and Ens.MessageBody tables of each Namespace.

Is there anyway to grant access to this tables in all Namespaces at a time, even if new ones are created?

Thank you in advance.

0   0 1
0

answers

132

views

0

rating

Good morning all,

A question to see if anyone out there is already doing this.

We have built a custom BS based off of the EnsLib.FTP.InboundAdapter.  We have our processes wake up (using the Scheduler), grab the files in the directory, stay awake for a while, and then go back to sleep.

Each file goes through on its own message.  So we can trace each individual file and we know if it made it successfully or not.

0   0 0
0

answers

0

comments

26

views

0

rating

During migration from Caché to IRIS I can preview a situation where some instance
have migrated to IRIS while others are still on Caché.
For various reasons this may be in place for some weeks or even months as the big bang isn't feasable.

So far I found a lot of statements related to mixed endinans,
but nothing related to cross operation beween IRIS and Caché.

?? any hints ??
?? any experience ??

 

 

Last answer 3 days ago Last comment 3 days ago
0   0 3
66

views

0

rating

Hi,

  I believe the healthshare Debug module did this (if you added it) but I no longer have access to Healthshare to look so am asking here.

 

Suppose I have;

Set fruit="apple"

set person="john"

d ..Something(fruit, person)

quit

 

ClassMethod Something(objs...) {

  ; Names of variables passed in

}

 

In side "Something" how can I see the original name of the variable passed in (i.e. know the variables passed in were called fruit and person and not just their values).

Last answer 3 September 2019 Last comment 4 September 2019
0   0 1
145

views

0

rating

We're back with more AI, more ML and more presenters!

We are pleased to invite you to the upcoming webinar in English: AI Robotization (Python, R, Interoperability) for InterSystems IRIS on November 7 at 11:00 EST!

 

+ 2   0 1
128

views

+ 2

rating

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.

Last answer 29 October 2019 Last comment 4 days ago
+ 2   0 12
401

views

+ 2

rating

Hi Developers,

New challenge on Global Masters: Review InterSystems IRIS on G2 and get 3000 points!
The page for InterSystems IRIS is new on G2,  and we need so much your voices and experience to be shared with the worldwide audience!

Write a review on G2 using this link, complete the challenge on Global Masters and get 3000 points after your review is published!

 

+ 1   0 0
0

comments

24

views

+ 1

rating

A few years ago, I was teaching the basics of our %UnitTest framework during Caché Foundations class (now called Developing Using InterSystems Objects and SQL). A student asked if it was possible to collect performance statistics while running unit tests. A few weeks later, I added some additional code to the %UnitTest examples to answer this question. I’m finally sharing it on the Community.

Last comment 7 days ago
+ 4   1 2
83

views

+ 4

rating

Hi Community,

New video, recorded by @Stefan Wittmann, is already on InterSystems Developers YouTube:

🗣 Dynamic Data with JSON

 

+ 1   1 1
0

comments

50

views

+ 1

rating

Is %CSP.BinaryStream compatible with %StreamGlobalBinary because reviewing the classes this doesn't look to be the case?

What I am trying to do is zip large documents before sending over a REST interface. I compress the file and add that to an Ens.StreamContainer which is then passed to the operation to build the REST payload. We are using %Net.MimePart class to build the payload and use the BodySet method to add the zipped Ens.StreamContainer.

The issue is when the REST interface receives the POST, it doesn't recognize the data as a zip compressed item.

 

Last answer 7 days ago
0   0 1
0

comments

36

views

0

rating

Hello community!

 

I have a question about the %OnSave method of a class.  We have a class that  has two properties that are classes. 

Class A

Class B

Class C

Class A.PropertyB as Class B

ClassA.PropertyC as Class C

 

Classes B and C also need to point back to Class A - it's just the way it is.  We need to be able to use any one of these classes and get to the others (it's actually even more complicated than this, as Classes B and C also have a PropertyC and PropertyB as well, respectively) :

Last answer 7 days ago Last comment 7 days ago
0   0 1
62

views

0

rating

Hi All, 

I'm currently trying to modify the provider portal using Trak to add a new column. Using the column editor to get the column to display on the page is relatively simple, but where I'm running into problems is modifying what will display in the column. 

Essentially, it just needs to run a simple "if value in column A is in this list, display x, else display y" which is easy enough to write in ObjectScript, but the ISC documentation is relatively sparse about how to get a specific column to run that bit of code to display what I need it to. 

 

Last answer 7 days ago
0   0 2
0

comments

30

views

0

rating


Hello,

I loaded a WSDL from a webservice into my project where executing it returns me a series of Orders related.

My problem is that the provider of this webservice sometimes adds new fields, which I don't even use, and from then on it starts giving Iris a bug, so I need to import the updated WSDL again so that it creates the new property that the provider added.

Last answer 7 days ago Last comment 7 days ago
0   0 2
35

views

0

rating

Loading your IRIS Data to your Google Cloud Big Query Data Warehouse and keeping it current can be a hassle with bulky Commercial Third Party Off The Shelf ETL platforms, but made dead simple using the iris2bq utility.

Let's say IRIS is contributing to workload for a Hospital system, routing DICOM images, ingesting HL7 messages,  posting FHIR resources, or pushing CCDA's to next provider in a transition of care.  Natively, IRIS persists these objects in various stages of the pipeline via the nature of the business processes and anything you included along the way.  Lets send that up to Google Big Query to augment and compliment the rest of our Data Warehouse data and ETL (Extract Transform Load) or ELT (Extract Load Transform) to our hearts desire.

A reference architecture diagram may be worth a thousand words, but 3 bullet points may work out a little bit better:

  • It exports the data from IRIS into DataFrames
  • It saves them into GCS as .avro to keep the schema along the data: this will avoid to specify/create the BigQuery table schema beforehands.
  • It starts BigQuery jobs to import those .avro into the respective BigQuery tables you specify.

 

+ 4   0 1
0

comments

51

views

+ 4

rating

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

Sign in or Create an account on Github

Here we go!

Last comment 7 days ago
+ 5   5 2
317

views

+ 5

rating

Hello Community,

We have two live servers running DeepSee dashboards for users.  One of the servers can print a widget to a pdf file, and the other can't.  

I learned that 1) a Java JRE needed to be installed on the second server, and 2) it's trying to run an OS command to render a pdf file (details below).

An audit log of the event shows this:

Last answer 13 days ago Last comment 7 days ago
0   0 2
47

views

0

rating

We are currently implementing the Data Innovations Instrument Manager product.  In setting up our backup process we are wanting to use Veam snapshots. The application runs in a Caché 2016.1/Windows Server 2016 instance.  We are running an HA primary/secondary/arbiter config. The statement below is from DI.  I am curious to see what others that have implemented the DI Instrument Manager in the same or similar config have in place for backup.

"DI recommends is recommending that we not perform snapshots, but if you do choose to do so, here is some important information to consider.

Last comment 7 days ago
0   0 4
0

answers

94

views

0

rating

Hi, everyone!


I want to share a personal project that started with a simple request at work: 

Is it's possible to know how many Caché licenses we are using? 

Reading other articles here in the community, I found this excellent article by  David Loveluck 

+ 6   6 4
441

views

+ 6

rating

I am sending a PUT FHIR message for a CodeSystem Resource using the defailt Service and server that was installed when I installed the FHIR on the NameSpace.

When I try to use the FHIR Request "id" property it is empty; e.g. pFHIRRequest.id is EMPTY. I really need to get this value, how can I get it?

I added a trace ion both the HS.FHIR.Service and HS.FHIR.Server.Process, details to follow:

0   0 2
0

answers

22

views

0

rating

Hi Developers!

Those who use Dockerfile to work with InterSystems IRIS often need to execute several lines of ObjectScript.  For me, this was a game of "escaping this and that" every time just to shoot a few commands on ObjectScript to IRIS. Ideally, I'd prefer to code ObjectScript without any quotes and escaping.

Recently I found a nice "hack" on how this could be improved to exactly this state. I got this from @Dmitriy Maslennikov's repo and this lets you use Objectscript in a way as you would type it in IRIS terminal.

Here is what you have in dockerfile:

///
COPY irissession.sh /
SHELL ["/irissession.sh"]
RUN \
  do $SYSTEM.OBJ.Load("Installer.cls", "ck") \
  set sc = ##class(App.Installer).setup()
# bringing the standard shell back
SHELL ["/bin/bash", "-c"]
CMD [ "-l", "/usr/irissys/mgr/messages.log" ]
///

Last comment 8 days ago
+ 2   1 4
111

views

+ 2

rating

InterSystems has corrected several critical defects that can result in data integrity issues. These defects were identified and corrected within a short time, so InterSystems has simplified the upgrade process by consolidating them into a single package. The effects of encountering these defects may not always be visible.

0   2 3
123

views

0

rating