New
Question Mark OReilly · Feb 25

When using VS code with multiple workspaces it requests "The extension 'InterSystems ObjectScript' wants to sign in using InterSystems Server Credentials. 

Other than having multiple workspaces per environemnt (which never really works for me in principle as i end up code comparing in one manner or another) is there a way to only have intersystems log in to VS code whenever you open an actual workspace itself i.e. click on dev not on loading vscode. 

This would also get around errors of "unauthenticated access rejected by" errors as VS code tries to log in without the password first. 

8
0 70
Question Mark OReilly · Nov 7, 2025

Trying to check date in DTL. 

Want to throw a custom error not the default one from the $ZDTH. It does in the try as will write "Error" when testing the DTL but the actual error not showing. Report errors is turned on.  I also tried the THROW logic from best practices but that doesn't work either. $SYSTEM.Status.DisplayError(status) does display what the error should be returned. 

try 
 {
    set tDateH = $ZDATEH(tDateofDeath, 8)
 }
 catch ex 
 { 
  w"error"set status = $$$ERROR($$$GeneralError,"Custom error message")
 do$SYSTEM.Status.DisplayError(status)
 do$System.Status.Decomp
5
0 140
Question Mark OReilly · Oct 27, 2025

We are trying to mark a hl7 nack as "completed" to ignore an error and not generate the alert. 

We can remove from adding a managed alert or add another router in 

When Nack of CR of 

Date of birth in PID.7 must not be empty

We tried via this but i think it's only for an actual IRIS alert errror not the HL7 error code/description 

E*Date of birth in PID.7 must not be empty=C,:?CR=C,:?R=RF,:?E=S,:~=S,:?A=C,:*=S,:I?=W,:T?=C

3
0 86
Question Mark OReilly · Oct 8, 2025

Hi:

I see a lot of cool REST apps and i'm trying to host something in the TIE using REST/Axios with VITE. 

At the moment i will probably host the application in web applications in Intersytems. 

For authorisation and getting the logged in user and password to any app, is there a standard people are doing? 

I.e. for axios you might have this from the app

auth: {
        username: apiUser,
        password: apiPass
      }

But surely you want to pass through credentials from the IRIS logged in user, or alternatively pass the credential request to IRIS API to first receive the data.

8
0 166
Question Mark OReilly · Jul 15, 2025

As foreign tables are behind a paywall (booo); we have a external cache system using the intersystems ODBC driver or usually a .jar CacheDB.jar. 

The requirement is :

"Create a copy of the external table once a day to perform comparisons to detect changes"

We could go full code and this is what we will do but trying the following should ideally work 

CREATETABLE Sample.YoungPeopletwo ASSELECT *
FROM Pennine_TIE_Clinicom_Link.PMISPECIALREGNCA
WITH STORAGETYPE = COLUMNAR

This resulted in 

[SQLCODE: <-400>:<Fatal error occurred>]
[%msg: <Exception caught during dSQL statement %Execute:
4
0 106
Question Mark OReilly · Apr 4, 2025

Does %OSCertificateStore only check the trusted root folder in windows?

Can it be used for Personal store on servers or is there another condition can be used? 

Used it for a first time and writing a function to check specific ones being used for expiry but had one this week that was to be installed in personal rather than the trusted root and didn't know if stating OSCertificateStore or a url otherwise to look in the personal installed certs on the server could be used instead so stuck with the original way (which can get confusing)

https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI

0
0 87
Question Mark OReilly · Feb 4, 2025

When removing a segment in DTL for hl7 using foreach the segment doesn't actually get removed and leaves a blank segment. 

i.e. 

MSH|^~\&|SendingSystem|ReceivingSystem|202301241000||ADT^A01|12345|P|2.4
EVN|S|202301241000
PID|1|MRN12345|1^^^^KEEP~2^^^^Remove~3^^^^Keep|M|19800101|  
PD1|PatientAddress^Street^City^State^Zip
PV1|I|INPATIENT|BED123|DoctorID|202301241000|202301241000

This blank segment to be removed

I read the notes and thought it might be about swizzling at https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cl… but it

2
0 243
Question Mark OReilly · Dec 16, 2024

When implementing deferred response there was a problem initially with a few responses which meant we had blank jobs spawned somehow. How do you get rid. All the operation does is:

SET sc =..SendRequestAsync($piece(..ForwardComponentNames,",", i),pRequest,1)

These all sent ok and tried to update status to 9 from 6 hoping it would clear the blank jobs but it didn't . The original issue has been resolved weeks ago. 

6
0 151
Article Mark OReilly · Dec 13, 2024 5m read

As part of the Open Exchange competition Salford Royal (Dean White and Mark O'Reilly) developed a REST API for sharepoint as a template that works but can also be a starting point to your own Rest Applications 

Prerequisites

This is using the v1 REST sharepoint API you need a tennant id, client id, client secret and tennant name 

Setup 

Configure an OAuth server

 

The code in the middle is the tennant ID 

Create a client config name as whatever you want 

Set up the oauth client replacing your server ip with the ip of the server you are on (not the VIP address- if not part of a VIP localhost may work) 

2
0 355
Question Mark OReilly · Oct 25, 2024

We have a scenario where we use the best practice article of a BP and DTL to split up HL7 messages mainly ORUS 

https://community.intersystems.com/post/splitting-oru-messages-using-ob…

It is really useful but we have this code in many places that we are trying to consolidate it in one place. 

We do not want to split it at the first stage in our rules as there is a lot of messages that go to sink. So we are trying for specific rules and the incoming hl7 matches certain rules and classified for certain downstream systems that it is then split and transformed. 

The problem is that

3
0 228
Question Mark OReilly · Aug 30, 2024

As part of fully decoupling code we send a snapshot from a business service (running a SQL statement). 

sql service                         Processor                                File Out

This is picked up by a processer and puts it into a file .txt. 

Issue is if you open it up via the SQL.snapshot message as this is 46,819 rows it'll take too long to respond to opening up the sql.snapshot in the message viewer when viewing the session if looking from the business service 

Is there any way to not have this xml open up in full in the portal? I.e. have a see more? 

I am aware this could just be in

3
0 216
Question Mark OReilly · Jul 31, 2024

Hi:

I have been adapting the IRIS WHIZ addon as part of the contest. I will soon fork the code on github so the changes are available. 

The next phase is I am storing the date from and to time for a more complete search cache 

zenPage.getComponent(36).value

it works in the chrome console ok 

I'm not sure in external JS how to set the page it is on as a zenpage to use the zenpage functions

3
0 179
Question Mark OReilly · Jun 12, 2024

Hi:

We are looking again into DB size. Looking at our Ens.MessageHeaderI GSIZE is 3767107

Looking at the global i'm not sure if we have had an issue in the past so much of the data looks the same, we only have 3 values in the  $zwc and although some of the data in the $c between 1 and 18630 it looks very similar as if there was an issue in the past. But if anyone has any examples of their index param this would help to know if our global is abnormal. 

Data below 

^EnsLib.H.MessageI("Extent",18631)	=	$zwc(152,8000)/*$bit(1..64000)*/^EnsLib.H.MessageI("Extent",20750)	=	$zwc(152,8000)/*$bit(1..6400
1
0 146
Question Mark OReilly · Apr 19, 2024

In message bank how do you search within XML? XML is imported on message bank so that side is ok as can see it like below

On source system message viewer finds message

On Message bank it doesn't 

More basic queries using the MessageHeader will work so the filters do work just must not be using the right one (if it is possible) to query the XML message 

1
0 228
Question Mark OReilly · Feb 16, 2024

*** updated from a comment as original question may not have been clear**

To clarify my question this is the library property helper class Library property helper when you look at the documentation for computed from documentation here Computed documentation

ClassMethod FullNameComputation(cols As %Library.PropertyHelper) As %String
{
    return cols.getfield("FirstName")_" "_cols.getfield("LastName")
}
// ...

 

ClassMethod RecordsComputation(cols As%Library.PropertyHelper) As%Library.ListOfDataTypes
{
  Set rsTProp = ##class(%SQL.Statement).%ExecDirect(,"Select * from
9
0 315
Question Mark OReilly · Jan 16, 2024

Does anyone have any trick to get the raw text out whenever you run a DTL test in the DTL editor? 

If not is there any plans to add this to a later version?It would help certain workflows where you just want to run a transform in the DTL to then copy and paste the message to send into a test on the operation.I am aware you can set up a file and rule to then go out to a file or operation but seems like additional workflows when there are scenarios you just want a quick copy of the message text after doing transform.

2
0 259
Question Mark OReilly · Dec 12, 2023

When running a sql insert query with CONVERT('datetime', '2023-12-12 11:27:00',120) in an insert statement into a table this works on one server and not the other. 

i.e. to record datetimereceived 

Property datetimereceived As%TimeStamp(EXTERNALSQLNAME = "date_time_received", EXTERNALSQLTYPE = 93) [ SqlColumnNumber = 12, SqlFieldName = date_time_received ];

The gateway connections are the same, The one that works runs a v6 SQL server db the one that doesn't is the standard version 10 so although there is a mismatch i do not believe it would be this as the older setup works

Has anyone come

2
0 193
Article Mark OReilly · Dec 8, 2023 2m read
Scenario

IRIS has the likes of SQL inbound adapters for use with SQL gateways such as EnsLib.SQL.InboundAdapter to repeatedly query SQL Gateway connections. A scenario appeared as that we wanted to query an Internal database for some data but did not see an out of the box service for this. 

Desired Approach

Have a Generic service that can poll internal SQL to work with downstream components.

How

What was not clear was "How do I send a result set downstream". It was not very clear as a resultset itself is not a peristent class and the object cannot be "Swizzled" an error like so 

 <METHOD DOES NOT
0
0 387
Question Mark OReilly · Aug 15, 2023

We have this intermittent issue with a particular supplier message , just wondering if anyone has further insight around the two errors we get when we see this. 

We use the out of the box TCP hl7 adapter. 

We first seem to get this incomplete hl7 message resulting in an error like 

Discarding leftover input 'MSH|

This is not unexpected as the final obx has not dot the description of OBX:2.2 ect. 

OBX|53|TX|NCDAC^

The next message will have the error 

Status

Error <Ens>ErrException: <NOTOPEN>zFlush+7^%IO.DeviceStream.1 -- logged as '-' number - @''
+
Error <Ens>ErrInConnectionLost: Lost HL7

2
0 322
Question Mark OReilly · Jul 3, 2023

In show Query messages in the message viewer the head.%Id is always used. How do you do this via your own sql/objectscript as fast as the portal does a search as using dates searching Ens.MessageHeader on portal is slow. 

For instance if you try do a search saying (TimeProcessed >='2023-06-01 00:00:00.000' and TimeProcessed <'2023-06-02 00:00:00.000') it is slow but using the portal the search would know this is head.%ID >= 5344549861 AND head.%ID <= 5347641372. How do you utilize this in your own queries as can't see the logic in EnsPortal.MsgFilter.Assistant 

3
1 373
Question Mark OReilly · May 18, 2023

Trying to pass pdf to save to custom file  using default Trying to pass pdf to save to custom file  and %f. but oriignal filename didn't send (it does in terminal). What is missing from setting filename from stream? can the file passthrough not out of box use outputfilename or has wrong default one been sent. 

set fname="ThisHasBeenChanged.pdf"Set test = ##class(File.EpacsPDF).%OpenId(1)
set tempStream=##Class(%Stream.FileCharacter).%New()
Set sendstream = ##Class(Ens.StreamContainer).%New()
 
set sendstream.OriginalFilename=fname
set sendstream.OutputFilename=fname
Set tempStream=
5
0 363
Question Mark OReilly · Apr 14, 2023

After any installs upgrades we get the following 

04/13/23-18:00:00:978 (18668) 0 [Utility.Event] d:\intersystems\healthshare\mgr\enslib\ (Database is readonly)
04/13/23-18:00:00:979 (18668) 0 [Utility.Event] d:\intersystems\healthshare\mgr\hslib\ (Database is readonly)

I think we must have before altered these to not read-only. 

Not sure if the isssue is by default 

-Running task as user with %ALL rather than SYS user

- Should the dbs be as default in the all backup list 

- Should these be not ro so it backs up without error? 

2
0 343
Question Mark OReilly · Feb 16, 2023

Hi we have started to get rid of orphaned data and would like to soon compact and truncate the database as will have about 40gb free to return to filesystem after the few weeks of running the new task. 

The idea would be to do this on the shadow server first of mirror rather than primary. 

Is there any reason this is a bad idea? Considering this needs done on both servers of mirrored db? As idea would be to do this on shadow server before we failover to the server a few days afterwards. And do the same for the month afterwards. 

Also note we have tested our compact and truncate against a non

3
0 293
Question Mark OReilly · Feb 3, 2023

Hi:

I don't understand how to use this open exchange item for auto creating deleting items. I think it assumes knowledge in the steps of how to use it which i don't get. 

Added the code into dev on  SRFT.Utility.DeleteHelper.OnDeleteSuper and SRFT.Utility.DeleteHelper.AddHelper  

current class is 

Class Messages.XML.GenericWif.fileparameters Extends (%Persistent, %XML.Adaptor)
{

Property revisionnumber As %String;

Property primarylink As Messages.XML.GenericWif.primarylink;

Property additionalindexes As Messages.XML.GenericWif.additionalindexes;

Adding the extends doesn't seem to do anything to

2
0 348
Question Mark OReilly · Jan 11, 2023

Is there an easy way to open classes in VS Code?

In studio you go open and just type the class name and it opens up the class. 

In VS Code need to know the full path, is there a quick way? It is probably the one thing preventing from using VSCode full time (apart from not seeing the .luts or csp files)

15
0 5611