Article Timothy Leavitt · Oct 28, 2024 2m read

User-defined aggregate functions have been supported in IRIS since 2021.1.0. I'd wished upon a star for these years ago before finding a secret hacky way to override MAX and MIN in a custom datatype, but didn't get a chance to actually try one out until today. I thought it was an interesting experience/example - the question of how to get a Median in IRIS SQL came up once before - so I'm sharing it here without too much further comment.

One caveat: UDAFs don't have the nice object/SQL parity that other types of functions do, so you actually need to run SQL to define the aggregate function

0
1 297
Discussion Enrico Parisi · Oct 25, 2024

The IRIS Management Portal is localized (translated) for some (many?) languages and the language used by the Management Portal interface is determined by the browser settings, often derived from the OS settings (can be changed).

This means that if a user, like me, want to use ONLY the English version of the Management Portal, each and every time you login you need to change the language. VERY annoying.

I know I can change the language configured in Browser, BUT, I want to use English for the IRIS management portal non for all my internet activity!

I feel uncomfortable using the localized version

9
1 319
Question Colin Brough · Oct 28, 2024

An interface running on Ensemble generates PDFs by building a command line and invoking c:\InterSystems\Ensemble\fop\fop.bat

One day last week the PDF generation stopped working. The output from the .bat script says:

The Server has not restarted, and the Java version has not been updated. Ensemble has not restarted. And Java is still accessible outside of Ensemble from the command line. So how come Ensemble has "lost" java? Any clues as to what might have gone on?

2
0 169
Article Robert Cemper · Jul 8, 2023 2m read

A recent question from @Vivian Lee reminded me of a rather ancient example.
It was the time when DeepSee's first version was released.
We got Bitmap Index.
And we got BitSlice Index: mapping a numeric value by its binary parts.
So my idea: Why not indexing strings by their characters?
The result of this idea was presented first in June 2008. 
IKnow wasn't publicly available at that time.

1
1 248
InterSystems Official Bob Kuszewski · Oct 23, 2024

Maintenance Releases 2023.1.5 & 2024.1.2 of InterSystems IRIS, IRIS for Health, & HealthShare HealthConnect are now available

Two extended maintenance releases of InterSystems IRISInterSystems IRIS for Health, and HealthShare Health Connect are now available.

2023.1.5

Release 2023.1.5 provides bug fixes for any of the previous 2023.1.x releases.

You can find the detailed change lists & upgrade checklists on these pages:

2024.1.2

Release 2024.1.2 provides bug fixes for any of the previous 2024.1.x releases.

You can

2
0 359
Announcement Anastasia Dyubaylo · Oct 24, 2024

Mullins School - PUT ON YOUR THINKING CAP! Help us... | Facebook

Do you have an idea that could make a real impact on InterSystems technology and be realised by Community members? Now’s the perfect time to share your thoughts!  

We’re preparing something exciting and would love to see the ideas you think could take InterSystems to the next level. To achieve this, we need you to come up with new ideas for our Ideas Portal that could be considered as "Community Opportunity" ideas*.

Thus, put on your thinking cap and submit your ideas on the Ideas Portal by mid-November, and stay tuned for more updates. 

2
0 142
Question prashanth ponugoti · Oct 23, 2024

Hello Experts ,

Could you help to search message details based on MRN in intersytems iris. 

We have created 100+ interfaces and currenly in live (interystems cloud) . Now I try to search message details based on MRN using below query. it is working fine in DEV. but in prod it is taking ages.

SELECT Header.SessionId, Header.SourceConfigName ,Body.RawContent
FROM Ens.MessageHeader AS Header 
JOIN EnsLib_HL7.Message AS Body ON Header.MessageBodyId = Body.ID     
 where  Body.TimeCreated BETWEEN '2023-03-15 13:10:22.993' AND '2023-03-15 13:10:25.993'
 AND Body.RawContent LIKE '%40103262%'

could you

2
0 173
Question john.smith4237 · Oct 25, 2024

Hi guys,

Strange that Horizontal in my below code is "Z" but the i(Horizontal=='Z') is actually not recognizing it and does execute the rest of the code !? 

(Horizontal,Vertical)=""
Set Horizontal= ..GetSensorInfo($P(Temp))
&js<var Horizontal='#(Horizontal)#';
   alert(Sensor+"="+Horizontal)
  if (Horizontal=='Z')
  {
    alert(Sensor+"=2"+Horizontal)          

 document.getElementById('Z'+i).value='H'
  }

Thanks

