Question Julian Matthews · Jul 16 Orphan Message Cleanup Approaches Hi all. Recently, I have noticed Scott Roth's mission to resolve issues with Orphaned messages with a lot of focus on prevention, and I envy that level of dedication. #Databases #HL7 #Namespace #Caché #Ensemble 2 10 0 142
Question Julian Matthews · Apr 18 Does Embedded SQL support Table Hints? Hi everyone. I have a function that may end up being called from a number of transformations at the same time, and within the function there's some Embedded SQL to first check if a local table has an entry, and then adds the entry if it doesn't exist. To prevent a race condition where the function is called by two transformations and they both end up attempting to insert the same value, I'm looking to use the table hint "WITH TABLOCK" on the insert, but this seems to be failing the syntax checks within vscode. Are table hints supported with embedded sql? #SQL #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 4 0 107
Question Julian Matthews · Apr 8 Sharing lookup tables between namespaces Hi everyone. Is there a sensible approach to having a lookup table in Namespace A, and then accessing this from Namespaces B, C, D (etc)? I'm trying to avoid creating a Global mapping of the lookup table global (^Ens.LookupTable) as I fear that it would then link all other lookups in that global and lead to some unexpected behaviour, but would be open to trying something in this realm if it's the best option. #Mapping #Namespace #Caché #Ensemble #InterSystems IRIS for Health 0 4 0 178
Question Julian Matthews · Dec 21, 2023 Is it possible Triggering services/processes to run without a separate task? Hi everyone. I have a few processes where I rely on them being triggered by a schedule to run, and in the past I have relied on the following setup: The Scheduled Task is a custom class that runs a minimal amount of code to simply create and send the specified service an Ens.Request, and equally the Service is also a custom class that simply passes the Ens.Request to the Process for it to kick the process off. #InterSystems IRIS for Health 0 8 0 377
Question Julian Matthews · Jun 26, 2023 Returning a DICOM Worklist using a non-DICOM external data source Hi everyone. Has anyone here had any luck with receiving a DICOM C-FIND-RQ and returning a worklist using data gathered from a non-DICOM source (for example, an external SQL query) and would be able to share how they achieved this? #InterSystems IRIS 0 2 0 163
Question Julian Matthews · Jan 16, 2023 Including SQL Tables when deploying between productions Hi everyone. I have a use case where I'm using embedded SQL within a Business Process to interact with a SQL table. However, when it comes to deployment into our production, the table wont form part of the deployment package created from the production. Beyond manually creating the table on the production system, is there a standard way of ensuring that a table needed for a class is created during deployment? #ObjectScript #SQL #Caché #Ensemble 0 2 0 158
Question Julian Matthews · Oct 25, 2022 Extending EnsLib.HL7.Operation.TCPOperation for custom error handling Hi all. I have a scenario where I am receiving NACKs and I'd like to adjust the error handing of the operation based on the content of the NACK. For example, I could receive the following and want to move onto the next message: MSH| ^~\&|||||20221025083135.489+0100||ACK ^A02^ACK|9271|D|2.5.1 MSA|AE|1664378390234 ERR|||207 ^Application internal error ^HL70357^^^^^^Cannot transfer patient, encounter is cancelled.|E However, I could also receive the following and want to keep retrying: #HL7 #ObjectScript #InterSystems IRIS 0 1 0 250
Question Julian Matthews · Sep 28, 2022 Is a nested ACK on EnsLib.HL7.Operation.HTTPOperation response expected Hi all. I have setup a HL7 Operation using the HTTP adapter, and I'm getting what seems to me as an unusual response. When sending a sample message to the operation, I am getting a nested ACK. For example: MSH|^~\&|||xxx|xxx|202209230806||ACK^HTTP^200|00|D|2.1|1MSA|AA|RWSD7V5iuEC5F6zscDWz|HTTP ACK 'HTTP/1.1 200 OK' : MSH|^~\&|yyy|yyyy|xxx|xxx|20220923080633||ACK^A01|1663916793965||2.3||||||MSA|CR|RWSD7V5iuEC5F6zscDWz|Error Message Goes Here. #HL7 #Ensemble 0 1 0 156
Question Julian Matthews · Sep 16, 2022 Encoding Base64 from a Stream - Chunk Sizes Hi all. I'm currently looking at a use case where I need to take a Stream, and then encode the contents as a Base64 Stream. This is currently achieved with a snippet of code that has previously been placed in multiple classes within this particular environment, and relied on the dotnet gateway (which suffers with a bug in 2022.1, corrected 2022.1.1). #InterSystems IRIS for Health 0 4 0 1.4K
Question Julian Matthews · Jun 10, 2022 Do messages created within objectscript processes get picked up by production purges. Hi all. I have a transform that I am calling from within an objectscript process, and I need to pass it a few values. I have in the past done this using the aux property, however I have got away with only needing to pass in a single value, so I have not had to worry about passing in anything other than a string container. #DTL #Ensemble 0 2 0 273
Question Julian Matthews · Apr 1, 2022 Issues with Character Encoding when viewing messages Hi everyone. I was wondering how people manage viewing messages that use a character encoding incompatible with the Management Portals use of UTF-8. For example, a message that looks like this in Windows-1252/Latin1: Will display as this under the message "Full Contents" #HL7 #Management Portal #Ensemble 0 6 0 700
Question Julian Matthews · Nov 3, 2021 Reformatting ObjectScript in VSCode Hey everyone. I was wondering if anyone had come across a way of reformatting ObjectScript within VSCode. I have the various Intersystems Extensions installed (InterSystems Language Pack, InterSystems ObjectScript, InterSystems ObjectScript Extension Pack, InterSystems Server Manager) but a formatter does not seem to be something included within this variety of extensions. #ObjectScript #VSCode 2 20 0 697
Question Julian Matthews · Sep 17, 2021 Use of environment info to control HL7 transformations Hey everyone. I was curious if anyone had any success/tips with regards to using a global or a system parameter/property to control the behavior of a transform or process/operation. Is there a parameter I can currently reference from the system that can be used for an if/else, or am I best off creating a simple Global and setting it according to the environment I am in? #HL7 #HealthShare 0 2 0 162
Question Julian Matthews · Apr 9, 2021 Help with VSS backups - Freeze/Thaw control Hey everyone. I have been revisiting our backup strategy, and spotted that IRIS supports VSS (Volume Shadow Copy Service) in Windows. This is quite attractive as an approach, as it automatically calls the external freeze and thaw commands. However when calling these manually, there's quite a few parameters that can be set, and the documentation around VSS only states that the freeze/thaw commands are called. Is there a way of controlling the parameters used, or at the very least know what the defaults are? #Backup #InterSystems IRIS 0 1 0 458
Question Julian Matthews · Apr 1, 2021 Syntax for datetime conversions from UTC Hey everyone. I'm attempting to convert a date from UTC to my locale, and for some reason I can't seem to get the Ensemble ConvertDateTime Utility Function to detect the timezone to then convert. I'm hoping it's just a syntax issue, and that someone can show me the error of my ways. #Ensemble 0 2 0 437
Question Julian Matthews · Mar 17, 2021 Saving a file character stream to a UNC path not reporting a failure to save the file Hey everyone. I have a process where I create a new %Stream.FileCharacter object, specify the filename (including it's path), write data to the stream, and then save. However for some reason, if the user account does not have write access to the directory, the %Save method is still returning true even though it was unable to actually write the file to the folder. The location is a UNC path, and I'm wondering if this is tripping me up? #ObjectScript #Caché #InterSystems IRIS 0 3 0 328
Question Julian Matthews · Nov 11, 2020 Email address change has created a new community account Hey everyone. It seems that my email address being updated with Intersystems has created a new account on here, and when I attempt to login with the old email address it logs into the new account meaning it looks like I have no post history. Has anyone else faced this and have any advice on how to resolve it or any thoughts on if this is likely to affect other services like Learning and Global Masters? #Other 0 3 0 114
Question Julian Matthews · Nov 5, 2020 Impact of Journal File Size on MirrorDatabaseLatencyTime Hey everyone. I have noticed that my backup mirror is warning that the MirrorDatabaseLatencyTime is having a bad time (time in ms is 3000, and warnvalue is 3000). While I look into what may be causing this latency between the two servers, I was considering if reducing the size of the journal files would improve this value in any way. My assumption is that reducing the file size would mean that the frequency of the journal files being created would be increased, but the reduced size would mean that the transfer and application of each file would be reduced. #Journaling #Mirroring #InterSystems IRIS for Health 0 2 0 670
Question Julian Matthews · Jul 7, 2020 Extending EnsLib.File.PassthroughOperation to allow the destination to be determined on a per file basis. Hey everyone. I have a use case where I need to write files to a handful of locations, and 2-3 subfolders in each location. My plan was to extend EnsLib.File.PassthroughOperation and then pass that operation the file and the subfolder details, and then have an operation per destination. Has anyone done anything similar and can highlight any pitfalls I may be about to make? #Caché #Ensemble 0 3 0 267
Question Julian Matthews · Apr 27, 2020 Issues Monitoring Activity Volume Hi all. A long time ago I enabled Activity Monitoring to be able to save myself headaches in the future when looking at the performance of various message routes through our productions. It's served it's purpose of answering questions on how many messages we process a week etc but I had not had the chance to really dig down into the stats for specific message types or destinations to pin point issues. #Monitoring #Performance #Ensemble 0 3 0 264