1
0 120
Article Tomoko Furuzono · Oct 24, 2024 1m read

InterSystems FAQ rubric

The maximum number of namespaces that can be created in one instance is 2047. However, to use a large number of namespaces, you will need to configure memory accordingly.

The maximum number of databases (including remote databases) that can be created in one instance is 15998. Depending on the type of license, there may be restrictions on the number that can be created. For details, please refer to the following document.
Database Configuration [IRIS]
Database Configuration
 

0
0 208
Question Oleksandr Kyrylov · Oct 22, 2024

Are there any objectscript functions (not wizards) to export and then import table data (including RowID)?

It doesn't matter what format the exported file is.

The import and export process should preserve all relationships, foreign keys, etc. I need to be able to export and import multiple tables at the same time.

I need this to implement the ability to export multiple tables from one instance and load them into another.

For export I tried %SQL.StatementResult.DisplayFormatted with the CSV option, but it doesn't handle column names.The first line of the file is not csv for some reason.

3
0 264
Announcement Danusa Calixto · Oct 14, 2024

Hello, Community!

It's time for the next InterSystems Developer Community contest!

✍️ InterSystems IRIS Technical Tutorial Contest ✍️

Create a Technical Tutorial** that can be considered a guide for InterSystems IRIS programmers of any level: beginner/intermediate/senior, from October 14th to November 24th. The tutorial can be in the form of an Article with text and images and/or a Demonstration Video.

Enjoy and let your creativity flow! Show how easy and fun it can be to create solutions with InterSystems IRIS.

🎁 Prizes for everyone: A special prize for each author participating in the competition!

2
0 190
Question john.smith4237 · Oct 22, 2024

Hi Guys,

Given that Analyst property is defined as class object I'm getting the Analyst ID in the below dataBinding, but I'm looking to display the Analyst name, I tried  using dataBinding="Analyst->Name" but no luck, I got the same issue when binding to dataCombo or comboBox ?     

<text dataBinding="Analyst" id="AnalystName" label="Analyst Name:" size="36" />
 

Thanks

2
0 243
Announcement Anastasia Dyubaylo · Sep 30, 2024

Hi Developer Community,

We all love coding, but every now and then, it’s time to step away from the code and exercise! The InterSystems Walking Challenge will help you recharge your mind and boost your fitness. Embark on a virtual journey from Lübeck to Lüneburg along the historic Salt Road, the legendary trade route that connected Europe centuries ago.

Win exciting prizes like treadmills, smartwatches, and medals.

👟🚶🧑‍🦼Lace Up, Step Out, and Code Better! 🔋💻💪

📅 Registration is open until  November 8.The challenge ends on November 22, 2024, at 6 PM CET

Want to join? Details below.

5
0 570
InterSystems Official Evan Gabhart · Oct 22, 2024

Production Decomposition

Production Decomposition is a new configuration option added to the CCR Client Tools that instead of source controlling the Production class as a single item, considers it a composition of configuration items. This allows different users to edit these distinct items within a Production at the same time. Historically, this has been a pain point with source controlling Productions as any work involving the Production class required a check out that prevented other users from making edits.

1
1 306
Question David.Satorres6134 · Oct 7, 2024

Hello everybody,

I’m trying to install WebTerminal but I’m not able to have it working. I’ve looked all around the in github and the community but no-one seems to have the same problem. So I hope sharing this someone can give me a hint
So, I’m installing it on IRIS HEALTH:

IRIS for UNIX (Red Hat Enterprise Linux 8 for x86-64) 2023.1.3 (Build 517U) Wed Jan 10 2024 13:30:33 EST [Health:5.1.0-2.m3] 

I install the packageWebTerminal-v4.9.5.xml via Portal Manager and all goes fine:

Importing Selected Classes from /intersystems/prog/IRISHEALTH/mgr/Temp/importfromlocal.streamImport to Namespace %SYS.
10
0 266
Question Qais Azam · Oct 21, 2024

I’m trying to connect to an InterSystems Caché database from my local development environment using an IPv4 address. Most examples I’ve found show how to connect using the ODBC driver with the localhost or the default IP address (127.0.0.1). However, I want to know how to connect using my local IPv4 address.

Here’s what I need help with:

  1. Connecting with IPv4: I want to know how to specify my local IPv4 address in the ODBC connection string or any other method to connect to the Caché database.
  2. Enabling Remote Connections: Additionally, how can I configure InterSystems Caché to allow remote
4
0 313
Article Muhammad Waseem · Apr 1, 2024 2m read


Generative artificial intelligence is artificial intelligence capable of generating text, images or other data using generative models, often in response to prompts. Generative AI models learn the patterns and structure of their input training data and then generate new data that has similar characteristics.

Generative AI is artificial intelligence capable of generating text, images and other types of content. What makes it a fantastic technology is that it democratizes AI, anyone can use it with as little as a text prompt, a sentence written in a natural language.

how large language models

1
1 614
Article Luis Angel Pérez Ramos · Oct 22, 2024 5m read

Welcome to the third and final publication of our articles dedicated to the development of RAG applications based on LLM models. In this final article, we will see, based on our small example project, how we can find the most appropriate context for the question we want to send to our LLM model and for this we will make use of the vector search functionality included in IRIS.

Meme Creator - Funny Context Meme Generator at MemeCreator.org!

Vector searches

A key element of any RAG application is the vector search mechanism, which allows you to search within a table with records of this type for those most similar to the reference vector.

0
2 737
Question Olivier Caudron · Jul 23, 2024

Hi

I'm trying to use JWT authentication on a REST application in IRIS. The login API are correctly "injected" into the application. Login works fine with Postman and other REST clients, and subsequent calls to my REST API using the bearer token work fine (correctly authenticated). So far, so good.

The problem is that it doesn't work with Axios, so I can only test it, I cannot integrate it into my application.

9
0 532
Announcement Anastasia Dyubaylo · Oct 21, 2024

Hello Community!

We are pleased to invite all our clients, partners and members of the community to take cart in the InterSystems DACH Symposium 2024. The registration is already open!

For all those who were unable to travel to the Global Summit in the USA this year, there is once again the opportunity to get all the important information at our InterSystems DACH Symposium in November.

➡️ InterSystems DACH Symposium 2024

🗓  November 5 - 7, 2024

📍 Scandic Frankfurt Museumsufer | Wilhelm-Leuschner-Straße 44 | 60329 Frankfurt am Main

1
0 433
Article Anthony Master · Oct 17, 2024 2m read

I was working on a DTL but kept getting ERROR #5002... MAXSTRING errors. The problem was that most of the DTL GUI action steps only support the string data type when working with the segments. A %String has a limit of 3,641,144 characters and my OBX5.1 was 5,242,952 characters long as the example provided. Of course PACS admin stated ultra high quality up to and including 4K resolution files were needed, so we could not get the vendor to compress or reformat these files to compressed jpg or something similar.

Initially this vendor sends a 2.3 ORU^R01 and our EHR (Epic) is expecting a 2.3 MDM^T0

7
1 464
Question Dmitrii Baranov · Oct 20, 2024

I'm experimenting with adapting SDA3 object model to store medical data in relational form, e.g.:

class Demo.DemoPatient extends (%Persistent, HS.SDA3.Patient) {}

The HS.SDA3.Patient class has the Aliases property which is a nested collection (list) of objects of type HS.SDA3.Name:

#dim record as Demo.DemoPatient = ##class(Demo.DemoPatient).%New()
set record.Name.FamilyName = "Clemens"
set record.Name.GivenName = "Samuel"
set record.BirthTime = "1935-11-30T12:00:00"
    
#dim alias as HS.SDA3.Name = ##class(HS.SDA3.Name).%New()
set alias.FamilyName = "Twain"
set alias.GivenName = "Mark"  
do
6
0 164
Discussion Otto Medin · Oct 19, 2024

In the past, I've created custom SQL operations, but now I had something trivial to do, so I decided to take EnsLib.SQL.Operation.GenericOperation out for a spin. There's no example in the docs, so it was a little tricky. Here's what I ended up doing:

In my external database, I have 'mytable' with two fields 'id1' and 'id2'. Here are the pertinent Business Operation settings:

SQL: select id2 from mytable where id1 = ?
Input Parameters: [1] *id1
RequestClass: Ens.StringRequest
ResponseClass: MyResponseClass

To look up 'id2' for the row where 'id1' is "abc", I set 'StringValue' of my request to a

2
0 217
Article Jean Millette · Dec 9, 2023 3m read

Some of our applications provide SOAP services that use “DSTIME”-based SQL queries that return records that have recently been added or changed. Since the records don’t change often, these queries usually return a small number of records and therefore take little time.

However, we sometimes make a table change that affects all records in that table. When that happens, on the next SOAP request from a SOAP client the service will run its query which will take an extra-long time because all records are included (for our apps, the queries return hundreds of thousands of records in this case).

The

3
0 1029